Spellforce-Spell-framework
Toggle main menu visibility
Loading...
Searching...
No Matches
sf_iterator_functions.h
Go to the documentation of this file.
1
#pragma once
2
#include <stdint.h>
3
#include <stdbool.h>
4
#include "
./structures/sf_iterator_structures.h
"
5
6
typedef
struct
__attribute__((packed))
7
{
8
uint32_t
offset_0x0
;
9
uint32_t
offset_0x4
;
10
uint16_t
offset_0x8
;
11
uint16_t
offset_0xa
;
12
uint16_t
offset_0xc
;
13
uint16_t
offset_0xe
;
14
uint16_t
offset_0x10
;
15
uint16_t
offset_0x12
;
16
uint16_t
offset_0x14
;
17
uint16_t
offset_0x16
;
18
uint16_t
offset_0x18
;
19
uint16_t
offset_0x1a
;
20
uint32_t
offset_0x1c
;
21
uint16_t
offset_0x20
;
22
uint32_t
offset_0x22
;
23
uint8_t
offset_0x26
;
24
uint8_t
offset_0x27
;
25
uint32_t
offset_0x28
;
26
uint16_t
offset_0x2c
;
27
uint8_t
offset_0x2e
;
28
uint8_t
offset_0x2f
;
29
AutoClass69
offset_0x30
;
30
}
CGdTileIterator_data
;
31
32
typedef
struct
__attribute__((packed))
33
{
34
uint32_t
ftable_ptr
;
35
CGdTileIterator_data
data
;
36
}
CGdFigureIterator
;
37
38
typedef
struct
__attribute__((packed))
39
{
40
uint32_t
btable_ptr
;
41
CGdTileIterator_data
data
;
42
}
CGdBuildingIterator
;
43
44
typedef
struct
__attribute__((packed))
45
{
46
uint32_t
btable_ptr
;
47
CGdTileIterator_data
data
;
48
}
CGdObjectIterator
;
49
50
51
// Declare the function pointers for IteratorFunctions group
52
DECLARE_FUNCTION
(
void
, figureIteratorInit,
CGdFigureIterator
*iterator,
53
uint16_t x_start, uint16_t y_start, uint16_t x_end,
54
uint16_t y_end);
55
DECLARE_FUNCTION
(
void
, figureIteratorSetPointers,
CGdFigureIterator
*iterator,
56
SF_CGdFigure
*figure,
void
*AutoClass22,
void
*CGdWorld);
57
DECLARE_FUNCTION
(
void
, iteratorSetArea,
CGdFigureIterator
*iterator,
58
SF_Coord
*position, uint16_t radius);
59
DECLARE_FUNCTION
(uint16_t, getNextFigure,
CGdFigureIterator
*iterator);
60
DECLARE_FUNCTION
(
void
,
setupFigureIterator
,
CGdFigureIterator
*iterator,
61
SF_CGdSpell
*spell);
62
DECLARE_FUNCTION
(
void
,
disposeFigureIterator
,
CGdFigureIterator
*iterator);
63
64
DECLARE_FUNCTION
(
void
, buildingIteratorInit,
CGdBuildingIterator
*iterator,
65
uint16_t x_start, uint16_t y_start, uint16_t x_end,
66
uint16_t y_end);
67
DECLARE_FUNCTION
(
void
, buildingIteratorSetPointers,
68
CGdBuildingIterator
*iterator,
void
*
SF_CGdBuilding
,
69
void
*AutoClass22,
void
*CGdWorld);
70
DECLARE_FUNCTION
(uint16_t, getNextBuilding,
CGdBuildingIterator
*_this);
71
72
DECLARE_FUNCTION
(
void
, objectIteratorInit,
CGdObjectIterator
*iterator,
73
uint16_t x_start, uint16_t y_start, uint16_t x_end,
74
uint16_t y_end);
75
DECLARE_FUNCTION
(
void
, objectIteratorSetPointers,
76
CGdObjectIterator
*iterator,
void
*
SF_CGdBuilding
,
77
void
*AutoClass22,
void
*CGdWorld);
78
DECLARE_FUNCTION
(uint16_t, getNextObject,
CGdObjectIterator
*_this);
79
85
typedef
struct
86
{
87
figureIteratorInit_ptr
figureIteratorInit
;
88
figureIteratorSetPointers_ptr
figureIteratorSetPointers
;
89
iteratorSetArea_ptr
iteratorSetArea
;
90
getNextFigure_ptr
getNextFigure
;
91
setupFigureIterator_ptr
setupFigureIterator
;
92
disposeFigureIterator_ptr
disposeFigureIterator
;
93
getNextBuilding_ptr
getNextBuilding
;
94
buildingIteratorInit_ptr
buildingIteratorInit
;
95
buildingIteratorSetPointers_ptr
buildingIteratorSetPointers
;
96
getNextObject_ptr
getNextObject
;
97
objectIteratorInit_ptr
objectIteratorInit
;
98
objectIteratorSetPointers_ptr
objectIteratorSetPointers
;
99
}
IteratorFunctions
;
setupFigureIterator
void __thiscall setupFigureIterator(CGdFigureIterator *iterator, SF_CGdSpell *spell)
Definition
sf_wrappers.c:228
disposeFigureIterator
void __thiscall disposeFigureIterator(CGdFigureIterator *iterator)
Definition
sf_wrappers.c:352
DECLARE_FUNCTION
#define DECLARE_FUNCTION(type, name,...)
Declares a function with the specified return type, name, and arguments.
Definition
sf_general_structures.h:1845
sf_iterator_structures.h
AutoClass69
Definition
sf_general_structures.h:991
CGdBuildingIterator
Definition
sf_iterator_functions.h:39
CGdBuildingIterator::btable_ptr
uint32_t btable_ptr
Definition
sf_iterator_functions.h:40
CGdBuildingIterator::data
CGdTileIterator_data data
Definition
sf_iterator_functions.h:41
CGdFigureIterator
Definition
sf_iterator_functions.h:33
CGdFigureIterator::data
CGdTileIterator_data data
Definition
sf_iterator_functions.h:35
CGdFigureIterator::ftable_ptr
uint32_t ftable_ptr
Definition
sf_iterator_functions.h:34
CGdObjectIterator
Definition
sf_iterator_functions.h:45
CGdObjectIterator::btable_ptr
uint32_t btable_ptr
Definition
sf_iterator_functions.h:46
CGdObjectIterator::data
CGdTileIterator_data data
Definition
sf_iterator_functions.h:47
CGdTileIterator_data
Definition
sf_iterator_functions.h:7
CGdTileIterator_data::offset_0x14
uint16_t offset_0x14
Definition
sf_iterator_functions.h:16
CGdTileIterator_data::offset_0x27
uint8_t offset_0x27
Definition
sf_iterator_functions.h:24
CGdTileIterator_data::offset_0x1a
uint16_t offset_0x1a
Definition
sf_iterator_functions.h:19
CGdTileIterator_data::offset_0x18
uint16_t offset_0x18
Definition
sf_iterator_functions.h:18
CGdTileIterator_data::offset_0x10
uint16_t offset_0x10
Definition
sf_iterator_functions.h:14
CGdTileIterator_data::offset_0x16
uint16_t offset_0x16
Definition
sf_iterator_functions.h:17
CGdTileIterator_data::offset_0x0
uint32_t offset_0x0
Definition
sf_iterator_functions.h:8
CGdTileIterator_data::offset_0x20
uint16_t offset_0x20
Definition
sf_iterator_functions.h:21
CGdTileIterator_data::offset_0xa
uint16_t offset_0xa
Definition
sf_iterator_functions.h:11
CGdTileIterator_data::offset_0x2e
uint8_t offset_0x2e
Definition
sf_iterator_functions.h:27
CGdTileIterator_data::offset_0xe
uint16_t offset_0xe
Definition
sf_iterator_functions.h:13
CGdTileIterator_data::offset_0x26
uint8_t offset_0x26
Definition
sf_iterator_functions.h:23
CGdTileIterator_data::offset_0x30
AutoClass69 offset_0x30
Definition
sf_iterator_functions.h:29
CGdTileIterator_data::offset_0xc
uint16_t offset_0xc
Definition
sf_iterator_functions.h:12
CGdTileIterator_data::offset_0x12
uint16_t offset_0x12
Definition
sf_iterator_functions.h:15
CGdTileIterator_data::offset_0x22
uint32_t offset_0x22
Definition
sf_iterator_functions.h:22
CGdTileIterator_data::offset_0x2c
uint16_t offset_0x2c
Definition
sf_iterator_functions.h:26
CGdTileIterator_data::offset_0x8
uint16_t offset_0x8
Definition
sf_iterator_functions.h:10
CGdTileIterator_data::offset_0x28
uint32_t offset_0x28
Definition
sf_iterator_functions.h:25
CGdTileIterator_data::offset_0x2f
uint8_t offset_0x2f
Definition
sf_iterator_functions.h:28
CGdTileIterator_data::offset_0x4
uint32_t offset_0x4
Definition
sf_iterator_functions.h:9
CGdTileIterator_data::offset_0x1c
uint32_t offset_0x1c
Definition
sf_iterator_functions.h:20
IteratorFunctions
Group of functions related to Iteration, Often used for AOE or Chain Like Spells.
Definition
sf_iterator_functions.h:86
IteratorFunctions::buildingIteratorSetPointers
buildingIteratorSetPointers_ptr buildingIteratorSetPointers
Definition
sf_iterator_functions.h:95
IteratorFunctions::objectIteratorSetPointers
objectIteratorSetPointers_ptr objectIteratorSetPointers
Definition
sf_iterator_functions.h:98
IteratorFunctions::objectIteratorInit
objectIteratorInit_ptr objectIteratorInit
Definition
sf_iterator_functions.h:97
IteratorFunctions::setupFigureIterator
setupFigureIterator_ptr setupFigureIterator
Definition
sf_iterator_functions.h:91
IteratorFunctions::getNextBuilding
getNextBuilding_ptr getNextBuilding
Definition
sf_iterator_functions.h:93
IteratorFunctions::getNextObject
getNextObject_ptr getNextObject
Definition
sf_iterator_functions.h:96
IteratorFunctions::disposeFigureIterator
disposeFigureIterator_ptr disposeFigureIterator
Definition
sf_iterator_functions.h:92
IteratorFunctions::getNextFigure
getNextFigure_ptr getNextFigure
Definition
sf_iterator_functions.h:90
IteratorFunctions::figureIteratorSetPointers
figureIteratorSetPointers_ptr figureIteratorSetPointers
Definition
sf_iterator_functions.h:88
IteratorFunctions::iteratorSetArea
iteratorSetArea_ptr iteratorSetArea
Definition
sf_iterator_functions.h:89
IteratorFunctions::figureIteratorInit
figureIteratorInit_ptr figureIteratorInit
Definition
sf_iterator_functions.h:87
IteratorFunctions::buildingIteratorInit
buildingIteratorInit_ptr buildingIteratorInit
Definition
sf_iterator_functions.h:94
SF_CGdBuilding
Definition
sf_building_structures.h:58
SF_CGdFigure
A structure for the global list of figures and related statistics for them.
Definition
sf_figure_structures.h:149
SF_CGdSpell
Definition
sf_spell_structures.h:26
SF_Coord
Definition
sf_general_structures.h:936
src
api
sf_iterator_functions.h
Generated by
1.17.0