pingus-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Pingus-CVS] r3629 - trunk/pingus/src


From: grumbel at BerliOS
Subject: [Pingus-CVS] r3629 - trunk/pingus/src
Date: Wed, 2 Jul 2008 23:43:44 +0200

Author: grumbel
Date: 2008-07-02 23:43:43 +0200 (Wed, 02 Jul 2008)
New Revision: 3629

Modified:
   trunk/pingus/src/server.cpp
   trunk/pingus/src/server_event.cpp
   trunk/pingus/src/server_event.hpp
   trunk/pingus/src/story_screen.cpp
Log:
Added end event to demo

Modified: trunk/pingus/src/server.cpp
===================================================================
--- trunk/pingus/src/server.cpp 2008-07-02 20:27:12 UTC (rev 3628)
+++ trunk/pingus/src/server.cpp 2008-07-02 21:43:43 UTC (rev 3629)
@@ -85,6 +85,8 @@
 
 Server::~Server ()
 {
+  if (demostream.get()) // FIXME: Any better place to put this? 
+    (*demostream) << "(end (time " << get_time() << "))" << std::endl;
 }
 
 World*
@@ -126,7 +128,7 @@
 Server::record(const ServerEvent& event)
 {
   if (demostream.get())
-  event.write(*demostream);
+    event.write(*demostream);
 }
 
 bool

Modified: trunk/pingus/src/server_event.cpp
===================================================================
--- trunk/pingus/src/server_event.cpp   2008-07-02 20:27:12 UTC (rev 3628)
+++ trunk/pingus/src/server_event.cpp   2008-07-02 21:43:43 UTC (rev 3629)
@@ -41,6 +41,11 @@
       type = ARMAGEDDON_EVENT;
       reader.read_int("time", time_stamp);
     }
+  else if (reader.get_name() == "end")
+    {
+      type = END_EVENT;
+      reader.read_int("time", time_stamp);
+    }
   else if (reader.get_name() == "finish")
     {
       type = FINISH_EVENT;
@@ -98,6 +103,15 @@
 }
 
 ServerEvent
+ServerEvent::make_end_event(int t)
+{
+  ServerEvent event;
+  event.type       = END_EVENT;
+  event.time_stamp = t;
+  return event; 
+}
+
+ServerEvent
 ServerEvent::make_armageddon_event(int t)
 {
   ServerEvent event;
@@ -131,6 +145,10 @@
       server->send_finish_event();      
       break;
 
+    case END_EVENT:
+      // do nothing
+      break;
+
     case PINGU_ACTION_EVENT:
       {
        Pingu* pingu = server->get_world()->get_pingus()->get_pingu(pingu_id);

Modified: trunk/pingus/src/server_event.hpp
===================================================================
--- trunk/pingus/src/server_event.hpp   2008-07-02 20:27:12 UTC (rev 3628)
+++ trunk/pingus/src/server_event.hpp   2008-07-02 21:43:43 UTC (rev 3629)
@@ -36,6 +36,7 @@
 public:
   enum Type { ARMAGEDDON_EVENT,
               FINISH_EVENT,
+              END_EVENT,
              PINGU_ACTION_EVENT };
 
   /** The type of event */
@@ -65,6 +66,7 @@
   void send(Server*);
 
   // Pseudo constructors
+  static ServerEvent make_end_event(int time);
   static ServerEvent make_finish_event(int time);
   static ServerEvent make_armageddon_event(int time);
   static ServerEvent make_pingu_action_event(int t, int id, const Vector3f& 
pos, Actions::ActionName action);

Modified: trunk/pingus/src/story_screen.cpp
===================================================================
--- trunk/pingus/src/story_screen.cpp   2008-07-02 20:27:12 UTC (rev 3628)
+++ trunk/pingus/src/story_screen.cpp   2008-07-02 21:43:43 UTC (rev 3629)
@@ -262,9 +262,4 @@
     }
 }
 
-
-// Local Variables: ***
-// coding:iso-latin-1
-// End: ***
-
 /* EOF */





reply via email to

[Prev in Thread] Current Thread [Next in Thread]