 |
Blamite Game Engine - blam!
00406.12.10.23.1457.blamite
The core library for the Blamite Game Engine.
|
Go to the documentation of this file.
87 {1,
"haloman30",
"Initial implementation."},
88 {2,
"haloman30",
"Added 'project folders' block."},
89 {3,
"haloman30",
"Replaced several real values with vectors."},
90 {4,
"haloman30",
"Add support for material overrides for primitives"},
103 "multiplayer shared",
104 "singleplayer shared",
106 new BlockField(137,
"project folders",
"Contains information about project folders. Only used within the editor.",
108 new Bitfield8Field(
"flags",
"List of flags that apply to this folder.",
112 new Int32Field(
"folder id",
"The ID of this folder."),
113 new Int32Field(
"parent folder id",
"The ID of this folder's parent folder, if applicable."),
114 new AsciiField(
"folder name",
"The display name of the folder."),
116 new BlockField(344,
"primitives",
"List of primitive objects contained within the scenario.",
118 new Int32Field(
"folder id",
"the folder id that this primitive exists within. set to -1 to have no parent"),
119 new AsciiField(
"name",
"custom display name for the object"),
120 new AsciiField(
"description",
"custom description for the object"),
121 new Enum32Field(
"type",
"The type of this primitive.",
TAG_ENUM(type, { solo, multiplayer, main_menu, multiplayer_shared, singleplayer_shared, })
BLAM BlamWorldState * GetWorldState()
Retrieves the current world state.
Definition: world.cpp:44
int editor_folder_id
The editor folder that this object exists within. Only used within the editing kit.
Definition: world_objects.h:54
void AddObject(BlamWorldObject *object)
Definition: BlamWorldState.cpp:70
#define BLAM
Definition: scenario.h:19
std::string name
The unique name of this object.
Definition: world_objects.h:52
Namespace containing functions related to tag data.
Definition: bitmap.h:195
ScenarioTagClass()
Definition: scenario.h:80
BlamVector3 position
The position of this object in world space.
Definition: world_objects.h:58
BLAM void LogEvent(std::string message)
Logs a message to the log and/or console.
Definition: aliases.cpp:130
TAG_BLOCK(project_folders, { bitfield8 flags;int32_t folder_id;int32_t parent_folder_id;ascii folder_name;})
Contains information about project folders.
Class representing an ascii tag field.
Definition: ascii.h:18
BlamTagData * active_scenario_tag_data
Definition: scenario.cpp:10
Class representing a vector2 tag field.
Definition: vector.h:34
char path[256]
The tag's path.
Definition: tags.h:141
BlamVector3 rotation
The rotation of this object in world space.
Definition: world_objects.h:59
BLAM BlamResult LoadTagFromFile(std::string tag_path, bool reload_if_already_loaded=true)
Loads a tag from the engine's tag directory (default is '.
Definition: tag_io.cpp:317
Class representing a vector3 tag field.
Definition: vector.h:47
Definition: scenario.h:77
BLAM_EXT_API scenario * GetActiveScenarioTag()
Retrieves the currently loaded scenario tag.
Definition: scenario.cpp:72
Definition: scenario.h:25
Class representing a tag reference, or tagref for short.
Definition: tagref.h:20
std::vector< BlamTagClassField * > fields
A series of tag fields that store the layout of the tag.
Definition: tags.h:195
Typedef for a bitfield8 field, used in tag data definitions.
Definition: tags.h:332
scenario * active_scenario_tag
Definition: scenario.cpp:9
std::vector< BlamTagClassRevision > revisions
List of all tag class revisions. Does not get written to tags, but is included in plugin files.
Definition: tags.h:194
int int32_t
Definition: stdint.h:13
std::string class_name_short
The short, 4-character name of the tag class.
Definition: tags.h:192
int version
The tag class version. Should be incremented any time a tag class is modified whatsoever.
Definition: tags.h:193
Structure representing a tag reference.
Definition: tags.h:272
std::string class_name_long
The longer class name. Typically shown alongside short name for user-friendliness.
Definition: tags.h:191
BlamVector3 scale
The scale/size of the object.
Definition: world_objects.h:60
BLAM BlamTagData * GetTagData(std::string tag_path)
Retrieves information for a given tag.
Definition: tags.cpp:80
Class representing a primitive-based world object.
Definition: world_objects.h:110
BLAM_EXT_API void LoadScenarioTag(std::string tag_path)
Loads a new scenario tag.
Definition: scenario.cpp:77
Class representing an int32 tag field.
Definition: int.h:46
int tag_size
The size of the tag's data. Used on loading/writing tag files.
Definition: tags.h:196
BLAM void InitializeEmptyWorldState()
Initializes a new world state with no default objects.
Definition: world.cpp:23
float radius_1
A secondary radius of the primitive. Only used in cylinders.
Definition: world_objects.h:132
BLAM void CleanupTagData()
Releases all memory used by tags.
Definition: tags.cpp:130
void * address
The address pointing to the start of the tag's data.
Definition: tags.h:128
float radius_0
The radius of the primitive. Only used in cylinders.
Definition: world_objects.h:131
int resolution
The level of detail to use for the primitive. Only used in cylinders.
Definition: world_objects.h:133
Class used to contain and access tag data.
Definition: tags.h:125
void PrepareNewWorldState()
Prepares a new world state.
Definition: scenario.cpp:17
BLAM scenario * GetScenarioTag(std::string tag_path)
Definition: scenario.cpp:16
Class representing a tag block field, also sometimes referred to as a struct or reflexive in the modd...
Definition: block.h:19
Class representing a world state.
Definition: world_objects.h:156
Class representing a tag class.
Definition: tags.h:188
ARPHIC PUBLIC LICENSE Ltd Yung Chi Taiwan All rights reserved except as specified below Everyone is permitted to copy and distribute verbatim copies of this license but changing it is forbidden Preamble The licenses for most software are designed to take away your freedom to share and change it By the ARPHIC PUBLIC LICENSE specifically permits and encourages you to use this provided that you give the recipients all the rights that we gave you and make sure they can get the modifications of this software Legal Terms Font means the TrueType fonts AR PL Mingti2L AR PL KaitiM AR PL KaitiM and the derivatives of those fonts created through any modification including modifying reordering converting changing font name
Definition: ARPHICPL.TXT:16
std::string description
An optional description of this object.
Definition: world_objects.h:53
Class representing a bitfield8 tag field.
Definition: bitfield.h:33