class ClientSimpleObject;
class ClientMap;
+class ClientScripting;
class ClientActiveObject;
class GenericCAO;
class LocalPlayer;
ClientMap & getClientMap();
Client *getGameDef() { return m_client; }
+ void setScript(ClientScripting *script) { m_script = script; }
void step(f32 dtime);
void getActiveObjects(v3f origin, f32 max_d,
std::vector<DistanceSortedActiveObject> &dest);
- // Get event from queue. CEE_NONE is returned if queue is empty.
- ClientEnvEvent getClientEvent();
+ bool hasClientEnvEvents() const { return !m_client_event_queue.empty(); }
+ // Get event from queue. If queue is empty, it triggers an assertion failure.
+ ClientEnvEvent getClientEnvEvent();
/*!
* Gets closest object pointed by the shootline.
scene::ISceneManager *m_smgr;
ITextureSource *m_texturesource;
Client *m_client;
+ ClientScripting *m_script;
IrrlichtDevice *m_irr;
UNORDERED_MAP<u16, ClientActiveObject*> m_active_objects;
std::vector<ClientSimpleObject*> m_simple_objects;