Spellforce-Spell-framework
Loading...
Searching...
No Matches
sf_building_structures.h
Go to the documentation of this file.
1#pragma once
2#include <stdint.h>
3#include <stdbool.h>
5
6/* |-============= Buildings Structures ==========- |*/
7
9
10struct __attribute__((packed)) BuildingAuxEntry
11{
15 uint8_t unknown[2];
16 uint8_t id;
17 uint32_t centerX;
18 uint32_t centerY;
19 uint8_t shadows[5];
21 uint8_t poly_count;
25 uint8_t padding[3];
26};
27
28typedef struct __attribute__((packed))
29{
31 uint8_t flag;
32
34
35typedef struct __attribute__((packed))
36{
38 uint16_t owner;
39 uint8_t type;
40 uint8_t race;
41 uint8_t flags;
42 uint16_t build_up;
43 uint16_t build_max;
46 uint16_t health_max;
47 uint16_t DLLNode;
48 uint16_t xdata_key;
49 uint16_t angle;
50 uint32_t unknown[5];
51 uint8_t worker_count;
53 uint8_t level;
56
57struct __attribute__((packed)) SF_CGdBuilding
58{
61 uint16_t max_used;
63 uint32_t unknown1;
65 uint32_t unknown2;
66};
67
68typedef struct astruct32 astruct32;
70struct __attribute__((packed)) BuildingResource
71{
72 uint16_t id;
73 uint8_t race;
74 uint8_t can_enter;
75 uint8_t slot_count;
76 uint16_t health;
77 uint16_t name_id;
78 uint16_t worker_cycle;
80 uint16_t initial_angle;
82 uint8_t flags;
83};
84
85struct __attribute__((packed)) astruct32
86{
90 uint16_t padding_1;
91 uint8_t id;
93 uint8_t padding_2[3];
94};
95
124
125struct __attribute__((packed)) SF_CGdResource
126{
128 void *unknown1;
130 uint32_t not_annotated[46];
131};
132
133typedef void (__thiscall *addBuilding_ptr)(void *_this,void *struct1, void *struct2);
134typedef void (__thiscall *addBuildingAuxData_ptr)(void *_this, BuildingAuxEntry_related *entry, uint8_t *building_id);
135typedef void (__thiscall *setCollisionListSize_ptr)(uint_list_node *_this, uint8_t list_size);
void(__thiscall * addBuildingAuxData_ptr)(void *_this, BuildingAuxEntry_related *entry, uint8_t *building_id)
void(__thiscall * addBuilding_ptr)(void *_this, void *struct1, void *struct2)
void(__thiscall * setCollisionListSize_ptr)(uint_list_node *_this, uint8_t list_size)
Group of Structures and Enums used throught SFSF.
BuildingAuxEntry * data
uint8_t flag
uint32_t centerY
BuildingAuxEntry * data
BuildingAuxEntry * postlast
BuildingAuxEntry * first
uint8_t id
uint8_t shadows[5]
uint8_t poly_count
uint8_t unknown[2]
uint8_t resource_req_type[5]
uint16_t resource_req_amount[5]
uint8_t padding[3]
uint8_t resource_req_num
uint32_t centerX
uint_list_node collisions[5]
AutoClass14 * autoClass14
GdBuilding buildings[1000]
SF_CGdFigureJobs * CGdFigureJobs
SF_CGdFigureToolbox * CGdFigureToolbox
SF_CGdWorldToolBox * CGdWorldToolbox
A structure for the global list of figures and related statistics for them.
BuildingAuxEntry * building_aux_map
BuildingResource building