mods.ChroniaHelper.name=ChroniaHelper

style.effects.ChroniaHelper/CustomRain.name=Custom Rain
style.effects.ChroniaHelper/CustomRain.description.fadingX=Several faders separated by ";" \nEach fader contains 4 numbers separated by a comma, representing "positionFrom", "positionTo", "alphaFrom", "alphaTo" \nFor example: "100,200,0,1"
style.effects.ChroniaHelper/CustomRain.description.fadingY=Several faders separated by ";" \nEach fader contains 4 numbers separated by a comma, representing "positionFrom", "positionTo", "alphaFrom", "alphaTo" \nFor example: "100,200,0,1"
style.effects.ChroniaHelper/WindRainFG.name=Wind Rain
style.effects.ChroniaHelper/WindRainFG.description.fadingX=Several faders separated by ";" \nEach fader contains 4 numbers separated by a comma, representing "positionFrom", "positionTo", "alphaFrom", "alphaTo" \nFor example: "100,200,0,1"
style.effects.ChroniaHelper/WindRainFG.description.fadingY=Several faders separated by ";" \nEach fader contains 4 numbers separated by a comma, representing "positionFrom", "positionTo", "alphaFrom", "alphaTo" \nFor example: "100,200,0,1"
style.effects.ChroniaHelper/WaterSurface.name=Water Surface
style.effects.ChroniaHelper/ModifiedAnimatedParallax.name=Modified Animated Parallax

# ================= WIPs

entities.ChroniaHelper/LineIndicator.placements.name.default=Line Indicator
entities.ChroniaHelper/MultiNodeFlagSwitchGate.placements.name.block=Multi-Node Flag Switch Gate (default)
entities.ChroniaHelper/MultiNodeFlagSwitchGate.placements.name.mirror=Multi-Node Flag Switch Gate (mirror)
entities.ChroniaHelper/MultiNodeFlagSwitchGate.placements.name.temple=Multi-Node Flag Switch Gate (temple)
entities.ChroniaHelper/MultiNodeFlagSwitchGate.placements.name.stars=Multi-Node Flag Switch Gate (stars)

# ================= Animated Zipmover

entities.ChroniaHelper/AnimatedZipMover.placements.name.start=Animated Zipmover
entities.ChroniaHelper/AnimatedZipMover.attributes.description.spritePath=You need several picture arrays inside the path folder\n"idle" for the static state of zipmover block\n"active" for the active state of the block\n"return" for return animation of the block\n"unlit" for back to static animation of the block\n"innerSprite_idle" is the same but for the center sprite\n"innerSprite_active" is the same but for the center sprite\n"innerSprite_return" is the same but for the center sprite\n"innerSprite_unlit" is the same but for the center sprite

# ================= Decrease Refill

entities.ChroniaHelper/DecreaseRefill.placements.name.DecreaseRefill=Decrease Refill
entities.ChroniaHelper/DecreaseRefill.attributes.description.dashes=The number of dashes that will be decreased by the refill, \nor be used to trade for stamina
entities.ChroniaHelper/DecreaseRefill.attributes.description.decreaseStamina=Whether the stamina will be taken from Madeline, ignored when "Trade for Stamina"
entities.ChroniaHelper/DecreaseRefill.attributes.description.clearAllDashes=All the dashes will be taken, ignoring the "Dashes" parameter
entities.ChroniaHelper/DecreaseRefill.attributes.description.tradeDashesToStamina=Whether the refill take dashes away but refills stamina
entities.ChroniaHelper/DecreaseRefill.attributes.description.sprites=The texture to apply on the refill, the directory is relative to Gameplay/,\nyou must end with a "/", the files in your folder must include "idle", "flash", and "outline"
entities.ChroniaHelper/DecreaseRefill.attributes.description.frameRates=The Frame Rate of "idle" and "flash" animation, there is a space after the comma\nExample:"xxx, xxx"

# ================= Seamless Spinner

entities.ChroniaHelper/SeamlessSpinner.placements.name.SeamlessSpinner=Seamless Spinner
entities.ChroniaHelper/SeamlessSpinner.attributes.description.hitboxType="default" - official game hitbox\n"loosened" - the hitbox would be a r=6 circle\n"seamless round" - the hitbox would be a r=8 circle\n"seamless square" - the hitbox would be a 16x16 px square
entities.ChroniaHelper/SeamlessSpinner.attributes.description.foreDirectory=Starting after "Gameplay/" and ends with the file name with no suffix.\nFor example, if your file is "Gameplay/danger/yourspinner/texture00.png"\nYou should fill in "danger/yourspinner/texture" here.
entities.ChroniaHelper/SeamlessSpinner.attributes.description.backDirectory=Starting after "Gameplay/" and ends with the file name with no suffix.\nFor example, if your file is "Gameplay/danger/yourspinner/texture00.png"\nYou should fill in "danger/yourspinner/texture" here.
entities.ChroniaHelper/SeamlessSpinner.attributes.description.customHitbox=When "Hitbox Type" is set to "custom", you can create your own hitbox here.\n"r" stands for Rectangles, and parameters should be "r, width, height, posX, posY"\n"c" stands for Circles, parameters should be "c, radius, posX, posY"\nIf leave empty, the spinner will process by default values or ignored.
entities.ChroniaHelper/SeamlessSpinner.attributes.description.solidTileCutoff=Whether the spinner sprite should be cutoff by the solid hitbox
entities.ChroniaHelper/SeamlessSpinner.attributes.description.dynamic=Whether the sprite should be an animation in-game\ninstead of a random image from the image array\nNOTICE: Re-open this window to see the new options
entities.ChroniaHelper/SeamlessSpinner.attributes.description.trigger=Whether this Spinner should works like Timed Trigger Spikes, being disabled by default\nAnd triggered when player touches it\nCustomization is only allowed on the main sprites, not the connection parts for indication purposes\nTo customize the trigger animation, if your ForeDirectory is ".../xxx", you'll need another animation array ".../xxx_base"
entities.ChroniaHelper/SeamlessSpinner.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

# ================= Player Indicator Zone

entities.ChroniaHelper/PlayerIndicatorZone.placements.name.PlayerIndicatorZone=Player Indicator Zone (Old)
entities.ChroniaHelper/PlayerIndicatorZone.attributes.description.mode="Limited mode", the indicator would only appear in the zone\n"Toggle Mode", when there's at least one zone in the room, however big it is,\nthe working area would be the whole room, but the icons would only be toggled if the player touches the zone\neg. If you placed a zone outside the room area, it would still work, but the settings inside\nto toggle the idicator wouldn't work since the player couldn't touch the zone
entities.ChroniaHelper/PlayerIndicatorZone.attributes.description.renderBorder=Whether the zone border should be rendered in game
entities.ChroniaHelper/PlayerIndicatorZone.attributes.description.renderInside=Whether there whould be a filler area rendered inside the zone
entities.ChroniaHelper/PlayerIndicatorZone.attributes.description.continuousLine=Whether the rendered borderline should be dotted or straight line
entities.ChroniaHelper/PlayerIndicatorZone.attributes.description.flagToggle=How the zone controls the "flag"
entities.ChroniaHelper/PlayerIndicatorZone.attributes.description.flag=The flag that "flag mode" controls

entities.ChroniaHelper/PlayerIndicatorZoneCustom.placements.name.normal= Player Indicator Zone
entities.ChroniaHelper/PlayerIndicatorZoneCustom.placements.name.PlayerIndicatorZoneCustom=Player Indicator Zone (Custom)
entities.ChroniaHelper/PlayerIndicatorZoneCustom.attributes.description.mode="Limited mode", the indicator would only appear in the zone\n"Toggle Mode", when there's at least one zone in the room, however big it is,\nthe working area would be the whole room, but the icons would only be toggled if the player touches the zone\neg. If you placed a zone outside the room area, it would still work, but the settings inside\nto toggle the idicator wouldn't work since the player couldn't touch the zone
entities.ChroniaHelper/PlayerIndicatorZoneCustom.attributes.description.renderBorder=Whether the zone border should be rendered in game
entities.ChroniaHelper/PlayerIndicatorZoneCustom.attributes.description.renderInside=Whether there whould be a filler area rendered inside the zone
entities.ChroniaHelper/PlayerIndicatorZoneCustom.attributes.description.renderContinuousLine=Whether the rendered borderline should be dotted or straight line
entities.ChroniaHelper/PlayerIndicatorZoneCustom.attributes.description.flagMode=How the zone controls the "flag"\n"Zone" means the flag will only be activated in the zone\nAnd removed once player leaves
entities.ChroniaHelper/PlayerIndicatorZoneCustom.attributes.description.flag=The flag that "flag toggle" controls
entities.ChroniaHelper/PlayerIndicatorZoneCustom.attributes.description.iconPrefix=The root directories of the icons, like "icons/" for "Gameplay/icons/xxx.png"
entities.ChroniaHelper/PlayerIndicatorZoneCustom.attributes.description.icons=The icon file names, like "xxx" for "Gameplay/icons/xxx.png"
entities.ChroniaHelper/PlayerIndicatorZoneCustom.attributes.description.iconOffsets=The coordinates of each icon, formatted as\nx1, y1; x2, y2; x3, y3; ...
entities.ChroniaHelper/PlayerIndicatorZoneCustom.attributes.description.iconColors=The color hex code of each icon, seperated by a comma
entities.ChroniaHelper/PlayerIndicatorZoneCustom.attributes.description.independentFlag=Whether the zone controlling the flag requires "Mode" being not "None"

# ================= Killer Series / Spring Block Series

entities.ChroniaHelper/KillerBlock.placements.name.KillerBlock=Killer Block
entities.ChroniaHelper/KillerBlock.attributes.description.standFall=Whether the player standing on the block will cause the block to fall
entities.ChroniaHelper/KillerBlock.attributes.description.fallDelay=The shaking time before the block finally starts to fall
entities.ChroniaHelper/KillerBlock.attributes.description.movement=Four parameters seperated by comma\nFirst number: The speed when the block is just starting to fall, default 0\nSecond number: The maximum speed, default 130\nThird number: Acceleration, default 500\nFourth number: The maximum speed under 'finalBoss' mode, default 160
entities.ChroniaHelper/KillerBlock.attributes.description.canTrigger=Whether the block can be triggered to fall by entities like springs\nWIP: If disabled, this switch will cut off any interactions to this block, including standing, climbing and springs etc.
entities.ChroniaHelper/KillerBlock.attributes.description.springBlockOverride=An override mode for the entity that will turn the entity into a Spring Block \nThe spring block will bounce player off like a spring each time the player touches it \nUnless the player is holding grab.

entities.ChroniaHelper/GroupedKillerBlock.placements.name.GroupedKillerBlock=Grouped Killer Block
entities.ChroniaHelper/GroupedKillerBlock.attributes.description.standFall=Whether the player standing on the block will cause the block to fall
entities.ChroniaHelper/GroupedKillerBlock.attributes.description.fallDelay=The shaking time before the block finally starts to fall
entities.ChroniaHelper/GroupedKillerBlock.attributes.description.movement=Four parameters seperated by comma\nFirst number: The speed when the block is just starting to fall, default 0\nSecond number: The maximum speed, default 130\nThird number: Acceleration, default 500\nFourth number: The maximum speed under 'finalBoss' mode, default 160
entities.ChroniaHelper/GroupedKillerBlock.attributes.description.canTrigger=Whether the block can be triggered to fall by entities like springs\nWIP: If disabled, this switch will cut off any interactions to this block, including standing, climbing and springs etc.
entities.ChroniaHelper/GroupedKillerBlock.attributes.description.springBlockOverride=An override mode for the entity that will turn the entity into a Spring Block \nThe spring block will bounce player off like a spring each time the player touches it \nUnless the player is holding grab.

entities.ChroniaHelper/KillerWall.placements.name.KillerWall=Killer Wall
entities.ChroniaHelper/KillerWall.attributes.description.springBlockOverride=An override mode for the entity that will turn the entity into a Spring Block \nThe spring block will bounce player off like a spring each time the player touches it \nUnless the player is holding grab.

entities.ChroniaHelper/SpringBlock.placements.name.SpringBlock=Spring Block
entities.ChroniaHelper/SpringBlock.attributes.description.standFall=Whether the player standing on the block will cause the block to fall
entities.ChroniaHelper/SpringBlock.attributes.description.fallDelay=The shaking time before the block finally starts to fall
entities.ChroniaHelper/SpringBlock.attributes.description.movement=Four parameters seperated by comma\nFirst number: The speed when the block is just starting to fall, default 0\nSecond number: The maximum speed, default 130\nThird number: Acceleration, default 500\nFourth number: The maximum speed under 'finalBoss' mode, default 160
entities.ChroniaHelper/SpringBlock.attributes.description.canTrigger=Whether the block can be triggered to fall by entities like springs\nWIP: If disabled, this switch will cut off any interactions to this block, including standing, climbing and springs etc.
entities.ChroniaHelper/SpringBlock.attributes.description.springBlockOverride=An override mode for the entity that will turn the entity into a Spring Block \nThe spring block will bounce player off like a spring each time the player touches it \nUnless the player is holding grab.

entities.ChroniaHelper/SpringBlockGrouped.placements.name.SpringBlockGrouped=Grouped Spring Block
entities.ChroniaHelper/SpringBlockGrouped.attributes.description.standFall=Whether the player standing on the block will cause the block to fall
entities.ChroniaHelper/SpringBlockGrouped.attributes.description.fallDelay=The shaking time before the block finally starts to fall
entities.ChroniaHelper/SpringBlockGrouped.attributes.description.movement=Four parameters seperated by comma\nFirst number: The speed when the block is just starting to fall, default 0\nSecond number: The maximum speed, default 130\nThird number: Acceleration, default 500\nFourth number: The maximum speed under 'finalBoss' mode, default 160
entities.ChroniaHelper/SpringBlockGrouped.attributes.description.canTrigger=Whether the block can be triggered to fall by entities like springs\nWIP: If disabled, this switch will cut off any interactions to this block, including standing, climbing and springs etc.
entities.ChroniaHelper/SpringBlockGrouped.attributes.description.springBlockOverride=An override mode for the entity that will turn the entity into a Spring Block \nThe spring block will bounce player off like a spring each time the player touches it \nUnless the player is holding grab.

entities.ChroniaHelper/SpringBlockWall.placements.name.SpringBlockWall=Spring Block Wall
entities.ChroniaHelper/SpringBlockWall.attributes.description.springBlockOverride=An override mode for the entity that will turn the entity into a Spring Block \nThe spring block will bounce player off like a spring each time the player touches it \nUnless the player is holding grab.

# ================= Spikes

entities.ChroniaHelper/UpSpikes.placements.name.UpSpikes=Spikes (Up)
entities.ChroniaHelper/DownSpikes.placements.name.DownSpikes=Spikes (Down)
entities.ChroniaHelper/LeftSpikes.placements.name.LeftSpikes=Spikes (Left)
entities.ChroniaHelper/RightSpikes.placements.name.RightSpikes=Spikes (Right)

entities.ChroniaHelper/UpSpikes.attributes.description.sprite=The texture of the spikes, relative to "Gameplay/"\nExample path: "path/to/file/texture"\nThen the files should be like this: "texture_up00.png"
entities.ChroniaHelper/UpSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/UpSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/UpSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/UpSpikes.attributes.description.randomTexture=If enabled, all spike sprites will be randomly chosen in game like the default spikes do\nIf disabled, only "texture_(direction)00.png" will be used
entities.ChroniaHelper/UpSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

entities.ChroniaHelper/DownSpikes.attributes.description.sprite=The texture of the spikes, relative to "Gameplay/"\nExample path: "path/to/file/texture"\nThen the files should be like this: "texture_up00.png"
entities.ChroniaHelper/DownSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/DownSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/DownSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/DownSpikes.attributes.description.randomTexture=If enabled, all spike sprites will be randomly chosen in game like the default spikes do\nIf disabled, only "texture_(direction)00.png" will be used
entities.ChroniaHelper/DownSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

entities.ChroniaHelper/LeftSpikes.attributes.description.sprite=The texture of the spikes, relative to "Gameplay/"\nExample path: "path/to/file/texture"\nThen the files should be like this: "texture_up00.png"
entities.ChroniaHelper/LeftSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/LeftSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/LeftSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/LeftSpikes.attributes.description.randomTexture=If enabled, all spike sprites will be randomly chosen in game like the default spikes do\nIf disabled, only "texture_(direction)00.png" will be used
entities.ChroniaHelper/LeftSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

entities.ChroniaHelper/RightSpikes.attributes.description.sprite=The texture of the spikes, relative to "Gameplay/"\nExample path: "path/to/file/texture"\nThen the files should be like this: "texture_up00.png"
entities.ChroniaHelper/RightSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/RightSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/RightSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/RightSpikes.attributes.description.randomTexture=If enabled, all spike sprites will be randomly chosen in game like the default spikes do\nIf disabled, only "texture_(direction)00.png" will be used
entities.ChroniaHelper/RightSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

# ================= Bubble Field

entities.ChroniaHelper/BubbleField.attributes.description.particleDirs=A series of particle directories seperated by a comma\nThe directory starts after "Gameplay/"\nFor example, "Gameplay/yourMod/yourParticle" would be "yourMod/yourParticle" here

# ================= Omni Zip Mover

