Spellforce-Spell-framework
Loading...
Searching...
No Matches
sf_toolbox_functions.h
Go to the documentation of this file.
1#pragma once
2#include <stdint.h>
3#include <stdbool.h>
6
7// Declare the function pointers for the ToolboxFunctions group
8DECLARE_FUNCTION(void, dealDamage, SF_CGdFigureToolbox *CGdFigureToolbox,uint16_t source_index, uint16_t target_index,
9 uint32_t damage, uint32_t is_spell_damage, uint32_t param5, uint32_t param6);
10DECLARE_FUNCTION(bool, isTargetable, SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t figure_index);
11DECLARE_FUNCTION(uint16_t, figuresCheckHostile, SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t source_index,
12 uint16_t target_index);
13DECLARE_FUNCTION(uint16_t, figuresCheckNeutral, SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t source_index,
14 uint16_t target_index);
15DECLARE_FUNCTION(uint16_t, figuresCheckFriendly,
16 SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t source_index,
17 uint16_t target_index);
18DECLARE_FUNCTION(uint32_t, hasSpellOnIt, SF_CGdFigureToolbox *CGdFigureToolbox,
19 uint16_t figure_index, uint16_t spell_line_id);
20DECLARE_FUNCTION(void, rescaleLevelStats, SF_CGdFigureToolbox *CGdFigureToolbox,
21 uint16_t figure_index);
22DECLARE_FUNCTION(void, addSpellToFigure, SF_CGdFigureToolbox *CGdFigureToolbox,
23 uint16_t figure_index, uint16_t spell_index);
24DECLARE_FUNCTION(uint16_t, getFigureFromWorld, void *CGdWorldToolBox,
25 uint16_t param1, uint16_t param2, uint32_t param3);
26DECLARE_FUNCTION(uint16_t, getSpellIndexOfType,
27 SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t target_index,
28 uint16_t spell_line, uint16_t last_known_index);
29DECLARE_FUNCTION(uint16_t, getSpellIndexFromDLL, uint32_t *CGdDoubleLinkedList,
30 uint16_t spell_job_start_node);
31DECLARE_FUNCTION(uint16_t, getNextNode, uint32_t *CGdDoubleLinkedList,
32 uint16_t current_node);
33DECLARE_FUNCTION(void, figureSetNewJob, void *CGdFigureJobs, uint32_t figure_id,
34 uint32_t new_job, uint32_t param_3, uint32_t param_4,
35 uint32_t param_5); // @SHUFFLE Move to Figure Functions
36DECLARE_FUNCTION(uint32_t, removeSpellFromList,
37 SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t param_1,
38 uint16_t param_2);
39DECLARE_FUNCTION(uint16_t, addUnit, SF_CGdFigureToolbox *_this, uint16_t posX,
40 uint16_t posY, uint16_t owner, uint16_t figure_type,
41 uint16_t spawn_effect, int npc_id, int faction,
42 int disable_ai);
43DECLARE_FUNCTION(bool, findClosestFreePosition, SF_CGdWorldToolBox *_this,
44 SF_Coord *param_1, SF_Coord *param_2,
45 uint16_t sector, SF_Coord *return_value)
46DECLARE_FUNCTION(bool, isUnitMelee, SF_CGdFigureToolbox *CGdFigureToolbox,
47 uint16_t figure_id);
48
50 uint16_t figure_id);
51
52DECLARE_FUNCTION(uint16_t, getPhysDamageReduction, SF_CGdFigureToolbox *_this, uint16_t source_index,
53 uint16_t target_index, uint16_t action_id);
54
55DECLARE_FUNCTION(uint32_t, getFigureXData, SF_CGdFigureToolbox *_this, uint16_t figure_id, uint8_t xdata_type);
56DECLARE_FUNCTION(void, setFigureXData, SF_CGdFigureToolbox *_this, uint16_t figure_id, uint8_t xdata_type,
57 uint32_t value);
58
59DECLARE_FUNCTION(void, equipArtisanArmour, SF_CGdFigureToolbox* _this, uint16_t figure_id);
60DECLARE_FUNCTION(void, equipArtisanTools, SF_CGdFigureToolbox* _this, uint16_t figure_id, uint32_t param2,
61 uint32_t param3);
62
63DECLARE_FUNCTION(uint8_t, getSightRange, SF_CGdFigureToolbox *_this, uint16_t figure_id);
64// getDistance(SF_Coord *pointA, SF_Coord *pointB)
65DECLARE_FUNCTION(uint32_t, getDistance, SF_Coord *pointA, SF_Coord *pointB);
66
67DECLARE_FUNCTION(uint16_t, findClosestMonument, void *SF_CGdObjectToolBox,uint16_t figure_id,uint16_t *result);
68
69DECLARE_FUNCTION(void, doMapOutCry, void *AC30, uint16_t outCryType, uint16_t owner, uint8_t param3, uint16_t param4,
70 uint16_t pos_x, uint16_t pos_y);
71//bool isBuildingAllied(SF_CGdBuildingToolbox *_this, uint16_t figure_index, uint16_t building_index)
72
73
74
uint32_t __thiscall getDistance(SF_Coord *pointA, SF_Coord *pointB)
Definition sf_wrappers.c:41
uint16_t __thiscall getPhysDamageReduction(SF_CGdFigureToolbox *_this, uint16_t source_index, uint16_t target_index, uint16_t action_id)
bool __thiscall hasAuraActive(SF_CGdFigureToolbox *_this, uint16_t figure_id)
Group of Structures and Enums used throught SFSF.
#define DECLARE_FUNCTION(type, name,...)
Declares a function with the specified return type, name, and arguments.
bool(__thiscall * isUnitMelee_ptr)(SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t figure_id)
void(__thiscall * equipArtisanArmour_ptr)(SF_CGdFigureToolbox *_this, uint16_t figure_id)
uint16_t(__thiscall * getFigureFromWorld_ptr)(void *CGdWorldToolBox, uint16_t param1, uint16_t param2, uint32_t param3)
uint16_t(__thiscall * figuresCheckHostile_ptr)(SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t source_index, uint16_t target_index)
uint16_t(__thiscall * getPhysDamageReduction_ptr)(SF_CGdFigureToolbox *_this, uint16_t source_index, uint16_t target_index, uint16_t action_id)
void(__thiscall * addSpellToFigure_ptr)(SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t figure_index, uint16_t spell_index)
void(__thiscall * doMapOutCry_ptr)(void *AC30, uint16_t outCryType, uint16_t owner, uint8_t param3, uint16_t param4, uint16_t pos_x, uint16_t pos_y)
uint16_t(__thiscall * getSpellIndexFromDLL_ptr)(uint32_t *CGdDoubleLinkedList, uint16_t spell_job_start_node)
bool(__thiscall * findClosestFreePosition_ptr)(SF_CGdWorldToolBox *_this, SF_Coord *param_1, SF_Coord *param_2, uint16_t sector, SF_Coord *return_value)
void(__thiscall * dealDamage_ptr)(SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t source_index, uint16_t target_index, uint32_t damage, uint32_t is_spell_damage, uint32_t param5, uint32_t param6)
uint16_t(__thiscall * addUnit_ptr)(SF_CGdFigureToolbox *_this, uint16_t posX, uint16_t posY, uint16_t owner, uint16_t figure_type, uint16_t spawn_effect, int npc_id, int faction, int disable_ai)
bool(__thiscall * isTargetable_ptr)(SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t figure_index)
uint32_t(__thiscall * hasSpellOnIt_ptr)(SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t figure_index, uint16_t spell_line_id)
uint32_t(__thiscall * removeSpellFromList_ptr)(SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t param_1, uint16_t param_2)
void(__thiscall * equipArtisanTools_ptr)(SF_CGdFigureToolbox *_this, uint16_t figure_id, uint32_t param2, uint32_t param3)
uint32_t(__thiscall * getDistance_ptr)(SF_Coord *pointA, SF_Coord *pointB)
uint8_t(__thiscall * getSightRange_ptr)(SF_CGdFigureToolbox *_this, uint16_t figure_id)
uint16_t(__thiscall * getSpellIndexOfType_ptr)(SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t target_index, uint16_t spell_line, uint16_t last_known_index)
void(__thiscall * setFigureXData_ptr)(SF_CGdFigureToolbox *_this, uint16_t figure_id, uint8_t xdata_type, uint32_t value)
uint32_t(__thiscall * getFigureXData_ptr)(SF_CGdFigureToolbox *_this, uint16_t figure_id, uint8_t xdata_type)
uint16_t(__thiscall * findClosestMonument_ptr)(void *SF_CGdObjectToolBox, uint16_t figure_id, uint16_t *result)
void(__thiscall * rescaleLevelStats_ptr)(SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t figure_index)
uint16_t(__thiscall * getNextNode_ptr)(uint32_t *CGdDoubleLinkedList, uint16_t current_node)
uint16_t(__thiscall * figuresCheckFriendly_ptr)(SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t source_index, uint16_t target_index)
bool(__thiscall * hasAuraActive_ptr)(SF_CGdFigureToolbox *_this, uint16_t figure_id)
uint16_t(__thiscall * figuresCheckNeutral_ptr)(SF_CGdFigureToolbox *CGdFigureToolbox, uint16_t source_index, uint16_t target_index)
void(__thiscall * figureSetNewJob_ptr)(void *CGdFigureJobs, uint32_t figure_id, uint32_t new_job, uint32_t param_3, uint32_t param_4, uint32_t param_5)
Holds most of the Toolbox Functions relevent for custom spells. Includes functions for the manipulati...
dealDamage_ptr dealDamage
getFigureXData_ptr getFigureXData
getPhysDamageReduction_ptr getPhysDamageReduction
equipArtisanArmour_ptr equipArtisanArmour
hasSpellOnIt_ptr hasSpellOnIt
addSpellToFigure_ptr addSpellToFigure
getDistance_ptr getDistance
figuresCheckHostile_ptr figuresCheckHostile
figureSetNewJob_ptr figureSetNewJob
doMapOutCry_ptr doMapOutCry
getSightRange_ptr getSightRange
findClosestFreePosition_ptr findClosestFreePosition
isTargetable_ptr isTargetable
getNextNode_ptr getNextNode
findClosestMonument_ptr findClosestMonument
hasAuraActive_ptr hasAuraActive
rescaleLevelStats_ptr rescaleLevelStats
getFigureFromWorld_ptr getFigureFromWorld
isUnitMelee_ptr isUnitMelee
getSpellIndexFromDLL_ptr getSpellIndexFromDLL
figuresCheckFriendly_ptr figuresCheckFriendly
figuresCheckNeutral_ptr figuresCheckNeutral
setFigureXData_ptr setFigureXData
removeSpellFromList_ptr removeSpellFromList
getSpellIndexOfType_ptr getSpellIndexOfType
equipArtisanTools_ptr equipArtisanTools