Spellforce-Spell-framework
Loading...
Searching...
No Matches
sf_registration_functions.h File Reference
#include <stdint.h>
#include <stdbool.h>
#include "sf_general_structures.h"
#include "sf_effect_functions.h"
#include "sf_ai_functions.h"
#include "./structures/sf_registration_structures.h"
Include dependency graph for sf_registration_functions.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  RegistrationFunctions
 A structure dedicated to the registration of spells This structure holds functions that are used to create a representation of a spell within the framework. We then translate this representation into a viable Spellforce Spell. More...

Typedefs

typedef SFSpell *(__thiscall * registerSpell_ptr) (uint16_t spell_id)
typedef void(__thiscall * linkTypeHandler_ptr) (SFSpell *spell, handler_ptr typeHandler)
typedef void(__thiscall * linkEffectHandler_ptr) (SFSpell *spell, uint16_t spell_effect_id, handler_ptr effectHandler)
typedef void(__thiscall * linkEndHandler_ptr) (SFSpell *spell, handler_ptr endHandler)
typedef void(__thiscall * linkOnHitHandler_ptr) (SFSpell *spell, onhit_handler_ptr onhitHandler, OnHitPhase phase)
typedef void(__thiscall * applySpellTag_ptr) (SFSpell *spell, SpellTag tag)
typedef void(__thiscall * linkSubEffectHandler_ptr) (SFSpell *spell, sub_effect_handler_ptr handler)
typedef void(__thiscall * linkRefreshHandler_ptr) (SFSpell *spell, refresh_handler_ptr handler)
typedef void(__thiscall * linkDealDamageHandler_ptr) (SFSpell *spell, damage_handler_ptr handler, SpellDamagePhase phase)
typedef void(__thiscall * linkSingleTargetAIHandler_ptr) (SFSpell *spell, ai_single_handler_ptr handler)
typedef void(__thiscall * linkAOEAIHandler_ptr) (SFSpell *spell, ai_aoe_handler_ptr handler)
typedef void(__thiscall * linkAvoidanceAIHandler_ptr) (SFSpell *spell, ai_avoidance_handler_ptr handler)
typedef void(__thiscall * linkPhysRainHandler_ptr) (SFSpell *spell, sub_effect_handler_ptr handler)
typedef void(__thiscall * linkPhysEffectHandler_ptr) (SFSpell *spell, phys_effect_handler_ptr handler)
typedef void(__thiscall * linkEnchantChanceHandler_ptr) (SFSpell *spell, enchant_handler_ptr handler)
typedef SFBuilding *(__thiscall * registerBuilding_ptr) (uint8_t building_type)
typedef void(__thiscall * linkBuildingDoneHandler_ptr) (SFBuilding *building, building_done_handler_ptr handler)
typedef void(__thiscall * linkBuildingEntryHandler_ptr) (SFBuilding *building, building_entry_handler_ptr handler)
typedef void(__thiscall * linkBuildingJSON_ptr) (SFBuilding *building, const char *building_json_name)
typedef void(__thiscall * applyBuildingTag_ptr) (SFBuilding *building, BuildingTag tag)

Typedef Documentation

◆ applyBuildingTag_ptr

typedef void(__thiscall * applyBuildingTag_ptr) (SFBuilding *building, BuildingTag tag)

Definition at line 32 of file sf_registration_functions.h.

◆ applySpellTag_ptr

typedef void(__thiscall * applySpellTag_ptr) (SFSpell *spell, SpellTag tag)

Definition at line 15 of file sf_registration_functions.h.

◆ linkAOEAIHandler_ptr

typedef void(__thiscall * linkAOEAIHandler_ptr) (SFSpell *spell, ai_aoe_handler_ptr handler)

Definition at line 21 of file sf_registration_functions.h.

◆ linkAvoidanceAIHandler_ptr

typedef void(__thiscall * linkAvoidanceAIHandler_ptr) (SFSpell *spell, ai_avoidance_handler_ptr handler)

Definition at line 22 of file sf_registration_functions.h.

◆ linkBuildingDoneHandler_ptr

typedef void(__thiscall * linkBuildingDoneHandler_ptr) (SFBuilding *building, building_done_handler_ptr handler)

Definition at line 28 of file sf_registration_functions.h.

◆ linkBuildingEntryHandler_ptr

typedef void(__thiscall * linkBuildingEntryHandler_ptr) (SFBuilding *building, building_entry_handler_ptr handler)

Definition at line 29 of file sf_registration_functions.h.

◆ linkBuildingJSON_ptr

typedef void(__thiscall * linkBuildingJSON_ptr) (SFBuilding *building, const char *building_json_name)

Definition at line 31 of file sf_registration_functions.h.

◆ linkDealDamageHandler_ptr

typedef void(__thiscall * linkDealDamageHandler_ptr) (SFSpell *spell, damage_handler_ptr handler, SpellDamagePhase phase)

Definition at line 18 of file sf_registration_functions.h.

◆ linkEffectHandler_ptr

typedef void(__thiscall * linkEffectHandler_ptr) (SFSpell *spell, uint16_t spell_effect_id, handler_ptr effectHandler)

Definition at line 12 of file sf_registration_functions.h.

◆ linkEnchantChanceHandler_ptr

typedef void(__thiscall * linkEnchantChanceHandler_ptr) (SFSpell *spell, enchant_handler_ptr handler)

Definition at line 25 of file sf_registration_functions.h.

◆ linkEndHandler_ptr

typedef void(__thiscall * linkEndHandler_ptr) (SFSpell *spell, handler_ptr endHandler)

Definition at line 13 of file sf_registration_functions.h.

◆ linkOnHitHandler_ptr

typedef void(__thiscall * linkOnHitHandler_ptr) (SFSpell *spell, onhit_handler_ptr onhitHandler, OnHitPhase phase)

Definition at line 14 of file sf_registration_functions.h.

◆ linkPhysEffectHandler_ptr

typedef void(__thiscall * linkPhysEffectHandler_ptr) (SFSpell *spell, phys_effect_handler_ptr handler)

Definition at line 24 of file sf_registration_functions.h.

◆ linkPhysRainHandler_ptr

typedef void(__thiscall * linkPhysRainHandler_ptr) (SFSpell *spell, sub_effect_handler_ptr handler)

Definition at line 23 of file sf_registration_functions.h.

◆ linkRefreshHandler_ptr

typedef void(__thiscall * linkRefreshHandler_ptr) (SFSpell *spell, refresh_handler_ptr handler)

Definition at line 17 of file sf_registration_functions.h.

◆ linkSingleTargetAIHandler_ptr

typedef void(__thiscall * linkSingleTargetAIHandler_ptr) (SFSpell *spell, ai_single_handler_ptr handler)

Definition at line 20 of file sf_registration_functions.h.

◆ linkSubEffectHandler_ptr

typedef void(__thiscall * linkSubEffectHandler_ptr) (SFSpell *spell, sub_effect_handler_ptr handler)

Definition at line 16 of file sf_registration_functions.h.

◆ linkTypeHandler_ptr

typedef void(__thiscall * linkTypeHandler_ptr) (SFSpell *spell, handler_ptr typeHandler)

Definition at line 11 of file sf_registration_functions.h.

◆ registerBuilding_ptr

typedef SFBuilding *(__thiscall * registerBuilding_ptr) (uint8_t building_type)

Definition at line 27 of file sf_registration_functions.h.

◆ registerSpell_ptr

typedef SFSpell *(__thiscall * registerSpell_ptr) (uint16_t spell_id)

Definition at line 10 of file sf_registration_functions.h.