 |
Blamite Game Engine - blam!
00398.09.22.23.2015.blamite
The core library for the Blamite Game Engine.
|
Go to the documentation of this file.
88 {1,
"haloman30",
"Initial implementation."},
89 {2,
"haloman30",
"Added 'project folders' block."},
90 {3,
"haloman30",
"Replaced several real values with vectors."},
91 {4,
"haloman30",
"Add support for material overrides for primitives"},
104 "multiplayer shared",
105 "singleplayer shared",
107 new BlockField(137,
"project folders",
"Contains information about project folders. Only used within the editor.",
109 new Bitfield8Field(
"flags",
"List of flags that apply to this folder.",
113 new Int32Field(
"folder id",
"The ID of this folder."),
114 new Int32Field(
"parent folder id",
"The ID of this folder's parent folder, if applicable."),
115 new AsciiField(
"folder name",
"The display name of the folder."),
117 new BlockField(344,
"primitives",
"List of primitive objects contained within the scenario.",
119 new Int32Field(
"folder id",
"the folder id that this primitive exists within. set to -1 to have no parent"),
120 new AsciiField(
"name",
"custom display name for the object"),
121 new AsciiField(
"description",
"custom description for the object"),
122 new Enum32Field(
"type",
"The type of this primitive.",
TAG_ENUM(type, { solo, multiplayer, main_menu, multiplayer_shared, singleplayer_shared, })
BLAM_EXT_API 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:47
void AddObject(BlamWorldObject *object)
Definition: BlamWorldState.cpp:70
#define BLAM
Definition: scenario.h:20
std::string name
The unique name of this object.
Definition: world_objects.h:45
Namespace containing functions related to tag data.
Definition: bitmap.h:196
ScenarioTagClass()
Definition: scenario.h:81
BlamVector3 position
The position of this object in world space.
Definition: world_objects.h:51
BLAM void LogEvent(std::string message)
Logs a message to the log and/or console.
Definition: aliases.cpp:142
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:84
BlamVector3 rotation
The rotation of this object in world space.
Definition: world_objects.h:52
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:78
BLAM_EXT_API scenario * GetActiveScenarioTag()
Retrieves the currently loaded scenario tag.
Definition: scenario.cpp:72
Definition: scenario.h:26
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:138
Typedef for a bitfield8 field, used in tag data definitions.
Definition: tags.h:275
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:137
int int32_t
Definition: stdint.h:13
std::string class_name_short
The short, 4-character name of the tag class.
Definition: tags.h:135
int version
The tag class version. Should be incremented any time a tag class is modified whatsoever.
Definition: tags.h:136
Structure representing a tag reference.
Definition: tags.h:215
std::string class_name_long
The longer class name. Typically shown alongside short name for user-friendliness.
Definition: tags.h:134
BlamVector3 scale
The scale/size of the object.
Definition: world_objects.h:53
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:103
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:139
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:125
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:71
float radius_0
The radius of the primitive. Only used in cylinders.
Definition: world_objects.h:124
int resolution
The level of detail to use for the primitive. Only used in cylinders.
Definition: world_objects.h:126
Class used to contain and access tag data.
Definition: tags.h:68
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:21
Class representing a world state.
Definition: world_objects.h:149
Class representing a tag class.
Definition: tags.h:131
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:46
Class representing a bitfield8 tag field.
Definition: bitfield.h:33