implement NetworkObject destructor, and increase BounceBounce recoil
authorterom
Tue, 09 Dec 2008 00:45:41 +0000
changeset 337 ecde18d07879
parent 336 ef598a3dc1b7
child 338 fe2b3c6fff54
implement NetworkObject destructor, and increase BounceBounce recoil
src/Network/Object.cc
src/Network/Object.hh
src/Weapons.cc
--- a/src/Network/Object.cc	Tue Dec 09 00:45:18 2008 +0000
+++ b/src/Network/Object.cc	Tue Dec 09 00:45:41 2008 +0000
@@ -89,13 +89,17 @@
  * NetworkObject 
  */
 NetworkObject::NetworkObject (NetworkObjectController &controller, NetworkObjectID obj_id) :
-    obj_id(obj_id) {
+    controller(controller), obj_id(obj_id) {
     
     assert(obj_id);
 
     controller.objects[obj_id] = this;
 }
         
+NetworkObject::~NetworkObject (void) {
+    controller.objects.erase(obj_id);
+}
+        
 void NetworkObject::buildPacket (NetworkPacketOutput &pkt, NetworkMessageID msg_id, const NetworkPacketBuffer &payload) {
     pkt.write_uint32(obj_id);
     pkt.write_uint16(msg_id);
--- a/src/Network/Object.hh	Tue Dec 09 00:45:18 2008 +0000
+++ b/src/Network/Object.hh	Tue Dec 09 00:45:41 2008 +0000
@@ -186,6 +186,11 @@
 
     protected:
         /**
+         * Generic controller
+         */
+        NetworkObjectController &controller;
+
+        /**
          * This object's object id
          */
         NetworkObjectID obj_id;
@@ -200,6 +205,11 @@
         NetworkObject (NetworkObjectController &controller, NetworkObjectID obj_id);
         
         /**
+         * Removes this object from the controller's objects list
+         */
+        ~NetworkObject (void);
+        
+        /**
          * Abstract method to handle packets sent to this object
          *
          * @param node the NetworkNode that sent this packet to us
--- a/src/Weapons.cc	Tue Dec 09 00:45:18 2008 +0000
+++ b/src/Weapons.cc	Tue Dec 09 00:45:41 2008 +0000
@@ -18,7 +18,7 @@
     {   10000,  3 * 80 + 50,    3 * 5 + 5,     3,       2 * 6 + 5,   3,      2 * 100 + 50,   0.00,   "Weapon 3"      },
     {   10000,  2 * 80 + 50,    4 * 5 + 5,     5,       3 * 6 + 5,   4,      3 * 100 + 50,   0.00,   "Weapon 4"      },
     {   10000,  1 * 80 + 50,    5 * 5 + 5,     8,       4 * 6 + 5,   5,      4 * 100 + 50,   0.00,   "Weapon 5"      },
-    {   1000,   600,            50000,         13,      100,         10,     1000,           1.05,   "BounceBounce"  },
+    {   1000,   600,            999000,        13,      100,         10,     1000,           1.05,   "BounceBounce"  },
     {   0,      0,              0,             0,       0,           0,      0,              0.00,   ""              }
 };