-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathEventEntC.cpp
More file actions
34 lines (30 loc) · 1.17 KB
/
EventEntC.cpp
File metadata and controls
34 lines (30 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/////////////////////////////////////////////////////////////////////
///////////////Original file by:Fyodor Zagumennov aka Sgw32//////////
///////////////Copyright(c) 2010 Fyodor Zagumennov //////////
/////////////////////////////////////////////////////////////////////
#include "EventEntC.h"
template <> EventEntC *Singleton<EventEntC>::ms_Singleton = 0;
EventEntC::EventEntC() {}
EventEntC::~EventEntC() {}
void EventEntC::init(SceneManager *scene) { mSceneMgr = scene; }
void EventEntC::ent(String name, String file, String event, Vector3 pos) {
if (event == "spawn") {
Entity *ent = mSceneMgr->createEntity(name, file);
Ogre::SceneNode *node =
mSceneMgr->getRootSceneNode()->createChildSceneNode(pos);
node->attachObject(ent);
}
entc_name.push_back(name);
}
void EventEntC::cleanup() {
int i;
for (i = 0; i != entc_name.size(); i++) {
if (mSceneMgr->hasEntity(entc_name[i])) {
// mSceneMgr->getEntity(entc_name[i])->getParentSceneNode()->detachAllObjects();
mSceneMgr->destroySceneNode(
mSceneMgr->getEntity(entc_name[i])->getParentSceneNode());
mSceneMgr->destroyEntity(entc_name[i]);
}
}
entc_name.clear();
}