diff options
author | Erik Schilling <ablu.erikschilling@googlemail.com> | 2013-04-02 22:25:24 +0200 |
---|---|---|
committer | Erik Schilling <ablu.erikschilling@googlemail.com> | 2013-04-02 22:28:24 +0200 |
commit | 4a8080dcf73dab2b6e62b8500fec3bb996bcbf17 (patch) | |
tree | 67ef51dbb1b360f9a3e7c38cf0dbeb2b5f001bfd /src/game-server/state.cpp | |
parent | ad3958701136ff8ae4a4fc749ef616cc8917d2af (diff) | |
download | manaserv-4a8080dcf73dab2b6e62b8500fec3bb996bcbf17.tar.gz manaserv-4a8080dcf73dab2b6e62b8500fec3bb996bcbf17.tar.bz2 manaserv-4a8080dcf73dab2b6e62b8500fec3bb996bcbf17.tar.xz manaserv-4a8080dcf73dab2b6e62b8500fec3bb996bcbf17.zip |
Fixed multiple warnings and errors that blocked c++0x
This allows the server to compile with c++0x (and enables it).
This also includes some coding style / readabillity fixes.
Diffstat (limited to 'src/game-server/state.cpp')
-rw-r--r-- | src/game-server/state.cpp | 38 |
1 files changed, 23 insertions, 15 deletions
diff --git a/src/game-server/state.cpp b/src/game-server/state.cpp index eaffe772..d3a29860 100644 --- a/src/game-server/state.cpp +++ b/src/game-server/state.cpp @@ -54,7 +54,8 @@ enum */ struct DelayedEvent { - unsigned short type, x, y; + unsigned short type; + Point point; MapComposite *map; }; @@ -104,9 +105,7 @@ static void serializeLooks(Character *ch, MessageOut &msg) // When the insertion succeeds, its the first time // we encounter the item, so we can send the look change. // We also send empty slots for unequipment handling. - lookChanges.insert( - std::make_pair<unsigned, unsigned>(it->first, - it->second.itemId)); + lookChanges.insert(std::make_pair(it->first, it->second.itemId)); } } @@ -500,7 +499,7 @@ void GameState::update(int tick) case EVENT_WARP: assert(o->getType() == OBJECT_CHARACTER); - warp(static_cast< Character * >(o), e.map, e.x, e.y); + warp(static_cast< Character * >(o), e.map, e.point); break; } } @@ -700,11 +699,11 @@ void GameState::remove(Entity *ptr) map->remove(ptr); } -void GameState::warp(Character *ptr, MapComposite *map, int x, int y) +void GameState::warp(Character *ptr, MapComposite *map, const Point &point) { remove(ptr); ptr->setMap(map); - ptr->setPosition(Point(x, y)); + ptr->setPosition(point); ptr->clearDestination(); /* Force update of persistent data on map change, so that characters can respawn at the start of the map after a death or @@ -750,28 +749,37 @@ static void enqueueEvent(Actor *ptr, const DelayedEvent &e) void GameState::enqueueInsert(Actor *ptr) { - DelayedEvent e = { EVENT_INSERT, 0, 0, 0 }; - enqueueEvent(ptr, e); + DelayedEvent event; + event.type = EVENT_INSERT; + event.map = 0; + enqueueEvent(ptr, event); } void GameState::enqueueRemove(Actor *ptr) { - DelayedEvent e = { EVENT_REMOVE, 0, 0, 0 }; - enqueueEvent(ptr, e); + DelayedEvent event; + event.type = EVENT_REMOVE; + event.map = 0; + enqueueEvent(ptr, event); } -void GameState::enqueueWarp(Character *ptr, MapComposite *m, int x, int y) +void GameState::enqueueWarp(Character *ptr, + MapComposite *map, + const Point &point) { // When the player has just disconnected, better not wait for the pointer // to become invalid. if (!ptr->isConnected()) { - warp(ptr, m, x, y); + warp(ptr, map, point); return; } - DelayedEvent e = { EVENT_WARP, x, y, m }; - enqueueEvent(ptr, e); + DelayedEvent event; + event.type = EVENT_WARP; + event.point = point; + event.map = map; + enqueueEvent(ptr, event); } void GameState::sayAround(Actor *obj, const std::string &text) |