entities.ChroniaHelper/OmniZipMover.placements.name.normal=Omni Zip Mover (Normal)
entities.ChroniaHelper/OmniZipMover.placements.name.moon=Omni Zip Mover (Moon)
entities.ChroniaHelper/OmniZipMover.placements.name.cliffside=Omni Zip Mover (Cliffside)
entities.ChroniaHelper/OmniZipMover.attributes.description.customBlockTexture=Legacy. Replace this zip mover and use Custom Skin instead. \nThe path to the custom texture for the Connected Block, starting from Graphics/Atlases/Gameplay/objects/. \nA template is provided in Mods/ChroniaHelper/Graphics/Atlases/Gameplay/objects/ChroniaHelper/customConnectedBlock. \nThe filename should NOT include the file extension (.png).
entities.ChroniaHelper/OmniZipMover.attributes.description.customSkin=The path to a directory with custom textures for this Connected Zip Mover. \nThis is relative to Graphics/Atlases/Gameplay. \nIf set, this overrides the Theme option. \nSetting the Cliffside theme is equivalent to setting this field to objects/ChroniaHelper/OmniZipMover/cliffside. \nIn order to let the zipmover display correctly in Lonn, you'd need these files:\n"block.png", "light01.png", "cog.png", "innerCorners.png"\nIn order to make the zipmover work, you'd also need "innercog00.png"...
entities.ChroniaHelper/OmniZipMover.attributes.description.theme=If Custom Skin is not set, this determines the appearance of the Connected Zip Mover. \nThis also determines the sounds used. The Cliffside theme is a custom theme.
entities.ChroniaHelper/OmniZipMover.attributes.description.permanent=Whether the Connected Zip Mover should stay completely static after stopping.
entities.ChroniaHelper/OmniZipMover.attributes.description.waiting=Whether the Connected Zip Mover should wait for the player at each node. \nOnly useful if has more than one node.
entities.ChroniaHelper/OmniZipMover.attributes.description.ticking=Whether the Connected Zip Mover should be ticking at each node, forcing the player to reactivate it within a limited amount of time. \nWill return to initial position if the player doesn't reactivate it, or locks in place completely if "permanent" is on. \nOnly useful if has more than one node.
entities.ChroniaHelper/OmniZipMover.attributes.description.delays=Time that the zipmover will wait on each node by order, if you don't set it, \nthe default time would be 0.2s
entities.ChroniaHelper/OmniZipMover.attributes.description.easing=How zipmover will move between each node
entities.ChroniaHelper/OmniZipMover.attributes.description.nodeSpeeds=The speed multiplier for zipmover moving to each node, if not setting properly, the default value is 1\nIf the array length is smaller than the node counts, the last number will be used as the value for later nodes
entities.ChroniaHelper/OmniZipMover.attributes.description.ticks=How many ticks should there be before it returns if "ticking" enabled
entities.ChroniaHelper/OmniZipMover.attributes.description.tickDelay=The interval between each tick if "ticking" enabled
entities.ChroniaHelper/OmniZipMover.attributes.description.synced=If enabled, all synced zipmovers of the same "rope Color" will be activated together
entities.ChroniaHelper/OmniZipMover.attributes.description.syncTag=If empty, the tag will automatically be set to rope color\nYou can use the flag "ZipMoverSync:(Your SyncTag)" to activate this zipmover if "synced" enabled
entities.ChroniaHelper/OmniZipMover.attributes.description.dashable=Whether this zipmover can be activated and bounce the player up when player hit it with a dash\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipMover.attributes.description.onlyDashActivate=If enabled, player won't be able to activate it by touching it anymore
entities.ChroniaHelper/OmniZipMover.attributes.description.dashableOnce=You can only dash it for once\nThen you'll have to wait for it to stop to dash it again
entities.ChroniaHelper/OmniZipMover.attributes.description.customSound=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipMover.attributes.description.tweakShakes=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipMover.attributes.description.tweakReturnParams=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipMover.attributes.description.returnedIrrespondingTime=Zipmover won't be responding to player's interactions after its return for some time
entities.ChroniaHelper/OmniZipMover.attributes.description.nodeSound=Whether the "start sound" will play on each node when zipmover leaves the node
entities.ChroniaHelper/OmniZipMover.attributes.description.startDelay=The delay before the zipmover moves at the start
entities.ChroniaHelper/OmniZipMover.attributes.description.timeUnits=If enabled, the speeds parameter will be read as time instead of multipliers
entities.ChroniaHelper/OmniZipMover.attributes.description.nodeFlags=Use "{}" to create a group for multiple flags, if the group has only one flag, "{}" wouldn't be necessary\nSeperate groups by using a comma, example:"{a,b,c},d,{e,f}"\nIf this option isn't empty, the zipmover will be forced to wait at the nodes until all flags in the relative group are activated\nAs the example shown above, Group 1 would be flags "a", "b" and "c"\nGroup 2 would be flag "d", Group 3 would be flags "e" and "f"\nSo in order to allow zipmover go past node 1, all flags in Group 1 have to be true\nIn order to allow zipmover go past node 2, all flags in Group 2 have to be true\nNode 3 would be the same. If there is a node 4 but there's no group 4, the node 4 will be using flags of Group 3\nNotice that when this field isn't empty, each node delay in "delays" will work as a new "Start Delay" when the node flag is enabled
entities.ChroniaHelper/OmniZipMover.attributes.description.returnSpeeds=The same as "node speeds", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the speed between final node and the node before final node
entities.ChroniaHelper/OmniZipMover.attributes.description.returnDelays=The same as "delays", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the interval the zipmover will stay when reaching the first node backwards
entities.ChroniaHelper/OmniZipMover.attributes.description.sideFlag=If enabled, the zipmover will also check on flag "synctag" when checking "ZipMoverSync:synctag"
entities.ChroniaHelper/OmniZipMover.attributes.description.touchSensitive=Whether this zipmover can be activated by touching it (in vanilla you'd need to grab or stand on it)

# ================= ZipGlass

entities.ChroniaHelper/ZipGlass.placements.name.zipglass=Omni Zip Mover (Glass Block Skin)
entities.ChroniaHelper/ZipGlass.attributes.description.customSkin=The path to a directory with custom textures for this Connected Zip Mover. \nThis is relative to Graphics/Atlases/Gameplay.\nIn order to let the zipmover display correctly in Lonn, you'd need these files:\n"light01.png", "cog.png"
entities.ChroniaHelper/ZipGlass.attributes.description.theme=If Custom Skin is not set, this determines the appearance of the Connected Zip Mover. \nThis also determines the sounds used. The Cliffside theme is a custom theme.
entities.ChroniaHelper/ZipGlass.attributes.description.permanent=Whether the Connected Zip Mover should stay completely static after stopping.
entities.ChroniaHelper/ZipGlass.attributes.description.waiting=Whether the Connected Zip Mover should wait for the player at each node. \nOnly useful if has more than one node.
entities.ChroniaHelper/ZipGlass.attributes.description.ticking=Whether the Connected Zip Mover should be ticking at each node, forcing the player to reactivate it within a limited amount of time. \nWill return to initial position if the player doesn't reactivate it, or locks in place completely if "permanent" is on. \nOnly useful if has more than one node.
entities.ChroniaHelper/ZipGlass.attributes.description.delays=Time that the zipmover will wait on each node by order, if you don't set it, \nthe default time would be 0.2s
entities.ChroniaHelper/ZipGlass.attributes.description.easing=How zipmover will move between each node
entities.ChroniaHelper/ZipGlass.attributes.description.nodeSpeeds=The speed multiplier for zipmover moving to each node, if not setting properly, the default value is 1\nIf the array length is smaller than the node counts, the last number will be used as the value for later nodes
entities.ChroniaHelper/ZipGlass.attributes.description.ticks=How many ticks should there be before it returns if "ticking" enabled
entities.ChroniaHelper/ZipGlass.attributes.description.tickDelay=The interval between each tick if "ticking" enabled
entities.ChroniaHelper/ZipGlass.attributes.description.synced=If enabled, all synced zipmovers of the same "rope Color" will be activated together
entities.ChroniaHelper/ZipGlass.attributes.description.syncTag=If empty, the tag will automatically be set to rope color\nYou can use the flag "ZipMoverSync:(Your SyncTag)" to activate this zipmover if "synced" enabled
entities.ChroniaHelper/ZipGlass.attributes.description.dashable=Whether this zipmover can be activated and bounce the player up when player hit it with a dash\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipGlass.attributes.description.onlyDashActivate=If enabled, player won't be able to activate it by touching it anymore
entities.ChroniaHelper/ZipGlass.attributes.description.dashableOnce=You can only dash it for once\nThen you'll have to wait for it to stop to dash it again
entities.ChroniaHelper/ZipGlass.attributes.description.customSound=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipGlass.attributes.description.tweakShakes=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipGlass.attributes.description.tweakReturnParams=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipGlass.attributes.description.returnedIrrespondingTime=Zipmover won't be responding to player's interactions after its return for some time
entities.ChroniaHelper/ZipGlass.attributes.description.nodeSound=Whether the "start sound" will play on each node when zipmover leaves the node
entities.ChroniaHelper/ZipGlass.attributes.description.startDelay=The delay before the zipmover moves at the start
entities.ChroniaHelper/ZipGlass.attributes.description.starPath=A path relative to "Gameplay/"
entities.ChroniaHelper/ZipGlass.attributes.description.backgroundColor=The color that defines the water color, or the glass block body color
entities.ChroniaHelper/ZipGlass.attributes.description.timeUnits=If enabled, the speeds parameter will be read as time instead of multipliers
entities.ChroniaHelper/ZipGlass.attributes.description.nodeFlags=Use "{}" to create a group for multiple flags, if the group has only one flag, "{}" wouldn't be necessary\nSeperate groups by using a comma, example:"{a,b,c},d,{e,f}"\nIf this option isn't empty, the zipmover will be forced to wait at the nodes until all flags in the relative group are activated\nAs the example shown above, Group 1 would be flags "a", "b" and "c"\nGroup 2 would be flag "d", Group 3 would be flags "e" and "f"\nSo in order to allow zipmover go past node 1, all flags in Group 1 have to be true\nIn order to allow zipmover go past node 2, all flags in Group 2 have to be true\nNode 3 would be the same. If there is a node 4 but there's no group 4, the node 4 will be using flags of Group 3\nNotice that when this field isn't empty, each node delay in "delays" will work as a new "Start Delay" when the node flag is enabled
entities.ChroniaHelper/ZipGlass.attributes.description.returnSpeeds=The same as "node speeds", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the speed between final node and the node before final node
entities.ChroniaHelper/ZipGlass.attributes.description.returnDelays=The same as "delays", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the interval the zipmover will stay when reaching the first node backwards
entities.ChroniaHelper/ZipGlass.attributes.description.sideFlag=If enabled, the zipmover will also check on flag "synctag" when checking "ZipMoverSync:synctag"
entities.ChroniaHelper/ZipGlass.attributes.description.touchSensitive=Whether this zipmover can be activated by touching it (in vanilla you'd need to grab or stand on it)

# ================= Zip Water

entities.ChroniaHelper/ZipWater.placements.name.zipwater=Omni Zip Mover (Water Skin)
entities.ChroniaHelper/ZipWater.attributes.description.customSkin=The path to a directory with custom textures for this Connected Zip Mover. \nThis is relative to Graphics/Atlases/Gameplay.\nIn order to let the zipmover display correctly in Lonn, you'd need these files:\n"light01.png", "cog.png"
entities.ChroniaHelper/ZipWater.attributes.description.theme=If Custom Skin is not set, this determines the appearance of the Connected Zip Mover. \nThis also determines the sounds used. The Cliffside theme is a custom theme.
entities.ChroniaHelper/ZipWater.attributes.description.permanent=Whether the Connected Zip Mover should stay completely static after stopping.
entities.ChroniaHelper/ZipWater.attributes.description.waiting=Whether the Connected Zip Mover should wait for the player at each node. \nOnly useful if has more than one node.
entities.ChroniaHelper/ZipWater.attributes.description.ticking=Whether the Connected Zip Mover should be ticking at each node, forcing the player to reactivate it within a limited amount of time. \nWill return to initial position if the player doesn't reactivate it, or locks in place completely if "permanent" is on. \nOnly useful if has more than one node.
entities.ChroniaHelper/ZipWater.attributes.description.delays=Time that the zipmover will wait on each node by order, if you don't set it, \nthe default time would be 0.2s
entities.ChroniaHelper/ZipWater.attributes.description.easing=How zipmover will move between each node
entities.ChroniaHelper/ZipWater.attributes.description.nodeSpeeds=The speed multiplier for zipmover moving to each node, if not setting properly, the default value is 1\nIf the array length is smaller than the node counts, the last number will be used as the value for later nodes
entities.ChroniaHelper/ZipWater.attributes.description.ticks=How many ticks should there be before it returns if "ticking" enabled
entities.ChroniaHelper/ZipWater.attributes.description.tickDelay=The interval between each tick if "ticking" enabled
entities.ChroniaHelper/ZipWater.attributes.description.synced=If enabled, all synced zipmovers of the same "rope Color" will be activated together
entities.ChroniaHelper/ZipWater.attributes.description.syncTag=If empty, the tag will automatically be set to rope color\nYou can use the flag "ZipMoverSync:(Your SyncTag)" to activate this zipmover if "synced" enabled
entities.ChroniaHelper/ZipWater.attributes.description.dashable=Whether this zipmover can be activated and bounce the player up when player hit it with a dash\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipWater.attributes.description.onlyDashActivate=If enabled, player won't be able to activate it by touching it anymore
entities.ChroniaHelper/ZipWater.attributes.description.dashableOnce=You can only dash it for once\nThen you'll have to wait for it to stop to dash it again
entities.ChroniaHelper/ZipWater.attributes.description.customSound=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipWater.attributes.description.tweakShakes=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipWater.attributes.description.tweakReturnParams=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipWater.attributes.description.returnedIrrespondingTime=Zipmover won't be responding to player's interactions after its return for some time
entities.ChroniaHelper/ZipWater.attributes.description.nodeSound=Whether the "start sound" will play on each node when zipmover leaves the node
entities.ChroniaHelper/ZipWater.attributes.description.startDelay=The delay before the zipmover moves at the start
entities.ChroniaHelper/ZipWater.attributes.description.starPath=A path relative to "Gameplay/"
entities.ChroniaHelper/ZipWater.attributes.description.backgroundColor=The color that defines the water color, or the glass block body color
entities.ChroniaHelper/ZipWater.attributes.description.renderTank=Whether the water should look like it's contained in a glass tank
entities.ChroniaHelper/ZipWater.attributes.description.timeUnits=If enabled, the speeds parameter will be read as time instead of multipliers
entities.ChroniaHelper/ZipWater.attributes.description.nodeFlags=Use "{}" to create a group for multiple flags, if the group has only one flag, "{}" wouldn't be necessary\nSeperate groups by using a comma, example:"{a,b,c},d,{e,f}"\nIf this option isn't empty, the zipmover will be forced to wait at the nodes until all flags in the relative group are activated\nAs the example shown above, Group 1 would be flags "a", "b" and "c"\nGroup 2 would be flag "d", Group 3 would be flags "e" and "f"\nSo in order to allow zipmover go past node 1, all flags in Group 1 have to be true\nIn order to allow zipmover go past node 2, all flags in Group 2 have to be true\nNode 3 would be the same. If there is a node 4 but there's no group 4, the node 4 will be using flags of Group 3\nNotice that when this field isn't empty, each node delay in "delays" will work as a new "Start Delay" when the node flag is enabled
entities.ChroniaHelper/ZipWater.attributes.description.returnSpeeds=The same as "node speeds", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the speed between final node and the node before final node
entities.ChroniaHelper/ZipWater.attributes.description.returnDelays=The same as "delays", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the interval the zipmover will stay when reaching the first node backwards
entities.ChroniaHelper/ZipWater.attributes.description.sideFlag=If enabled, the zipmover will also check on flag "synctag" when checking "ZipMoverSync:synctag"
entities.ChroniaHelper/ZipWater.attributes.description.touchSensitive=Whether this zipmover can be activated by touching it (in vanilla you'd need to grab or stand on it)

# ================= Real Zip Water

entities.ChroniaHelper/OmniZipWater.placements.name.zipwater=Omni Zip Water
entities.ChroniaHelper/OmniZipWater.attributes.description.customSkin=The path to a directory with custom textures for this Connected Zip Mover. \nThis is relative to Graphics/Atlases/Gameplay.\nIn order to let the zipmover display correctly in Lonn, you'd need these files:\n"light01.png", "cog.png"
entities.ChroniaHelper/OmniZipWater.attributes.description.theme=If Custom Skin is not set, this determines the appearance of the Connected Zip Mover. \nThis also determines the sounds used. The Cliffside theme is a custom theme.
entities.ChroniaHelper/OmniZipWater.attributes.description.permanent=Whether the Connected Zip Mover should stay completely static after stopping.
entities.ChroniaHelper/OmniZipWater.attributes.description.waiting=Whether the Connected Zip Mover should wait for the player at each node. \nOnly useful if has more than one node.
entities.ChroniaHelper/OmniZipWater.attributes.description.ticking=Whether the Connected Zip Mover should be ticking at each node, forcing the player to reactivate it within a limited amount of time. \nWill return to initial position if the player doesn't reactivate it, or locks in place completely if "permanent" is on. \nOnly useful if has more than one node.
entities.ChroniaHelper/OmniZipWater.attributes.description.delays=Time that the zipmover will wait on each node by order, if you don't set it, \nthe default time would be 0.2s
entities.ChroniaHelper/OmniZipWater.attributes.description.easing=How zipmover will move between each node
entities.ChroniaHelper/OmniZipWater.attributes.description.nodeSpeeds=The speed multiplier for zipmover moving to each node, if not setting properly, the default value is 1\nIf the array length is smaller than the node counts, the last number will be used as the value for later nodes
entities.ChroniaHelper/OmniZipWater.attributes.description.ticks=How many ticks should there be before it returns if "ticking" enabled
entities.ChroniaHelper/OmniZipWater.attributes.description.tickDelay=The interval between each tick if "ticking" enabled
entities.ChroniaHelper/OmniZipWater.attributes.description.synced=If enabled, all synced zipmovers of the same "rope Color" will be activated together
entities.ChroniaHelper/OmniZipWater.attributes.description.syncTag=If empty, the tag will automatically be set to rope color\nYou can use the flag "ZipMoverSync:(Your SyncTag)" to activate this zipmover if "synced" enabled
entities.ChroniaHelper/OmniZipWater.attributes.description.dashable=Whether this zipmover can be activated and bounce the player up when player hit it with a dash\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipWater.attributes.description.onlyDashActivate=If enabled, player won't be able to activate it by touching it anymore
entities.ChroniaHelper/OmniZipWater.attributes.description.dashableOnce=You can only dash it for once\nThen you'll have to wait for it to stop to dash it again
entities.ChroniaHelper/OmniZipWater.attributes.description.customSound=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipWater.attributes.description.tweakShakes=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipWater.attributes.description.tweakReturnParams=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipWater.attributes.description.returnedIrrespondingTime=Zipmover won't be responding to player's interactions after its return for some time
entities.ChroniaHelper/OmniZipWater.attributes.description.nodeSound=Whether the "start sound" will play on each node when zipmover leaves the node
entities.ChroniaHelper/OmniZipWater.attributes.description.startDelay=The delay before the zipmover moves at the start
entities.ChroniaHelper/OmniZipWater.attributes.description.starPath=A path relative to "Gameplay/"
entities.ChroniaHelper/OmniZipWater.attributes.description.backgroundColor=The color that defines the water color, or the glass block body color
entities.ChroniaHelper/OmniZipWater.attributes.description.renderTank=Whether the water should look like it's contained in a glass tank
entities.ChroniaHelper/OmniZipWater.attributes.description.timeUnits=If enabled, the speeds parameter will be read as time instead of multipliers
entities.ChroniaHelper/OmniZipWater.attributes.description.nodeFlags=Use "{}" to create a group for multiple flags, if the group has only one flag, "{}" wouldn't be necessary\nSeperate groups by using a comma, example:"{a,b,c},d,{e,f}"\nIf this option isn't empty, the zipmover will be forced to wait at the nodes until all flags in the relative group are activated\nAs the example shown above, Group 1 would be flags "a", "b" and "c"\nGroup 2 would be flag "d", Group 3 would be flags "e" and "f"\nSo in order to allow zipmover go past node 1, all flags in Group 1 have to be true\nIn order to allow zipmover go past node 2, all flags in Group 2 have to be true\nNode 3 would be the same. If there is a node 4 but there's no group 4, the node 4 will be using flags of Group 3\nNotice that when this field isn't empty, each node delay in "delays" will work as a new "Start Delay" when the node flag is enabled
entities.ChroniaHelper/OmniZipWater.attributes.description.returnSpeeds=The same as "node speeds", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the speed between final node and the node before final node
entities.ChroniaHelper/OmniZipWater.attributes.description.returnDelays=The same as "delays", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the interval the zipmover will stay when reaching the first node backwards
entities.ChroniaHelper/OmniZipWater.attributes.description.sideFlag=If enabled, the zipmover will also check on flag "synctag" when checking "ZipMoverSync:synctag"
entities.ChroniaHelper/OmniZipWater.attributes.description.touchSensitive=Whether this zipmover can be activated by touching it (in vanilla you'd need to grab or stand on it)

# ================= Zip Bumper

entities.ChroniaHelper/OmniZipBumper.placements.name.zipbumper=Omni Zip Bumper
entities.ChroniaHelper/OmniZipBumper.attributes.description.customSkin=The path to a directory with custom textures for this Connected Zip Mover. \nThis is relative to Graphics/Atlases/Gameplay.\nIn order to let the zipmover display correctly in Lonn, you'd need these files:\n"light01.png", "cog.png"
entities.ChroniaHelper/OmniZipBumper.attributes.description.theme=If Custom Skin is not set, this determines the appearance of the Connected Zip Mover. \nThis also determines the sounds used. The Cliffside theme is a custom theme.
entities.ChroniaHelper/OmniZipBumper.attributes.description.permanent=Whether the Connected Zip Mover should stay completely static after stopping.
entities.ChroniaHelper/OmniZipBumper.attributes.description.waiting=Whether the Connected Zip Mover should wait for the player at each node. \nOnly useful if has more than one node.
entities.ChroniaHelper/OmniZipBumper.attributes.description.ticking=Whether the Connected Zip Mover should be ticking at each node, forcing the player to reactivate it within a limited amount of time. \nWill return to initial position if the player doesn't reactivate it, or locks in place completely if "permanent" is on. \nOnly useful if has more than one node.
entities.ChroniaHelper/OmniZipBumper.attributes.description.delays=Time that the zipmover will wait on each node by order, if you don't set it, \nthe default time would be 0.2s
entities.ChroniaHelper/OmniZipBumper.attributes.description.easing=How zipmover will move between each node
entities.ChroniaHelper/OmniZipBumper.attributes.description.nodeSpeeds=The speed multiplier for zipmover moving to each node, if not setting properly, the default value is 1\nIf the array length is smaller than the node counts, the last number will be used as the value for later nodes
entities.ChroniaHelper/OmniZipBumper.attributes.description.ticks=How many ticks should there be before it returns if "ticking" enabled
entities.ChroniaHelper/OmniZipBumper.attributes.description.tickDelay=The interval between each tick if "ticking" enabled
entities.ChroniaHelper/OmniZipBumper.attributes.description.synced=If enabled, all synced zipmovers of the same "rope Color" will be activated together
entities.ChroniaHelper/OmniZipBumper.attributes.description.syncTag=If empty, the tag will automatically be set to rope color\nYou can use the flag "ZipMoverSync:(Your SyncTag)" to activate this zipmover if "synced" enabled
entities.ChroniaHelper/OmniZipBumper.attributes.description.dashable=Whether this zipmover can be activated and bounce the player up when player hit it with a dash\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipBumper.attributes.description.onlyDashActivate=If enabled, player won't be able to activate it by touching it anymore
entities.ChroniaHelper/OmniZipBumper.attributes.description.dashableOnce=You can only dash it for once\nThen you'll have to wait for it to stop to dash it again
entities.ChroniaHelper/OmniZipBumper.attributes.description.customSound=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipBumper.attributes.description.tweakShakes=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipBumper.attributes.description.tweakReturnParams=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/OmniZipBumper.attributes.description.returnedIrrespondingTime=Zipmover won't be responding to player's interactions after its return for some time
entities.ChroniaHelper/OmniZipBumper.attributes.description.nodeSound=Whether the "start sound" will play on each node when zipmover leaves the node
entities.ChroniaHelper/OmniZipBumper.attributes.description.startDelay=The delay before the zipmover moves at the start
entities.ChroniaHelper/OmniZipBumper.attributes.description.starPath=A path relative to "Gameplay/"
entities.ChroniaHelper/OmniZipBumper.attributes.description.backgroundColor=The color that defines the water color, or the glass block body color
entities.ChroniaHelper/OmniZipBumper.attributes.description.renderTank=Whether the water should look like it's contained in a glass tank
entities.ChroniaHelper/OmniZipBumper.attributes.description.timeUnits=If enabled, the speeds parameter will be read as time instead of multipliers
entities.ChroniaHelper/OmniZipBumper.attributes.description.nodeFlags=Use "{}" to create a group for multiple flags, if the group has only one flag, "{}" wouldn't be necessary\nSeperate groups by using a comma, example:"{a,b,c},d,{e,f}"\nIf this option isn't empty, the zipmover will be forced to wait at the nodes until all flags in the relative group are activated\nAs the example shown above, Group 1 would be flags "a", "b" and "c"\nGroup 2 would be flag "d", Group 3 would be flags "e" and "f"\nSo in order to allow zipmover go past node 1, all flags in Group 1 have to be true\nIn order to allow zipmover go past node 2, all flags in Group 2 have to be true\nNode 3 would be the same. If there is a node 4 but there's no group 4, the node 4 will be using flags of Group 3\nNotice that when this field isn't empty, each node delay in "delays" will work as a new "Start Delay" when the node flag is enabled
entities.ChroniaHelper/OmniZipBumper.attributes.description.returnSpeeds=The same as "node speeds", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the speed between final node and the node before final node
entities.ChroniaHelper/OmniZipBumper.attributes.description.returnDelays=The same as "delays", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the interval the zipmover will stay when reaching the first node backwards
entities.ChroniaHelper/OmniZipBumper.attributes.description.sideFlag=If enabled, the zipmover will also check on flag "synctag" when checking "ZipMoverSync:synctag"
entities.ChroniaHelper/OmniZipBumper.attributes.description.touchSensitive=Whether this zipmover can be activated by touching it (in vanilla you'd need to grab or stand on it)

# ================= Zip Dream

entities.ChroniaHelper/ZipDream.placements.name.zipdreamblock=Omni Zip Mover (Dream Block Skin)
entities.ChroniaHelper/ZipDream.attributes.description.customSkin=The path to a directory with custom textures for this Connected Zip Mover. \nThis is relative to Graphics/Atlases/Gameplay.\nIn order to let the zipmover display correctly in Lonn, you'd need these files:\n"light01.png", "cog.png"
entities.ChroniaHelper/ZipDream.attributes.description.theme=If Custom Skin is not set, this determines the appearance of the Connected Zip Mover. \nThis also determines the sounds used. The Cliffside theme is a custom theme.
entities.ChroniaHelper/ZipDream.attributes.description.permanent=Whether the Connected Zip Mover should stay completely static after stopping.
entities.ChroniaHelper/ZipDream.attributes.description.waiting=Whether the Connected Zip Mover should wait for the player at each node. \nOnly useful if has more than one node.
entities.ChroniaHelper/ZipDream.attributes.description.ticking=Whether the Connected Zip Mover should be ticking at each node, forcing the player to reactivate it within a limited amount of time. \nWill return to initial position if the player doesn't reactivate it, or locks in place completely if "permanent" is on. \nOnly useful if has more than one node.
entities.ChroniaHelper/ZipDream.attributes.description.delays=Time that the zipmover will wait on each node by order, if you don't set it, \nthe default time would be 0.2s
entities.ChroniaHelper/ZipDream.attributes.description.easing=How zipmover will move between each node
entities.ChroniaHelper/ZipDream.attributes.description.nodeSpeeds=The speed multiplier for zipmover moving to each node, if not setting properly, the default value is 1\nIf the array length is smaller than the node counts, the last number will be used as the value for later nodes
entities.ChroniaHelper/ZipDream.attributes.description.ticks=How many ticks should there be before it returns if "ticking" enabled
entities.ChroniaHelper/ZipDream.attributes.description.tickDelay=The interval between each tick if "ticking" enabled
entities.ChroniaHelper/ZipDream.attributes.description.synced=If enabled, all synced zipmovers of the same "rope Color" will be activated together
entities.ChroniaHelper/ZipDream.attributes.description.syncTag=If empty, the tag will automatically be set to rope color\nYou can use the flag "ZipMoverSync:(Your SyncTag)" to activate this zipmover if "synced" enabled
entities.ChroniaHelper/ZipDream.attributes.description.dashable=Whether this zipmover can be activated and bounce the player up when player hit it with a dash\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipDream.attributes.description.onlyDashActivate=If enabled, player won't be able to activate it by touching it anymore
entities.ChroniaHelper/ZipDream.attributes.description.dashableOnce=You can only dash it for once\nThen you'll have to wait for it to stop to dash it again
entities.ChroniaHelper/ZipDream.attributes.description.customSound=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipDream.attributes.description.tweakShakes=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipDream.attributes.description.tweakReturnParams=ENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/ZipDream.attributes.description.returnedIrrespondingTime=Zipmover won't be responding to player's interactions after its return for some time
entities.ChroniaHelper/ZipDream.attributes.description.nodeSound=Whether the "start sound" will play on each node when zipmover leaves the node
entities.ChroniaHelper/ZipDream.attributes.description.startDelay=The delay before the zipmover moves at the start
entities.ChroniaHelper/ZipDream.attributes.description.starPath=A path relative to "Gameplay/"
entities.ChroniaHelper/ZipDream.attributes.description.backgroundColor=The color that defines the water color, or the glass block body color
entities.ChroniaHelper/ZipDream.attributes.description.timeUnits=If enabled, the speeds parameter will be read as time instead of multipliers
entities.ChroniaHelper/ZipDream.attributes.description.nodeFlags=Use "{}" to create a group for multiple flags, if the group has only one flag, "{}" wouldn't be necessary\nSeperate groups by using a comma, example:"{a,b,c},d,{e,f}"\nIf this option isn't empty, the zipmover will be forced to wait at the nodes until all flags in the relative group are activated\nAs the example shown above, Group 1 would be flags "a", "b" and "c"\nGroup 2 would be flag "d", Group 3 would be flags "e" and "f"\nSo in order to allow zipmover go past node 1, all flags in Group 1 have to be true\nIn order to allow zipmover go past node 2, all flags in Group 2 have to be true\nNode 3 would be the same. If there is a node 4 but there's no group 4, the node 4 will be using flags of Group 3\nNotice that when this field isn't empty, each node delay in "delays" will work as a new "Start Delay" when the node flag is enabled
entities.ChroniaHelper/ZipDream.attributes.description.returnSpeeds=The same as "node speeds", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the speed between final node and the node before final node
entities.ChroniaHelper/ZipDream.attributes.description.returnDelays=The same as "delays", but the number sequence is reversed when working on zipmover\nSimply speaking, the first number refers to the interval the zipmover will stay when reaching the first node backwards
entities.ChroniaHelper/ZipDream.attributes.description.sideFlag=If enabled, the zipmover will also check on flag "synctag" when checking "ZipMoverSync:synctag"
entities.ChroniaHelper/ZipDream.attributes.description.touchSensitive=Whether this zipmover can be activated by touching it (in vanilla you'd need to grab or stand on it)

# ================= Flag Touch Switch Wall

entities.ChroniaHelper/FlagTouchSwitch.placements.name.touch_switch=~ Chronia Touch Switch / Chronia Switch Wall
entities.ChroniaHelper/FlagTouchSwitch.placements.description.touch_switch=This entity is now mended into and handled by Maddie's Helping Hand
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.flag=The session flag this touch switch sets. Give the same to multiple touch switches and switch gates to group them.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.icon=The name of the icon for the touch switch (relative to objects/MaxHelpingHand/flagTouchSwitch), or "vanilla" for the default one.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.borderTexture=The path to the texture to use for the background of the icon.\nTo make your own, place it in your mod folder in Graphics/Atlases/Gameplay/myfolder/myborder.png, then type "myfolder/myborder" here.\nThe vanilla border can be found in the graphics dump, at Graphics/Atlases/Gameplay/objects/touchswitch/container.png.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.persistent=If enabled, the touch switch will stay active when the player dies or changes rooms.\nThis touch switch will also set a flag when it is enabled: [flagName]_switch[entityID]
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.inactiveColor=The switch color when not triggered yet.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.activeColor=The switch color when triggered, but the group is not complete yet.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.finishColor=The switch color when the group is complete.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.smoke=Whether the touch switch emits smoke when the group is complete.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.inverted=Whether the touch switch should turn off the flag instead of turning it on. The option should match on all touch switches of the group.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.allowDisable=Whether the touch switch can be disabled once the group is complete, if the flag change is reverted. Does not work with non-persistent flag switch gates.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.playerCanActivate=Whether the player can activate the touch switch. If not, only throwables can activate it.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.hitSound=The sound played when the switch is hit by the player.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.completeSoundFromSwitch=The sound emitted by the latest switch collected when the group is complete.
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.completeSoundFromScene=A global sound emitted when the group is complete. As opposed to "Complete Sound (Switch)", this sound isn't emitted by a particular switch.
entities.ChroniaHelper/FlagTouchSwitch.attributes.name.completeSoundFromSwitch=Complete Sound (Switch)
entities.ChroniaHelper/FlagTouchSwitch.attributes.name.completeSoundFromScene=Complete Sound (Global)
entities.ChroniaHelper/FlagTouchSwitch.attributes.description.hideIfFlag=If a session flag is specified here, turning it on will make the touch switch disappear, and will make other touch switches in the room ignore it for the group's completion.

# ================= Moving Flag Touch Switch

entities.ChroniaHelper/MovingFlagTouchSwitch.placements.name.touch_switch=Flag Touch Switch (Moving)
entities.ChroniaHelper/MovingFlagTouchSwitch.attributes.description.flag=The session flag this touch switch sets. Give the same to multiple touch switches and switch gates to group them.
entities.ChroniaHelper/MovingFlagTouchSwitch.attributes.description.icon=The name of the icon for the touch switch (relative to objects/ChroniaHelper/flagTouchSwitch), or "vanilla" for the default one.
entities.ChroniaHelper/MovingFlagTouchSwitch.attributes.description.persistent=If enabled, the touch switch will stay active when the player dies or changes rooms.\nThis touch switch will also set a flag when it is enabled: [flagName]_switch[entityID]
entities.ChroniaHelper/MovingFlagTouchSwitch.attributes.description.movingDelay=The time (in seconds) the touch switch takes to move from one position to another.
entities.ChroniaHelper/MovingFlagTouchSwitch.attributes.description.inactiveColor=The switch color when not triggered yet.
entities.ChroniaHelper/MovingFlagTouchSwitch.attributes.description.movingColor=The switch color when it is moving between two positions.
entities.ChroniaHelper/MovingFlagTouchSwitch.attributes.description.activeColor=The switch color when triggered, but the group is not complete yet.
entities.ChroniaHelper/MovingFlagTouchSwitch.attributes.description.finishColor=The switch color when the group is complete.
entities.ChroniaHelper/MovingFlagTouchSwitch.attributes.description.hideIfFlag=If a session flag is specified here, turning it on will make the touch switch disappear, and will make other touch switches in the room ignore it for the group's completion.

# ================= Flag Switch Gate

entities.ChroniaHelper/FlagSwitchGate.placements.name.block=~ Chronia Switch Gate (Block)
entities.ChroniaHelper/FlagSwitchGate.placements.name.mirror=~ Chronia Switch Gate (Mirror)
entities.ChroniaHelper/FlagSwitchGate.placements.name.temple=~ Chronia Switch Gate (Temple)
entities.ChroniaHelper/FlagSwitchGate.placements.name.stars=~ Chronia Switch Gate (Stars)
entities.ChroniaHelper/FlagSwitchGate.placements.description.block=This entity is now mended into and handled by Maddie's Helping Hand
entities.ChroniaHelper/FlagSwitchGate.placements.description.mirror=This entity is now mended into and handled by Maddie's Helping Hand
entities.ChroniaHelper/FlagSwitchGate.placements.description.temple=This entity is now mended into and handled by Maddie's Helping Hand
entities.ChroniaHelper/FlagSwitchGate.placements.description.stars=This entity is now mended into and handled by Maddie's Helping Hand
entities.ChroniaHelper/FlagSwitchGate.attributes.description.flag=The session flag this switch gate reacts to. Give the same to multiple touch switches and switch gates to group them.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.icon=The name of the icon for the switch gate (relative to objects/MaxHelpingHand/flagSwitchGate), or "vanilla" for the default one.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.persistent=If enabled, the switch gate will stay open when the player dies or changes rooms.\nThis switch gate will also set a flag when it is enabled: [flagName]_gate[entityID]
entities.ChroniaHelper/FlagSwitchGate.attributes.description.inactiveColor=The gate icon color when not triggered yet.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.activeColor=The gate icon color when triggered, but the group is not complete yet.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.finishColor=The gate icon color when the group is complete.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.sprite=The texture for the gate block.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.shakeTime=The time (in seconds) the block spends shaking before starting to move. Vanilla value is 0.5 seconds.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.moveTime=The time (in seconds) the block takes to move to its destination after shaking. Vanilla value is 1.8 seconds.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.moveEased=Whether the block should slow down before reaching its final position. If unchecked, the block will move at constant speed.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.allowReturn=Whether the block should return to its original position if the flag is turned off. Only works if the gate is persistent.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.moveSound=The sound played by the gate when it starts moving.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.finishedSound=The sound played by the gate when it is done moving.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.smoke=Whether the switch gate should emit smoke when reaching its final position.
entities.ChroniaHelper/FlagSwitchGate.attributes.description.surfaceIndex=Footstep sound when walking on the switch gate.

# ================= Camera Offset

triggers.ChroniaHelper/AxisCameraOffset.placements.name.AxisCameraOffset=Camera Offset
triggers.ChroniaHelper/SmoothToOffsetCamera.placements.name.SmoothToOffsetCamera=Smooth Camera Offset
triggers.ChroniaHelper/AxisCameraOffset.attributes.description.units=The offset length unit presets\n"offset", using the default setting\n"offsetSquared", offset 1.0 = 48 px\n"tiles", offset 1.0 = 8 px

# ================= Refill

entities.ChroniaHelper/Refill.placements.name.Refill=Refill
entities.ChroniaHelper/Refill.placements.name.TwoDashesRefill=Refill (Two Dashes)
entities.ChroniaHelper/Refill.attributes.description.freeze=The number of freeze frames
entities.ChroniaHelper/Refill.attributes.description.fewerMode=When player's certain value is less than the "fewer" parameters,\nthe player will be able to interact with this entity\notherwise, they can't
entities.ChroniaHelper/Refill.attributes.description.resetMode=The effect of this entity when player interacts
entities.ChroniaHelper/Refill.attributes.description.sprite=The sprite or animation folder for the refill, relative to Gameplay folder\nIf it ends with a "/", then it will read the image arrays inside it\nIf not, it'll be read as a standalone image\nIf it's a folder, you should have several image arrays: "idle", "flash", and "outline"
entities.ChroniaHelper/Refill.attributes.description.connectedTag=If not empty, the refills with the same tag will be triggered together when one of them is collected \nThen they'll enter their own respawning process \nIf you wanna queue a refill using a flag so that it can be triggered once the player satisfies the normal refill conditions(no stamina, no dash etc.) \nUse flag "ChroniaHelper_ConnectedRefill_{Refill ID Number}_queue" in game \nFor example, if this Refill is labelled ID: 5 in Lonn, then the queue flag should be "ChroniaHelper_ConnectedRefill_5_queue" \nIf you wanna force collect a refill using a flag \nUse flag "ChroniaHelper_ConnectedRefill_{Refill ID Number}_collect" in game \nFor example, if this Refill is labelled ID: 7 in Lonn, then the queue flag should be "ChroniaHelper_ConnectedRefill_7_collect"

# ================= Refill Wall

entities.ChroniaHelper/RefillWall.placements.name.RefillWall=Refill Wall
entities.ChroniaHelper/RefillWall.placements.name.TwoDashesRefillWall=Refill Wall (Two Dashes)
entities.ChroniaHelper/RefillWall.attributes.description.freeze=The number of freeze frames
entities.ChroniaHelper/RefillWall.attributes.description.fewerMode=When player's certain value is less than the "fewer" parameters,\nthe player will be able to interact with this entity\notherwise, they can't
entities.ChroniaHelper/RefillWall.attributes.description.resetMode=The effect of this entity when player interacts
entities.ChroniaHelper/RefillWall.attributes.description.sprite=The sprite or animation folder for the refill, relative to Gameplay folder\nIf it ends with a "/", then it will read the image arrays inside it\nIf not, it'll be read as a standalone image\nIf it's a folder, you should have several image arrays: "idle", "flash", and "outline"
entities.ChroniaHelper/RefillWall.attributes.description.connectedTag=If not empty, the refills with the same tag will be triggered together when one of them is collected \nThen they'll enter their own respawning process \nIf you wanna queue a refill using a flag so that it can be triggered once the player satisfies the normal refill conditions(no stamina, no dash etc.) \nUse flag "ChroniaHelper_ConnectedRefill_{Refill ID Number}_queue" in game \nFor example, if this Refill is labelled ID: 5 in Lonn, then the queue flag should be "ChroniaHelper_ConnectedRefill_5_queue" \nIf you wanna force collect a refill using a flag \nUse flag "ChroniaHelper_ConnectedRefill_{Refill ID Number}_collect" in game \nFor example, if this Refill is labelled ID: 7 in Lonn, then the queue flag should be "ChroniaHelper_ConnectedRefill_7_collect"

# ================= Refill Circle

entities.ChroniaHelper/RefillCircle.placements.name.RefillCircle=Refill Circle
entities.ChroniaHelper/RefillCircle.placements.name.TwoDashesRefillCircle=Refill Circle (Two Dashes)
entities.ChroniaHelper/RefillCircle.attributes.description.freeze=The number of freeze frames
entities.ChroniaHelper/RefillCircle.attributes.description.fewerMode=When player's certain value is less than the "fewer" parameters,\nthe player will be able to interact with this entity\notherwise, they can't
entities.ChroniaHelper/RefillCircle.attributes.description.resetMode=The effect of this entity when player interacts
entities.ChroniaHelper/RefillCircle.attributes.description.sprite=The sprite or animation folder for the refill, relative to Gameplay folder\nIf it ends with a "/", then it will read the image arrays inside it\nIf not, it'll be read as a standalone image\nIf it's a folder, you should have several image arrays: "idle", "flash", and "outline"
entities.ChroniaHelper/RefillCircle.attributes.description.connectedTag=If not empty, the refills with the same tag will be triggered together when one of them is collected \nThen they'll enter their own respawning process \nIf you wanna queue a refill using a flag so that it can be triggered once the player satisfies the normal refill conditions(no stamina, no dash etc.) \nUse flag "ChroniaHelper_ConnectedRefill_{Refill ID Number}_queue" in game \nFor example, if this Refill is labelled ID: 5 in Lonn, then the queue flag should be "ChroniaHelper_ConnectedRefill_5_queue" \nIf you wanna force collect a refill using a flag \nUse flag "ChroniaHelper_ConnectedRefill_{Refill ID Number}_collect" in game \nFor example, if this Refill is labelled ID: 7 in Lonn, then the queue flag should be "ChroniaHelper_ConnectedRefill_7_collect"

# ================= Advanced Spikes

entities.ChroniaHelper/UpAdvancedSpikes.placements.name.UpAdvancedSpikes=Advanced Spikes (Up)
entities.ChroniaHelper/DownAdvancedSpikes.placements.name.DownAdvancedSpikes=Advanced Spikes (Down)
entities.ChroniaHelper/LeftAdvancedSpikes.placements.name.LeftAdvancedSpikes=Advanced Spikes (Left)
entities.ChroniaHelper/RightAdvancedSpikes.placements.name.RightAdvancedSpikes=Advanced Spikes (Right)

entities.ChroniaHelper/UpAdvancedSpikes.attributes.description.sprite=The texture of the spikes, relative to "Gameplay/"\nExample path: "path/to/file/texture"\nThen the files should be like this: "texture_up00.png"
entities.ChroniaHelper/UpAdvancedSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/UpAdvancedSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/UpAdvancedSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/UpAdvancedSpikes.attributes.description.randomTexture=If enabled, all spike sprites will be randomly chosen in game like the default spikes do\nIf disabled, only "texture_(direction)00.png" will be used
entities.ChroniaHelper/UpAdvancedSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

entities.ChroniaHelper/DownAdvancedSpikes.attributes.description.sprite=The texture of the spikes, relative to "Gameplay/"\nExample path: "path/to/file/texture"\nThen the files should be like this: "texture_up00.png"
entities.ChroniaHelper/DownAdvancedSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/DownAdvancedSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/DownAdvancedSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/DownAdvancedSpikes.attributes.description.randomTexture=If enabled, all spike sprites will be randomly chosen in game like the default spikes do\nIf disabled, only "texture_(direction)00.png" will be used
entities.ChroniaHelper/DownAdvancedSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

entities.ChroniaHelper/LeftAdvancedSpikes.attributes.description.sprite=The texture of the spikes, relative to "Gameplay/"\nExample path: "path/to/file/texture"\nThen the files should be like this: "texture_up00.png"
entities.ChroniaHelper/LeftAdvancedSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/LeftAdvancedSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/LeftAdvancedSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/LeftAdvancedSpikes.attributes.description.randomTexture=If enabled, all spike sprites will be randomly chosen in game like the default spikes do\nIf disabled, only "texture_(direction)00.png" will be used
entities.ChroniaHelper/LeftAdvancedSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

entities.ChroniaHelper/RightAdvancedSpikes.attributes.description.sprite=The texture of the spikes, relative to "Gameplay/"\nExample path: "path/to/file/texture"\nThen the files should be like this: "texture_up00.png"
entities.ChroniaHelper/RightAdvancedSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear\nENABLE TO SEE MORE OPTIONS
entities.ChroniaHelper/RightAdvancedSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/RightAdvancedSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/RightAdvancedSpikes.attributes.description.randomTexture=If enabled, all spike sprites will be randomly chosen in game like the default spikes do\nIf disabled, only "texture_(direction)00.png" will be used
entities.ChroniaHelper/RightAdvancedSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

# ================= Animated Spikes

entities.ChroniaHelper/UpAnimatedSpikes.placements.name.UpAnimatedSpikes=Animated Spikes (Up)
entities.ChroniaHelper/DownAnimatedSpikes.placements.name.DownAnimatedSpikes=Animated Spikes (Down)
entities.ChroniaHelper/LeftAnimatedSpikes.placements.name.LeftAnimatedSpikes=Animated Spikes (Left)
entities.ChroniaHelper/RightAnimatedSpikes.placements.name.RightAnimatedSpikes=Animated Spikes (Right)

entities.ChroniaHelper/UpAnimatedSpikes.attributes.description.disabledSprite=The sprite to use for the spikes when it's not triggered, the path begins after "Gameplay/"\nYour file should be named like "textureName_up00.png", for example if your file is "Gameplay/danger/mySpikes_up00.png"\nYou'd want to fill in "danger/mySpikes"
entities.ChroniaHelper/LeftAnimatedSpikes.attributes.description.disabledSprite=The sprite to use for the spikes when it's not triggered, the path begins after "Gameplay/"\nYour file should be named like "textureName_up00.png", for example if your file is "Gameplay/danger/mySpikes_up00.png"\nYou'd want to fill in "danger/mySpikes"
entities.ChroniaHelper/RightAnimatedSpikes.attributes.description.disabledSprite=The sprite to use for the spikes when it's not triggered, the path begins after "Gameplay/"\nYour file should be named like "textureName_up00.png", for example if your file is "Gameplay/danger/mySpikes_up00.png"\nYou'd want to fill in "danger/mySpikes"
entities.ChroniaHelper/DownAnimatedSpikes.attributes.description.disabledSprite=The sprite to use for the spikes when it's not triggered, the path begins after "Gameplay/"\nYour file should be named like "textureName_up00.png", for example if your file is "Gameplay/danger/mySpikes_up00.png"\nYou'd want to fill in "danger/mySpikes"
entities.ChroniaHelper/DownAnimatedSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

entities.ChroniaHelper/UpAnimatedSpikes.attributes.description.enabledSprite=The sprite to use for the spikes when it's not triggered, the path begins after "Gameplay/"\nYour file should be named like "textureName_up00.png", for example if your file is "Gameplay/danger/mySpikes_up00.png"\nYou'd want to fill in "danger/mySpikes"
entities.ChroniaHelper/LeftAnimatedSpikes.attributes.description.enabledSprite=The sprite to use for the spikes when it's not triggered, the path begins after "Gameplay/"\nYour file should be named like "textureName_up00.png", for example if your file is "Gameplay/danger/mySpikes_up00.png"\nYou'd want to fill in "danger/mySpikes"
entities.ChroniaHelper/RightAnimatedSpikes.attributes.description.enabledSprite=The sprite to use for the spikes when it's not triggered, the path begins after "Gameplay/"\nYour file should be named like "textureName_up00.png", for example if your file is "Gameplay/danger/mySpikes_up00.png"\nYou'd want to fill in "danger/mySpikes"
entities.ChroniaHelper/DownAnimatedSpikes.attributes.description.enabledSprite=The sprite to use for the spikes when it's not triggered, the path begins after "Gameplay/"\nYour file should be named like "textureName_up00.png", for example if your file is "Gameplay/danger/mySpikes_up00.png"\nYou'd want to fill in "danger/mySpikes"
entities.ChroniaHelper/DownAnimatedSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

entities.ChroniaHelper/UpAnimatedSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear
entities.ChroniaHelper/UpAnimatedSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/UpAnimatedSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/UpAnimatedSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

entities.ChroniaHelper/DownAnimatedSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear
entities.ChroniaHelper/DownAnimatedSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/DownAnimatedSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/DownAnimatedSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

entities.ChroniaHelper/LeftAnimatedSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear
entities.ChroniaHelper/LeftAnimatedSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/LeftAnimatedSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/LeftAnimatedSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

entities.ChroniaHelper/RightAdvancedSpikes.attributes.description.trigger=If enabled, the spikes will work like timed spikes\nIf disabled, the spikes would work like normal spikes\nNotice! If you enable "Wait For Player Leave", the "Trigger Delay" timer would work\nas the interval between your jump-off from the spikes and the spikes appear
entities.ChroniaHelper/RightAdvancedSpikes.attributes.description.triggerDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to come out
entities.ChroniaHelper/RightAdvancedSpikes.attributes.description.retractDelay=If "trigger" enabled, this parameter will be the time it takes for the spikes to retract and be safe to interact again\nSetting Retract Delay <= 0 will disable the feature
entities.ChroniaHelper/RightAdvancedSpikes.attributes.description.childMode=If you don't want the entity to kill player, set up an ID of a Danger Bubbler as the return target here

# ================= Crumble Block

entities.ChroniaHelper/CrumbleBlock.placements.name.CrumbleBlock=Crumble Block
entities.ChroniaHelper/CrumbleBlock.attributes.description.crumbleDelayTouchTop=If player's touching the top of this block\nTouchTop Delay or JumpOff delay being above 0 will activate the crumbling\nBut Jumpoff Delay prioritizes
entities.ChroniaHelper/CrumbleBlock.attributes.description.crumbleDelayOnClimb=If player is climbing, this timer will override the other timers
entities.ChroniaHelper/CrumbleBlock.attributes.description.crumbleDelayJumpoff=If player's touching the top of this block\nTouchTop Delay or JumpOff delay being above 0 will activate the crumbling\nBut Jumpoff Delay prioritizes

# ================= Corner Boost Block

entities.ChroniaHelper/CornerBoostBlock.placements.name.CornerBoostBlock=Corner Boost Block

# ================= Moon Boost Block

entities.ChroniaHelper/MoonBoostBlock.placements.name.MoonBoostBlock=Moon Boost Block

# ================= No Coyote Time Block

entities.ChroniaHelper/NoCoyoteTimeBlock.placements.name.NoCoyoteTimeBlock=No Coyote Time Block

# ================= Flag Triggers (Yocto Legacy)

triggers.ChroniaHelper/FlagAddTrigger.placements.name.FlagAddTrigger=Flag Add Trigger
triggers.ChroniaHelper/FlagRemoveTrigger.placements.name.FlagRemoveTrigger=Flag Remove Trigger
triggers.ChroniaHelper/FlagClearTrigger.placements.name.FlagClearTrigger=Flag Clear Trigger
triggers.ChroniaHelper/FlagReplaceTrigger.placements.name.FlagReplaceTrigger=Flag Replace Trigger
triggers.ChroniaHelper/FlagIfTrigger.placements.name.FlagIfTrigger=Flag If Trigger
triggers.ChroniaHelper/FlagSwitchTrigger.placements.name.FlagSwitchTrigger=Flag Switch Trigger
triggers.ChroniaHelper/FlagListTrigger.placements.name.FlagListTrigger=Flag List Trigger
triggers.ChroniaHelper/FlagChooseTrigger.placements.name.FlagChooseTrigger=Flag Choose Trigger
triggers.ChroniaHelper/FlagRandomTrigger.placements.name.FlagRandomTrigger=Flag Random Trigger
triggers.ChroniaHelper/FlagCarouselTrigger.placements.name.FlagCarouselTrigger=Flag Carousel Trigger
triggers.ChroniaHelper/FlagCarouselManageTrigger.placements.name.FlagCarouselManageTrigger=Flag Carousel Manage Trigger
triggers.ChroniaHelper/FlagStateTrigger.placements.name.FlagStateTrigger=Flag State Trigger

triggers.ChroniaHelper/FlagCarouselTrigger.attributes.description.carouselId=The id number for this carousel list.\nNotice! Each trigger can only have ONE carousel id.
triggers.ChroniaHelper/FlagCarouselManageTrigger.attributes.description.carouselId=The id number for this carousel list.\nNotice! Each trigger can only have ONE carousel id.
triggers.ChroniaHelper/FlagListTrigger.attributes.description.flagList=A list of flags like "{a,b,c},{d,e},f..."\nEach time a player interact with this trigger, this list will step forward\nOn the given example, the first time you touch this trigger, flag "a","b" and "c" will be active\nYou touch it again, those flags will be removed and "d" and "e" will be active. Then next time "f" will be active.
triggers.ChroniaHelper/FlagChooseTrigger.attributes.description.flagDictionary=A list of flags like "{a1, a2: b}"\nWhen "a1" and "a2" are both acvtive and player touches the trigger, "b" will be active.\nIf "MultiExecute" enabled, you can input multiple lines of this seperated by a comma.\nFor example, "{a1, a2: b}, {b1, b2: c1, c2}..."

triggers.ChroniaHelper/FlagIfTrigger.attributes.description.trueFlag=The flag to activate when interacting with the trigger and "If Flag" is true
triggers.ChroniaHelper/FlagIfTrigger.attributes.description.falseFlag=The flag to activate when interacting with the trigger and "If Flag" is false

triggers.ChroniaHelper/FlagRandomTrigger.attributes.description.randomFlagDictionary=A list of flags and numbers, the number defines the probability scale when player interact with this trigger and the trigger randomly activate flags\nEach definition group is seperated by a comma, and each group looks like this:"{flags:scale}"\nFor example. if I write "{a,b:1},{c,d,e:2.5},{f:6.5}"\When players interact with flags "a" and "b" have 10% chance to be triggered,\nflags "c" ,"d" and "e" have 25% chance to be triggered,\nflag "f" have 65% chance to be triggered

triggers.ChroniaHelper/FlagSwitchTrigger.attributes.description.defaultFlag=Whether one of the flags needs to be active for this trigger to work

# ================= Teleport Trigger (Yocto Legacy)

triggers.ChroniaHelper/TeleportPositionTrigger.placements.name.TeleportPositionTrigger=Teleport Position Trigger
triggers.ChroniaHelper/TeleportTargetTrigger.placements.name.TeleportTargetTrigger=Teleport Target Trigger

# ================= Target Id Trigger (Yocto Legacy)

triggers.ChroniaHelper/TargetIdTrigger.placements.name.TargetIdTrigger=Target Id Trigger

# ================= Bloom Trigger (Yocto Legacy)

triggers.ChroniaHelper/BloomTrigger.placements.name.BloomTrigger=Bloom Trigger
triggers.ChroniaHelper/BloomFadeTrigger.placements.name.BloomFadeTrigger=Bloom Fade Trigger

# ================= Lighting Trigger (Yocto Legacy)

triggers.ChroniaHelper/LightingTrigger.placements.name.LightingTrigger=Lighting Trigger
triggers.ChroniaHelper/LightingFadeTrigger.placements.name.LightingFadeTrigger=Lighting Fade Trigger

# ================= Music Trigger (Yocto Legacy)

triggers.ChroniaHelper/MusicTrigger.placements.name.MusicTrigger=Music Trigger
triggers.ChroniaHelper/MusicFadeTrigger.placements.name.MusicFadeTrigger=Music Fade Trigger

# ================= Ambience Trigger (Yocto Legacy)

triggers.ChroniaHelper/AmbienceTrigger.placements.name.AmbienceTrigger=Ambience Trigger
triggers.ChroniaHelper/AmbienceFadeTrigger.placements.name.AmbienceFadeTrigger=Ambience Fade Trigger

# ================= Sub Pixel Trigger (Yocto Legacy)

triggers.ChroniaHelper/SubPixelTrigger.placements.name.SubPixelTrigger=Sub Pixel Trigger
triggers.ChroniaHelper/SubPixelTrigger.attributes.description.subPixelX=When player enters the map, their default subpixelX is 0.5,\nand this value is the relative to it, for example, if you want to set the player sub-pixelX to 0.9\nyou should fill in 0.4
triggers.ChroniaHelper/SubPixelTrigger.attributes.description.subPixelY=When player enters the map, their default subpixelY is 0.5,\nand this value is the relative to it, for example, if you want to set the player sub-pixelX to 0.9\nyou should fill in 0.4

# ================= Fast Fall Collider Trigger (Yocto Legacy)

triggers.ChroniaHelper/FastFallColliderTrigger.placements.name.FastFallColliderTrigger=Fast Fall Collider Trigger

# ================= Custom Core Message

entities.ChroniaHelper/CustomCoreMessage.placements.name.CustomCoreMessage=Custom Core Message
entities.ChroniaHelper/CustomCoreMessage.attributes.description.dialog=ChroniaHelper CustomCoreMessage supports frame-based timer display\nYou can check the option menu for timer display\nThe Dialog names followed by "Static" will only change per room load\nUse flag "ChroniaHelperTimer.pause" to pause the timer\nUse flag "ChroniaHelperTimer.reset" to reset the timer\nTo display the text you type in ChroniaHelper/Keyboard, use the built-in Dialog ID "keyboardSync_(tagID)"\nThe "tagID" refers to the "tag" option in the Password Keyboard
entities.ChroniaHelper/CustomCoreMessage.attributes.description.wholeDialog=This option will ignore the "line" option and show all Dialogs instead of one line
entities.ChroniaHelper/CustomCoreMessage.attributes.description.detectSessionExpression=Session Expression is a feature imported from Frost Helper \nWhen enabled, this entity will require FrostHelper as a dependency \nAnd start detecting if the option contains certain syntax that would trigger Frost Helper Session Expression mechanisms

# ================= Custom Timer by AppleSheep

entities.ChroniaHelper/TimerRecordStuff.placements.name.timeRecordStuff=Custom Timer Recorder
entities.ChroniaHelper/CustomTimer.placements.name.CustomTimer=Custom Timer
triggers.ChroniaHelper/TimerControlTrigger.placements.name.TimerControlTrigger=Custom Timer Control Trigger

entities.ChroniaHelper/CustomTimer.attributes.description.checkIsValidRun=The entity will check if the player used debug map, if so the time won't be seen as valid
entities.ChroniaHelper/TimerRecordStuff.attributes.description.text=The title over the timer
entities.ChroniaHelper/CustomTimer.attributes.description.checkTimeLimit=Enable the time limit checker, if the time is overdue, the text color will change
entities.ChroniaHelper/CustomTimer.attributes.description.text=The title over the timer

# ================= Tile Block

entities.ChroniaHelper/TileBlock.placements.name.TileBlock=Tile Block
entities.ChroniaHelper/AlternateTileBlock.placements.name.TileBlock=Tile Block (Nine Patch)

# ================= Custom Billboard

entities.ChroniaHelper/CustomBillboard.placements.name.customBillboard=Custom Billboard

# ================= Custom Dust Bunny

entities.ChroniaHelper/CustomDustBunny.placements.name.CustomDustBunny=Custom Dust Bunny

# ================= BG Tile Entity

entities.ChroniaHelper/StaticBgTile.placements.name.tile=BG Tile Entity

# ================= Seperated Tile

entities.ChroniaHelper/SeperatedTile.placements.name.SeperatedTile=Floaty Bg Tile (Seperated)

# ================= Auto Skip Dialog Trigger

triggers.ChroniaHelper/AutoDialogSkipTrigger.placements.name.AutoSkipTrigger=Auto Dialog Skip Trigger

# ================= Custom Torch

entities.ChroniaHelper/CustomTorch.placements.name.main=Custom Torch
entities.ChroniaHelper/CustomTorch.attributes.description.RegisterRadius=The collider size of this entity which player can turn on the light with

# ================= Open URL

triggers.ChroniaHelper/OpenUrlTrigger.placements.name.normal=Open URL Trigger

# ================= Custom Booster

entities.ChroniaHelper/CustomBooster.placements.name.normal=Custom Booster
entities.ChroniaHelper/CustomBooster.attributes.description.directory=The folder path relative to Gameplay\nSeveral animations (image arrays) must be inside the folder:\n"loop", "inside", "spin", and "pop"\nIf this booster is a red booster ("red" option enabled)\n Then "appear" animation is also required
entities.ChroniaHelper/CustomBooster.attributes.description.setOrRefillDashes=If enabled, this booster will set up the player dashes instead of refilling it
entities.ChroniaHelper/CustomBooster.attributes.description.setOrRefillStamina=If enabled, this booster will set up the player stamina instead of refilling it
entities.ChroniaHelper/CustomBooster.attributes.description.XMLOverride=If enabled, the "directory" will work as the XML object tag\nAnd all the animation parameters in the options will be ignored
entities.ChroniaHelper/CustomBooster.attributes.description.holdTime=The time that player stays inside before it activates and start moving
entities.ChroniaHelper/CustomBooster.attributes.description.playerFollow=The player will move with the booster if the booster position is somehow changed while player's inside
entities.ChroniaHelper/CustomBooster.attributes.description..keepPlayerSpeed=The booster will record player's speed when player gets in and keep it when it releases player. \nWill be affected by the out speed multiplier.

# ================= Custom Glider

entities.ChroniaHelper/CustomGlider.placements.name.glider=Custom Glider
entities.ChroniaHelper/CustomGlider.attributes.description.Directory=The folder path of your sprite files\nThe sprites should contain: "idle", "held", "fall", "fallLoop" and "death" animations
entities.ChroniaHelper/CustomGlider.attributes.description.hitboxParameters=A series of numbers representing\nHitbox Width, Hitbox Height, Hitbox X, and Hitbox Y
entities.ChroniaHelper/CustomGlider.attributes.description.holdableParameters=A series of nmbers representing\nHoldable Hitbox Width, Holdable Hitbox Height,\nHoldable Hitbox X, and Holdable Hitbox Y
entities.ChroniaHelper/CustomGlider.attributes.description.XMLOverride=If enabled, the "directory" will work as the XML object tag\nAnd all the animation parameters in the options will be ignored
entities.ChroniaHelper/CustomGlider.attributes.description.droppingSpeedY=The maximum falling speed of the glider when there are no winds or else
entities.ChroniaHelper/CustomGlider.attributes.description.droppingSpeedX=After you throw the glider, the glider will decelerate on its Speed X\nAnd this option will set up the final Speed X of this glider
entities.ChroniaHelper/CustomGlider.attributes.description.droppingSpeedXMultiplier=If enabled, the value filled in "dropping speed x" will be a multiplier to the throwing speed\ninstead of a certain value

# ================= Real Flag Switch

entities.ChroniaHelper/RealFlagSwitch.placements.name.flagswitch=Flag Button
entities.ChroniaHelper/RealFlagSwitch.attributes.description.passwordID=The tag of the ChroniaHelper/PasswordKeyboard \nLeave empty to disable password protection
entities.ChroniaHelper/RealFlagSwitch.placements.name.flagswitchwall=Flag Button Wall

# ================= Real Flag Switch Alt

entities.ChroniaHelper/RealFlagSwitchAlt.placements.name.flagswitch=~ Flag Button (Alternate) (Deprecated)
entities.ChroniaHelper/RealFlagSwitchAlt.attributes.description.passwordID=The tag of the ChroniaHelper/PasswordKeyboard \nLeave empty to disable password protection

# ================= Real Flag Switch 2 (Animation Recoded)

entities.ChroniaHelper/RealFlagSwitch2.placements.name.flagswitch=Custom Flag Button
entities.ChroniaHelper/RealFlagSwitch2.attributes.description.passwordID=The tag of the ChroniaHelper/PasswordKeyboard \nLeave empty to disable password protection
entities.ChroniaHelper/RealFlagSwitch2.placements.name.flagswitchwall=Custom Flag Button Wall
entities.ChroniaHelper/RealFlagSwitch2.attributes.description.icon=The folder path that contains following animations: \n"idle", "spin", "finishing", "finished"
entities.ChroniaHelper/RealFlagSwitch2.attributes.description.iconIdleAnimation=The animation interval for "idle"
entities.ChroniaHelper/RealFlagSwitch2.attributes.description.iconSpinAnimation=The animation interval for "spin"
entities.ChroniaHelper/RealFlagSwitch2.attributes.description.iconFinishingAnimation=The animation interval for "finishing"
entities.ChroniaHelper/RealFlagSwitch2.attributes.description.iconFinishedAnimation=The animation interval for "finished"
entities.ChroniaHelper/RealFlagSwitch2.attributes.description.borderTexture=The file path for the outline sprite behind the icon, \ndoesn't include suffix numbers \neg. Your file is "objects/ChroniaHelper/myCustomSwitch/container00.png" \nYour option should be: objects/ChroniaHelper/myCustomSwitch/container
entities.ChroniaHelper/RealFlagSwitch2.attributes.description.borderAnimation=The animation interval for your border

# ================= Summit Cloud

entities.ChroniaHelper/CustomSummitCloud.placements.name.cloud=Custom Summit Cloud
entities.ChroniaHelper/CustomSummitCloud.attributes.description.alignment=Base Position would be top left

# ================= Summit Cloud 2

entities.ChroniaHelper/CustomSummitCloud2.placements.name.cloud=Custom Summit Cloud 2

# ================= Auto Skip Trigger

triggers.ChroniaHelper/AutoDialogSkipTrigger.placements.name.AutoSkipTrigger=Auto Dialog Trigger
triggers.ChroniaHelper/AutoDialogSkipTrigger.attributes.description.dialogId=If you want to use the auto skip feature\nInclude {trigger 0} to start the auto skip\nInclude {trigger 1} to stop the auto skip

# ================= Flag String Trigger

triggers.ChroniaHelper/FlagStringTrigger.placements.name.FlagStringTrigger=Flag String Trigger
triggers.ChroniaHelper/FlagStringTrigger.attributes.description.baseString=The base string to find as an argument for editing the flag string
triggers.ChroniaHelper/FlagStringTrigger.attributes.description.newString=The new string to be operated

# ================= Wind Tunnels

entities.ChroniaHelper/WindTunnel.attributes.description.direction=You can choose between the options\nOr input a specific number inside, 0 is right, and 90 is up

# ================= Resort Lantern

entities.ChroniaHelper/CustomResortLantern.placements.name.lantern=Custom Resort Lantern
entities.ChroniaHelper/CustomResortLantern.attributes.description.spriteDirectory=The folder of your sprites, relative to "Gameplay/"\nThere should be a static image "holder.png" and an image array "lantern" inside this folder\nNotice: The "holder" image isn't a must, if your folder doesn't have this image, the holder for this lantern will be automatically ignored\nIf you do want a holder for your lantern, check Graphics Dump for the initial facing of your holder image

# ================= Flag Date Trigger

triggers.ChroniaHelper/FlagDateTrigger.placements.name.FlagDateTrigger=Flag Date Trigger
triggers.ChroniaHelper/FlagDateTrigger.attributes.description.requirements=A series of requirements seperated by ';'\nEach requirement should look like this: "format, A, B"\nA and B represents two integers, the formula like this means certain format of time should be larger than A (contained)\nand smaller than B (not contained), all the requirements must be met for this trigger to activate\nSpecially, requirement like "format, A" means the time should be larger than A\nRequirement like "format, , B" means the time should be smaller than B\nIf the first slot of requirement begins with an exclamation point '!'\nFor example, "!second, 10, 20", then this requirement will be inverted when being judged\nNotice that if the requirement you fill in is invalid or not correctly formatted,\nit will be ignored and signal "true" when the trigger is checking this requirement

# ================= Custom Playback

entities.ChroniaHelper/CustomPlayback.placements.name.main=Custom Playback (Flag-control)

# ================= Patient Booster

entities.ChroniaHelper/PatientBooster.placements.name.default=Patient Booster
entities.ChroniaHelper/PatientBooster.placements.name.red=Patient Booster (Red)
entities.ChroniaHelper/PatientBooster.attributes.description.customHitbox=You can create your own hitbox here.\n"r" stands for Rectangles, and parameters should be "r, width, height, posX, posY"\n"c" stands for Circles, parameters should be "c, radius, posX, posY"\nIf leave empty, the spinner will process by default values or ignored.

# ================= Dash gate block

# ================= most tooltips stolen from maddie's helping hand
# ================= https://github.com/maddie480/MaddieHelpingHand/blob/1297e45c72dbf27972e8396139406dd55e65c227/Loenn/lang/en_gb.lang# =================L194
entities.ChroniaHelper/DashGateBlock.placements.name.Both=Omni Dash Gate Block (Both, Multi-node)
entities.ChroniaHelper/DashGateBlock.placements.name.Horizontal=Omni Dash Gate Block (Horizontal, Multi-node)
entities.ChroniaHelper/DashGateBlock.placements.name.Vertical=Omni Dash Gate Block (Vertical, Multi-node)
entities.ChroniaHelper/DashGateBlock.placements.name.kevinswitchgate=Omni Kevin Switch Gate (Multi-node)
entities.ChroniaHelper/DashGateBlock.attributes.description.inactiveColor=The color of the block when not triggered yet.
entities.ChroniaHelper/DashGateBlock.attributes.description.activeColor=The color of the block while moving.
entities.ChroniaHelper/DashGateBlock.attributes.description.finishColor=The color of the block when it has reached its destination.
entities.ChroniaHelper/DashGateBlock.attributes.description.blockSprite=The texture path for the block.\nSee Graphics/Atlases/Gameplay/objects/SorbetHelper/gateblock/dash/ in SorbetHelper.zip for how the files should be organised.
entities.ChroniaHelper/DashGateBlock.attributes.description.iconSprite=The texture path for the icon in the center of the block.
entities.ChroniaHelper/DashGateBlock.attributes.description.shakeTime=The time (in seconds) the block spends shaking before starting to move. Default value is 0.5 seconds.
entities.ChroniaHelper/DashGateBlock.attributes.description.moveTime=The time (in seconds) the block takes to move to its destination after shaking. Default value is 1.8 seconds.
entities.ChroniaHelper/DashGateBlock.attributes.description.moveEased=Whether the block should slow down before reaching its final position. If unchecked, the block will move at constant speed.
entities.ChroniaHelper/DashGateBlock.attributes.description.allowReturn=Whether the block will cycle between its start position and node if activated multiple times.
entities.ChroniaHelper/DashGateBlock.attributes.description.persistent=If enabled, the block will stay activated even if the player dies or changes rooms.
entities.ChroniaHelper/DashGateBlock.attributes.description.moveSound=The sound played by the gate when it starts moving.
entities.ChroniaHelper/DashGateBlock.attributes.description.finishedSound=The sound played by the gate when it is done moving.
entities.ChroniaHelper/DashGateBlock.attributes.description.smoke=Whether the block should emit smoke when reaching its final position.
entities.ChroniaHelper/DashGateBlock.attributes.description.allowWavedash=Whether it is possible to wavedash on top of the block.
entities.ChroniaHelper/DashGateBlock.attributes.name.dashCornerCorrection=Easier Wallbounce
entities.ChroniaHelper/DashGateBlock.attributes.description.dashCornerCorrection=Makes wallbouncing off of the block less precise (by allowing it up to 4 pixels deep into the block horizontally, dashing from the bottom).
entities.ChroniaHelper/DashGateBlock.attributes.name.axes=Dashable Axes
entities.ChroniaHelper/DashGateBlock.attributes.description.axes=Determines which sides of the block can be dashed into.
entities.ChroniaHelper/DashGateBlock.attributes.name.linkTag=Flag On Activate
entities.ChroniaHelper/DashGateBlock.attributes.description.linkTag=An optional session flag to enable when the block activates.

# ================= Touch gate block

# ================= most tooltips stolen from maddie's helping hand
# ================= https://github.com/maddie480/MaddieHelpingHand/blob/1297e45c72dbf27972e8396139406dd55e65c227/Loenn/lang/en_gb.lang# =================L194
entities.ChroniaHelper/TouchGateBlock.placements.name.normal=Omni Touch Gate Block (Multi-node)
entities.ChroniaHelper/TouchGateBlock.placements.name.normalaltname=Omni Gate Block (Touch Activated) (Activate On Touch) (Multi-node)
entities.ChroniaHelper/TouchGateBlock.attributes.description.inactiveColor=The color of the block when not triggered yet.
entities.ChroniaHelper/TouchGateBlock.attributes.description.activeColor=The color of the block while moving.
entities.ChroniaHelper/TouchGateBlock.attributes.description.finishColor=The color of the block when it has reached its destination.
entities.ChroniaHelper/TouchGateBlock.attributes.description.blockSprite=The texture path for the block.\nSee Graphics/Atlases/Gameplay/objects/SorbetHelper/gateblock/dash/ in SorbetHelper.zip for how the files should be organised.
entities.ChroniaHelper/TouchGateBlock.attributes.description.iconSprite=The texture path for the icon in the center of the block.
entities.ChroniaHelper/TouchGateBlock.attributes.description.shakeTime=The time (in seconds) the block spends shaking before starting to move. Default value is 0.5 seconds.
entities.ChroniaHelper/TouchGateBlock.attributes.description.moveTime=The time (in seconds) the block takes to move to its destination after shaking. Default value is 1.8 seconds.
entities.ChroniaHelper/TouchGateBlock.attributes.description.moveEased=Whether the block should slow down before reaching its final position. If unchecked, the block will move at constant speed.
entities.ChroniaHelper/TouchGateBlock.attributes.description.allowReturn=Whether the block will cycle between its start position and node if activated multiple times.
entities.ChroniaHelper/TouchGateBlock.attributes.description.persistent=If enabled, the block will stay activated even if the player dies or changes rooms.
entities.ChroniaHelper/TouchGateBlock.attributes.description.moveSound=The sound played by the gate when it starts moving.
entities.ChroniaHelper/TouchGateBlock.attributes.description.finishedSound=The sound played by the gate when it is done moving.
entities.ChroniaHelper/TouchGateBlock.attributes.description.smoke=Whether the block should emit smoke when reaching its final position.
entities.ChroniaHelper/TouchGateBlock.attributes.description.moveOnGrab=Whether the block should be activated if the player climbs on its sides.
entities.ChroniaHelper/TouchGateBlock.attributes.name.moveOnStaticMover=Static Mover Activated
entities.ChroniaHelper/TouchGateBlock.attributes.description.moveOnStaticMover=Whether the block can be activated by static movers (such as springs) attached to it.
entities.ChroniaHelper/TouchGateBlock.attributes.name.linkTag=Flag On Activate
entities.ChroniaHelper/TouchGateBlock.attributes.description.linkTag=An optional session flag to enable when the block activates.

# ================= Zip Booster

entities.ChroniaHelper/BoosterZipper.placements.name.zipbooster=Zip Booster

# ================= Sprite Entity

entities.ChroniaHelper/SpriteEntity.placements.name.SpriteEntity=Sprite Entity
entities.ChroniaHelper/SpriteEntity.attributes.description.commands=Check out submenu for split-up options tooltips, \nthose with a bracket(), meaning that this sub-element can be ignored and deleted if you don't wanna set it up, \nthose end with question marks? meaning that it's supposed to be a boolean value\nthose start with hash tag# ================= meaning that it's a string,\notherwise it's a number\n----------WARNING:----------\nWhen you use the submenu (those options has a "v" icon) looking up commands, \nmake sure there's only one item left on the list (only one option with "v" icon on the right), \notherwise you're gonna get confused.
entities.ChroniaHelper/SpriteEntity.attributes.description.camPositionX=The render position of the sprite when parallax is set to zero
entities.ChroniaHelper/SpriteEntity.attributes.description.camPositionY=The render position of the sprite when parallax is set to zero

# ================= Password Keyboard

entities.ChroniaHelper/PasswordKeyboard.placements.name.normal=Password Keyboard
entities.ChroniaHelper/PasswordKeyboard.attributes.description.mode=Normal Mode: You need to input the correct password to activate the flag\nProgressive Passwords supported, enter several passwords separated by ";" and several flags separated by ","\nPassword 1 unlocks Flag 1, Password 2 unlocks Flag 2\Only when Password 1 is matched, Password 2 will be free for detection\nExclusive Mode:What you input will be stored in the Helper session so that other entities may react to it\nOutput Flag Mode: Whatever you input will be transformed into a flag, it's suggested to use with "Use Times" limit \nSystematic Mode: Enter several passwords separated by ";" and several flags separated by "," \nPassword 1 unlocks Flag 1, Password 2 unlocks Flag 2 etc. The flag unlocks depending on the password you entered
entities.ChroniaHelper/PasswordKeyboard.attributes.description.flagToEnable=When the password is correct, the flag will be activated
entities.ChroniaHelper/PasswordKeyboard.attributes.description.accessZone=A relative {X, Y, width, height} settings to define where player can access the keyboard
entities.ChroniaHelper/PasswordKeyboard.attributes.description.accessZoneIndicator=When enabled, a rectangle will appear in Lonn indicating the current zone\nDoes not have effect in game
entities.ChroniaHelper/PasswordKeyboard.attributes.description.texture=Texture path relative to "Gameplay/"
entities.ChroniaHelper/PasswordKeyboard.attributes.description.tag=The label that group or differentiate the password keyboards
entities.ChroniaHelper/PasswordKeyboard.attributes.description.talkIconPosition=The render position of the bubble icon relative to the entity position
entities.ChroniaHelper/PasswordKeyboard.attributes.description.passwordEncrypted=Whether the "password" you put in is already encrypted or if it's the original text\nTo use the encryption, you need to proceed as follows:\n1. Type your set password inside "Password" option, do check "Case Sensitive" before you proceed\n2. Enable "Show Encrypted Password In Console"\n3. Enter the map and check the console for the encrypted password\n4. Copy the encrypted password and paste it inside "Password" option\n5. Disable "Show Encrypted Password In Console"\n6. You're all set!\nAlternatively, Aurora provided a website that can encrypt the password as well, enter:\nhttps://hash.modded-celeste.com/\nThe keygen should be "tag + password"\nFor example, if your keyboard tag is "keyboard", and your password is "password"\nThen you should type "keyboardpassword" in the website to get the correct encryption
entities.ChroniaHelper/PasswordKeyboard.attributes.description.showEncryptedPasswordInConsole=If enabled, the encrypted password will appear inside the console for you to copy
entities.ChroniaHelper/PasswordKeyboard.attributes.description.caseSensitive=Whether all the letters would be seen as lower case when checking the password\nIf you're using Aurora's website to generate the encrypted password, tick "Hash input in lowercase" option on the website

triggers.ChroniaHelper/InvisiblePasswordKeyboardTrigger.placements.name.normal=Invisible Password Keyboard Trigger
triggers.ChroniaHelper/InvisiblePasswordKeyboardTrigger.attributes.description.mode=Normal Mode: You need to input the correct password to activate the flag\nProgressive Passwords supported, enter several passwords separated by ";" and several flags separated by ","\nPassword 1 unlocks Flag 1, Password 2 unlocks Flag 2\Only when Password 1 is matched, Password 2 will be free for detection\nExclusive Mode:What you input will be stored in the Helper session so that other entities may react to it\nOutput Flag Mode: Whatever you input will be transformed into a flag, it's suggested to use with "Use Times" limit \nSystematic Mode: Enter several passwords separated by ";" and several flags separated by "," \nPassword 1 unlocks Flag 1, Password 2 unlocks Flag 2 etc. The flag unlocks depending on the password you entered
triggers.ChroniaHelper/InvisiblePasswordKeyboardTrigger.attributes.description.flagToEnable=When the password is correct, the flag will be activated
triggers.ChroniaHelper/InvisiblePasswordKeyboardTrigger.attributes.description.accessZone=A relative {X, Y, width, height} settings to define where player can access the keyboard
triggers.ChroniaHelper/InvisiblePasswordKeyboardTrigger.attributes.description.accessZoneIndicator=When enabled, a rectangle will appear in Lonn indicating the current zone\nDoes not have effect in game
triggers.ChroniaHelper/InvisiblePasswordKeyboardTrigger.attributes.description.texture=Texture path relative to "Gameplay/"
triggers.ChroniaHelper/InvisiblePasswordKeyboardTrigger.attributes.description.tag=The label that group or differentiate the password keyboards
triggers.ChroniaHelper/InvisiblePasswordKeyboardTrigger.attributes.description.talkIconPosition=The render position of the bubble icon relative to the entity position
triggers.ChroniaHelper/InvisiblePasswordKeyboardTrigger.attributes.description.passwordEncrypted=Whether the "password" you put in is already encrypted or if it's the original text\nTo use the encryption, you need to proceed as follows:\n1. Type your set password inside "Password" option, do check "Case Sensitive" before you proceed\n2. Enable "Show Encrypted Password In Console"\n3. Enter the map and check the console for the encrypted password\n4. Copy the encrypted password and paste it inside "Password" option\n5. Disable "Show Encrypted Password In Console"\n6. You're all set!\nAlternatively, Aurora provided a website that can encrypt the password as well, enter:\nhttps://hash.modded-celeste.com/\nThe keygen should be "tag + password"\nFor example, if your keyboard tag is "keyboard", and your password is "password"\nThen you should type "keyboardpassword" in the website to get the correct encryption
triggers.ChroniaHelper/InvisiblePasswordKeyboardTrigger.attributes.description.showEncryptedPasswordInConsole=If enabled, the encrypted password will appear inside the console for you to copy
triggers.ChroniaHelper/InvisiblePasswordKeyboardTrigger.attributes.description.caseSensitive=Whether all the letters would be seen as lower case when checking the password\nIf you're using Aurora's website to generate the encrypted password, tick "Hash input in lowercase" option on the website

triggers.ChroniaHelper/PasswordKeyboardTrigger.placements.name.normal=Password Keyboard Trigger
triggers.ChroniaHelper/PasswordKeyboardTrigger.attributes.description.mode=Normal Mode: You need to input the correct password to activate the flag\nProgressive Passwords supported, enter several passwords separated by ";" and several flags separated by ","\nPassword 1 unlocks Flag 1, Password 2 unlocks Flag 2\Only when Password 1 is matched, Password 2 will be free for detection\nExclusive Mode:What you input will be stored in the Helper session so that other entities may react to it\nOutput Flag Mode: Whatever you input will be transformed into a flag, it's suggested to use with "Use Times" limit \nSystematic Mode: Enter several passwords separated by ";" and several flags separated by "," \nPassword 1 unlocks Flag 1, Password 2 unlocks Flag 2 etc. The flag unlocks depending on the password you entered
triggers.ChroniaHelper/PasswordKeyboardTrigger.attributes.description.flagToEnable=When the password is correct, the flag will be activated
triggers.ChroniaHelper/PasswordKeyboardTrigger.attributes.description.accessZone=A relative {X, Y, width, height} settings to define where player can access the keyboard
triggers.ChroniaHelper/PasswordKeyboardTrigger.attributes.description.accessZoneIndicator=When enabled, a rectangle will appear in Lonn indicating the current zone\nDoes not have effect in game
triggers.ChroniaHelper/PasswordKeyboardTrigger.attributes.description.texture=Texture path relative to "Gameplay/"
triggers.ChroniaHelper/PasswordKeyboardTrigger.attributes.description.tag=The label that group or differentiate the password keyboards
triggers.ChroniaHelper/PasswordKeyboardTrigger.attributes.description.talkIconPosition=The render position of the bubble icon relative to the entity position
triggers.ChroniaHelper/PasswordKeyboardTrigger.attributes.description.passwordEncrypted=Whether the "password" you put in is already encrypted or if it's the original text\nTo use the encryption, you need to proceed as follows:\n1. Type your set password inside "Password" option, do check "Case Sensitive" before you proceed\n2. Enable "Show Encrypted Password In Console"\n3. Enter the map and check the console for the encrypted password\n4. Copy the encrypted password and paste it inside "Password" option\n5. Disable "Show Encrypted Password In Console"\n6. You're all set!\nAlternatively, Aurora provided a website that can encrypt the password as well, enter:\nhttps://hash.modded-celeste.com/\nThe keygen should be "tag + password"\nFor example, if your keyboard tag is "keyboard", and your password is "password"\nThen you should type "keyboardpassword" in the website to get the correct encryption
triggers.ChroniaHelper/PasswordKeyboardTrigger.attributes.description.showEncryptedPasswordInConsole=If enabled, the encrypted password will appear inside the console for you to copy
triggers.ChroniaHelper/PasswordKeyboardTrigger.attributes.description.caseSensitive=Whether all the letters would be seen as lower case when checking the password\nIf you're using Aurora's website to generate the encrypted password, tick "Hash input in lowercase" option on the website

# ================= Platform Line Controller

entities.ChroniaHelper/PlatformLineController.placements.name.platfromLineController=Platform Line Controller
entities.ChroniaHelper/PlatformLineController.attributes.description.edgeColor=The edge color of the platform line
entities.ChroniaHelper/PlatformLineController.attributes.description.centerColor=The main platform track color
entities.ChroniaHelper/PlatformLineController.attributes.description.renderMode=Which type of platform line should this controller react to\nNotice that the settings of individual has higher priority than the settings of overall\nFor example, if you place a "overall" controller and a "moving platform" controller, the "overall" controller is gonna be deleted

# ================= Flag Trigger

triggers.ChroniaHelper/FlagTrigger.placements.name.FlagTrigger=Flag Trigger
triggers.ChroniaHelper/FlagTrigger.attributes.description.temporary=The flags in setup will be reverted to the entering state when player dies \n(supporting cross-room)
triggers.ChroniaHelper/FlagTrigger.attributes.description.global=The flag changes will be listed into save data and enable once per map load \nEg. Player dies, F5, F6 etc.
triggers.ChroniaHelper/FlagTrigger.attributes.description.resetOnLeave=The flags will be reverted to the entering state when player leaves the trigger
triggers.ChroniaHelper/FlagTrigger.attributes.description.ignoreUnchanged=For example, if the flag is enabled in game, and your setup is to enable this flag \nThen this flag will be ignored when trigger process flag states cause it seems shouldn't change
triggers.ChroniaHelper/FlagTrigger.attributes.description.onStay=The flag setup will be applied constantly when player is inside the trigger
triggers.ChroniaHelper/FlagTrigger.attributes.description.flag=A list of flags separated by comma, supporting "!" as inverted sign

# ================= Flag Serial Trigger

triggers.ChroniaHelper/FlagSerialTrigger.placements.name.FlagSerialTrigger=Flag Serial Trigger
triggers.ChroniaHelper/FlagSerialTrigger.attributes.description.serialFlag=The serial flag syntax containing the "target symbol" \nWhen player enters the trigger, if the position mode isn't "No effect" \nThen the trigger will enable the flag replacing the target symbol to numbers \nFor example, if my target symbol is "&" and the serial flag is "flag_&", when I enter the trigger in-game \nFlag "flag_0" will be active, then "flag_0" disable and "flag_1" enable etc.
triggers.ChroniaHelper/FlagSerialTrigger.attributes.description.interval=The interval between each flag step, only usable when position mode isn't "No effect"
triggers.ChroniaHelper/FlagSerialTrigger.attributes.description.staircase=Normally the previous flag in the array would be removed before processing the next flag, \nIf enabled, the previous flags will also be kept, and the activated flags will look like a staircase

# ================= Flag Array Trigger

triggers.ChroniaHelper/FlagArrayTrigger.placements.name.FlagArrayTrigger=Flag Array Trigger
triggers.ChroniaHelper/FlagArrayTrigger.attributes.description.intervals=The interval between changing each flags, only usable when position mode isn't "No effect"
triggers.ChroniaHelper/FlagArrayTrigger.attributes.description.staircase=Normally the previous flag in the array would be removed before processing the next flag, \nIf enabled, the previous flags will also be kept, and the activated flags will look like a staircase

# ================= Flag Timer Trigger

triggers.ChroniaHelper/FlagTimerTrigger.placements.name.FlagTimerTrigger=Flag Timer Trigger
triggers.ChroniaHelper/FlagTimerTrigger.attributes.description.setups=flag A,existing time A; flagB, existing time B; ...
triggers.ChroniaHelper/FlagTimerTrigger.attributes.description.range="room": When player exits, the room, all the flags will be set to false \n"map": The flag will only disable after the time runs out in this map

# ================= Flag Choose Trigger 2

triggers.ChroniaHelper/FlagChooseTrigger2.placements.name.FlagChooseTrigger2=Flag Choose Trigger 2
triggers.ChroniaHelper/FlagChooseTrigger2.attributes.description.flagDictionary=A formula representing how the flags should react with each other \nExample: flag1, !flag2 >>flag3, *flag4, !*flag5 \nThe ">>" syntax means that the flags separated by comma on the right (results) \nare the flags that should react to the flags separated by comma on the left (conditions) \nFor conditions, those flags containing "!" are the ones that need to be reversed \nFor results, those flags containing "!" are the ones this trigger should disable \nand those flags containing "*" are the ones this trigger should enable as global flags \nthose contain both are the ones that this trigger should disable in the global flags \nFor example, the given example above means: When flag1 is on and flag2 is off, this trigger will enable flag3, enable global flag4, and disable global flag5 \nThe given example is called a formula, you can include multiple formula in the line separated by ";" \nNewly introduced syntax "# =================" is a wildcard representation, take "flag_# =================_a, flag_# ================= >> flag_b_# =================" as example \nWhen any flags inside the level looking like "flag_??_a", for example, flag "flag_X_a", is enabled \nAnd the matching "flag_X" is also enabled, notice that they share the same part of letter "X" \nThe result would be flag "flag_b_X" being enabled. In this example, the wildcard symbol "# =================" represents "X".

# ================= Flag Dictionary Trigger

triggers.ChroniaHelper/FlagDictionaryTrigger.placements.name.FlagDictionaryTrigger=Flag Dictionary Trigger
triggers.ChroniaHelper/FlagDictionaryTrigger.attributes.description.flagDictionary=A formula representing how the flags should react with each other \nExample: flag1, !flag2 >>flag3, *flag4, !*flag5 \nThe ">>" syntax means that the flags separated by comma on the right (results) \nare the flags that should react to the flags separated by comma on the left (conditions) \nFor conditions, those flags containing "!" are the ones that need to be reversed \nFor results, those flags containing "!" are the ones this trigger should disable \nand those flags containing "*" are the ones this trigger should enable as global flags \nthose contain both are the ones that this trigger should disable in the global flags \nFor example, the given example above means: When flag1 is on and flag2 is off, this trigger will enable flag3, enable global flag4, and disable global flag5 \nThe given example is called a formula, you can include multiple formula in the line separated by ";"

# ================= Custom Core Block

entities.ChroniaHelper/CustomCoreBlock.placements.name.fire=Custom Core Block (Fire)
entities.ChroniaHelper/CustomCoreBlock.placements.name.ice=Custom Core Block (Ice)
entities.ChroniaHelper/CustomCoreBlock.attributes.description.iceBlockTexture=The texture of the ice block state. \nTo change the center crystal of the block, please check the "bumpBlockCenterIce" column in vanilla Sprites.xml
entities.ChroniaHelper/CustomCoreBlock.attributes.description.fireBlockTexture=The texture of the fire block state. \nTo change the center crystal of the block, please check the "bumpBlockCenterFire" column in vanilla Sprites.xml

# ================= Puffer Bomb Spring

entities.ChroniaHelper/PufferBombSpringUp.placements.name.up=Puffer Bomb Spring (Up)
entities.ChroniaHelper/PufferBombSpringRight.placements.name.right=Puffer Bomb Spring (Right)
entities.ChroniaHelper/PufferBombSpringLeft.placements.name.left=Puffer Bomb Spring (Left)
entities.ChroniaHelper/PufferBombSpringDown.placements.name.down=Puffer Bomb Spring (Down)

entities.ChroniaHelper/PufferBombSpringUp.placements.description.up=Puffer Bomb Spring (implementation from City of Broken Dreams)
entities.ChroniaHelper/PufferBombSpringRight.placements.description.right=Puffer Bomb Spring (implementation from City of Broken Dreams)
entities.ChroniaHelper/PufferBombSpringLeft.placements.description.left=Puffer Bomb Spring (implementation from City of Broken Dreams)
entities.ChroniaHelper/PufferBombSpringDown.placements.description.down=Puffer Bomb Spring (implementation from City of Broken Dreams)

entities.ChroniaHelper/PufferBombSpringUp.attributes.description.sprite=The XML reference of the entity \nThe "XXX" part of <XXX path="somePath"> in Sprites.xml
entities.ChroniaHelper/PufferBombSpringRight.attributes.description.sprite=The XML reference of the entity \nThe "XXX" part of <XXX path="somePath"> in Sprites.xml
entities.ChroniaHelper/PufferBombSpringLeft.attributes.description.sprite=The XML reference of the entity \nThe "XXX" part of <XXX path="somePath"> in Sprites.xml
entities.ChroniaHelper/PufferBombSpringDown.attributes.description.sprite=The XML reference of the entity \nThe "XXX" part of <XXX path="somePath"> in Sprites.xml

# ================= Shifting Switch

entities.ChroniaHelper/ShiftingSwitch.placements.description.Shifting Switch=Shifting Switch (implementation from City of Broken Dreams)
entities.ChroniaHelper/ShiftingSwitch.attributes.description.sprite=The XML reference of the entity \nThe "XXX" part of <XXX path="somePath"> in Sprites.xml
entities.ChroniaHelper/ShiftingSwitch.attributes.description.oneConnector=If enabled, the shifting switch will only show the connection to the block nearest to its first node \ninstead of showing all the connections it has

# ================= Shifting Block

entities.ChroniaHelper/ShiftingBlock.placements.description.Shifting Block=Shifting Block (implementation from City of Broken Dreams)
entities.ChroniaHelper/ShiftingBlock.attributes.description.noConnector=If enabled, the block will not show connector on its center

# ================= Puffer Bomb

entities.ChroniaHelper/PufferBomb.placements.description.Puffer Bomb=Puffer Bomb (implementation from City of Broken Dreams)
entities.ChroniaHelper/PufferBomb.attributes.description.sprite=The XML reference of the entity \nThe "XXX" part of <XXX path="somePath"> in Sprites.xml
entities.ChroniaHelper/PufferBomb.attributes.description.rangeIndicator=The XML reference of the entity \nThe "XXX" part of <XXX path="somePath"> in Sprites.xml
entities.ChroniaHelper/PufferBomb.attributes.description.basicColliders=Collider array separated by ";", each collider can be defined as: \n"r,width,height,offsetX,offsetY" as a rectangle hitbox \n"c,radius,offsetX,offsetY" as a circle hitbox
entities.ChroniaHelper/PufferBomb.attributes.description.playerColliders=Collider array that will affect the player interactions, separated by ";", each collider can be defined as: \n"r,width,height,offsetX,offsetY" as a rectangle hitbox \n"c,radius,offsetX,offsetY" as a circle hitbox
entities.ChroniaHelper/PufferBomb.attributes.description.detectCollider=The rectangular collider that detects whether the explosion happens
entities.ChroniaHelper/PufferBomb.attributes.description.wallbreakCollider=The circle collider that defines the area the explosion can affect when the explosion should break some walls

# ================= Kevins

entities.ChroniaHelper/DreamKevin.placements.name.DreamKevin=Dream Kevin
entities.ChroniaHelper/ReskinnableKevin.placements.name.both=Kevin (Reskinnable, Both)
entities.ChroniaHelper/ReskinnableKevin.placements.name.horizontal=Kevin (Reskinnable, Horizontal)
entities.ChroniaHelper/ReskinnableKevin.placements.name.vertical=Kevin (Reskinnable, Vertical)

entities.ChroniaHelper/ReskinnableKevin.attributes.description.spriteDirectory=The folder that contains all the necessary sprites \nGenerally please check the preset folder for necessary files \nWhich is: objects/Fangame/FASF2025/DreamKevin/
entities.ChroniaHelper/ReskinnableKevin.attributes.description.faceSpriteXML=The XML reference of the entity \nThe "XXX" part of <XXX path="somePath"> in Sprites.xml
entities.ChroniaHelper/ReskinnableKevin.attributes.description.giantFaceSpriteXML=The XML reference of the entity \nThe "XXX" part of <XXX path="somePath"> in Sprites.xml

# ================= Changed Room Flag Controller

entities.ChroniaHelper/ResetChangedRoomFlagsController.placements.name.Controller=Reset Changed Room Flags Controller
entities.ChroniaHelper/ResetChangedRoomFlagsController.placements.description.Controller=As titled, the controller listen to every flag changes in the room and pick up the changes, \nwhen the room is reloaded, the controller will take actions about these changed flags

# ================= Input Controller

entities.ChroniaHelper/InputFlagController.placements.name.controller=Input Flag Controller (Input Listener)
entities.ChroniaHelper/InputFlagController.attributes.description.flags=Flags to be operated, can be grouped by using ";" and separated using ","
entities.ChroniaHelper/InputFlagController.attributes.description.ifFlagCondition=Flags required for this controller to take effect, flags prefixed with "!" are required to be disabled \nThe flags are separated by a comma
entities.ChroniaHelper/InputFlagController.attributes.description.restraints=Enable use times as a constraint
entities.ChroniaHelper/InputFlagController.attributes.description.resetCounter=Whether the controller session counter should reset when leaving the room
entities.ChroniaHelper/InputFlagController.attributes.description.activateByDefault=The controller can be activated by pressing the custom key set in ModSettings - Communal Helper
entities.ChroniaHelper/InputFlagController.attributes.description.controllerIDPrefix=Each Controller has an session counter that calculates how many times the trigger keys are pressed, \nand this is the prefix of the session counter name, which will be used as the display under "Counter Suffix" mode \nand for calculating restraints, can be reset by "Reset Counter" \nSession Counter ID: Controller ID Prefix + ID, ID refers to the entity ID number above
entities.ChroniaHelper/InputFlagController.attributes.description.detectCounterID=The session counter that calculates how many times the setup keys are pressed in total, \nwill not be calculated as in restraints, can be reset by "Reset Detect Session"
entities.ChroniaHelper/InputFlagController.attributes.description.resetDetectSession=Reset the level session counter that calculates how many times the set up keys are pressed in total when player leaves the room, \nsince the counter ID can be identical, this could be an output accumulating inputs \nand be used in FrostHelper expressions etc.

# ================= Trigger Extension

triggers.ChroniaHelper/TriggerExtension.placements.name.TriggerExtension=Trigger Extension
triggers.ChroniaHelper/TriggerExtension.placements.description.TriggerExtension=Trigger Extension works like a normal trigger but unlike normal triggers \nIt won't be re-activated as player go through the trigger borderlines, \nconsider it useful for connecting several "reset on leave" triggers
triggers.ChroniaHelper/TriggerExtension.attributes.description.extensionTag=When entering triggers with the same extension tag \nThe main trigger (that isn't Trigger Extension) that has the largest ID will be triggered \nAnd the effect will be delegated from the main trigger
triggers.ChroniaHelper/TriggerExtension.attributes.description.overrideID=If this field isn't empty, this extension will focus on the triggers with this ID instead of extensionTag

triggers.ChroniaHelper/TriggerExtensionTarget.placements.name.TriggerExtensionTarget=Trigger Extension Target
triggers.ChroniaHelper/TriggerExtensionTarget.attributes.description.extensionTag

# ================= Fall Through

entities.ChroniaHelper/FallThrough.placements.name.wood=Fall Through (Wood)
entities.ChroniaHelper/FallThrough.placements.name.dream=Fall Through (Dream)
entities.ChroniaHelper/FallThrough.placements.name.temple=Fall Through (Temple)
entities.ChroniaHelper/FallThrough.placements.name.templeB=Fall Through (Alternate Temple)
entities.ChroniaHelper/FallThrough.placements.name.cliffside=Fall Through (Cliffside)
entities.ChroniaHelper/FallThrough.placements.name.reflection=Fall Through (Reflection)
entities.ChroniaHelper/FallThrough.placements.name.core=Fall Through (Core)
entities.ChroniaHelper/FallThrough.placements.name.moon=Fall Through (Moon)

entities.ChroniaHelper/FallThrough.placements.description.wood=Comparing to normal jump through, when player duck on it \nThey fell right through the entity and fall down
entities.ChroniaHelper/FallThrough.placements.description.dream=Comparing to normal jump through, when player duck on it \nThey fell right through the entity and fall down
entities.ChroniaHelper/FallThrough.placements.description.temple=Comparing to normal jump through, when player duck on it \nThey fell right through the entity and fall down
entities.ChroniaHelper/FallThrough.placements.description.templeB=Comparing to normal jump through, when player duck on it \nThey fell right through the entity and fall down
entities.ChroniaHelper/FallThrough.placements.description.cliffside=Comparing to normal jump through, when player duck on it \nThey fell right through the entity and fall down
entities.ChroniaHelper/FallThrough.placements.description.reflection=Comparing to normal jump through, when player duck on it \nThey fell right through the entity and fall down
entities.ChroniaHelper/FallThrough.placements.description.core=Comparing to normal jump through, when player duck on it \nThey fell right through the entity and fall down
entities.ChroniaHelper/FallThrough.placements.description.moon=Comparing to normal jump through, when player duck on it \nThey fell right through the entity and fall down

entities.ChroniaHelper/FallThrough.attributes.description.ignoreAllJumpthrus=When enabled, the player would ignore all jump thrus and fall through them
entities.ChroniaHelper/FallThrough.attributes.description.mechanicTime=When player falling, the player speed will be overrided for this amount of time \nAnd if you choose to ignore all jumpthrus, this is also the duration of the effect

# ================= Custom Fake Wall

entities.ChroniaHelper/CustomFakeWall.placements.name.CustomFakeWall=Custom Fake Wall
entities.ChroniaHelper/CustomFakeWall.attributes.description.playReveal=Defines whether the sound should play under transitions
entities.ChroniaHelper/CustomFakeWall.attributes.description.recover=When enabled, the block will recover after the player leaves from inside \nWill be overrided by "permanent"
entities.ChroniaHelper/CustomFakeWall.attributes.description.playSoundOnEachTrigger=The reveal sound would play every time the player touches it

# ================= Polygon Series (Vivhelper legacy)

entities.ChroniaHelper/PolygonKillbox.placements.name.PolygonKillbox=Polygon Killbox
entities.ChroniaHelper/PolygonKillbox.attributes.description.flag=Whether the killbox require flag to operate

entities.ChroniaHelper/PolygonTrigger.placements.name.PolygonTrigger=Polygon Trigger Entity
entities.ChroniaHelper/PolygonTrigger.attributes.description.triggerIDs=The polygon trigger targets, separated by comma
entities.ChroniaHelper/PolygonTrigger.attributes.description.extensionTag=If the trigger IDs are empty, this trigger will try to activate the triggers with the same extension tag

# ================= BG Tiles Collide Controller

entities.ChroniaHelper/BGTileCollideController.placements.name.controller=BG Tiles Collide Controller
entities.ChroniaHelper/BGTileCollideController.placements.description.controller=BG Tiles Collide Controller detects whether the player has BG Tiles behind their back \nAnd if not, whatever actions it should take

# ================= Comprehensive Controller

entities.ChroniaHelper/ComprehensiveController.placements.name.controller=Comprehensive Controller
entities.ChroniaHelper/ComprehensiveController.placements.description.controller=An entity that sets flags or export data into the map \nby detecting several objects or states
entities.ChroniaHelper/ComprehensiveController.attributes.description.Introduction=An entity that sets flags or export data into the map \nby detecting several objects or states

# ================= Final Boost Trigger

triggers.ChroniaHelper/FinalBoostTrigger.placements.name.FinalBoostTrigger=Final Boost Trigger

entities.ChroniaHelper/RoomTagCreator.placements.name.Creator=Room Tag Creator
entities.ChroniaHelper/RoomTagCreator.placements.description.Creator=Create a connection between level names and room tags, and the room tags can be used for something else
entities.ChroniaHelper/RoomTagCreator.attributes.description.setRoomTag=A string represents how the tags should be created, \nwhen creating tags, the symbol & will be replaced by level room names \nand symbol # will be replaced by level room index

entities.ChroniaHelper/RoomTagSessionController.placements.name.Controller=Room Tag Session Controller

# ================= Chronia Flag Trigger

triggers.ChroniaHelper/ChroniaFlagTrigger.placements.name.FlagTrigger=Chronia Flag Trigger (Debug)
triggers.ChroniaHelper/ChroniaFlagTrigger.placements.description.FlagTrigger=Do not use if you have no idea what it is

# ================= Chronia Counter Trigger

triggers.ChroniaHelper/ChroniaCounterTrigger.placements.name.trigger=Chronia Counter Trigger (Debug)
triggers.ChroniaHelper/ChroniaCounterTrigger.placements.description.trigger=Do not use if you have no idea what it is

# ================= Chronia Slider Trigger

triggers.ChroniaHelper/ChroniaSliderTrigger.placements.name.trigger=Chronia Slider Trigger (Debug)
triggers.ChroniaHelper/ChroniaSliderTrigger.placements.description.trigger=Do not use if you have no idea what it is

# ================= Cornerboost Falling Dream Block

entities.ChroniaHelper/CornerBoostFallingDreamBlock.placements.name.normal=Cornerboost Falling Dream Block (Normal)
entities.ChroniaHelper/CornerBoostFallingDreamBlock.placements.name.chained=Cornerboost Falling Dream Block (Chained)

# ================= Bezier Zip Mover

entities.ChroniaHelper/BezierZipmover.placements.name.zipmover=Bezier Zip Mover
entities.ChroniaHelper/BezierZipmover.attributes.description.directory=The folder path of the sprites, ends with "/" \nFollowing animations are needed: block, light, cog, innercog \nThe "light" animation must have exactly 4 frames just as the vanilla
entities.ChroniaHelper/BezierZipmover.attributes.description.renderGap=If renderGap is 0, the zipmover path will be rendered as a continuous sprite \nIf above 0, the zipmover path will be rendered as dotted lines
entities.ChroniaHelper/BezierZipmover.attributes.description.renderStyle=There are 2 preset styles for you to choose
entities.ChroniaHelper/BezierZipmover.attributes.description.triggerFlag=If not empty, the flag will cause the zipmover start moving no matter if there is player on it
entities.ChroniaHelper/BezierZipmover.attributes.description.syncWithAdventureHelperZipmovers=If enabled, the zipmover will listen and release AdventureHelper Synced Zipmover signals
entities.ChroniaHelper/BezierZipmover.attributes.description.uniformity=Bezier calculations are complicated, so the curve isn't as smooth as it seems \nSimply explanation is, when the lerp point is 50%, it's not necessarily equal to the middle point of the curve \nWhich is why this option enables the linear interpolation of the curve using distance instead of lerp points \nBy using this method, the movements will be linear as expected \nBUT THE PERFORMANCE COULD BE LAGGY DUE TO TWICE OF INTERPOLATION

# ================= Stopclock Flag Controller

entities.ChroniaHelper/StopclockFlagController.placements.name.controller=Stopclock Flag Controller
entities.ChroniaHelper/StopclockFlagController.placements.description.controller=A controller that will split several Stopclocks data into separated flags
entities.ChroniaHelper/StopclockFlagController.attributes.description.stopclockTags=A list of stopclock tags separated by comma\nThis controller will turn the stopclocks digits into in-game flags for per-digit flag purposes, say flag decals or likewise

# ================= Stopclock Action Controller

entities.ChroniaHelper/StopclockActionController.placements.name.controller=Stopclock Action Controller
entities.ChroniaHelper/StopclockActionController.attributes.description.setFlag=If not empty, this flag will be enabled when the stopclock completes

# ================= Stopclock Trigger

triggers.ChroniaHelper/StopclockTrigger.placements.name.trigger=Stopclock Trigger

# ================= Stopclock Renderer

entities.ChroniaHelper/StopclockRenderer.placements.name.renderer=Stopclock Renderer
entities.ChroniaHelper/StopclockRenderer.attributes.description.sourcePath=The font file path starts after Gameplay without ending numbers
entities.ChroniaHelper/StopclockRenderer.attributes.description.parallaxX=The text parallax in-game
entities.ChroniaHelper/StopclockRenderer.attributes.description.parallaxY=The text parallax in-game
entities.ChroniaHelper/StopclockRenderer.attributes.description.screenX=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/StopclockRenderer.attributes.description.screenY=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/StopclockRenderer.attributes.description.segmentDistance=Under Compact mode: The distance of the gap between each font sprite\nUnder Equal Distance mode: The distance between the center of the sprites
entities.ChroniaHelper/StopclockRenderer.attributes.description.segmentOffset=If you want to, you can include offset for each character, each offset should look like: "index, x, y"\nThe offsets are separated by ";"

# ================= Real Time Renderer

entities.ChroniaHelper/RealTimeRenderer.placements.name.renderer=Real Time Renderer

entities.ChroniaHelper/RealTimeRenderer.attributes.description.parallaxX=The text parallax in-game
entities.ChroniaHelper/RealTimeRenderer.attributes.description.parallaxY=The text parallax in-game
entities.ChroniaHelper/RealTimeRenderer.attributes.description.screenX=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/RealTimeRenderer.attributes.description.screenY=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/RealTimeRenderer.attributes.description.segmentDistance=Under Compact mode: The distance of the gap between each font sprite\nUnder Equal Distance mode: The distance between the center of the sprites
entities.ChroniaHelper/RealTimeRenderer.attributes.description.segmentOffset=If you want to, you can include offset for each character, each offset should look like: "index, x, y"\nThe offsets are separated by ";"

# ================= Message Displayer

entities.ChroniaHelper/MessageDisplayer.placements.name.renderer=Message Displayer
entities.ChroniaHelper/MessageDisplayer.attributes.description.parallaxX=The text parallax in-game
entities.ChroniaHelper/MessageDisplayer.attributes.description.parallaxY=The text parallax in-game
entities.ChroniaHelper/MessageDisplayer.attributes.description.screenX=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/MessageDisplayer.attributes.description.screenY=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/MessageDisplayer.attributes.description.textures=The source file path starts after Gameplay without suffix numbers
entities.ChroniaHelper/MessageDisplayer.attributes.description.characterReference=The character reference that matches with the font file precisely \nNOTICE: You MUST have an empty file as reference for "space" and MUST hit a space in here at the precise index position of "space" \nbecause the index of "space" file is used as the default fallback texture
entities.ChroniaHelper/MessageDisplayer.attributes.description.lineDistance=Under Compact mode: The distance between the bottom of one line of sprites and the top of the next line of sprites\nUnder Equal Distance mode: The distance between the center of each line
entities.ChroniaHelper/MessageDisplayer.attributes.description.letterDistance=Under Compact mode: The distance of the gap between each font sprite\nUnder Equal Distance mode: The distance between the center of the sprites
entities.ChroniaHelper/MessageDisplayer.attributes.description.letterDisplayInterval=Letter appear speed under Typewrite mode
entities.ChroniaHelper/MessageDisplayer.attributes.description.triggerFlag=If not empty, this flag is required for the text to appear
entities.ChroniaHelper/MessageDisplayer.attributes.description.renderDistance=When the player is in the radius, the text will appear

entities.ChroniaHelper/MessageDisplayZone.placements.name.renderer=Message Display Zone
entities.ChroniaHelper/MessageDisplayZone.attributes.description.parallaxX=The text parallax in-game
entities.ChroniaHelper/MessageDisplayZone.attributes.description.parallaxY=The text parallax in-game
entities.ChroniaHelper/MessageDisplayZone.attributes.description.screenX=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/MessageDisplayZone.attributes.description.screenY=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/MessageDisplayZone.attributes.description.textures=The source file path starts after Gameplay without suffix numbers
entities.ChroniaHelper/MessageDisplayZone.attributes.description.characterReference=The character reference that matches with the font file precisely \nNOTICE: You MUST have an empty file as reference for "space" and MUST hit a space in here at the precise index position of "space" \nbecause the index of "space" file is used as the default fallback texture
entities.ChroniaHelper/MessageDisplayZone.attributes.description.lineDistance=Under Compact mode: The distance between the bottom of one line of sprites and the top of the next line of sprites\nUnder Equal Distance mode: The distance between the center of each line
entities.ChroniaHelper/MessageDisplayZone.attributes.description.letterDistance=Under Compact mode: The distance of the gap between each font sprite\nUnder Equal Distance mode: The distance between the center of the sprites
entities.ChroniaHelper/MessageDisplayZone.attributes.description.letterDisplayInterval=Letter appear speed under Typewrite mode
entities.ChroniaHelper/MessageDisplayZone.attributes.description.triggerFlag=If not empty, this flag is required for the text to appear
entities.ChroniaHelper/MessageDisplayZone.attributes.description.renderDistance=When the player is in the radius, the text will appear

entities.ChroniaHelper/MessageDisplayerNormal.placements.name.renderer=Message Displayer (Non-HD)
entities.ChroniaHelper/MessageDisplayerNormal.attributes.description.parallaxX=The text parallax in-game
entities.ChroniaHelper/MessageDisplayerNormal.attributes.description.parallaxY=The text parallax in-game
entities.ChroniaHelper/MessageDisplayerNormal.attributes.description.screenX=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/MessageDisplayerNormal.attributes.description.screenY=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/MessageDisplayerNormal.attributes.description.textures=The source file path starts after Gameplay without suffix numbers
entities.ChroniaHelper/MessageDisplayerNormal.attributes.description.characterReference=The character reference that matches with the font file precisely \nNOTICE: You MUST have an empty file as reference for "space" and MUST hit a space in here at the precise index position of "space" \nbecause the index of "space" file is used as the default fallback texture
entities.ChroniaHelper/MessageDisplayerNormal.attributes.description.lineDistance=Under Compact mode: The distance between the bottom of one line of sprites and the top of the next line of sprites\nUnder Equal Distance mode: The distance between the center of each line
entities.ChroniaHelper/MessageDisplayerNormal.attributes.description.letterDistance=Under Compact mode: The distance of the gap between each font sprite\nUnder Equal Distance mode: The distance between the center of the sprites
entities.ChroniaHelper/MessageDisplayerNormal.attributes.description.letterDisplayInterval=Letter appear speed under Typewrite mode
entities.ChroniaHelper/MessageDisplayerNormal.attributes.description.triggerFlag=If not empty, this flag is required for the text to appear
entities.ChroniaHelper/MessageDisplayerNormal.attributes.description.renderDistance=When the player is in the radius, the text will appear

entities.ChroniaHelper/MessageDisplayZoneNormal.placements.name.renderer=Message Display Zone (Non-HD)
entities.ChroniaHelper/MessageDisplayZoneNormal.attributes.description.parallaxX=The text parallax in-game
entities.ChroniaHelper/MessageDisplayZoneNormal.attributes.description.parallaxY=The text parallax in-game
entities.ChroniaHelper/MessageDisplayZoneNormal.attributes.description.screenX=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/MessageDisplayZoneNormal.attributes.description.screenY=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/MessageDisplayZoneNormal.attributes.description.textures=The source file path starts after Gameplay without suffix numbers
entities.ChroniaHelper/MessageDisplayZoneNormal.attributes.description.characterReference=The character reference that matches with the font file precisely \nNOTICE: You MUST have an empty file as reference for "space" and MUST hit a space in here at the precise index position of "space" \nbecause the index of "space" file is used as the default fallback texture
entities.ChroniaHelper/MessageDisplayZoneNormal.attributes.description.lineDistance=Under Compact mode: The distance between the bottom of one line of sprites and the top of the next line of sprites\nUnder Equal Distance mode: The distance between the center of each line
entities.ChroniaHelper/MessageDisplayZoneNormal.attributes.description.letterDistance=Under Compact mode: The distance of the gap between each font sprite\nUnder Equal Distance mode: The distance between the center of the sprites
entities.ChroniaHelper/MessageDisplayZoneNormal.attributes.description.letterDisplayInterval=Letter appear speed under Typewrite mode
entities.ChroniaHelper/MessageDisplayZoneNormal.attributes.description.triggerFlag=If not empty, this flag is required for the text to appear
entities.ChroniaHelper/MessageDisplayZoneNormal.attributes.description.renderDistance=When the player is in the radius, the text will appear

# ================= Counter and Slider Fades

entities.ChroniaHelper/TimeFadeCounterController.placements.name.controller=Time Fade Counter Controller
entities.ChroniaHelper/TimeFadeSliderController.placements.name.controller=Time Fade Slider Controller
triggers.ChroniaHelper/CounterFadeTrigger.placements.name.trigger=Counter Fade Trigger
triggers.ChroniaHelper/SliderFadeTrigger.placements.name.trigger=Slider Fade Trigger

# ================= Danger Bubbler

entities.ChroniaHelper/DangerBubbler.placements.name.controller=Danger Bubbler

# ================= HUD Controller

entities.ChroniaHelper/HUDController.placements.name.controller=HUD Controller

# ================= Danger Range Controller

entities.ChroniaHelper/DangerRangeController.placements.name.controller=Danger Range Controller
entities.ChroniaHelper/DangerRangeController.attributes.description.value=World Coordinate

# ================= Die Outside Camera Controller

entities.ChroniaHelper/DieOutsideCameraController.placements.name.controller=Die Outside Camera Controller

# ================= Chinese Characters Auto-Lining Controller

entities.ChroniaHelper/ChineseCharactersAutoLiningController.placements.name.controller=Chinese Characters Auto-Lining Controller

# ================= Condition Delay Trigger

triggers.ChroniaHelper/ConditionDelayTrigger.placements.name.trigger=Condition Delay Trigger
triggers.ChroniaHelper/ConditionDelayTrigger.attributes.description.chroniaMathExpession=A formula that looks like: someSlider * 2 + {flagA} * 1 \nOr maybe: mySlider * 2.5 + 34 - exp[anotherSlider] > 12 \nThe "words" inside Chronia Math Expression are treated as the key of the slider to get \nFunctions are all looking like "f[x]" \nAnd if you wanna read a flag, you use "{flag}", returns 1 as enabled and 0 as not \nIf the formula you input is a bool expression like "a == b" \nThe return value would be 1 as true and 0 as false, \nbut basically they follow the same principle when using as an argument: \nWhether the final return value is 0

# ================= Condition Delay Listener

entities.ChroniaHelper/ConditionDelayListener.placements.name.controller=Condition Delay Listener
entities.ChroniaHelper/ConditionDelayListener.attributes.description.chroniaMathExpession=A formula that looks like: someSlider * 2 + {flagA} * 1 \nOr maybe: mySlider * 2.5 + 34 - exp[anotherSlider] > 12 \nThe "words" inside Chronia Math Expression are treated as the key of the slider to get \nFunctions are all looking like "f[x]" \nAnd if you wanna read a flag, you use "{flag}", returns 1 as enabled and 0 as not \nIf the formula you input is a bool expression like "a == b" \nThe return value would be 1 as true and 0 as false, \nbut basically they follow the same principle when using as an argument: \nWhether the final return value is 0

# ================= Operation Codes Listener

entities.ChroniaHelper/OperationCodesListener.placements.name.controller=Operation Codes Listener

#================== SSC Random Packed Flag

triggers.ChroniaHelper/RandomPackedFlagTrigger.placements.name.trigger=Random Packed Flag Trigger

triggers.ChroniaHelper/ClearPackedFlagsTrigger.placements.name.trigger=Clear Packed Flags Trigger

entities.ChroniaHelper/FlagPacker.placements.name.controller=Flag Packer
entities.ChroniaHelper/FlagPacker.attributes.description.flags=Flags start with "!" are temporary flags, "*" are global flags

#================== Flag Listener Stopclock Controller

entities.ChroniaHelper/FlagListenerStopclockController.placements.name.controller=Flag Listener Stopclock Controller

#================== Fnt Displayer

entities.ChroniaHelper/FntDisplayerHD.placements.name.renderer=Fnt Displayer (HD)
entities.ChroniaHelper/FntDisplayerHD.attributes.description.parallaxX=The text parallax in-game
entities.ChroniaHelper/FntDisplayerHD.attributes.description.parallaxY=The text parallax in-game
entities.ChroniaHelper/FntDisplayerHD.attributes.description.screenX=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/FntDisplayerHD.attributes.description.screenY=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/FntDisplayerHD.attributes.description.textures=The source file path starts after Gameplay without suffix numbers
entities.ChroniaHelper/FntDisplayerHD.attributes.description.characterReference=The character reference that matches with the font file precisely \nNOTICE: You MUST have an empty file as reference for "space" and MUST hit a space in here at the precise index position of "space" \nbecause the index of "space" file is used as the default fallback texture
entities.ChroniaHelper/FntDisplayerHD.attributes.description.lineDistance=Under Compact mode: The distance between the bottom of one line of sprites and the top of the next line of sprites\nUnder Equal Distance mode: The distance between the center of each line
entities.ChroniaHelper/FntDisplayerHD.attributes.description.letterDistance=Under Compact mode: The distance of the gap between each font sprite\nUnder Equal Distance mode: The distance between the center of the sprites
entities.ChroniaHelper/FntDisplayerHD.attributes.description.letterDisplayInterval=Letter appear speed under Typewrite mode
entities.ChroniaHelper/FntDisplayerHD.attributes.description.triggerFlag=If not empty, this flag is required for the text to appear
entities.ChroniaHelper/FntDisplayerHD.attributes.description.renderDistance=When the player is in the radius, the text will appear

entities.ChroniaHelper/FntDisplayer.placements.name.renderer=Fnt Displayer
entities.ChroniaHelper/FntDisplayer.attributes.description.parallaxX=The text parallax in-game
entities.ChroniaHelper/FntDisplayer.attributes.description.parallaxY=The text parallax in-game
entities.ChroniaHelper/FntDisplayer.attributes.description.screenX=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/FntDisplayer.attributes.description.screenY=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/FntDisplayer.attributes.description.textures=The source file path starts after Gameplay without suffix numbers
entities.ChroniaHelper/FntDisplayer.attributes.description.characterReference=The character reference that matches with the font file precisely \nNOTICE: You MUST have an empty file as reference for "space" and MUST hit a space in here at the precise index position of "space" \nbecause the index of "space" file is used as the default fallback texture
entities.ChroniaHelper/FntDisplayer.attributes.description.lineDistance=Under Compact mode: The distance between the bottom of one line of sprites and the top of the next line of sprites\nUnder Equal Distance mode: The distance between the center of each line
entities.ChroniaHelper/FntDisplayer.attributes.description.letterDistance=Under Compact mode: The distance of the gap between each font sprite\nUnder Equal Distance mode: The distance between the center of the sprites
entities.ChroniaHelper/FntDisplayer.attributes.description.letterDisplayInterval=Letter appear speed under Typewrite mode
entities.ChroniaHelper/FntDisplayer.attributes.description.triggerFlag=If not empty, this flag is required for the text to appear
entities.ChroniaHelper/FntDisplayer.attributes.description.renderDistance=When the player is in the radius, the text will appear

entities.ChroniaHelper/FntDisplayZone.placements.name.renderer=Fnt Display Zone
entities.ChroniaHelper/FntDisplayZone.attributes.description.parallaxX=The text parallax in-game
entities.ChroniaHelper/FntDisplayZone.attributes.description.parallaxY=The text parallax in-game
entities.ChroniaHelper/FntDisplayZone.attributes.description.screenX=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/FntDisplayZone.attributes.description.screenY=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/FntDisplayZone.attributes.description.textures=The source file path starts after Gameplay without suffix numbers
entities.ChroniaHelper/FntDisplayZone.attributes.description.characterReference=The character reference that matches with the font file precisely \nNOTICE: You MUST have an empty file as reference for "space" and MUST hit a space in here at the precise index position of "space" \nbecause the index of "space" file is used as the default fallback texture
entities.ChroniaHelper/FntDisplayZone.attributes.description.lineDistance=Under Compact mode: The distance between the bottom of one line of sprites and the top of the next line of sprites\nUnder Equal Distance mode: The distance between the center of each line
entities.ChroniaHelper/FntDisplayZone.attributes.description.letterDistance=Under Compact mode: The distance of the gap between each font sprite\nUnder Equal Distance mode: The distance between the center of the sprites
entities.ChroniaHelper/FntDisplayZone.attributes.description.letterDisplayInterval=Letter appear speed under Typewrite mode
entities.ChroniaHelper/FntDisplayZone.attributes.description.triggerFlag=If not empty, this flag is required for the text to appear
entities.ChroniaHelper/FntDisplayZone.attributes.description.renderDistance=When the player is in the radius, the text will appear

entities.ChroniaHelper/FntDisplayZoneHD.placements.name.renderer=Fnt Display Zone (HD)
entities.ChroniaHelper/FntDisplayZoneHD.attributes.description.parallaxX=The text parallax in-game
entities.ChroniaHelper/FntDisplayZoneHD.attributes.description.parallaxY=The text parallax in-game
entities.ChroniaHelper/FntDisplayZoneHD.attributes.description.screenX=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/FntDisplayZoneHD.attributes.description.screenY=When the parallax is 0, this will be the text coordinate relative to the top-left
entities.ChroniaHelper/FntDisplayZoneHD.attributes.description.textures=The source file path starts after Gameplay without suffix numbers
entities.ChroniaHelper/FntDisplayZoneHD.attributes.description.characterReference=The character reference that matches with the font file precisely \nNOTICE: You MUST have an empty file as reference for "space" and MUST hit a space in here at the precise index position of "space" \nbecause the index of "space" file is used as the default fallback texture
entities.ChroniaHelper/FntDisplayZoneHD.attributes.description.lineDistance=Under Compact mode: The distance between the bottom of one line of sprites and the top of the next line of sprites\nUnder Equal Distance mode: The distance between the center of each line
entities.ChroniaHelper/FntDisplayZoneHD.attributes.description.letterDistance=Under Compact mode: The distance of the gap between each font sprite\nUnder Equal Distance mode: The distance between the center of the sprites
entities.ChroniaHelper/FntDisplayZoneHD.attributes.description.letterDisplayInterval=Letter appear speed under Typewrite mode
entities.ChroniaHelper/FntDisplayZoneHD.attributes.description.triggerFlag=If not empty, this flag is required for the text to appear
entities.ChroniaHelper/FntDisplayZoneHD.attributes.description.renderDistance=When the player is in the radius, the text will appear

# ================= Code Button Target Controller

entities.ChroniaHelper/CodeButtonTargetController.placements.name.controller=Code Button Target Controller

# ================= Code Button

entities.ChroniaHelper/CodeButton.placements.name.codeButton=Code Button

# ================= Set Flag Controller

entities.ChroniaHelper/SetFlagController.placements.name.controller=Set Flag Controller
entities.ChroniaHelper/SetFlagController.attributes.description.flags=Separate flags with a comma \nFlags contain "!" will disable \nFlags contain "*" will be global flag \nFlags contain "?" will be temporary
entities.ChroniaHelper/SetFlagController.attributes.description.parameters=When mode is "On Interval", this field will be the interval \nWhen mode is "On Flags", enter a series of flags separated by comma \nFlag begins with "!" is inverted
entities.ChroniaHelper/SetFlagController.attributes.description.chroniaMathExpession=A formula that looks like: someSlider * 2 + {flagA} * 1 \nOr maybe: mySlider * 2.5 + 34 - exp[anotherSlider] > 12 \nThe "words" inside Chronia Math Expression are treated as the key of the slider to get \nFunctions are all looking like "f[x]" \nAnd if you wanna read a flag, you use "{flag}", returns 1 as enabled and 0 as not \nIf the formula you input is a bool expression like "a == b" \nThe return value would be 1 as true and 0 as false, \nbut basically they follow the same principle when using as an argument: \nWhether the final return value is 0

# ================= Camera Grid

entities.ChroniaHelper/CameraGrid.placements.name.grid=Camera Grid
entities.ChroniaHelper/CameraGrid.attributes.description.Introduction=A small useless entity that indicates a usual camera grid of 320 * 180

# ================= Settings Override On Flag Controller

entities.ChroniaHelper/SettingsOverrideOnFlagController.placements.name.controller=Settings Override On Flag Controller

# ================= Omni Switch Gate

entities.ChroniaHelper/OmniSwitchGate.placements.name.block=Omni Switch Gate (Normal)
entities.ChroniaHelper/OmniSwitchGate.placements.name.mirror=Omni Switch Gate (Mirror)
entities.ChroniaHelper/OmniSwitchGate.placements.name.temple=Omni Switch Gate (Temple)
entities.ChroniaHelper/OmniSwitchGate.placements.name.stars=Omni Switch Gate (Stars)

# ================= Bumper Block

entities.ChroniaHelper/ModifiedBumperBlock.placements.name.both=Bumper Block (Modified, Both)
entities.ChroniaHelper/ModifiedBumperBlock.placements.name.vertical=Bumper Block (Modified, Vertical)
entities.ChroniaHelper/ModifiedBumperBlock.placements.name.horizontal=Bumper Block (Modified, Horizontal)

# ================= Balloon

entities.ChroniaHelper/Balloon.placements.name.balloon=Balloon (Customizable)

# ================= SetFlagSequenceController

entities.ChroniaHelper/SetFlagSequenceController.placements.name.controller=Set Flag Sequence Controller
flagSequence=A sequence representing how this entity should operate flags. The sequence may contain flags or a delay. \nThe sequence should be divided by ";", like "flagA;0.5;flagB". \nFor delay, a single number will do. \nFor flags, it can be multiple flags separated by a comma like "flag1,!flag2,?flag3,*flag4". \n"flag" is to activate a flag. \n"!flag" is to disable a flag. \n"?flag" is to enable a temporary flag. \n"*flag" is to set up a global flag. \nThe example is given in the field.
parameters=When the "mode" is set to "On Flags", enter the required flags here. \nWhen the mode is "On Chronia Expression" or "On Frost Expression", enter the expression here.

# ================= Grouped Wind Tunnel

entities.ChroniaHelper/GroupedWindTunnel.placements.name.GroupedWindTunnel=Grouped Wind Tunnel

# ================= Grouped Wind Tunnel Controller

entities.ChroniaHelper/GroupedWindTunnelController.placements.name.GroupedWindTunnelController=Grouped Wind Tunnel Controller
