Skip to content
Dzhake edited this page Nov 22, 2024 · 22 revisions

General

All entities which have "flag" options should be able to parse flag with "," to separate flags and "!" to invert flag after it. If that doesn't work, please report that to me.

All entities which have some "color" options should support alpha, and there should be color picker in loenn. If some entity doesn't support alpha or there is no color picker, please report that to me.

Sequence

Each time current sequence color changes it sets flag DzhakeHelper_Sequence_N where N is current colors starting from 0 You can set that flag yourself, to set current sequence colors (may not work correctly, please report any issues with this)

Entities

Sequence Block Controller (AKA Sequence Block Manager)

Must be placed in each room with any cossette stuff. Has some options (read tooltips :D)

Sequence Block

Like cassette block, but which color in now active is changed by Sequence Block Controller.

Sequence Refill

When player dashes after collecting Sequence Refill, Sequence Block Controller cycles active color.

Sequence Touch Switch

When all touch switches from same group are activated, Sequence Block Controller cycles active color.

Sequence XXXXXX

Usually means some entity which activates/deactivates with sequence blocks.

Triggers

Cycle Sequence Blocks Trigger

After touching, Sequence Block Controller cycles active color.

Set Sequence Block Trigger

After touching, Sequence Block Controller sets active color to picked one (in settings).

Entities

Freeze Refill

Like refill but it doesn't refill dash or stamina, just gives freeze frames (you can change freeze time in freeze refill's settings)

Custom Decal

Like decal. But custom.

Custom Hi-Res Decal

Same as above but hi-res lol

Void Lift

Inspired by Rogue Legacy 2, suggestion by Summi(tBadeline) When player dashes horizontally, and touches void lift, player loses X speed, and player's Y speed sets to New Speed (option)

Elephant Walk Trigger

Makes Madeline walk like elephant from elephant games (f.e. The Elephant Collection)

Triggers

Timed Kill Trigger

Kills player after some time (customizable) while player is in trigger.

Lua

How to use

local dzhake = require("#Celeste.Mod.DzhakeHelper.Utils").Lua

What it can do

GetPrivateMember(object obj, string name) - Get member of object. Member if cool word for "thing". Like, Player has private member "Dashes". You can't get it with player.Dashes, but you can with dzhake.GetPrivateMember(player,"Dashes")

SetPrivateMember(object obj, string name, object newValue) - Read above. Kinda same, but sets value instead.

CallMethod(object obj, string name, LuaTable args) - Read above. Method is cool word for "function". Like, you can't call player.StartDash() but you can do dzhake.CallMethod(player,"StartDash"). Just don't add args if method doesn't need them. Args should look like {"first arg",2}

StoreVariable(object obj, string name) - Store variable in Session. This means that it'll be resetted if chapter restarts, but will not if player Save&Quits

GetStoredVariable(string name) - Store above, and get.

RemoveStoredVariable(string name) - Remove variable. To save space ig? Not sure lol.