Add Flipped condition docs
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
# Flipped
|
||||
An ephemeral condition specific to enemy party members that is only inflicted with a `Flip` [AttackProperty](../../Damage%20pipeline/AttackProperty.md) to an enemy party member with a `Flip` [weakness](../../Damage%20pipeline/AttackProperty.md). It causes all the enemy party member's `def` to be ignored during damage calculation which is recognised by [TrueDef](../../Visual%20rendering/RefreshEnemyHP.md). This process can be hampered by [Topple](Topple.md)'s defense mechanism if it applies. NOTE: The condition logic has caveats, check the [CalculateBaseDamage](../../Damage%20pipeline/CalculateBaseDamage.md) documentation to learn more.
|
||||
|
||||
## [IsStopped](../IsStopped.md)
|
||||
This condition is considered a stop condition and will always make this method returns true (unless skipimmobile is false while the actor'a `actimmobile` is true). This include the lite version used in the [enemy phase](../../Battle%20flow/Main%20turn%20life%20cycle.md#enemies-phase). Being stopped makes the actor unable to act regardless of their `cantmove` as well as a bunch of feature they no longer get access to.
|
||||
|
||||
NOTE: In practice, this being a stop condition doesn't do much because the battle system ensure it only has 1 turn on it and it gets removed manually before the enemy party member attacks.
|
||||
|
||||
## [Relay](../../Battle%20flow/Action%20coroutines/Relay.md)
|
||||
This condition will not be transfered to the target of the relay if the relayer had a `RelayTransfer` [medal](../../../Enums%20and%20IDs/Medal.md). It should be noted that it is not possible to inflict this condition on a player party member under normal gameplay so this clause effectively does nothing.
|
||||
|
||||
## [CalculateBaseDamage](../../Damage%20pipeline/CalculateBaseDamage.md)
|
||||
This condition will cause the battleentity.[animstate](../../../Entities/EntityControl/Animations/animstate.md) to be set to 25 (`SleepFallen`) instead of 14 (`Sleep`) if a [Sleep](Sleep.md) infliction occurs.
|
||||
|
||||
If property is `Flip` while the target has this condition, it will change the logic to call DefaultDamageCalc instead of the standard 1 `def` ignore logic that the property normally has. In DefaultDamageCalc, this condition will actually prevent the damage to be decreased by the target's `def` which means the overall effect is this condition causes the `def` to be ignored (but not other forms of defenses). This is recognised by [TrueDef](../../Visual%20rendering/RefreshEnemyHP.md#truedef), but this comes with caveats, check the method's documentation to learn more.
|
||||
|
||||
If this condition wasn't present, but property is `Flip` while the target has a `Flip` [weakness](../../Damage%20pipeline/AttackProperty.md), a weaknesshit is recognised and the condition will be inflicted for 1 turn unless the target has the `ToppleFirst` [weakness](../../Damage%20pipeline/AttackProperty.md) without a [Topple](Topple.md) condition (since this is where [Topple](Topple.md) is inflicted instead as a defensive mechanism). In the case where `ToppleFirst` exists AND it already has [Topple](Topple.md), Topple is removed and `Flipped` is added in its place. For more information, check the method's documentation.
|
||||
|
||||
## [AdvanceTurnEntity](../../Battle%20flow/Action%20coroutines/AdvanceMainTurn.md)
|
||||
When the condition is processed (when `hp` is above 0), if there's more than 1 turn left on it, the actor turn count is decremented. Otherwise, this condition isn't processed in any way meaning it exceptionally doesn't feature a normal actor turn decrease (it is always manually removed).
|
||||
|
||||
## [DoAction](../../Battle%20flow/Action%20coroutines/DoAction.md)
|
||||
Before an enemy party member acts, if it has this condition or [Topple](Topple.md) for exactly 1 actor turn left, both are removed alongside the following logic:
|
||||
|
||||
- [Jump](../../../Entities/EntityControl/EntityControl%20Methods.md#jump) is called on the enemy party member with a height of 10.0
|
||||
- entity.`overrideanim` is set to false
|
||||
- entity.`basestate` and entity.[animstate](../../../Entities/EntityControl/Animations/animstate.md) is set to 0 (`Idle`)
|
||||
- startstate is set to 0 (`Idle`)
|
||||
- 0.1 seconds are yielded
|
||||
|
||||
## [ClearStatus](../Conditions%20methods/ClearStatus.md)
|
||||
This condition is excluded from removal meaning it will remain even after calling this method.
|
||||
|
||||
## [DoDamageAnim](../../Visual%20rendering/DoDamageAnim.md)
|
||||
This condition may cause the actor's battleentity.[animstate](../../../Entities/EntityControl/Animations/animstate.md) and `basestate` to be set to 15 (`Fallen`) alongside setting `overrideanim` to false. Check the method's documentation to learn more.
|
||||
|
||||
## [UpdateAnim](../../Visual%20rendering/UpdateAnim.md)
|
||||
For all alive (`hp` above 0) enemy party members with this condition and whose `droproutine` isn't in progress, their battleentity.[animstate](../../../Entities/EntityControl/Animations/animstate.md) is set to 15 (`Fallen`) (or 25 (`SleepFallen`) if they also have the [Sleep](Sleep.md) condition).
|
||||
|
||||
## [Numb](../../../Entities/EntityControl/EntityControl%20Methods.md#numb)
|
||||
For every enemy party member with this condition, every 60 frames, their [animstate](../../../Entities/EntityControl/Animations/animstate.md) gets set to 16 (`HurtFallen`) instead of 11 (`Hurt`).
|
||||
@@ -55,6 +55,8 @@ When the condition is processed (when `hp` is above 0 and there is at least one
|
||||
- The actor's `hp` is clamped from 1 to its `maxhp` (this implies it can't be lethal)
|
||||
- A yield of 0.75 seconds is set to happen after the method is done
|
||||
|
||||
Exceptionally, the turn counter of the condition won't decrement if the actor has an `EternalPoison` [medal](../../../Enums%20and%20IDs/Medal.md).
|
||||
|
||||
## [HealConditions](../Conditions%20methods/HealConditions.md)
|
||||
This condition is supported by this method and it will be removed when called.
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ A 1 hit defensive mechanism in the form of a condition for an enemy party member
|
||||
This condition will not be transfered to the target of the relay if the relayer had a `RelayTransfer` [medal](../../../Enums%20and%20IDs/Medal.md). It should be noted that it is not possible to inflict this condition on a player party member under normal gameplay so this clause effectively does nothing.
|
||||
|
||||
## [DoAction](../../Battle%20flow/Action%20coroutines/DoAction.md)
|
||||
Before an enemy party member acts, if it has this condition or [Flipped](Flipped.md), both are removed alongside the following logic:
|
||||
Before an enemy party member acts, if it has this condition or [Flipped](Flipped.md) for exactly 1 actor turn left, both are removed alongside the following logic:
|
||||
|
||||
- [Jump](../../../Entities/EntityControl/EntityControl%20Methods.md#jump) is called on the enemy party member with a height of 10.0
|
||||
- entity.`overrideanim` is set to false
|
||||
@@ -18,7 +18,7 @@ This condition prevents toppling an enemy party members with a `ToppleFirst` or
|
||||
|
||||
This condition is removed if [Freeze](Freeze.md) is inflicted.
|
||||
|
||||
This condition is removed if the target has it, property is `Flip` while the target has a `Flip` and `ToppleFirst` [weakness](../../Damage%20pipeline/AttackProperty.md) without the [Flipped](Flipped.md) condition. It essentially acts as replacing `Topple` with `Flipped` in this case since it also inflicts [Flipped](Flipped.md).
|
||||
This condition is removed if the target has it, property is `Flip` while the target has a `Flip` and `ToppleFirst` [weakness](../../Damage%20pipeline/AttackProperty.md) without the [Flipped](Flipped.md) condition. It essentially acts as replacing `Topple` with `Flipped` in this case since it also inflicts [Flipped](Flipped.md). However, if the condition isn't present while the other conditions are fufilled, it is inflicted for 1 turn and on top of this, if the the target.`position` is `Ground`, battleentity.`basestate` is set to 21 (`Woobly`).
|
||||
|
||||
This condition is removed if the damage calculation logic needs to drop the enemy party member. Check the method documentation to learn about the conditions for that to happen.
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ Here are the different BattleCondition that exists in the game and a summary of
|
||||
|6|[AttackDown](BattleCondition/AttackDown.md)|A condition that gives a -1 damage malus on attacks by the actor while it is active when the [AttackProperty](../../Damage%20pipeline/AttackProperty.md) isn't `NoExceptions`|
|
||||
|7|[DefenseDown](BattleCondition/DefenseDown.md)|A condition that removes a point of defense recognised by [TrueDef](../../Visual%20rendering/RefreshEnemyHP.md#truedef) which can result in a +1 damage effects while it is active when the [AttackProperty](../../Damage%20pipeline/AttackProperty.md) isn't `NoExceptions`. NOTE: This has several caveats, check the [CalculateBaseDamage](../../Damage%20pipeline/CalculateBaseDamage.md) documentation to learn more|
|
||||
|8|[Topple](BattleCondition/Topple.md)|A 1 hit defensive mechanism in the form of a condition for an enemy party member where if it has a `ToppleFirst` or `ToppleAirOnly` (if their `position` is `Flying`) [weakness](../../Damage%20pipeline/AttackProperty.md) it won't get dropped or [Flipped](Flipped.md) immediately when it was supposed to otherwise. Instead, this condition will be inflicted without the drop or flip featuring a `Woobly` [animstate](../../../Entities/EntityControl/Animations/animstate.md) and it will be removed after most attacks which allows the drop or flip to occur on any subsequent hit|
|
||||
|9|[Flipped](BattleCondition/Flipped.md)||
|
||||
|9|[Flipped](BattleCondition/Flipped.md)|An ephemeral condition specific to enemy party members that is only inflicted with a `Flip` [AttackProperty](../../Damage%20pipeline/AttackProperty.md) to an enemy party member with a `Flip` [weakness](../../Damage%20pipeline/AttackProperty.md). It causes all the enemy party member's `def` to be ignored during damage calculation which is recognised by [TrueDef](../../Visual%20rendering/RefreshEnemyHP.md). This process can be hampered by [Topple](Topple.md)'s defense mechanism if it applies. NOTE: The condition logic has caveats, check the [CalculateBaseDamage](../../Damage%20pipeline/CalculateBaseDamage.md) documentation to learn more|
|
||||
|10|[Shield](BattleCondition/Shield.md)||
|
||||
|11|[Taunted](BattleCondition/Taunted.md)||
|
||||
|12|[Sturdy](BattleCondition/Sturdy.md)||
|
||||
|
||||
Reference in New Issue
Block a user