 |
Blamite Game Engine - blam!
00388.06.24.23.2301.blamite
The core library for the Blamite Game Engine.
|
Go to the documentation of this file.
6 #include <Strings/components/classes/events/events.h>
7 #include <Strings/components/classes/vector/vector.h>
11 #define BLAM_EXT_API __declspec(dllexport)
13 #define BLAM_EXT_API __declspec(dllimport)
42 std::string name =
"unnamed";
43 std::string description =
"";
44 int editor_folder_id = 0;
48 BlamVector3 position = { 0, 0, 0 };
49 BlamVector3 rotation = { 0, 0, 0 };
50 BlamVector3 scale = { 1, 1, 1 };
104 float radius_0 = 1.0f;
105 float radius_1 = 1.0f;
128 std::vector<BlamWorldObject*> objects = std::vector<BlamWorldObject*>();
143 void RemoveObject(
uint64_t object_id);
145 int GetObjectCount();
165 void OnTickEvent(TickEvent* event);
#define BLAM_EXT_API
Definition: world_objects.h:13
void AddObject(BlamWorldObject *object)
Definition: BlamWorldState.cpp:70
BlamVector3 position
The position of this object in world space.
Definition: world_objects.h:48
BLAM void LogEvent(std::string message)
Logs a message to the log and/or console.
Definition: aliases.cpp:142
Blam3DPrimitiveType primitive_type
The type of primitive this object represents.
Definition: world_objects.h:102
bool Drop(BlamTagData *tag_data, BlamVector3 position)
Drops a tag into the world at the specified coordinates.
Definition: BlamWorldState.cpp:32
void Drop(std::string tag_name)
Definition: hs.cpp:44
BlamWorldObjectType
Definition: world_objects.h:20
char path[256]
The tag's path.
Definition: tags.h:46
BlamVector3 rotation
The rotation of this object in world space.
Definition: world_objects.h:49
int GetObjectCount()
Definition: BlamWorldState.cpp:101
BlamTagData()
Definition: BlamTagData.cpp:5
BlamTagData * tag_data
Pointer to the tag data associated with this object.
Definition: world_objects.h:77
BLAM void DrawCuboid(BlamVector3 position, BlamVector3 rotation, BlamVector3 scale)
Renders a cuboid to the screen.
Definition: cuboid.cpp:12
Class representing a tag-based world object.
Definition: world_objects.h:74
IMGUI_API void Render()
Definition: imgui.cpp:4248
bool SetTagPath(std::string new_path)
Updates the tag path.
Definition: BlamTagData.cpp:12
BLAM void DrawCylinder(BlamVector3 position, BlamVector3 rotation, BlamVector3 scale, int resolution, int radius_top, int radius_bottom)
Renders a cylinder to the screen.
Definition: cylinder.cpp:28
BlamWorldObject * GetObjectAtIndex(int index)
Definition: BlamWorldState.cpp:122
void Render()
Renders the object to the screen.
Definition: BlamWorldObject_Tag.cpp:8
BlamWorldObject * GetObjectById(uint64_t object_id)
Definition: BlamWorldState.cpp:130
unsigned __int64 uint64_t
Definition: stdint.h:136
uint64_t id
A unique identifier for this object. Used to identify objects during runtime.
Definition: world_objects.h:45
virtual void Render()
Renders the object to the screen.
Definition: BlamWorldObject.cpp:9
BlamVector3 scale
The scale/size of the object.
Definition: world_objects.h:50
bool HasObject(uint64_t object_id)
Definition: BlamWorldState.cpp:106
BlamWorldObjectType type
The type of this world object.
Definition: world_objects.h:52
void OnTickEvent(TickEvent *event)
Definition: BlamWorldState.cpp:146
Class representing a primitive-based world object.
Definition: world_objects.h:99
Class representing a world object.
Definition: world_objects.h:39
BlamWorldObject(BlamWorldState *_world, BlamWorldObjectType _type)
Creates a new world object.
Definition: BlamWorldObject.cpp:3
float radius_1
A secondary radius of the primitive. Only used in cylinders.
Definition: world_objects.h:105
BlamWorldObject_Tag(BlamTagData *_tag_data, BlamWorldState *_world)
Creates a new tag-based world object.
Definition: BlamWorldObject_Tag.cpp:3
~BlamWorldState()
Destroys the world state.
Definition: BlamWorldState.cpp:16
float radius_0
The radius of the primitive. Only used in cylinders.
Definition: world_objects.h:104
int resolution
The level of detail to use for the primitive. Only used in cylinders.
Definition: world_objects.h:106
Class used to contain and access tag data.
Definition: tags.h:30
void RemoveObject(uint64_t object_id)
Definition: BlamWorldState.cpp:85
Blam3DPrimitiveType
Definition: world_objects.h:27
BlamWorldState * world
The world state this object belongs to.
Definition: world_objects.h:47
void Render()
Renders the object to the screen.
Definition: BlamWorldObject_Primitive.cpp:10
Class representing a world state.
Definition: world_objects.h:125
BlamWorldObject_Primitive(Blam3DPrimitiveType _primitive_type, BlamWorldState *_world)
Creates a new primitive world object.
Definition: BlamWorldObject_Primitive.cpp:5
BlamWorldState()
Initializes a new world state.
Definition: BlamWorldState.cpp:8
std::string tag_class
The tag's short class name.
Definition: tags.h:47