OpenGothic
Open source reimplementation of Gothic I and II
Loading...
Searching...
No Matches
Vob Class Reference

#include <vob.h>

Inheritance diagram for Vob:
AbstractTrigger Interactive Item StaticObj WorldLight CodeMaster CsCamera Earthquake MessageFilter MoveTrigger MoverControler PfxController TouchDamage Trigger TriggerList TriggerScript TriggerWorldStart ZoneTrigger FirePlace ItemTorchBurning

Public Types

enum  Flags : uint8_t { None = 0 , Startup = 0x1 << 0 , Static = 0x1 << 1 }
 

Public Member Functions

 Vob (World &owner)
 
 Vob (Vob *parent, World &owner, const zenkit::VirtualObject &vob, Flags flags)
 
virtual ~Vob ()
 
void saveVobTree (Serialize &fin) const
 
virtual void save (Serialize &fout) const
 
void loadVobTree (Serialize &fin)
 
virtual void load (Serialize &fin)
 
Tempest::Vec3 position () const
 
auto transform () const -> const Tempest::Matrix4x4 &
 
void setGlobalTransform (const Tempest::Matrix4x4 &p)
 
auto localTransform () const -> const Tempest::Matrix4x4 &
 
void setLocalTransform (const Tempest::Matrix4x4 &p)
 
virtual bool setMobState (std::string_view scheme, int32_t st)
 
virtual bool isDynamic () const
 
virtual float extendedSearchRadius () const
 

Static Public Member Functions

static std::unique_ptr< Vobload (Vob *parent, World &world, const zenkit::VirtualObject &vob, Flags flags)
 

Protected Member Functions

virtual void moveEvent ()
 

Protected Attributes

Worldworld
 
zenkit::VirtualObjectType vobType = zenkit::VirtualObjectType::UNKNOWN
 
uint32_t vobObjectID = uint32_t(-1)
 

Friends

Flags operator| (Flags a, Flags b)
 
Flags operator& (Flags a, Flags b)
 
Flags operator~ (Flags a)
 

Detailed Description

Definition at line 11 of file vob.h.

Member Enumeration Documentation

◆ Flags

enum Vob::Flags : uint8_t
Enumerator
None 
Startup 
Static 

Definition at line 13 of file vob.h.

Constructor & Destructor Documentation

◆ Vob() [1/2]

Vob::Vob ( World owner)

Definition at line 28 of file vob.cpp.

◆ Vob() [2/2]

Vob::Vob ( Vob parent,
World owner,
const zenkit::VirtualObject &  vob,
Flags  flags 
)

Definition at line 32 of file vob.cpp.

◆ ~Vob()

Vob::~Vob ( )
virtual

Definition at line 54 of file vob.cpp.

Member Function Documentation

◆ extendedSearchRadius()

float Vob::extendedSearchRadius ( ) const
virtual

Reimplemented in Interactive.

Definition at line 92 of file vob.cpp.

◆ isDynamic()

bool Vob::isDynamic ( ) const
virtual

Reimplemented in Item.

Definition at line 88 of file vob.cpp.

◆ load() [1/2]

void Vob::load ( Serialize fin)
virtual

Reimplemented in FirePlace, Interactive, AbstractTrigger, MoveTrigger, and PfxController.

Definition at line 263 of file vob.cpp.

◆ load() [2/2]

std::unique_ptr< Vob > Vob::load ( Vob parent,
World world,
const zenkit::VirtualObject &  vob,
Flags  flags 
)
static

Definition at line 127 of file vob.cpp.

◆ loadVobTree()

void Vob::loadVobTree ( Serialize fin)

Definition at line 245 of file vob.cpp.

◆ localTransform()

auto Vob::localTransform ( ) const -> const Tempest::Matrix4x4&
inline

Definition at line 37 of file vob.h.

◆ moveEvent()

void Vob::moveEvent ( )
protectedvirtual

Reimplemented in FirePlace, Interactive, Item, ItemTorchBurning, and AbstractTrigger.

Definition at line 85 of file vob.cpp.

◆ position()

Vec3 Vob::position ( ) const

Definition at line 57 of file vob.cpp.

◆ save()

void Vob::save ( Serialize fout) const
virtual

Reimplemented in Interactive, Item, AbstractTrigger, MoveTrigger, and PfxController.

Definition at line 258 of file vob.cpp.

◆ saveVobTree()

void Vob::saveVobTree ( Serialize fin) const

Definition at line 236 of file vob.cpp.

◆ setGlobalTransform()

void Vob::setGlobalTransform ( const Tempest::Matrix4x4 &  p)

Definition at line 61 of file vob.cpp.

◆ setLocalTransform()

void Vob::setLocalTransform ( const Tempest::Matrix4x4 &  p)

Definition at line 73 of file vob.cpp.

◆ setMobState()

bool Vob::setMobState ( std::string_view  scheme,
int32_t  st 
)
virtual

Reimplemented in Interactive.

Definition at line 78 of file vob.cpp.

◆ transform()

auto Vob::transform ( ) const -> const Tempest::Matrix4x4&
inline

Definition at line 34 of file vob.h.

Friends And Related Symbol Documentation

◆ operator&

Flags operator& ( Flags  a,
Flags  b 
)
friend

Definition at line 19 of file vob.h.

◆ operator|

Flags operator| ( Flags  a,
Flags  b 
)
friend

Definition at line 18 of file vob.h.

◆ operator~

Flags operator~ ( Flags  a)
friend

Definition at line 20 of file vob.h.

Member Data Documentation

◆ vobObjectID

uint32_t Vob::vobObjectID = uint32_t(-1)
protected

Definition at line 47 of file vob.h.

◆ vobType

zenkit::VirtualObjectType Vob::vobType = zenkit::VirtualObjectType::UNKNOWN
protected

Definition at line 46 of file vob.h.

◆ world

World& Vob::world
protected

Definition at line 45 of file vob.h.


The documentation for this class was generated from the following files: