super-tux-commit Mailing List for Super Tux (Page 5)
Brought to you by:
wkendrick
You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
(94) |
Apr
(500) |
May
(531) |
Jun
(196) |
Jul
(224) |
Aug
(193) |
Sep
(117) |
Oct
(115) |
Nov
(319) |
Dec
(97) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(19) |
Feb
|
Mar
(105) |
Apr
(41) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(6) |
2007 |
Jan
(1) |
Feb
(2) |
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
(2) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
(4) |
Jul
|
Aug
|
Sep
(7) |
Oct
(12) |
Nov
(26) |
Dec
(39) |
2009 |
Jan
(6) |
Feb
(15) |
Mar
(10) |
Apr
(25) |
May
(29) |
Jun
(21) |
Jul
(26) |
Aug
(8) |
Sep
(3) |
Oct
|
Nov
|
Dec
(10) |
2010 |
Jan
(5) |
Feb
(5) |
Mar
(2) |
Apr
|
May
(5) |
Jun
|
Jul
(1) |
Aug
(2) |
Sep
(2) |
Oct
(2) |
Nov
|
Dec
|
From: Matze B. <mat...@us...> - 2005-03-30 01:52:51
|
Update of /cvsroot/super-tux/supertux In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13952 Modified Files: TODO Log Message: added a bell object which is a new better way to do reset points Index: TODO =================================================================== RCS file: /cvsroot/super-tux/supertux/TODO,v retrieving revision 1.102 retrieving revision 1.103 diff -u -d -r1.102 -r1.103 --- TODO 26 Mar 2005 12:31:12 -0000 1.102 +++ TODO 30 Mar 2005 01:52:11 -0000 1.103 @@ -58,13 +58,7 @@ themselfes. This could speed up rendering of tilemaps. [M] Make the gamelogic run in a fixed logical framerate ---Miscellaneous-- -[?] think about how to implement scripting, and how to make a simple and easy to - use api for the scripting interface - (language will probably be lua - just have to figure out how well we can do - without OO support in the scripting language. - Other candidates are python, ruby and less likely java, mono/.net, - surely no own invention, perl or 1 of these c-like scripting languages) +--Objects-- [H] Create a "sound object" that is an object or area, that can be placed on the map and constantly plays a .wav file to improve game athmosphere. Good examples would be a water sound which can be placed at waterfalls, @@ -86,6 +80,14 @@ [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 + +--Miscellaneous-- +[?] think about how to implement scripting, and how to make a simple and easy to + use api for the scripting interface + (language will probably be lua - just have to figure out how well we can do + without OO support in the scripting language. + Other candidates are python, ruby and less likely java, mono/.net, + surely no own invention, perl or 1 of these c-like scripting languages) [H] Buttjump related things - enable buttjump again - Should kill enemies with a certain range |
From: Matze B. <mat...@us...> - 2005-03-30 01:52:51
|
Update of /cvsroot/super-tux/supertux/data/images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13952/data/images Modified Files: supertux.strf Log Message: added a bell object which is a new better way to do reset points Index: supertux.strf =================================================================== RCS file: /cvsroot/super-tux/supertux/data/images/supertux.strf,v retrieving revision 1.33 retrieving revision 1.34 diff -u -d -r1.33 -r1.34 --- supertux.strf 13 Mar 2005 22:38:55 -0000 1.33 +++ supertux.strf 30 Mar 2005 01:52:11 -0000 1.34 @@ -1379,6 +1379,23 @@ (y-offset 0) (images "shared/stomp.png") )) + + (sprite (name "bell") + (action + (name "default") + (x-offset 0) + (y-offset 0) + (images "shared/bell/bell-m.png") + ) + (action + (name "ringing") + (images "shared/bell/bell-l.png" + "shared/bell/bell-m.png" + "shared/bell/bell-r.png" + "shared/bell/bell-m.png" + ) + ) + ) ) ;; EOF ;; |
From: Matze B. <mat...@us...> - 2005-03-30 01:52:36
|
Update of /cvsroot/super-tux/supertux/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13952/src Modified Files: flip_level_transformer.cpp gameloop.cpp gameloop.h sector.cpp sector.h title.cpp Log Message: added a bell object which is a new better way to do reset points Index: sector.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/sector.h,v retrieving revision 1.31 retrieving revision 1.32 diff -u -d -r1.31 -r1.32 --- sector.h 25 Mar 2005 20:39:53 -0000 1.31 +++ sector.h 30 Mar 2005 01:52:13 -0000 1.32 @@ -69,9 +69,8 @@ void write(lisp::Writer& writer); /// activates this sector (change music, intialize player class, ...) - void activate(const std::string& spawnpoint = "main"); - /// get best spawn point - Vector get_best_spawn_point(Vector pos); + void activate(const std::string& spawnpoint); + void activate(const Vector& player_pos); void action(float elapsed_time); void update_game_objects(); Index: flip_level_transformer.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/flip_level_transformer.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- flip_level_transformer.cpp 25 Mar 2005 20:39:49 -0000 1.1 +++ flip_level_transformer.cpp 30 Mar 2005 01:52:12 -0000 1.2 @@ -71,8 +71,8 @@ void FlipLevelTransformer::transform_moving_object(float height, MovingObject*object) { - Vector pos = object->bbox.p1; + Vector pos = object->get_pos(); pos.y = height - pos.y; - object->bbox.set_pos(pos); + object->set_pos(pos); } Index: gameloop.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/gameloop.h,v retrieving revision 1.67 retrieving revision 1.68 diff -u -d -r1.67 -r1.68 --- gameloop.h 25 Mar 2005 20:39:50 -0000 1.67 +++ gameloop.h 30 Mar 2005 01:52:12 -0000 1.68 @@ -55,39 +55,9 @@ keeping the speed and framerate sane, etc. */ class GameSession { -private: - Uint32 fps_ticks; - Timer2 endsequence_timer; - Level* level; - Sector* currentsector; - - int st_gl_mode; - int levelnb; - float fps_fps; - int pause_menu_frame; - - /** If true the end_sequence will be played, user input will be - ignored while doing that */ - enum EndSequenceState { - NO_ENDSEQUENCE, - ENDSEQUENCE_RUNNING, // tux is running right - ENDSEQUENCE_WAITING // waiting for the end of the music - }; - EndSequenceState end_sequence; - float last_x_pos; - - bool game_pause; - - std::string levelfile; - - // the sector and spawnpoint we shoudl spawn after this frame - std::string newsector; - std::string newspawnpoint; - public: enum ExitStatus { ES_NONE, ES_LEVEL_FINISHED, ES_GAME_OVER, ES_LEVEL_ABORT }; -private: - ExitStatus exit_status; + public: DrawingContext* context; Timer2 time_left; @@ -107,23 +77,14 @@ void respawn(const std::string& sectorname, const std::string& spawnpointname); + void set_reset_point(const std::string& sectorname, + const Vector& pos); Sector* get_current_sector() { return currentsector; } void start_sequence(const std::string& sequencename); private: - static GameSession* current_; - - // for cheating - std::string last_keys; - - // swap points - Vector last_swap_point; - Statistics last_swap_stats; - - Statistics* best_level_statistics; - void restart_level(); void check_end_conditions(); @@ -138,12 +99,52 @@ void on_escape_press(); void process_menu(); + + + Uint32 fps_ticks; + Timer2 endsequence_timer; + Level* level; + Sector* currentsector; + + int st_gl_mode; + int levelnb; + float fps_fps; + int pause_menu_frame; + + /** If true the end_sequence will be played, user input will be + ignored while doing that */ + enum EndSequenceState { + NO_ENDSEQUENCE, + ENDSEQUENCE_RUNNING, // tux is running right + ENDSEQUENCE_WAITING // waiting for the end of the music + }; + EndSequenceState end_sequence; + float last_x_pos; + + bool game_pause; + + std::string levelfile; + + // reset point (the point where tux respawns if he dies) + std::string reset_sector; + Vector reset_pos; + + // the sector and spawnpoint we should spawn after this frame + std::string newsector; + std::string newspawnpoint; + + static GameSession* current_; + + // for cheating + std::string last_keys; + + Statistics* best_level_statistics; + + ExitStatus exit_status; }; std::string slotinfo(int slot); -void bumpbrick(float x, float y); - /** Return true if the gameloop() was entered, false otherwise */ bool process_load_game_menu(); Index: title.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/title.cpp,v retrieving revision 1.140 retrieving revision 1.141 diff -u -d -r1.140 -r1.141 --- title.cpp 25 Mar 2005 20:39:53 -0000 1.140 +++ title.cpp 30 Mar 2005 01:52:13 -0000 1.141 @@ -85,7 +85,7 @@ { // FIXME: shouldn't be needed if GameSession // didn't relay on global variables - titlesession->get_current_sector()->activate(); + titlesession->get_current_sector()->activate("main"); titlesession->set_current(); frame_rate.update(); @@ -214,7 +214,7 @@ contrib_subset_menu->additem(MN_HL,"",0,0); contrib_subset_menu->additem(MN_BACK, _("Back"), 0, 0); - titlesession->get_current_sector()->activate(); + titlesession->get_current_sector()->activate("main"); titlesession->set_current(); } } @@ -297,7 +297,7 @@ logo = new Surface(datadir + "/images/title/logo.png", true); img_choose_subset = new Surface(datadir + "/images/status/choose-level-subset.png", true); - titlesession->get_current_sector()->activate(); + titlesession->get_current_sector()->activate("main"); titlesession->set_current(); /* --- Main title loop: --- */ Index: gameloop.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/gameloop.cpp,v retrieving revision 1.213 retrieving revision 1.214 diff -u -d -r1.213 -r1.214 --- gameloop.cpp 26 Mar 2005 12:31:13 -0000 1.213 +++ gameloop.cpp 30 Mar 2005 01:52:12 -0000 1.214 @@ -91,9 +91,6 @@ context = new DrawingContext(); - last_swap_point = Vector(-1, -1); - last_swap_stats.reset(); - restart_level(); } @@ -126,40 +123,23 @@ global_stats.set_total_points(BADGUYS_KILLED_STAT, level->get_total_badguys()); global_stats.set_total_points(TIME_NEEDED_STAT, level->timelimit); - currentsector = level->get_sector("main"); - if(!currentsector) - Termination::abort("Level has no main sector.", ""); - currentsector->activate("main"); - -#if 0 - // Set Tux to the nearest reset point - if(tux_pos.x != -1) - { - tux_pos = currentsector->get_best_spawn_point(tux_pos); - - if(last_swap_point.x > tux_pos.x) - tux_pos = last_swap_point; - else // new swap point - { - last_swap_point = tux_pos; - - last_swap_stats += global_stats; - } - - currentsector->player->base.x = tux_pos.x; - currentsector->player->base.y = tux_pos.y; - - // has to reset camera on swapping - currentsector->camera->reset(Vector(currentsector->player->base.x, - currentsector->player->base.y)); - } -#endif - - if (st_gl_mode != ST_GL_DEMO_GAME) - { - if(st_gl_mode == ST_GL_PLAY || st_gl_mode == ST_GL_LOAD_LEVEL_FILE) - levelintro(); + if(reset_sector != "") { + currentsector = level->get_sector(reset_sector); + if(!currentsector) { + std::stringstream msg; + msg << "Couldn't find sector '" << reset_sector << "' for resetting tux."; + throw std::runtime_error(msg.str()); } + currentsector->activate(reset_pos); + } else { + currentsector = level->get_sector("main"); + if(!currentsector) + throw std::runtime_error("Couldn't find main sector"); + currentsector->activate("main"); + } + + if(st_gl_mode == ST_GL_PLAY || st_gl_mode == ST_GL_LOAD_LEVEL_FILE) + levelintro(); start_timers(); currentsector->play_music(LEVEL_MUSIC); @@ -172,7 +152,7 @@ } void -GameSession::levelintro(void) +GameSession::levelintro() { SoundManager::get()->halt_music(); @@ -383,13 +363,13 @@ } } - /* Check if chacrater is ASCII */ - char ch[2]; - if((event.key.keysym.unicode & 0xFF80) == 0) - { - ch[0] = event.key.keysym.unicode & 0x7F; - ch[1] = '\0'; - } + /* Check if chacrater is ASCII */ + char ch[2]; + if((event.key.keysym.unicode & 0xFF80) == 0) + { + ch[0] = event.key.keysym.unicode & 0x7F; + ch[1] = '\0'; + } last_keys.append(ch); // add to cheat keys handle_cheats(); break; @@ -572,9 +552,8 @@ /* End of level? */ if(end_sequence && endsequence_timer.check()) { - exit_status = ES_LEVEL_FINISHED; - global_stats += last_swap_stats; // add swap points stats - return; + exit_status = ES_LEVEL_FINISHED; + return; } else if (!end_sequence && tux->is_dead()) { player_status.bonus = PlayerStatus::NO_BONUS; @@ -795,6 +774,13 @@ } void +GameSession::set_reset_point(const std::string& sector, const Vector& pos) +{ + reset_sector = sector; + reset_pos = pos; +} + +void GameSession::start_sequence(const std::string& sequencename) { if(sequencename == "endsequence" || sequencename == "fireworks") { Index: sector.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/sector.cpp,v retrieving revision 1.67 retrieving revision 1.68 diff -u -d -r1.67 -r1.68 --- sector.cpp 26 Mar 2005 12:31:13 -0000 1.67 +++ sector.cpp 30 Mar 2005 01:52:12 -0000 1.68 @@ -392,11 +392,33 @@ void Sector::activate(const std::string& spawnpoint) { + SpawnPoint* sp = 0; + for(SpawnPoints::iterator i = spawnpoints.begin(); i != spawnpoints.end(); + ++i) { + if((*i)->name == spawnpoint) { + sp = *i; + break; + } + } + if(!sp) { + std::cerr << "Spawnpoint '" << spawnpoint << "' not found.\n"; + if(spawnpoint != "main") { + activate("main"); + } else { + activate(Vector(0, 0)); + } + } else { + activate(sp->pos); + } +} + +void +Sector::activate(const Vector& player_pos) +{ _current = this; // Apply bonuses from former levels - switch (player_status.bonus) - { + switch (player_status.bonus) { case PlayerStatus::NO_BONUS: break; @@ -407,41 +429,16 @@ case PlayerStatus::GROWUP_BONUS: player->grow(false); break; - } - SpawnPoint* sp = 0; - for(SpawnPoints::iterator i = spawnpoints.begin(); i != spawnpoints.end(); - ++i) { - if((*i)->name == spawnpoint) { - sp = *i; + default: + std::cerr << "Unknown bonus in PlayerStatus?!?\n"; break; - } - } - if(!sp) { - std::cerr << "Spawnpoint '" << spawnpoint << "' not found.\n"; - } else { - player->move(sp->pos); } + player->move(player_pos); camera->reset(player->get_pos()); } -Vector -Sector::get_best_spawn_point(Vector pos) -{ - Vector best_reset_point = Vector(-1,-1); - - for(SpawnPoints::iterator i = spawnpoints.begin(); i != spawnpoints.end(); - ++i) { - if((*i)->name != "main") - continue; - if((*i)->pos.x > best_reset_point.x && (*i)->pos.x < pos.x) - best_reset_point = (*i)->pos; - } - - return best_reset_point; -} - Rectangle Sector::get_active_region() { |
From: Matze B. <mat...@us...> - 2005-03-30 01:52:36
|
Update of /cvsroot/super-tux/supertux/src/object In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13952/src/object Modified Files: block.h particlesystem.cpp player.cpp portable.h Added Files: bell.cpp bell.h Log Message: added a bell object which is a new better way to do reset points Index: block.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/block.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- block.h 29 Nov 2004 00:12:25 -0000 1.3 +++ block.h 30 Mar 2005 01:52:14 -0000 1.4 @@ -1,5 +1,5 @@ -#ifndef __BOX_H__ -#define __BOX_H__ +#ifndef __BLOCK_H__ +#define __BLOCK_H__ #include "special/moving_object.h" Index: particlesystem.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/particlesystem.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- particlesystem.cpp 16 Mar 2005 11:35:16 -0000 1.3 +++ particlesystem.cpp 30 Mar 2005 01:52:14 -0000 1.4 @@ -137,7 +137,7 @@ virtual_width = screen->w * 2; - // create some random snowflakes + // create some random raindrops size_t raindropcount = size_t(virtual_width/8.0); for(size_t i=0; i<raindropcount; ++i) { RainParticle* particle = new RainParticle; Index: player.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/player.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- player.cpp 25 Mar 2005 20:39:55 -0000 1.4 +++ player.cpp 30 Mar 2005 01:52:14 -0000 1.5 @@ -257,9 +257,21 @@ return; } - if(input.fire == false) + if(input.fire == false && grabbed_object) { grabbed_object = 0; - + // move the grabbed object a bit away from tux + Vector pos = get_pos() + + Vector(dir == LEFT ? -bbox.get_width() : bbox.get_width(), + bbox.get_height()*0.66666 - 32); + MovingObject* object = dynamic_cast<MovingObject*> (grabbed_object); + if(object) { + object->set_pos(pos); + } else { +#ifdef DEBUG + std::cout << "Non MovingObjetc grabbed?!?\n"; +#endif + } + } if(!dying) handle_input(); Index: portable.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/portable.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- portable.h 19 Dec 2004 13:34:12 -0000 1.1 +++ portable.h 30 Mar 2005 01:52:14 -0000 1.2 @@ -14,10 +14,19 @@ class Portable { public: - /** - * called each frame when the object has been grabbed. - */ + virtual ~Portable() + { } + + /** + * called each frame when the object has been grabbed. + */ virtual void grab(MovingObject& object, const Vector& pos) = 0; + + /** called when object isn't grabbed anymore */ + virtual void ungrab(MovingObject& object) + { + (void) object; + } }; #endif --- NEW FILE: bell.h --- #ifndef __BELL_H__ #define __BELL_H__ #include "lisp/lisp.h" #include "special/moving_object.h" #include "special/sprite.h" #include "serializable.h" using namespace SuperTux; /** * A bell: When tux touches it, it begins ringing and you will respawn at this * position. */ class Bell : public MovingObject, public Serializable { public: Bell(const lisp::Lisp& lisp); ~Bell(); void write(lisp::Writer& writer); void action(float elapsed_time); void draw(DrawingContext& context); HitResponse collision(GameObject& other, const CollisionHit& hit); private: Sprite* sprite; bool ringing; }; #endif --- NEW FILE: bell.cpp --- #include <config.h> #include "bell.h" #include "resources.h" #include "special/sprite_manager.h" #include "video/drawing_context.h" #include "player.h" #include "object_factory.h" #include "gameloop.h" #include "sector.h" Bell::Bell(const lisp::Lisp& lisp) : ringing(false) { lisp.get("x", bbox.p1.x); lisp.get("y", bbox.p1.y); bbox.set_size(32, 32); sprite = sprite_manager->create("bell"); } Bell::~Bell() { delete sprite; } void Bell::write(lisp::Writer& writer) { writer.start_list("bell"); writer.write_float("x", bbox.p1.x); writer.write_float("y", bbox.p1.y); writer.end_list("bell"); } void Bell::action(float ) { } void Bell::draw(DrawingContext& context) { sprite->draw(context, get_pos(), LAYER_TILES); } HitResponse Bell::collision(GameObject& other, const CollisionHit& ) { if(ringing) return ABORT_MOVE; Player* player = dynamic_cast<Player*> (&other); if(player) { ringing = true; // TODO play sound sprite->set_action("ringing"); GameSession::current()->set_reset_point(Sector::current()->get_name(), get_pos()); } return ABORT_MOVE; } IMPLEMENT_FACTORY(Bell, "bell"); |
From: Matze B. <mat...@us...> - 2005-03-26 12:31:23
|
Update of /cvsroot/super-tux/supertux/tools/tilemanager In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1563/tools/tilemanager Modified Files: Application.cs Log Message: TODO update, fix tux doesn't stop at igloo anymore Index: Application.cs =================================================================== RCS file: /cvsroot/super-tux/supertux/tools/tilemanager/Application.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- Application.cs 13 Mar 2005 20:49:31 -0000 1.1 +++ Application.cs 26 Mar 2005 12:31:14 -0000 1.2 @@ -151,7 +151,7 @@ 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( |
From: Matze B. <mat...@us...> - 2005-03-26 12:31:23
|
Update of /cvsroot/super-tux/supertux/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1563/src Modified Files: gameloop.cpp sector.cpp Log Message: TODO update, fix tux doesn't stop at igloo anymore Index: sector.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/sector.cpp,v retrieving revision 1.66 retrieving revision 1.67 diff -u -d -r1.66 -r1.67 --- sector.cpp 25 Mar 2005 20:39:52 -0000 1.66 +++ sector.cpp 26 Mar 2005 12:31:13 -0000 1.67 @@ -332,7 +332,8 @@ 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: gameloop.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/gameloop.cpp,v retrieving revision 1.212 retrieving revision 1.213 diff -u -d -r1.212 -r1.213 --- gameloop.cpp 25 Mar 2005 20:39:49 -0000 1.212 +++ gameloop.cpp 26 Mar 2005 12:31:13 -0000 1.213 @@ -814,6 +814,8 @@ if(sequencename == "fireworks") { currentsector->add_object(new Fireworks()); } + } else if(sequencename == "stoptux") { + end_sequence = ENDSEQUENCE_WAITING; } else { std::cout << "Unknown sequence '" << sequencename << "'.\n"; } |
From: Matze B. <mat...@us...> - 2005-03-26 12:31:22
|
Update of /cvsroot/super-tux/supertux/data/levels/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1563/data/levels/test Modified Files: simple.stl Log Message: TODO update, fix tux doesn't stop at igloo anymore Index: simple.stl =================================================================== RCS file: /cvsroot/super-tux/supertux/data/levels/test/simple.stl,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- simple.stl 19 Dec 2004 13:34:10 -0000 1.4 +++ simple.stl 26 Mar 2005 12:31:13 -0000 1.5 @@ -8,7 +8,6 @@ (name "main") (width 30) (height 20) - (music "supertux-1.ogg") (gravity 10.000000) (background (image "arctis.jpg") (speed 0.5)) |
From: Matze B. <mat...@us...> - 2005-03-26 12:31:22
|
Update of /cvsroot/super-tux/supertux In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1563 Modified Files: TODO Log Message: TODO update, fix tux doesn't stop at igloo anymore Index: TODO =================================================================== RCS file: /cvsroot/super-tux/supertux/TODO,v retrieving revision 1.101 retrieving revision 1.102 diff -u -d -r1.101 -r1.102 --- TODO 9 Jan 2005 20:12:49 -0000 1.101 +++ TODO 26 Mar 2005 12:31:12 -0000 1.102 @@ -20,36 +20,14 @@ 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 @@ * 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 @@ [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 @@ 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 @@ - 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 @@ 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 @@ - 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 |
From: Matze B. <mat...@us...> - 2005-03-25 20:40:29
|
Update of /cvsroot/super-tux/supertux/lib/special In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9911/lib/special Modified Files: game_object.h moving_object.h object_remove_listener.h Log Message: Had a bit of time today and worked on supertux: - Commited some old changes I had lying around here (improved mrtree images? and improvement to the collision grid which still isn't enabled by default) - Did a bit more cleanups (eleminated defines.h and renamed scene.* to player_status.* as that is waht ti really contained) - Cleaned up PlayerStatus code a bit (refactored loading/saving out of worldmap into PlayerStatus) - Implemented LevelTransformer interface and did a first test with a flip level transformer - Removed explicit LevelEndSequence attribute (can be done by placing aprorpiate SequenceTrigger objects) Index: game_object.h =================================================================== RCS file: /cvsroot/super-tux/supertux/lib/special/game_object.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- game_object.h 16 Jan 2005 12:11:22 -0000 1.5 +++ game_object.h 25 Mar 2005 20:39:48 -0000 1.6 @@ -80,8 +80,7 @@ remove_listeners = entry; } - - + // flags enum { /// the tile so you can stand on it Index: object_remove_listener.h =================================================================== RCS file: /cvsroot/super-tux/supertux/lib/special/object_remove_listener.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- object_remove_listener.h 16 Jan 2005 12:11:22 -0000 1.1 +++ object_remove_listener.h 25 Mar 2005 20:39:48 -0000 1.2 @@ -9,6 +9,9 @@ class ObjectRemoveListener { public: + virtual ~ObjectRemoveListener() + { } + virtual void object_removed(GameObject* object) = 0; }; Index: moving_object.h =================================================================== RCS file: /cvsroot/super-tux/supertux/lib/special/moving_object.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- moving_object.h 29 Nov 2004 16:03:29 -0000 1.6 +++ moving_object.h 25 Mar 2005 20:39:48 -0000 1.7 @@ -25,6 +25,7 @@ #include "math/vector.h" #include "math/rectangle.h" +class FlipLevelTransformer; class Sector; class CollisionGrid; @@ -65,6 +66,7 @@ protected: friend class Sector; friend class CollisionGrid; + friend class FlipLevelTransformer; /** The bounding box of the object (as used for collision detection, this * isn't necessarily the bounding box for graphics) |
From: Matze B. <mat...@us...> - 2005-03-25 20:40:28
|
Update of /cvsroot/super-tux/supertux/lib/utils In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9911/lib/utils Modified Files: configfile.h Log Message: Had a bit of time today and worked on supertux: - Commited some old changes I had lying around here (improved mrtree images? and improvement to the collision grid which still isn't enabled by default) - Did a bit more cleanups (eleminated defines.h and renamed scene.* to player_status.* as that is waht ti really contained) - Cleaned up PlayerStatus code a bit (refactored loading/saving out of worldmap into PlayerStatus) - Implemented LevelTransformer interface and did a first test with a flip level transformer - Removed explicit LevelEndSequence attribute (can be done by placing aprorpiate SequenceTrigger objects) Index: configfile.h =================================================================== RCS file: /cvsroot/super-tux/supertux/lib/utils/configfile.h,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- configfile.h 28 Nov 2004 14:56:48 -0000 1.8 +++ configfile.h 25 Mar 2005 20:39:49 -0000 1.9 @@ -27,7 +27,9 @@ FILE * opendata(const std::string& filename, const char * mode); class Config { - public: +public: + virtual ~Config() + { } void load (); void save (); virtual void customload(const lisp::Lisp* ) |
From: Matze B. <mat...@us...> - 2005-03-25 20:40:28
|
Update of /cvsroot/super-tux/supertux/lib/gui In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9911/lib/gui Modified Files: menu.cpp Log Message: Had a bit of time today and worked on supertux: - Commited some old changes I had lying around here (improved mrtree images? and improvement to the collision grid which still isn't enabled by default) - Did a bit more cleanups (eleminated defines.h and renamed scene.* to player_status.* as that is waht ti really contained) - Cleaned up PlayerStatus code a bit (refactored loading/saving out of worldmap into PlayerStatus) - Implemented LevelTransformer interface and did a first test with a flip level transformer - Removed explicit LevelEndSequence attribute (can be done by placing aprorpiate SequenceTrigger objects) Index: menu.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/lib/gui/menu.cpp,v retrieving revision 1.18 retrieving revision 1.19 diff -u -d -r1.18 -r1.19 --- menu.cpp 24 Nov 2004 14:10:21 -0000 1.18 +++ menu.cpp 25 Mar 2005 20:39:33 -0000 1.19 @@ -746,7 +746,7 @@ { case SDL_KEYDOWN: { - SDLKey key = key = event.key.keysym.sym; + SDLKey key = event.key.keysym.sym; SDLMod keymod; char ch[2]; keymod = SDL_GetModState(); |
From: Matze B. <mat...@us...> - 2005-03-25 20:40:17
|
Update of /cvsroot/super-tux/supertux/data/levels/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9911/data/levels/test Modified Files: bonusblock.stl Log Message: Had a bit of time today and worked on supertux: - Commited some old changes I had lying around here (improved mrtree images? and improvement to the collision grid which still isn't enabled by default) - Did a bit more cleanups (eleminated defines.h and renamed scene.* to player_status.* as that is waht ti really contained) - Cleaned up PlayerStatus code a bit (refactored loading/saving out of worldmap into PlayerStatus) - Implemented LevelTransformer interface and did a first test with a flip level transformer - Removed explicit LevelEndSequence attribute (can be done by placing aprorpiate SequenceTrigger objects) Index: bonusblock.stl =================================================================== RCS file: /cvsroot/super-tux/supertux/data/levels/test/bonusblock.stl,v retrieving revision 1.13 retrieving revision 1.14 diff -u -d -r1.13 -r1.14 --- bonusblock.stl 29 Nov 2004 15:08:55 -0000 1.13 +++ bonusblock.stl 25 Mar 2005 20:39:32 -0000 1.14 @@ -9,7 +9,7 @@ (gravity 10.000000) (background (image "arctis.jpg") (speed 0.5)) - (music "supertux-2.ogg") + (music "theme.mod") (spawnpoint (name "main") (x 100) |
From: Matze B. <mat...@us...> - 2005-03-25 20:40:16
|
Update of /cvsroot/super-tux/supertux/data/images/shared In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9911/data/images/shared Modified Files: mrtree-small-left-0.png mrtree-small-left-1.png mrtree-small-left-2.png mrtree-squished-left.png mrtree-walk-left-0.png mrtree-walk-left-1.png mrtree-walk-left-2.png Log Message: Had a bit of time today and worked on supertux: - Commited some old changes I had lying around here (improved mrtree images? and improvement to the collision grid which still isn't enabled by default) - Did a bit more cleanups (eleminated defines.h and renamed scene.* to player_status.* as that is waht ti really contained) - Cleaned up PlayerStatus code a bit (refactored loading/saving out of worldmap into PlayerStatus) - Implemented LevelTransformer interface and did a first test with a flip level transformer - Removed explicit LevelEndSequence attribute (can be done by placing aprorpiate SequenceTrigger objects) Index: mrtree-small-left-0.png =================================================================== RCS file: /cvsroot/super-tux/supertux/data/images/shared/mrtree-small-left-0.png,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 Binary files /tmp/cvsp0cLiP and /tmp/cvsoO826k differ Index: mrtree-small-left-1.png =================================================================== RCS file: /cvsroot/super-tux/supertux/data/images/shared/mrtree-small-left-1.png,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 Binary files /tmp/cvsTNRIES and /tmp/cvsDO9Iwo differ Index: mrtree-small-left-2.png =================================================================== RCS file: /cvsroot/super-tux/supertux/data/images/shared/mrtree-small-left-2.png,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 Binary files /tmp/cvs56bs2W and /tmp/cvs8vvjXs differ Index: mrtree-walk-left-0.png =================================================================== RCS file: /cvsroot/super-tux/supertux/data/images/shared/mrtree-walk-left-0.png,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 Binary files /tmp/cvsf4W2f5 and /tmp/cvs4PMHeB differ Index: mrtree-walk-left-2.png =================================================================== RCS file: /cvsroot/super-tux/supertux/data/images/shared/mrtree-walk-left-2.png,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 Binary files /tmp/cvsbKfNW8 and /tmp/cvsGQKrZE differ Index: mrtree-walk-left-1.png =================================================================== RCS file: /cvsroot/super-tux/supertux/data/images/shared/mrtree-walk-left-1.png,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 Binary files /tmp/cvs4f6Qjf and /tmp/cvsLQ35oL differ Index: mrtree-squished-left.png =================================================================== RCS file: /cvsroot/super-tux/supertux/data/images/shared/mrtree-squished-left.png,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 Binary files /tmp/cvsAsjIay and /tmp/cvsqSGhs4 differ |
From: Matze B. <mat...@us...> - 2005-03-25 20:40:12
|
Update of /cvsroot/super-tux/supertux/src/object In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9911/src/object Modified Files: background.h block.cpp bullet.cpp camera.cpp camera.h coin.cpp flower.cpp gameobjs.h growup.cpp oneup.cpp player.cpp player.h specialriser.cpp star.cpp tilemap.cpp tilemap.h Log Message: Had a bit of time today and worked on supertux: - Commited some old changes I had lying around here (improved mrtree images? and improvement to the collision grid which still isn't enabled by default) - Did a bit more cleanups (eleminated defines.h and renamed scene.* to player_status.* as that is waht ti really contained) - Cleaned up PlayerStatus code a bit (refactored loading/saving out of worldmap into PlayerStatus) - Implemented LevelTransformer interface and did a first test with a flip level transformer - Removed explicit LevelEndSequence attribute (can be done by placing aprorpiate SequenceTrigger objects) Index: player.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/player.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- player.h 19 Dec 2004 13:34:12 -0000 1.2 +++ player.h 25 Mar 2005 20:39:55 -0000 1.3 @@ -20,14 +20,14 @@ #define SUPERTUX_PLAYER_H #include <vector> -#include "SDL.h" +#include <SDL.h> #include "timer.h" +#include "direction.h" #include "video/surface.h" #include "special/moving_object.h" #include "special/sprite.h" #include "math/physic.h" -#include "defines.h" using namespace SuperTux; @@ -61,28 +61,33 @@ extern PlayerKeymap keymap; -struct player_input_type +/** Contains a field of booleans that indicate wheter a button is pressed or + * released. The old_ fields contain the state of the button at the previous + * frame. + */ +struct PlayerInputType { - int right; - int left; - int up; - int old_up; - int down; - int fire; - int old_fire; - int activate; - int jump; - int old_jump; -}; +public: + PlayerInputType(); + void reset(); -void player_input_init(player_input_type* pplayer_input); + bool left; + bool right; + bool up; + bool old_up; + bool down; + bool fire; + bool old_fire; + bool activate; + bool jump; + bool old_jump; +}; class Camera; class PlayerStatus; extern Surface* tux_life; - #define GROWING_TIME 1.0 #define GROWING_FRAMES 7 extern Surface* growingtux_left[GROWING_FRAMES]; @@ -124,12 +129,15 @@ enum Power { NONE_POWER, FIRE_POWER, ICE_POWER }; enum FallMode { ON_GROUND, JUMPING, TRAMPOLINE_JUMP, FALLING }; - player_input_type input; + PlayerInputType input; int got_power; int size; bool duck; bool dead; - DyingType dying; + +private: + bool dying; +public: Direction dir; Direction old_dir; @@ -170,7 +178,7 @@ Player(); virtual ~Player(); - int key_event(SDLKey key, int state); + bool key_event(SDLKey key, bool state); void level_begin(); void handle_input(); @@ -183,7 +191,11 @@ void make_invincible(); bool is_invincible() const { - return invincible_timer.started(); + return invincible_timer.started(); + } + bool is_dying() const + { + return dying; } void kill(HurtMode mode); Index: coin.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/coin.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- coin.cpp 20 Dec 2004 21:24:27 -0000 1.5 +++ coin.cpp 25 Mar 2005 20:39:55 -0000 1.6 @@ -6,7 +6,7 @@ #include "special/sprite_manager.h" #include "player.h" #include "sector.h" -#include "scene.h" +#include "player_status.h" #include "gameobjs.h" #include "statistics.h" #include "object_factory.h" Index: specialriser.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/specialriser.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- specialriser.cpp 20 Nov 2004 22:14:40 -0000 1.1 +++ specialriser.cpp 25 Mar 2005 20:39:55 -0000 1.2 @@ -2,7 +2,6 @@ #include <math.h> #include "specialriser.h" -#include "defines.h" #include "resources.h" #include "camera.h" #include "sector.h" Index: growup.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/growup.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- growup.cpp 24 Nov 2004 14:10:27 -0000 1.2 +++ growup.cpp 25 Mar 2005 20:39:55 -0000 1.3 @@ -2,7 +2,6 @@ #include <math.h> #include "growup.h" -#include "defines.h" #include "resources.h" #include "camera.h" #include "sector.h" Index: tilemap.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/tilemap.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- tilemap.cpp 20 Dec 2004 21:24:28 -0000 1.4 +++ tilemap.cpp 25 Mar 2005 20:39:55 -0000 1.5 @@ -37,7 +37,7 @@ TileMap::TileMap() : solid(false), speed(1), width(0), height(0), layer(LAYER_TILES), - vertical_flip(false) + drawing_effect(0) { tilemanager = tile_manager; @@ -47,7 +47,7 @@ TileMap::TileMap(const lisp::Lisp& reader) : solid(false), speed(1), width(0), height(0), layer(LAYER_TILES), - vertical_flip(false) + drawing_effect(0) { tilemanager = tile_manager; @@ -87,7 +87,7 @@ TileMap::TileMap(int layer_, bool solid_, size_t width_, size_t height_) : solid(solid_), speed(1), width(0), height(0), layer(layer_), - vertical_flip(false) + drawing_effect(0) { tilemanager = tile_manager; @@ -136,8 +136,8 @@ { context.push_transform(); - if(vertical_flip) - context.set_drawing_effect(VERTICAL_FLIP); + if(drawing_effect != 0) + context.set_drawing_effect(drawing_effect); float trans_x = roundf(context.get_translation().x); float trans_y = roundf(context.get_translation().y); context.set_translation(Vector(trans_x * speed, trans_y * speed)); @@ -234,19 +234,6 @@ width = new_width; } -void -TileMap::do_vertical_flip() -{ - // remap tiles vertically flipped - for(int y = 0; y < height / 2; ++y) { - for(int x = 0; x < width; ++x) { - std::swap(tiles[y*width + x], tiles[(((height-1)*width) - (y*width)) + x]); - } - } - - vertical_flip = true; -} - const Tile* TileMap::get_tile(int x, int y) const { Index: flower.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/flower.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- flower.cpp 23 Nov 2004 16:47:26 -0000 1.2 +++ flower.cpp 25 Mar 2005 20:39:55 -0000 1.3 @@ -2,7 +2,6 @@ #include <math.h> #include "flower.h" -#include "defines.h" #include "resources.h" #include "camera.h" #include "sector.h" Index: block.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/block.cpp,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- block.cpp 20 Dec 2004 21:24:27 -0000 1.8 +++ block.cpp 25 Mar 2005 20:39:55 -0000 1.9 @@ -13,6 +13,7 @@ #include "flower.h" #include "oneup.h" #include "star.h" +#include "player_status.h" #include "badguy/badguy.h" #include "coin.h" #include "object_factory.h" @@ -25,7 +26,7 @@ : sprite(newsprite), bouncing(false), bounce_dir(0), bounce_offset(0) { bbox.set_pos(pos); - bbox.set_size(32, 32); + bbox.set_size(32, 32.1); flags |= FLAG_SOLID; original_y = pos.y; } @@ -88,6 +89,7 @@ void Block::start_bounce() { + original_y = bbox.p1.y; bouncing = true; bounce_dir = -BOUNCY_BRICK_SPEED; bounce_offset = 0; Index: gameobjs.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/gameobjs.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- gameobjs.h 28 Nov 2004 14:56:51 -0000 1.2 +++ gameobjs.h 25 Mar 2005 20:39:55 -0000 1.3 @@ -23,7 +23,6 @@ #include "video/surface.h" #include "timer.h" -#include "scene.h" #include "math/physic.h" #include "special/game_object.h" #include "special/moving_object.h" Index: tilemap.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/tilemap.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- tilemap.h 28 Nov 2004 14:56:52 -0000 1.2 +++ tilemap.h 25 Mar 2005 20:39:56 -0000 1.3 @@ -61,10 +61,6 @@ */ void resize(int newwidth, int newheight); - /** Flip the all tile map vertically. The purpose of this is to let - player to play the same level in a different way :) */ - void do_vertical_flip(); - size_t get_width() const { return width; } @@ -86,6 +82,16 @@ void change_at(const Vector& pos, uint32_t newtile); + TileManager* get_tilemanager() const + { + return tilemanager; + } + + void set_drawing_effect(int effect) + { + drawing_effect = effect; + } + private: std::vector<uint32_t> tiles; @@ -96,7 +102,7 @@ int width, height; int layer; - bool vertical_flip; + int drawing_effect; }; #endif /*SUPERTUX_TILEMAP_H*/ Index: oneup.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/oneup.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- oneup.cpp 29 Nov 2004 16:03:33 -0000 1.3 +++ oneup.cpp 25 Mar 2005 20:39:55 -0000 1.4 @@ -3,7 +3,7 @@ #include "oneup.h" #include "resources.h" #include "player.h" -#include "scene.h" +#include "player_status.h" #include "sector.h" #include "special/sprite_manager.h" #include "video/drawing_context.h" Index: camera.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/camera.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- camera.h 28 Nov 2004 14:56:51 -0000 1.2 +++ camera.h 25 Mar 2005 20:39:55 -0000 1.3 @@ -23,7 +23,6 @@ #include <vector> #include <cassert> -#include "defines.h" #include "math/vector.h" #include "special/game_object.h" #include "video/drawing_context.h" Index: player.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/player.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- player.cpp 19 Dec 2004 13:34:12 -0000 1.3 +++ player.cpp 25 Mar 2005 20:39:55 -0000 1.4 @@ -27,9 +27,8 @@ #include "app/gettext.h" #include "special/sprite_manager.h" #include "player.h" -#include "defines.h" -#include "scene.h" #include "tile.h" +#include "player_status.h" #include "special/sprite.h" #include "sector.h" #include "resources.h" @@ -79,18 +78,24 @@ keymap.jump = SDLK_SPACE; } -void player_input_init(player_input_type* pplayer_input) +PlayerInputType::PlayerInputType() { - pplayer_input->up = UP; - pplayer_input->old_up = UP; - pplayer_input->down = UP; - pplayer_input->fire = UP; - pplayer_input->left = UP; - pplayer_input->old_fire = UP; - pplayer_input->right = UP; - pplayer_input->jump = UP; - pplayer_input->old_jump = UP; - pplayer_input->activate = UP; + reset(); +} + +void +PlayerInputType::reset() +{ + up = false; + old_up = false; + down = false; + fire = false; + old_fire = false; + left = false; + right = false; + jump = false; + old_jump = false; + activate = false; } void @@ -149,7 +154,7 @@ duck = false; dead = false; - dying = DYING_NOT; + dying = false; last_ground_y = 0; fall_mode = ON_GROUND; jumping = false; @@ -171,13 +176,12 @@ on_ground_flag = false; grabbed_object = 0; - player_input_init(&input); - + input.reset(); physic.reset(); } -int -Player::key_event(SDLKey key, int state) +bool +Player::key_event(SDLKey key, bool state) { idle_timer.start(IDLE_TIME, true); @@ -193,8 +197,8 @@ } else if(key == keymap.up) { - if(state == UP) - input.old_up = UP; + if(state == false) + input.old_up = false; input.up = state; /* Up key also opens activates stuff */ input.activate = state; @@ -207,16 +211,16 @@ } else if(key == keymap.power) { - if (state == UP) - input.old_fire = UP; + if(state == false) + input.old_fire = false; input.fire = state; return true; } else if(key == keymap.jump) { - if (state == UP) - input.old_jump = UP; + if(state == false) + input.old_jump = false; input.jump = state; return true; } @@ -230,9 +234,9 @@ move(Vector(100, 170)); duck = false; - dying = DYING_NOT; + dying = false; - player_input_init(&input); + input.reset(); on_ground_flag = false; @@ -253,11 +257,11 @@ return; } - if(input.fire == UP) + if(input.fire == false) grabbed_object = 0; - if(dying == DYING_NOT) + if(!dying) handle_input(); movement = physic.get_movement(elapsed_time); @@ -296,36 +300,38 @@ float ay = physic.get_acceleration_y(); float dirsign = 0; - if(input.left == DOWN && input.right == UP && (!duck || physic.get_velocity_y() != 0)) { + if(!duck || physic.get_velocity_y() != 0) { + if(input.left && !input.right) { old_dir = dir; dir = LEFT; dirsign = -1; - } else if(input.left == UP && input.right == DOWN && (!duck || physic.get_velocity_y() != 0)) { + } else if(!input.left && input.right) { old_dir = dir; dir = RIGHT; dirsign = 1; + } } - if (input.fire == UP) { - ax = dirsign * WALK_ACCELERATION_X; - // limit speed - if(vx >= MAX_WALK_XM && dirsign > 0) { - vx = MAX_WALK_XM; - ax = 0; - } else if(vx <= -MAX_WALK_XM && dirsign < 0) { - vx = -MAX_WALK_XM; - ax = 0; - } + if (!input.fire) { + ax = dirsign * WALK_ACCELERATION_X; + // limit speed + if(vx >= MAX_WALK_XM && dirsign > 0) { + vx = MAX_WALK_XM; + ax = 0; + } else if(vx <= -MAX_WALK_XM && dirsign < 0) { + vx = -MAX_WALK_XM; + ax = 0; + } } else { - ax = dirsign * RUN_ACCELERATION_X; - // limit speed - if(vx >= MAX_RUN_XM && dirsign > 0) { - vx = MAX_RUN_XM; - ax = 0; - } else if(vx <= -MAX_RUN_XM && dirsign < 0) { - vx = -MAX_RUN_XM; - ax = 0; - } + ax = dirsign * RUN_ACCELERATION_X; + // limit speed + if(vx >= MAX_RUN_XM && dirsign > 0) { + vx = MAX_RUN_XM; + ax = 0; + } else if(vx <= -MAX_RUN_XM && dirsign < 0) { + vx = -MAX_RUN_XM; + ax = 0; + } } // we can reach WALK_SPEED without any acceleration @@ -419,7 +425,7 @@ } // Press jump key - if(input.jump == DOWN && can_jump && on_ground()) + if(input.jump && can_jump && on_ground()) { if(duck) { // only jump a little bit when in duck mode { physic.set_velocity_y(300); @@ -443,7 +449,7 @@ SoundManager::get()->play_sound(IDToSound(SND_BIGJUMP)); } // Let go of jump key - else if(input.jump == UP) + else if(!input.jump) { if (!flapping && !duck && !falling_from_flap && !on_ground()) { @@ -461,8 +467,7 @@ { // Flapping, Ricardo's version // similar to SM3 Fox - if(input.jump == DOWN && input.old_jump == UP && can_flap && - flaps_nb < 3) + if(input.jump && !input.old_jump && can_flap && flaps_nb < 3) { physic.set_velocity_y(350); physic.set_velocity_x(physic.get_velocity_x() * 35); @@ -472,7 +477,7 @@ else if(flapping_mode == MAREK_FLAP) { // Flapping, Marek's version - if (input.jump == DOWN && can_flap) + if (input.jump && can_flap) { if (!flapping_timer.started()) { @@ -504,7 +509,7 @@ else if(flapping_mode == RYAN_FLAP) { // Flapping, Ryan's version - if (input.jump == DOWN && can_flap) + if (input.jump && can_flap) { if (!flapping_timer.started()) { @@ -549,13 +554,13 @@ #if 0 /* In case the player has pressed Down while in a certain range of air, enable butt jump action */ - if (input.down == DOWN && !butt_jump && !duck) + if (input.down && !butt_jump && !duck) if(tiles_on_air(TILES_FOR_BUTTJUMP) && jumping) butt_jump = true; #endif /* When Down is not held anymore, disable butt jump */ - if(butt_jump && input.down == UP) + if(butt_jump && !input.down) butt_jump = false; // Do butt jump @@ -617,13 +622,14 @@ get_pos().y + bbox.get_height() + 64)) && jumping == false && can_jump == false - && input.jump == DOWN - && input.old_jump == UP) + && input.jump && !input.old_jump) { can_jump = true; } #endif + // FIXME: why the heck is this here and not somewhere where the keys are + // checked?!? input.old_jump = input.jump; } @@ -634,30 +640,31 @@ handle_horizontal_input(); /* Jump/jumping? */ - if (on_ground() && input.jump == UP) + if (on_ground() && !input.jump) can_jump = true; handle_vertical_input(); /* Shoot! */ - if (input.fire == DOWN && input.old_fire == UP && got_power != NONE_POWER) { + if (input.fire && !input.old_fire && got_power != NONE_POWER) { if(Sector::current()->add_bullet( // get_pos() + Vector(0, bbox.get_height()/2), get_pos() + ((dir == LEFT)? Vector(0, bbox.get_height()/2) : Vector(32, bbox.get_height()/2)), physic.get_velocity_x(), dir)) shooting_timer.start(SHOOTING_TIME); - input.old_fire = DOWN; + // FIXME: why the heck is this here + input.old_fire = false; } /* Duck! */ - if (input.down == DOWN && size == BIG && !duck + if (input.down && size == BIG && !duck && physic.get_velocity_y() == 0 && on_ground()) { duck = true; bbox.move(Vector(0, 32)); bbox.set_height(31.8); } - else if(input.down == UP && size == BIG && duck) + else if(!input.down && size == BIG && duck) { // try if we can really unduck bbox.move(Vector(0, -32)); @@ -794,8 +801,8 @@ } /* Draw Tux */ - if (dying == DYING_SQUISHED) { - smalltux_gameover->draw(context, get_pos(), LAYER_FOREGROUNDTILES+1); + if(dying) { + smalltux_gameover->draw(context, get_pos(), layer); } else if(growing_timer.get_timeleft() > 0) { if(size == SMALL) { @@ -848,7 +855,7 @@ Player::collision(GameObject& other, const CollisionHit& hit) { Portable* portable = dynamic_cast<Portable*> (&other); - if(portable && grabbed_object == 0 && input.fire == DOWN + if(portable && grabbed_object == 0 && input.fire && fabsf(hit.normal.x) > .9) { grabbed_object = portable; return CONTINUE; @@ -872,7 +879,7 @@ TriggerBase* trigger = dynamic_cast<TriggerBase*> (&other); if(trigger) { - if(input.up == DOWN && input.old_up == UP) + if(input.up && !input.old_up) trigger->event(*this, TriggerBase::EVENT_ACTIVATE); } @@ -923,7 +930,7 @@ physic.set_acceleration(0, 0); physic.set_velocity(0, 700); --player_status.lives; - dying = DYING_SQUISHED; + dying = true; dying_timer.start(3.0); flags |= FLAG_NO_COLLDET; } Index: star.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/star.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- star.cpp 20 Nov 2004 22:14:40 -0000 1.1 +++ star.cpp 25 Mar 2005 20:39:55 -0000 1.2 @@ -3,7 +3,7 @@ #include "star.h" #include "resources.h" #include "player.h" -#include "scene.h" +#include "player_status.h" #include "special/sprite_manager.h" #include "video/drawing_context.h" Index: camera.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/camera.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- camera.cpp 20 Dec 2004 21:24:27 -0000 1.4 +++ camera.cpp 25 Mar 2005 20:39:55 -0000 1.5 @@ -178,7 +178,7 @@ /****** Vertical Scrolling part ******/ bool do_y_scrolling = true; - if(player->dying || sector->solids->get_height() == 19) + if(player->is_dying() || sector->solids->get_height() == 19) do_y_scrolling = false; if(do_y_scrolling) { @@ -260,7 +260,7 @@ { Player* player = sector->player; - if(player->dying) + if(player->is_dying()) return; if(auto_t - elapsed_time >= 0) { Index: bullet.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/bullet.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- bullet.cpp 20 Nov 2004 22:14:40 -0000 1.1 +++ bullet.cpp 25 Mar 2005 20:39:55 -0000 1.2 @@ -2,7 +2,6 @@ #include <math.h> #include "bullet.h" -#include "defines.h" #include "resources.h" #include "camera.h" #include "sector.h" Index: background.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/background.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- background.h 28 Nov 2004 14:56:51 -0000 1.2 +++ background.h 25 Mar 2005 20:39:55 -0000 1.3 @@ -25,6 +25,8 @@ #include "special/game_object.h" #include "serializable.h" +using namespace SuperTux; + class DisplayManager; namespace lisp { |
From: Matze B. <mat...@us...> - 2005-03-25 20:40:09
|
Update of /cvsroot/super-tux/supertux/src/badguy In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9911/src/badguy Modified Files: badguy.h mrtree.cpp Log Message: Had a bit of time today and worked on supertux: - Commited some old changes I had lying around here (improved mrtree images? and improvement to the collision grid which still isn't enabled by default) - Did a bit more cleanups (eleminated defines.h and renamed scene.* to player_status.* as that is waht ti really contained) - Cleaned up PlayerStatus code a bit (refactored loading/saving out of worldmap into PlayerStatus) - Implemented LevelTransformer interface and did a first test with a flip level transformer - Removed explicit LevelEndSequence attribute (can be done by placing aprorpiate SequenceTrigger objects) Index: badguy.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/badguy/badguy.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- badguy.h 30 Dec 2004 11:29:52 -0000 1.6 +++ badguy.h 25 Mar 2005 20:39:54 -0000 1.7 @@ -11,6 +11,7 @@ #include "serializable.h" #include "resources.h" #include "sector.h" +#include "direction.h" #include "object_factory.h" #include "lisp/parser.h" #include "lisp/lisp.h" @@ -35,6 +36,15 @@ virtual void kill_fall(); + Vector get_start_position() const + { + return start_position; + } + void set_start_position(const Vector& vec) + { + start_position = vec; + } + protected: enum State { STATE_INIT, Index: mrtree.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/badguy/mrtree.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- mrtree.cpp 30 Dec 2004 14:39:08 -0000 1.1 +++ mrtree.cpp 25 Mar 2005 20:39:54 -0000 1.2 @@ -3,6 +3,7 @@ #include "mrtree.h" static const float WALKSPEED = 50; +static const float WALKSPEED_SMALL = 30; MrTree::MrTree(const lisp::Lisp& reader) : mystate(STATE_BIG) @@ -27,11 +28,13 @@ void MrTree::activate() { - physic.set_velocity_x(dir == LEFT ? -WALKSPEED : WALKSPEED); - if(mystate == STATE_BIG) + if(mystate == STATE_BIG) { + physic.set_velocity_x(dir == LEFT ? -WALKSPEED : WALKSPEED); sprite->set_action(dir == LEFT ? "left" : "right"); - else + } else { + physic.set_velocity_x(dir == LEFT ? -WALKSPEED_SMALL : WALKSPEED_SMALL); sprite->set_action(dir == LEFT ? "small-left" : "small-right"); + } } bool |
From: Marek M. <wa...@us...> - 2005-03-16 11:35:31
|
Update of /cvsroot/super-tux/supertux/src/object In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18507/src/object Modified Files: particlesystem.cpp particlesystem.h Log Message: added rain particle system, check it out in verticalforest.stl Index: particlesystem.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/particlesystem.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- particlesystem.cpp 28 Nov 2004 14:56:51 -0000 1.2 +++ particlesystem.cpp 16 Mar 2005 11:35:16 -0000 1.3 @@ -130,6 +130,64 @@ } } +RainParticleSystem::RainParticleSystem() +{ + rainimages[0] = new Surface(datadir+"/images/shared/rain0.png", true); + rainimages[1] = new Surface(datadir+"/images/shared/rain1.png", true); + + virtual_width = screen->w * 2; + + // create some random snowflakes + size_t raindropcount = size_t(virtual_width/8.0); + for(size_t i=0; i<raindropcount; ++i) { + RainParticle* particle = new RainParticle; + particle->pos.x = rand() % int(virtual_width); + particle->pos.y = rand() % screen->h; + int rainsize = rand() % 2; + particle->texture = rainimages[rainsize]; + do { + particle->speed = (rainsize+1)*45 + (float(rand()%10)*.4); + } while(particle->speed < 1); + particle->speed *= 10; // gravity + + particles.push_back(particle); + } +} + +void +RainParticleSystem::parse(const lisp::Lisp& reader) +{ + reader.get("layer", layer); +} + +void +RainParticleSystem::write(lisp::Writer& writer) +{ + writer.start_list("particles-rain"); + writer.write_int("layer", layer); + writer.end_list("particles-rain"); +} + +RainParticleSystem::~RainParticleSystem() +{ + for(int i=0;i<2;++i) + delete rainimages[i]; +} + +void RainParticleSystem::action(float elapsed_time) +{ + std::vector<Particle*>::iterator i; + for(i = particles.begin(); i != particles.end(); ++i) { + RainParticle* particle = (RainParticle*) *i; + particle->pos.y += particle->speed * elapsed_time; + particle->pos.x -= particle->speed * elapsed_time; + if(particle->pos.y > screen->h) { + particle->pos.y = fmodf(particle->pos.y , virtual_height); + particle->pos.x = rand() % int(virtual_width); + } + } +} + CloudParticleSystem::CloudParticleSystem() { cloudimage = new Surface(datadir + "/images/shared/cloud.png", true); Index: particlesystem.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/object/particlesystem.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- particlesystem.h 28 Nov 2004 14:56:51 -0000 1.2 +++ particlesystem.h 16 Mar 2005 11:35:16 -0000 1.3 @@ -98,6 +98,30 @@ Surface* snowimages[3]; }; +class RainParticleSystem : public ParticleSystem, public Serializable +{ +public: + RainParticleSystem(); + virtual ~RainParticleSystem(); + + void parse(const lisp::Lisp& lisp); + void write(lisp::Writer& writer); + + virtual void action(float elapsed_time); + + std::string type() const + { return "RainParticleSystem"; } + +private: + class RainParticle : public Particle + { + public: + float speed; + }; + + Surface* rainimages[2]; +}; + class CloudParticleSystem : public ParticleSystem, public Serializable { public: |
From: Marek M. <wa...@us...> - 2005-03-16 11:35:31
|
Update of /cvsroot/super-tux/supertux/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18507/src Modified Files: sector.cpp Log Message: added rain particle system, check it out in verticalforest.stl Index: sector.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/sector.cpp,v retrieving revision 1.64 retrieving revision 1.65 diff -u -d -r1.64 -r1.65 --- sector.cpp 14 Mar 2005 00:48:38 -0000 1.64 +++ sector.cpp 16 Mar 2005 11:35:16 -0000 1.65 @@ -100,6 +100,10 @@ SnowParticleSystem* partsys = new SnowParticleSystem(); partsys->parse(reader); return partsys; + } else if(name == "particles-rain") { + RainParticleSystem* partsys = new RainParticleSystem(); + partsys->parse(reader); + return partsys; } else if(name == "particles-clouds") { CloudParticleSystem* partsys = new CloudParticleSystem(); partsys->parse(reader); @@ -206,6 +210,8 @@ add_object(new CloudParticleSystem()); else if(particlesystem == "snow") add_object(new SnowParticleSystem()); + else if(particlesystem == "rain") + add_object(new RainParticleSystem()); Vector startpos(100, 170); reader.get("start_pos_x", startpos.x); |
From: Marek M. <wa...@us...> - 2005-03-16 11:35:28
|
Update of /cvsroot/super-tux/supertux/data/images/shared In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18507/data/images/shared Added Files: rain0.png rain1.png Log Message: added rain particle system, check it out in verticalforest.stl --- NEW FILE: rain0.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: rain1.png --- (This appears to be a binary file; contents omitted.) |
From: Marek M. <wa...@us...> - 2005-03-16 11:35:28
|
Update of /cvsroot/super-tux/supertux/data/levels/world1 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18507/data/levels/world1 Modified Files: level19.stl Log Message: added rain particle system, check it out in verticalforest.stl Index: level19.stl =================================================================== RCS file: /cvsroot/super-tux/supertux/data/levels/world1/level19.stl,v retrieving revision 1.19 retrieving revision 1.20 diff -u -d -r1.19 -r1.20 --- level19.stl 19 Dec 2004 13:34:11 -0000 1.19 +++ level19.stl 16 Mar 2005 11:35:15 -0000 1.20 @@ -8,7 +8,7 @@ (start_pos_x 100) (start_pos_y 170) (background "cave2.jpg") - (music "cave_remastered.ogg") + (music "cave.mod") (bkgd_red_top 150) (bkgd_green_top 150) (bkgd_blue_top 150) |
From: Marek M. <wa...@us...> - 2005-03-16 11:35:27
|
Update of /cvsroot/super-tux/supertux/data/levels/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18507/data/levels/test Modified Files: verticalforest.stl Log Message: added rain particle system, check it out in verticalforest.stl Index: verticalforest.stl =================================================================== RCS file: /cvsroot/super-tux/supertux/data/levels/test/verticalforest.stl,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- verticalforest.stl 25 Nov 2004 18:06:08 -0000 1.1 +++ verticalforest.stl 16 Mar 2005 11:35:14 -0000 1.2 @@ -17,7 +17,7 @@ (bkgd_blue_bottom 255) (time 500) (gravity 10) - (particle_system "") + (particle_system "rain") (theme "antarctica") (interactive-tm 0 0 0 0 0 212 0 0 0 0 0 0 0 0 0 0 133 0 0 0 0 0 0 0 0 0 0 212 212 212 |
From: Marek M. <wa...@us...> - 2005-03-14 00:49:19
|
Update of /cvsroot/super-tux/supertux/lib/audio In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18658/lib/audio Modified Files: sound_manager.h Log Message: Made implementation of credits song less stupid, thanks to Matze's suggestions :-) Index: sound_manager.h =================================================================== RCS file: /cvsroot/super-tux/supertux/lib/audio/sound_manager.h,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- sound_manager.h 13 Mar 2005 23:44:58 -0000 1.9 +++ sound_manager.h 14 Mar 2005 00:48:27 -0000 1.10 @@ -38,8 +38,7 @@ NO_MUSIC, LEVEL_MUSIC, HURRYUP_MUSIC, - HERRING_MUSIC, - CREDITS_MUSIC + HERRING_MUSIC }; /// Sound manager |
From: Marek M. <wa...@us...> - 2005-03-14 00:48:53
|
Update of /cvsroot/super-tux/supertux/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18658/src Modified Files: resources.cpp resources.h sector.cpp title.cpp Log Message: Made implementation of credits song less stupid, thanks to Matze's suggestions :-) Index: resources.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/resources.h,v retrieving revision 1.21 retrieving revision 1.22 diff -u -d -r1.21 -r1.22 --- resources.h 13 Mar 2005 23:45:01 -0000 1.21 +++ resources.h 14 Mar 2005 00:48:38 -0000 1.22 @@ -66,7 +66,6 @@ extern MusicRef herring_song; extern MusicRef level_end_song; -extern MusicRef credits_song; extern SpriteManager* sprite_manager; extern TileManager* tile_manager; Index: title.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/title.cpp,v retrieving revision 1.138 retrieving revision 1.139 diff -u -d -r1.138 -r1.139 --- title.cpp 13 Mar 2005 23:45:02 -0000 1.138 +++ title.cpp 14 Mar 2005 00:48:39 -0000 1.139 @@ -286,6 +286,7 @@ { walking = true; LevelEditor* leveleditor; + MusicRef credits_music; Ticks::pause_init(); @@ -385,10 +386,10 @@ break; case MNID_CREDITS: fadeout(500); - titlesession->get_current_sector()->play_music(CREDITS_MUSIC); + credits_music = SoundManager::get()->load_music(datadir + "/music/credits.ogg"); + SoundManager::get()->play_music(credits_music); display_text_file("credits.txt", SCROLL_SPEED_CREDITS, white_big_text , white_text, white_small_text, blue_text ); fadeout(500); - //titlesession->get_current_sector()->play_music(LEVEL_MUSIC); //not needed Menu::set_current(main_menu); break; case MNID_QUITMAINMENU: Index: sector.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/sector.cpp,v retrieving revision 1.63 retrieving revision 1.64 diff -u -d -r1.63 -r1.64 --- sector.cpp 13 Mar 2005 23:45:01 -0000 1.63 +++ sector.cpp 14 Mar 2005 00:48:38 -0000 1.64 @@ -804,9 +804,6 @@ case HERRING_MUSIC: SoundManager::get()->play_music(herring_song); break; - case CREDITS_MUSIC: - SoundManager::get()->play_music(credits_song); - break; default: SoundManager::get()->halt_music(); break; Index: resources.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/resources.cpp,v retrieving revision 1.64 retrieving revision 1.65 diff -u -d -r1.64 -r1.65 --- resources.cpp 13 Mar 2005 23:45:00 -0000 1.64 +++ resources.cpp 14 Mar 2005 00:48:38 -0000 1.65 @@ -164,8 +164,6 @@ ()->load_music(datadir + "/music/salcon.mod"); level_end_song = SoundManager::get ()->load_music(datadir + "/music/leveldone.mod"); - credits_song = SoundManager::get - ()->load_music(datadir + "/music/credits.ogg"); } /* Free shared data: */ |
From: Marek M. <wa...@us...> - 2005-03-13 23:45:45
|
Update of /cvsroot/super-tux/supertux/lib/audio In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1379/lib/audio Modified Files: sound_manager.h Log Message: credits music plays on credits screen now Index: sound_manager.h =================================================================== RCS file: /cvsroot/super-tux/supertux/lib/audio/sound_manager.h,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- sound_manager.h 24 Nov 2004 14:10:20 -0000 1.8 +++ sound_manager.h 13 Mar 2005 23:44:58 -0000 1.9 @@ -38,7 +38,8 @@ NO_MUSIC, LEVEL_MUSIC, HURRYUP_MUSIC, - HERRING_MUSIC + HERRING_MUSIC, + CREDITS_MUSIC }; /// Sound manager |
From: Marek M. <wa...@us...> - 2005-03-13 23:45:16
|
Update of /cvsroot/super-tux/supertux/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1379/src Modified Files: resources.cpp resources.h sector.cpp title.cpp title.h Log Message: credits music plays on credits screen now Index: resources.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/resources.h,v retrieving revision 1.20 retrieving revision 1.21 diff -u -d -r1.20 -r1.21 --- resources.h 19 Dec 2004 13:34:11 -0000 1.20 +++ resources.h 13 Mar 2005 23:45:01 -0000 1.21 @@ -66,6 +66,7 @@ extern MusicRef herring_song; extern MusicRef level_end_song; +extern MusicRef credits_song; extern SpriteManager* sprite_manager; extern TileManager* tile_manager; Index: title.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/title.cpp,v retrieving revision 1.137 retrieving revision 1.138 diff -u -d -r1.137 -r1.138 --- title.cpp 6 Dec 2004 17:47:40 -0000 1.137 +++ title.cpp 13 Mar 2005 23:45:02 -0000 1.138 @@ -385,8 +385,10 @@ break; case MNID_CREDITS: fadeout(500); + titlesession->get_current_sector()->play_music(CREDITS_MUSIC); display_text_file("credits.txt", SCROLL_SPEED_CREDITS, white_big_text , white_text, white_small_text, blue_text ); fadeout(500); + //titlesession->get_current_sector()->play_music(LEVEL_MUSIC); //not needed Menu::set_current(main_menu); break; case MNID_QUITMAINMENU: Index: resources.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/resources.cpp,v retrieving revision 1.63 retrieving revision 1.64 diff -u -d -r1.63 -r1.64 --- resources.cpp 20 Dec 2004 21:24:25 -0000 1.63 +++ resources.cpp 13 Mar 2005 23:45:00 -0000 1.64 @@ -43,6 +43,7 @@ MusicRef herring_song; MusicRef level_end_song; +MusicRef credits_song; SpriteManager* sprite_manager = 0; TileManager* tile_manager = 0; @@ -163,6 +164,8 @@ ()->load_music(datadir + "/music/salcon.mod"); level_end_song = SoundManager::get ()->load_music(datadir + "/music/leveldone.mod"); + credits_song = SoundManager::get + ()->load_music(datadir + "/music/credits.ogg"); } /* Free shared data: */ Index: sector.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/sector.cpp,v retrieving revision 1.62 retrieving revision 1.63 diff -u -d -r1.62 -r1.63 --- sector.cpp 20 Dec 2004 21:24:25 -0000 1.62 +++ sector.cpp 13 Mar 2005 23:45:01 -0000 1.63 @@ -804,6 +804,9 @@ case HERRING_MUSIC: SoundManager::get()->play_music(herring_song); break; + case CREDITS_MUSIC: + SoundManager::get()->play_music(credits_song); + break; default: SoundManager::get()->halt_music(); break; Index: title.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/title.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- title.h 20 Jul 2004 18:04:49 -0000 1.6 +++ title.h 13 Mar 2005 23:45:02 -0000 1.7 @@ -33,7 +33,7 @@ /* Scrolling text speed */ -#define SCROLL_SPEED_CREDITS 2.0 +#define SCROLL_SPEED_CREDITS 1.5 #define SCROLL_SPEED_MESSAGE 1.0 void title(void); |
From: Marek M. <wa...@us...> - 2005-03-13 22:39:49
|
Update of /cvsroot/super-tux/supertux/data/images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18074/data/images Modified Files: supertux.strf Added Files: SuperTux.xpm Removed Files: supertux.xpm Log Message: accidentally removed some images that were still used --- NEW FILE: SuperTux.xpm --- /* XPM */ static char * supertux_xpm[] = { "32 32 65 1", " c None", ". c #020400", "+ c #10120F", "@ c #1E1D02", "# c #1A1B19", "$ c #262827", "% c #333534", "& c #413517", "* c #3C342A", "= c #424341", "- c #514714", "; c #52492B", "> c #444A4F", ", c #3D4D60", "' c #51524F", ") c #5C5E5B", "! c #5A646F", "~ c #696648", "{ c #7A6A1D", "] c #55708B", "^ c #8E6635", "/ c #7D7232", "( c #70716E", "_ c #597E9E", ": c #978123", "< c #908234", "[ c #6D8297", "} c #A3783C", "| c #838481", "1 c #9C8E14", "2 c #9A9072", "3 c #BF8940", "4 c #939490", "5 c #A79D3A", "6 c #929799", "7 c #84A2BB", "8 c #72A6DC", "9 c #AC9B7E", "0 c #6BA7F2", "a c #BFA525", "b c #6DB1F1", "c c #B9A960", "d c #A7A7A1", "e c #8AB7E1", "f c #A1BBA6", "g c #88BBF1", "h c #DFB23E", "i c #9EB9CE", "j c #D3C30E", "k c #CEBE46", "l c #B3C396", "m c #DAC437", "n c #C2C985", "o c #C0C2BF", "p c #A2CBF4", "q c #ECCB2C", "r c #E5DA1D", "s c #CDCDB4", "t c #B7D4ED", "u c #D0D2CF", "v c #D3DAE1", "w c #C7E2F7", "x c #DFE1DD", "y c #EAECE9", "z c #FAFCF9", " ", " gg ", " gppg ", " eppeeg ", " e7[!,]_8 ", " ])'=%#..$, ", " [>)'=$+++.._ ", " 7!''=%#%|6!.,8 ", " p!>)>=$$>v|.+#78 ", " pi%=''=%#'u..&:knlf ", " pw7$=>=>%##'%:amqqqmmm ", " ptt]#%=%%$...+^3hhqhhhk ", " twt7%#%%$.#....*^}}9di7g ", " pwwt,#%=%$.......#*'ebbbb0 ", " twwt6$$>%$#......=|d67ggbgb0 ", " twww7,%===%#.....$4vzzxegbbbb0 ", " pwww[$=>==$#..+#=|xzzzzvebbbb0 ", " twv>%='=%$...$'4uyzzzzzi8bb0 ", " pt,%'>=%#...#>|vyzzzzziei8 ", " ps~%''%$######$(yzzzzzunrk ", " ch/''=$###$$$##6yzzzzsmj1 ", " cam^'%%##.#)!)=6vyzzzdk: ", " <ah/=%$#..(oooovxyyx2< ", " ;/am^=%$..!douvouvvu2 ", " .#;<am<%#..$6vuuvuuu2 ", " .+$-:qr{-@..$(ddd4d4 ", " ..#-:ajjm1...##$*; ", " {{:11<[]]'&-{ ", " gppppg ", " gppg ", " gg ", " "}; --- supertux.xpm DELETED --- Index: supertux.strf =================================================================== RCS file: /cvsroot/super-tux/supertux/data/images/supertux.strf,v retrieving revision 1.32 retrieving revision 1.33 diff -u -d -r1.32 -r1.33 --- supertux.strf 2 Jan 2005 19:00:42 -0000 1.32 +++ supertux.strf 13 Mar 2005 22:38:55 -0000 1.33 @@ -1086,28 +1086,7 @@ (x-offset 6) (y-offset 10) (mirror-action "iced-left"))) - - ; Wingling - (sprite (name "wingling") - (action - (name "left") - (x-offset 0) - (y-offset 0) - (images "shared/wingling-1.png"))) - - ; Walkingtree - (sprite (name "walkingtree") - (action - (name "left") - (x-offset 0) - (y-offset 0) - (images "shared/walkingtree-left-1.png")) - (action - (name "left-small") - (x-offset 0) - (y-offset 0) - (images "shared/walkingtree-left-small-1.png"))) - + ; Dispenser (sprite (name "dispenser") (action |