Skip to content

Commit

Permalink
Renamed RoomObject to RenderedMovableEntity.
Browse files Browse the repository at this point in the history
  • Loading branch information
hwoarangmy committed Oct 17, 2014
1 parent 5884624 commit 8b299fb
Show file tree
Hide file tree
Showing 48 changed files with 347 additions and 354 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -225,6 +225,7 @@ set(OD_SOURCEFILES
${SRC}/PrefixTree.cpp
${SRC}/RadialVector2.cpp
${SRC}/Random.cpp
${SRC}/RenderedMovableEntity.cpp
${SRC}/RenderManager.cpp
${SRC}/RenderRequest.cpp
${SRC}/ResourceManager.cpp
Expand All @@ -234,7 +235,6 @@ set(OD_SOURCEFILES
${SRC}/RoomForge.cpp
${SRC}/RoomHatchery.cpp
${SRC}/RoomLibrary.cpp
${SRC}/RoomObject.cpp
${SRC}/RoomPortal.cpp
${SRC}/RoomTrainingHall.cpp
${SRC}/RoomTreasury.cpp
Expand Down
80 changes: 40 additions & 40 deletions source/Building.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
*/

#include "Building.h"
#include "RoomObject.h"
#include "RenderedMovableEntity.h"
#include "Tile.h"
#include "GameMap.h"
#include "ServerNotification.h"
Expand All @@ -26,76 +26,76 @@

const double Building::DEFAULT_TILE_HP = 10.0;

void Building::addRoomObject(Tile* targetTile, RoomObject* roomObject)
void Building::addBuildingObject(Tile* targetTile, RenderedMovableEntity* obj)
{
if(roomObject == NULL)
if(obj == NULL)
return;

Ogre::Vector3 objPos(static_cast<Ogre::Real>(targetTile->x), static_cast<Ogre::Real>(targetTile->y), 0);
roomObject->setPosition(objPos);
mRoomObjects[targetTile] = roomObject;
getGameMap()->addRoomObject(roomObject);
obj->setPosition(objPos);
mBuildingObjects[targetTile] = obj;
getGameMap()->addRenderedMovableEntity(obj);
}

void Building::removeRoomObject(Tile* tile)
void Building::removeBuildingObject(Tile* tile)
{
if(mRoomObjects.count(tile) == 0)
if(mBuildingObjects.count(tile) == 0)
return;

RoomObject* roomObject = mRoomObjects[tile];
LogManager::getSingleton().logMessage("Removing object " + roomObject->getName()
RenderedMovableEntity* obj = mBuildingObjects[tile];
LogManager::getSingleton().logMessage("Removing object " + obj->getName()
+ " in Building=" + getName());
getGameMap()->removeRoomObject(roomObject);
roomObject->deleteYourself();
mRoomObjects.erase(tile);
getGameMap()->removeRenderedMovableEntity(obj);
obj->deleteYourself();
mBuildingObjects.erase(tile);
}

void Building::removeRoomObject(RoomObject* roomObject)
void Building::removeBuildingObject(RenderedMovableEntity* obj)
{
std::map<Tile*, RoomObject*>::iterator it;
std::map<Tile*, RenderedMovableEntity*>::iterator it;

for (it = mRoomObjects.begin(); it != mRoomObjects.end(); ++it)
for (it = mBuildingObjects.begin(); it != mBuildingObjects.end(); ++it)
{
if(it->second == roomObject)
if(it->second == obj)
break;
}

if(it != mRoomObjects.end())
if(it != mBuildingObjects.end())
{
LogManager::getSingleton().logMessage("Removing object " + roomObject->getName()
LogManager::getSingleton().logMessage("Removing object " + obj->getName()
+ " in Building " + getName());
getGameMap()->removeRoomObject(roomObject);
roomObject->deleteYourself();
mRoomObjects.erase(it);
getGameMap()->removeRenderedMovableEntity(obj);
obj->deleteYourself();
mBuildingObjects.erase(it);
}
}

void Building::removeAllRoomObject()
void Building::removeAllBuildingObjects()
{
if(mRoomObjects.empty())
if(mBuildingObjects.empty())
return;

std::map<Tile*, RoomObject*>::iterator itr = mRoomObjects.begin();
while (itr != mRoomObjects.end())
std::map<Tile*, RenderedMovableEntity*>::iterator itr = mBuildingObjects.begin();
while (itr != mBuildingObjects.end())
{
RoomObject* roomObject = itr->second;
getGameMap()->removeRoomObject(roomObject);
roomObject->deleteYourself();
RenderedMovableEntity* obj = itr->second;
getGameMap()->removeRenderedMovableEntity(obj);
obj->deleteYourself();
++itr;
}
mRoomObjects.clear();
mBuildingObjects.clear();
}

RoomObject* Building::getRoomObjectFromTile(Tile* tile)
RenderedMovableEntity* Building::getBuildingObjectFromTile(Tile* tile)
{
if(mRoomObjects.count(tile) == 0)
if(mBuildingObjects.count(tile) == 0)
return NULL;

RoomObject* tempRoomObject = mRoomObjects[tile];
return tempRoomObject;
RenderedMovableEntity* obj = mBuildingObjects[tile];
return obj;
}

RoomObject* Building::loadRoomObject(GameMap* gameMap, const std::string& meshName,
RenderedMovableEntity* Building::loadBuildingObject(GameMap* gameMap, const std::string& meshName,
Tile* targetTile, double rotationAngle)
{
if (targetTile == NULL)
Expand All @@ -105,11 +105,11 @@ RoomObject* Building::loadRoomObject(GameMap* gameMap, const std::string& meshNa
if(targetTile == NULL)
return NULL;

return loadRoomObject(gameMap, meshName, targetTile, static_cast<double>(targetTile->x),
return loadBuildingObject(gameMap, meshName, targetTile, static_cast<double>(targetTile->x),
static_cast<double>(targetTile->y), rotationAngle);
}

RoomObject* Building::loadRoomObject(GameMap* gameMap, const std::string& meshName,
RenderedMovableEntity* Building::loadBuildingObject(GameMap* gameMap, const std::string& meshName,
Tile* targetTile, double x, double y, double rotationAngle)
{
std::string baseName;
Expand All @@ -118,11 +118,11 @@ RoomObject* Building::loadRoomObject(GameMap* gameMap, const std::string& meshNa
else
baseName = getName() + "_" + Tile::displayAsString(targetTile);

RoomObject* tempRoomObject = new RoomObject(gameMap, baseName, meshName,
RenderedMovableEntity* obj = new RenderedMovableEntity(gameMap, baseName, meshName,
static_cast<Ogre::Real>(rotationAngle));
tempRoomObject->setPosition(Ogre::Vector3((Ogre::Real)x, (Ogre::Real)y, 0.0f));
obj->setPosition(Ogre::Vector3((Ogre::Real)x, (Ogre::Real)y, 0.0f));

return tempRoomObject;
return obj;
}

Tile* Building::getCentralTile()
Expand Down
20 changes: 10 additions & 10 deletions source/Building.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
#include "Seat.h"

class GameMap;
class RoomObject;
class RenderedMovableEntity;
class Tile;

/*! \class Building
Expand Down Expand Up @@ -56,17 +56,17 @@ class Building : public GameEntity
void receiveExp(double /*experience*/)
{}

void addRoomObject(Tile* targetTile, RoomObject* roomObject);
void removeRoomObject(Tile* tile);
void removeRoomObject(RoomObject* roomObject);
void removeAllRoomObject();
RoomObject* getRoomObjectFromTile(Tile* tile);
/*! \brief Creates a child RoomObject mesh using the given mesh name and placing on the target tile,
void addBuildingObject(Tile* targetTile, RenderedMovableEntity* obj);
void removeBuildingObject(Tile* tile);
void removeBuildingObject(RenderedMovableEntity* obj);
void removeAllBuildingObjects();
RenderedMovableEntity* getBuildingObjectFromTile(Tile* tile);
/*! \brief Creates a child RenderedMovableEntity mesh using the given mesh name and placing on the target tile,
* if the tile is NULL the object appears in the building's center, the rotation angle is given in degrees.
*/
RoomObject* loadRoomObject(GameMap* gameMap, const std::string& meshName,
RenderedMovableEntity* loadBuildingObject(GameMap* gameMap, const std::string& meshName,
Tile* targetTile, double rotationAngle);
RoomObject* loadRoomObject(GameMap* gameMap, const std::string& meshName,
RenderedMovableEntity* loadBuildingObject(GameMap* gameMap, const std::string& meshName,
Tile* targetTile, double x, double y, double rotationAngle);
Tile* getCentralTile();

Expand All @@ -86,7 +86,7 @@ class Building : public GameEntity
return true;
}
protected:
std::map<Tile*, RoomObject*> mRoomObjects;
std::map<Tile*, RenderedMovableEntity*> mBuildingObjects;
std::vector<Tile*> mCoveredTiles;
std::map<Tile*, double> mTileHP;

Expand Down
11 changes: 5 additions & 6 deletions source/ChickenEntity.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,15 +28,15 @@ const int32_t NB_TURNS_OUTSIDE_HATCHERY_BEFORE_DIE = 30;
const int32_t NB_TURNS_DIE_BEFORE_REMOVE = 5;

ChickenEntity::ChickenEntity(GameMap* gameMap, const std::string& hatcheryName) :
RoomObject(gameMap, hatcheryName, "Chicken", 0.0f),
RenderedMovableEntity(gameMap, hatcheryName, "Chicken", 0.0f),
mChickenState(ChickenState::free),
nbTurnOutsideHatchery(0),
nbTurnDie(0)
{
}

ChickenEntity::ChickenEntity(GameMap* gameMap) :
RoomObject(gameMap),
RenderedMovableEntity(gameMap),
mChickenState(ChickenState::free),
nbTurnOutsideHatchery(0),
nbTurnDie(0)
Expand Down Expand Up @@ -74,7 +74,7 @@ void ChickenEntity::doUpkeep()
{
// No need to remove the chicken from its tile as it has already been in eatChicken
// or when dying
getGameMap()->removeRoomObject(this);
getGameMap()->removeRenderedMovableEntity(this);
deleteYourself();
return;
}
Expand Down Expand Up @@ -185,9 +185,8 @@ bool ChickenEntity::tryPickup(Seat* seat, bool isEditorMode)

void ChickenEntity::pickup()
{
RoomObject::pickup();
Tile* tile = getPositionTile();
RoomObject::pickup();
RenderedMovableEntity::pickup();
OD_ASSERT_TRUE_MSG(tile != nullptr, "tile=" + Tile::displayAsString(tile));
if(tile == nullptr)
return;
Expand Down Expand Up @@ -219,7 +218,7 @@ void ChickenEntity::setPosition(const Ogre::Vector3& v)
return;

Tile* oldTile = getPositionTile();
RoomObject::setPosition(v);
RenderedMovableEntity::setPosition(v);
Tile* tile = getPositionTile();
OD_ASSERT_TRUE_MSG(tile != nullptr, "tile=" + Tile::displayAsString(tile));
if(tile == nullptr)
Expand Down
8 changes: 4 additions & 4 deletions source/ChickenEntity.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
#ifndef CHICKENENTITY_H
#define CHICKENENTITY_H

#include "RoomObject.h"
#include "RenderedMovableEntity.h"

#include <string>
#include <istream>
Expand All @@ -30,16 +30,16 @@ class GameMap;
class Tile;
class ODPacket;

class ChickenEntity: public RoomObject
class ChickenEntity: public RenderedMovableEntity
{
public:
ChickenEntity(GameMap* gameMap, const std::string& hatcheryName);
ChickenEntity(GameMap* gameMap);

virtual void doUpkeep();

virtual RoomObjectType getRoomObjectType()
{ return RoomObjectType::chickenEntity; }
virtual RenderedMovableEntityType getRenderedMovableEntityType()
{ return RenderedMovableEntityType::chickenEntity; }

virtual bool tryPickup(Seat* seat, bool isEditorMode);
virtual bool tryDrop(Seat* seat, Tile* tile, bool isEditorMode);
Expand Down
2 changes: 1 addition & 1 deletion source/Creature.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1702,7 +1702,7 @@ bool Creature::handleDepositGoldAction()
mGold = 0;
Ogre::Vector3 pos(static_cast<Ogre::Real>(tile->x), static_cast<Ogre::Real>(tile->y), 0.0f);
obj->setPosition(pos);
getGameMap()->addRoomObject(obj);
getGameMap()->addRenderedMovableEntity(obj);

return true;
}
Expand Down
10 changes: 5 additions & 5 deletions source/EditorMode.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
#include "ODClient.h"
#include "ODServer.h"
#include "ODApplication.h"
#include "RoomObject.h"
#include "RenderedMovableEntity.h"

#include <OgreEntity.h>
#include <OgreRoot.h>
Expand Down Expand Up @@ -474,10 +474,10 @@ bool EditorMode::mousePressed(const OIS::MouseEvent &arg, OIS::MouseButtonID id)
}
continue;
}
if(resultName.find(RoomObject::ROOMOBJECT_OGRE_PREFIX) != std::string::npos)
if(resultName.find(RenderedMovableEntity::RENDEREDMOVABLEENTITY_OGRE_PREFIX) != std::string::npos)
{
std::string name = resultName.substr(RoomObject::ROOMOBJECT_OGRE_PREFIX.length());
RoomObject* obj = mGameMap->getRoomObject(name);
std::string name = resultName.substr(RenderedMovableEntity::RENDEREDMOVABLEENTITY_OGRE_PREFIX.length());
RenderedMovableEntity* obj = mGameMap->getRenderedMovableEntity(name);
if ((obj == NULL) || (!obj->tryPickup(player->getSeat(), true)))
continue;

Expand All @@ -487,7 +487,7 @@ bool EditorMode::mousePressed(const OIS::MouseEvent &arg, OIS::MouseButtonID id)
ClientNotification *clientNotification = new ClientNotification(
ClientNotification::askEntityPickUp);
const std::string& name = obj->getName();
clientNotification->mPacket << GameEntity::ObjectType::roomobject;
clientNotification->mPacket << GameEntity::ObjectType::renderedMovableEntity;
clientNotification->mPacket << name;
ODClient::getSingleton().queueClientNotification(clientNotification);
return true;
Expand Down
2 changes: 1 addition & 1 deletion source/GameEntity.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
#include "RenderManager.h"
#include "RenderRequest.h"
#include "Room.h"
#include "RoomObject.h"
#include "RenderedMovableEntity.h"
#include "Weapon.h"
#include "ODPacket.h"

Expand Down
2 changes: 1 addition & 1 deletion source/GameEntity.h
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ class GameEntity
public:
enum ObjectType
{
unknown, creature, room, trap, weapon, roomobject, missileobject, tile
unknown, creature, room, trap, weapon, renderedMovableEntity, missileobject, tile
};

//! \brief Default constructor with default values
Expand Down

0 comments on commit 8b299fb

Please sign in to comment.