Alchemy
Loading...
Searching...
No Matches

battle_type.h File Reference

BattlePlan, an action planned for its targets: the hits, criticals and multipliers rolled. More...

Go to the source code of this file.

Data Structures

struct  BattlePlan
 One action, as BattleCommand_BuildPlan lays it out for BattleTargetExec to apply target by target. More...

Macros

#define HIT_NOT_ROLLED   -1
 BattlePlan.targetHit while the hit is still to be rolled, as the ability lands; BattleCommand_BuildPlan rolls it ahead only for Annihilation.

Enumerations

enum  { BATTLE_TARGET_CAPACITY = 14 , BATTLE_PLAN_SIZE = 0x64 }
enum  BattleCritical { CRITICAL_NONE , CRITICAL_HIT , CRITICAL_STRONG }
 BattlePlan.targetCritical: the critical hit rolled for each target. More...

Functions

 STATIC_ASSERT (sizeof(struct BattlePlan)==BATTLE_PLAN_SIZE)
 STATIC_ASSERT (offsetof(struct BattlePlan, targetIds)==0x02)
 STATIC_ASSERT (offsetof(struct BattlePlan, targetMultiplier)==0x1e)
 STATIC_ASSERT (offsetof(struct BattlePlan, abilityId)==0x4c)
 STATIC_ASSERT (offsetof(struct BattlePlan, hauntDamage)==0x60)

Detailed Description

BattlePlan, an action planned for its targets: the hits, criticals and multipliers rolled.

Definition in file battle_type.h.

Macro Definition Documentation

◆ HIT_NOT_ROLLED

#define HIT_NOT_ROLLED   -1

BattlePlan.targetHit while the hit is still to be rolled, as the ability lands; BattleCommand_BuildPlan rolls it ahead only for Annihilation.

Definition at line 22 of file battle_type.h.

Referenced by BattleCommand_BuildPlan(), and BattleTargetExec().

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
BATTLE_TARGET_CAPACITY 
BATTLE_PLAN_SIZE 

Definition at line 11 of file battle_type.h.

◆ BattleCritical

BattlePlan.targetCritical: the critical hit rolled for each target.

Enumerator
CRITICAL_NONE 
CRITICAL_HIT 

an attack's: a quarter more damage

CRITICAL_STRONG 

an ability's (effects 36 to 40): half as much again

Definition at line 14 of file battle_type.h.

Function Documentation

◆ STATIC_ASSERT() [1/5]

STATIC_ASSERT ( sizeof(struct BattlePlan) = =BATTLE_PLAN_SIZE)

◆ STATIC_ASSERT() [2/5]

STATIC_ASSERT ( offsetof(struct BattlePlan, targetIds) = =0x02)

◆ STATIC_ASSERT() [3/5]

STATIC_ASSERT ( offsetof(struct BattlePlan, targetMultiplier) = =0x1e)

◆ STATIC_ASSERT() [4/5]

STATIC_ASSERT ( offsetof(struct BattlePlan, abilityId) = =0x4c)

◆ STATIC_ASSERT() [5/5]

STATIC_ASSERT ( offsetof(struct BattlePlan, hauntDamage) = =0x60)