pingus-cvs
[Top][All Lists]
Advanced

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

[Pingus-CVS] r3341 - in trunk/pingus: data/data data/images/core/menu sr


From: grumbel at BerliOS
Subject: [Pingus-CVS] r3341 - in trunk/pingus: data/data data/images/core/menu src
Date: Sat, 27 Oct 2007 09:26:45 +0200

Author: grumbel
Date: 2007-10-27 09:26:45 +0200 (Sat, 27 Oct 2007)
New Revision: 3341

Added:
   trunk/pingus/data/images/core/menu/marker_locked.png
Modified:
   trunk/pingus/data/data/core.res
   trunk/pingus/src/level_menu.cpp
   trunk/pingus/src/level_menu.hpp
Log:
- some more levelset stuff (press pause to toggle between modes)

Modified: trunk/pingus/data/data/core.res
===================================================================
--- trunk/pingus/data/data/core.res     2007-10-27 07:08:51 UTC (rev 3340)
+++ trunk/pingus/data/data/core.res     2007-10-27 07:26:45 UTC (rev 3341)
@@ -352,6 +352,10 @@
                     (image-file "../images/core/menu/marker.png"))
 
                    (sprite
+                    (name "marker_locked")
+                    (image-file "../images/core/menu/marker_locked.png"))
+
+                   (sprite
                     (name "marker2")
                     (image-file "../images/core/menu/marker2.png"))
 

Added: trunk/pingus/data/images/core/menu/marker_locked.png
===================================================================
(Binary files differ)


Property changes on: trunk/pingus/data/images/core/menu/marker_locked.png
___________________________________________________________________
Name: svn:mime-type
   + image/png

Modified: trunk/pingus/src/level_menu.cpp
===================================================================
--- trunk/pingus/src/level_menu.cpp     2007-10-27 07:08:51 UTC (rev 3340)
+++ trunk/pingus/src/level_menu.cpp     2007-10-27 07:26:45 UTC (rev 3341)
@@ -30,12 +30,14 @@
 
 LevelMenu::LevelMenu()
   : x_pos((Display::get_width()  - 800)/2),
-    y_pos((Display::get_height() - 600)/2)
+    y_pos((Display::get_height() - 600)/2),
+    current_levelset(0)
 {
   background = Resource::load_sprite("core/menu/filedialog");
   ok_button  = Resource::load_sprite("core/start/ok");
   marker     = Resource::load_sprite("core/menu/marker");
   marker_small = Resource::load_sprite("core/menu/marker2");
+  marker_locked = Resource::load_sprite("core/menu/marker_locked");
 
   std::string path = Pathname("levelsets", Pathname::DATA_PATH).get_sys_path();
   System::Directory directory = System::opendir(path, "*.levelset");
@@ -69,7 +71,7 @@
   // gc.draw_fillrect(Rect(100, 100, 400, 400), Color(255, 0, 0));
   gc.draw(background, Vector2i(400 - background.get_width()/2, 300 - 
background.get_height()/2));
 
-  if (0)
+  if (!current_levelset)
     {
       gc.print_center(Fonts::chalk_large, 800/2, 90, _("Levelset Menu"));
 
@@ -104,6 +106,8 @@
         {
           if (i == 0)
             gc.draw(marker_small, 100, y-4);
+          else if (i > 3)
+            gc.draw(marker_locked, 100, y-4);
 
           std::string level = levelset->get_level(i);          
           gc.print_left(Fonts::chalk_small, 120, y, level);
@@ -120,6 +124,20 @@
 
 }
 
+void 
+LevelMenu::on_pause_press()
+{
+  std::cout << "Click" << std::endl;
+  if (current_levelset)
+    {
+      current_levelset = 0;
+    }
+  else
+    {
+      current_levelset = levelsets.front();
+    }
+}
+
 void
 LevelMenu::on_escape_press()
 {

Modified: trunk/pingus/src/level_menu.hpp
===================================================================
--- trunk/pingus/src/level_menu.hpp     2007-10-27 07:08:51 UTC (rev 3340)
+++ trunk/pingus/src/level_menu.hpp     2007-10-27 07:26:45 UTC (rev 3341)
@@ -35,10 +35,13 @@
   Sprite ok_button;
   Sprite marker;
   Sprite marker_small;
+  Sprite marker_locked;
 
   typedef std::vector<Levelset*> Levelsets;
   Levelsets levelsets;
 
+  Levelset* current_levelset;
+
 public:
   LevelMenu();
   ~LevelMenu();
@@ -47,7 +50,7 @@
   void update (const GameDelta& delta);
   void on_escape_press ();
   void on_pointer_move (int x, int y);
-
+  void on_pause_press();
 private:
   LevelMenu (const LevelMenu&);
   LevelMenu& operator= (const LevelMenu&);





reply via email to

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