TODO update, fix tux doesn't stop at igloo anymore
authorMatthias Braun <matze@braunis.de>
Sat, 26 Mar 2005 12:31:14 +0000 (12:31 +0000)
committerMatthias Braun <matze@braunis.de>
Sat, 26 Mar 2005 12:31:14 +0000 (12:31 +0000)
SVN-Revision: 2294

TODO
data/levels/test/simple.stl
src/gameloop.cpp
src/sector.cpp
tools/tilemanager/Application.cs

diff --git a/TODO b/TODO
index 41213b0..1b291a0 100644 (file)
--- a/TODO
+++ b/TODO
@@ -20,36 +20,14 @@ Low priority [L]:    things that should be fixed sometime
 
 Programming
 ~~~~~~~~~~~
---Scons--
- * [H] Add an install target - done (however scons is creating stupid .sconsign
-                                     files at the install location :-/)
- * [M] improve opengl check to work on win32 and eventually more strange
-   systems again
- * [H] Make sure compilation on win32 and cross-compilation works
- * [M] compile some test executables to test for SDL, SDL_mixer and SDL_image.
-   Also test for version of SDL_mixer and SDL_image
- * [M] Create a distclean target
- * [M] Create a dist target
- * [M] Add instructions to the README
- * [L] If all of the [H] and [M] issues are fixed, remove autoconf/automake
- * [L] Take a look if it is possible to make it a bit more quiet. (Similar to
-     linux kernel, samba or jam output would be optimum, ie.
-       C++ build/linux/src/bla.o
-       C++ build/linux/src/blup.o
-       C++ build/linux/src/error.o
-          Error on line xx in error.o: This source contained an error
-
-       g++ -Wall .... -o build/linux/src/error.o src/error.cpp
-
 --Collision Detection Rewrite (all [H])--
  * enemies:
     - implement fish
-    - implement flyingsnowball
     - implement wingling
+    - implement stalactite
     - implement tree (really?)
     - bring back stay on platform flag
- ** implement ability to cary mriceblock (and other objects) around - delayed
-    for  after big commit...
+ ** implement ability to cary mriceblock (and other objects) around
  * smoke clouds are too fast
  * rethink slopes collision feedback... tux becomes too slow when walking up
     and starts jumping when walking down
@@ -59,8 +37,8 @@ Programming
  * check if unducking is actually possible or if something is in the way
  * fix flapping
  * what to do when stuck under tiles (after using duck-sliding)
* do we want multi hit scores again?
- * tux doesn't stop at igloo anymore
   - just slide through?
+ * do we want multi hit scores again? - not in the form of scores
  * buttjump is deactivated
  * implement quadtree or grid to speedup collision detection
 
@@ -71,9 +49,12 @@ Programming
 [L] use physfs for loading files
 [L] change physics class y-velocity-coordinate to be like all other
     y-coordinates again (positive y to go down)
+[L] rename files like tile_manage.* to TileManager.* because they contain a
+    class named TileManager not tile_manager. Eventually use .hpp instead of .h
+    to indicate the usage of c++
 [M] harmonize to 1 single gameloop that switches between title, worldmap,
     ingame mode and eventually leveleditor mode
-[H] introduce a special mode in DrawingContext for objects that want to draw
+[L] introduce a special mode in DrawingContext for objects that want to draw
     themselfes. This could speed up rendering of tilemaps.
 [M] Make the gamelogic run in a fixed logical framerate
 
@@ -89,15 +70,24 @@ Programming
     Good examples would be a water sound which can be placed at waterfalls,
     a kuckoo sound that can be placed into the wood, bubling sound for lava,
     ...
-[?] Create a falling leaves particle system. (I.e. slowly falling leaves in the
-    background) along with nice leaves graphics.
-        - the problem here is that leaves don't fall of the sky and fir trees
-        don't have leaves :-/
+    The sound object should be configurable:
+        To be position independent (always play), to have a spot position so
+        that it gets louder when tux gets nearer to the spot (or a rectangular
+        area instead of the spot?). You should be able to configure the sound
+        to be constantly looped or to be played in some random fashion
+        (ie. play and then 5-10 seconds pause).
+[H] Create a "sign" object, ie an object that can be placed on the level and
+    contains messages (like the run sign we have at the moment but
+    programmatically created so that we can translate it)
+[H] Create an "info block" ie. a block with a lightbulb on it or so that
+    displays some info text when jumped against. The textbox should be done
+    indepently of the info block and could be reused in cutscenes later...
 [H] Add a simple rock object that can be carried around
 [H] Add a rope object on which tux is able to climb, also add a ? block that
     emits a rope when hit
 [H] redo trampolines
 [H] Buttjump related things
+     - enable buttjump again
      - Should kill enemies with a certain range
         - Done--now needs to be tweaked
      - Animation (need images)
@@ -107,8 +97,6 @@ Programming
         - After enemy-kill is used, powerup should be removed from Tux
 [H] Icebullet related things
      - we should decide on specifics
-[H] Tux should fall while walking in tiles that have a space between.
-     - Possible solution: reduce Tux's width when checking collision with tiles
 [H] Graphics
      - New forest tileset
      - Badguy sprites
@@ -122,7 +110,6 @@ Programming
     where the camera didn't completely follow yet and you fall down directly
     again. This will suddenly raise the camera up.
 [L] Allow any object to be inside of a [?] box, ie. trampoline or badguy
-    - Not sure if this would be gameplay wise.
 [L] There is a report that the joypad is always used on windows and more severe
     it generates random up/down events, though it is callibrated correctly.
 
@@ -146,3 +133,27 @@ Beyond Milestone2
 - More things than just levels on the worldmap (similar to SMB3)
 - if we have a logical framerate we could record/play demos by simply storing
   the pressed keys in each frame...
+
+[L] --Scons--
+We can just stay with jam for now. Compared to scons jam is at least faster and
+doesn't suffer from the problems below.
+
+ * [H] Add an install target - done (however scons is creating stupid .sconsign
+                                     files at the install location :-/)
+ * [M] improve opengl check to work on win32 and eventually more strange
+   systems again
+ * [H] Make sure compilation on win32 and cross-compilation works
+ * [M] compile some test executables to test for SDL, SDL_mixer and SDL_image.
+   Also test for version of SDL_mixer and SDL_image
+ * [M] Create a distclean target
+ * [M] Create a dist target
+ * [M] Add instructions to the README
+ * [L] If all of the [H] and [M] issues are fixed, remove autoconf/automake
+ * [L] Take a look if it is possible to make it a bit more quiet. (Similar to
+     linux kernel, samba or jam output would be optimum, ie.
+       C++ build/linux/src/bla.o
+       C++ build/linux/src/blup.o
+       C++ build/linux/src/error.o
+          Error on line xx in error.o: This source contained an error
+
+       g++ -Wall .... -o build/linux/src/error.o src/error.cpp
index dbd263d..fe1d909 100644 (file)
@@ -8,7 +8,6 @@
     (name  "main")
     (width  30)
     (height  20)
-    (music  "supertux-1.ogg")
     (gravity 10.000000)
     (background (image "arctis.jpg")
                 (speed 0.5))
index 3a33cdb..f6d92d9 100644 (file)
@@ -814,6 +814,8 @@ GameSession::start_sequence(const std::string& sequencename)
     if(sequencename == "fireworks") {
       currentsector->add_object(new Fireworks());
     }
+  } else if(sequencename == "stoptux") {
+    end_sequence =  ENDSEQUENCE_WAITING;
   } else {
     std::cout << "Unknown sequence '" << sequencename << "'.\n";
   }
index 4037f35..795dc78 100644 (file)
@@ -332,7 +332,8 @@ Sector::fix_old_tiles()
         add_object(new Brick(pos, tile->getData()));
         solids->change(x, y, 0);
       } else if(tile->getAttributes() & Tile::GOAL) {
-        add_object(new SequenceTrigger(pos, "endsequence"));
+        std::string sequence = tile->getData() == 0 ? "endsequence" : "stoptux";
+        add_object(new SequenceTrigger(pos, sequence));
         solids->change(x, y, 0);
       }
     }                                                   
index 457132f..389e9b6 100644 (file)
@@ -151,7 +151,7 @@ public class Application {
                 tile.ID = startid + i;
                 ImageRegion region = new ImageRegion();
                 region.ImageFile = currentimage;
-                region.Region = new Rectangle(x*32, y*32, 32, 32);
+                region.Region = new System.Drawing.Rectangle(x*32, y*32, 32, 32);
                 tile.Images.Add(region);
                 if(Tiles[i] != null) {
                     Console.WriteLine(