super-tux-devel Mailing List for Super Tux (Page 123)
Brought to you by:
wkendrick
You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(237) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(150) |
Feb
(100) |
Mar
(276) |
Apr
(355) |
May
(749) |
Jun
(302) |
Jul
(240) |
Aug
(463) |
Sep
(171) |
Oct
(148) |
Nov
(169) |
Dec
(74) |
2005 |
Jan
(77) |
Feb
(85) |
Mar
(90) |
Apr
(74) |
May
(49) |
Jun
(7) |
Jul
(7) |
Aug
(2) |
Sep
(2) |
Oct
(4) |
Nov
(6) |
Dec
(8) |
2006 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
(5) |
Jun
|
Jul
(1) |
Aug
(1) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
2007 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2009 |
Jan
(4) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Ricardo C. <ri...@ae...> - 2004-03-22 15:32:22
|
Good idea! I already thought about that, maybe we could use one of the=20 thousands of fonts scripts available for gimp. Anyway, the main menu background should be replaced. Ricardo Cruz Em Segunda, 22 de Mar=E7o de 2004 14:16, o Ingo Ruhnke escreveu: > SuperTux needs a logo, just the letters "SuperTux" in a nice font > could already be enough. Something more creative is of course welcome. > Logo doesn't need to be final, sketches are welcome to, since I might > need to cleanup or adopt the style a bit anyway. =2D-=20 There's nothing like a good dose of another woman to make a man appreciate his wife. -- Clare Booth Luce |
From: Ricardo C. <ri...@ae...> - 2004-03-22 15:32:17
|
Hey there, I've been a bit away from the development and it would be cool if patches would be posted here (developer's comment), in the mailing list. This happens in a lot of projects (ie. kde). Could this be enabled in sourceforge? Ricardo Cruz -- A book is the work of a mind, doing its work in the way that a mind deems best. That's dangerous. Is the work of some mere individual mind likely to serve the aims of collectively accepted compromises, which are known in the schools as 'standards'? Any mind that would audaciously put itself forth to work all alone is surely a bad example for the students, and probably, if not downright antisocial, at least a little off-center, self-indulgent, elitist. ... It's just good pedagogy, therefore, to stay away from such stuff, and use instead, if film-strips and rap-sessions must be supplemented, 'texts,' selected, or prepared, or adapted, by real professionals. Those texts are called 'reading material.' They are the academic equivalent of the 'listening material' that fills waiting-rooms, and the 'eating material' that you can buy in thousands of convenient eating resource centers along the roads. -- The Underground Grammarian |
From: Ingo R. <gr...@gm...> - 2004-03-22 14:17:04
|
SuperTux needs a logo, just the letters "SuperTux" in a nice font could already be enough. Something more creative is of course welcome. Logo doesn't need to be final, sketches are welcome to, since I might need to cleanup or adopt the style a bit anyway. -- WWW: http://pingus.seul.org/~grumbel/ JabberID: gr...@ja... ICQ: 59461927 |
From: Ingo R. <gr...@gm...> - 2004-03-22 10:44:16
|
Matze Braun <ma...@br...> writes: > I just did some fixes/changes to make supertux compiling on mingw32/msys. > The patch is attached to this mail. Changes in the patch: Patch commited, thank you very much :) -- WWW: http://pingus.seul.org/~grumbel/ JabberID: gr...@ja... ICQ: 59461927 |
From: Matze B. <ma...@br...> - 2004-03-22 02:17:37
|
Hi, I just did some fixes/changes to make supertux compiling on mingw32/msys. The patch is attached to this mail. Changes in the patch: -fixed configure script -added mk/autoconf directory which should contain all needed .m4 files -added m4 macros for sdl, gl and pthreads(used by the gl macro) -include dirent.h to make opendir/readdir working on mingw -fixed some invocations of mkdir -set DATA_PREFIX to ./data on win32 -removed the ability to compile with NOSOUND since it was broken and not very usefull IMO -remove strange #ifdef LINUXisms -removed several #include <pwd.h> since sine no getpw* functions are used and mingw doesn't have a pwd.h Greetings, Matze PS: answers please CC to me, since I'm still not subscribed to the list... |
From: Ingo R. <gr...@gm...> - 2004-03-21 15:56:52
|
With the new file formats and such I propose the following file suffixes for SuperTux files, so that we can get away from .dat and have something that people can easily configure in there file manager if they want to: .stlv - SuperTux Level .stgt - In-Game tiles .stwt - WorldMap tiles .stwm - SuperTux Worldmap CVS already contains .stl for the levels, but I think its better to change it now again, then to be stuck with it for a long long time. -- WWW: http://pingus.seul.org/~grumbel/ JabberID: gr...@ja... ICQ: 59461927 |
From: Ingo R. <gr...@gm...> - 2004-03-21 15:53:47
|
Ingo Ruhnke <gr...@gm...> writes: > Neither does me, I can fix this unless somebody else wants to do the > work. Fixed that issue, everybody is try to test if I missed something. -- WWW: http://pingus.seul.org/~grumbel/ JabberID: gr...@ja... ICQ: 59461927 |
From: Ingo R. <gr...@gm...> - 2004-03-21 14:48:18
|
Ricardo Cruz <ri...@ae...> writes: > That sounds really great! But when I try to run it, I get: > > [rick2@docelar supertux]$ supertux --worldmap > supertux: worldmap.cpp:128: void WorldMapNS::WorldMap::load_map(): Assertion > `in' failed. > Aborted > > What's the problem? 'File not found', most likly due to the lack of the worldmap being hooked up in the Makefile, thus not getting 'make installed'. Which brings up the topic of how we should handle errors. I think we should go for normal C++ exceptions, passing around such errors with return codes would be a major pain. At the moment my code uses mostly assert() since there currently isn't much usefull the worldmap can do if it can't find content. > I also don't like the fact that we have to do 'make install', in > order to run the game :( Neither does me, I can fix this unless somebody else wants to do the work. Changes for this would basically some startup code that finds the binary location (/proc/self/exe) and sets a 'datadir' variable pointing to it. In the game code I then need to replace DATA_PREFIX with datadir and make sure that everything gets strcat()'s or whatever properly, in the same run I can replace a bunch of char* with std::string. Current workaround by the way is: ./configure --prefix=$PWD -- WWW: http://pingus.seul.org/~grumbel/ JabberID: gr...@ja... ICQ: 59461927 |
From: Ricardo C. <ri...@ae...> - 2004-03-21 14:15:55
|
That sounds really great! But when I try to run it, I get: [rick2@docelar supertux]$ supertux --worldmap supertux: worldmap.cpp:128: void WorldMapNS::WorldMap::load_map(): Assertio= n=20 `in' failed. Aborted What's the problem? I also don't like the fact that we have to do 'make install', in order to = run=20 the game :( Ricardo Cruz Em S=E1bado, 20 de Mar=E7o de 2004 00:23, o Ingo Ruhnke escreveu: > Supertux CVS now features a worldmap, similar to MarioBros3, graphics > are currently just placeholders and starting levels, music and other > funky stuff isn't supported either, however the movement and loading > of tilemap and definitions files already works rather well. To enter > the worldmap mode, use the --worldmap switch: > > ./supertux --worldmap =2D-=20 There's got to be more to life than compile-and-go. |
From: Ingo R. <gr...@gm...> - 2004-03-20 19:54:32
|
Eduardo Hern=C3=A1ndez <cos...@ho...> writes: > You didn't got me. More clearly I meant. Level 1-3 is prolly going > to be iced based. But should level 4 be a cave level? Mostly I was > asking about if there is a general idea of which levels to make and > in which order to make em. Knowing that helps for designers coz > level 15 shouldn't be as easy as level 5. Since we have neither a huge amount of tiles, nor a huge amount of enemies ready I think we don't need any guidelines on what levels should be created and how they should look like. After all its all ice and snow, so we can pretty much swap them as we like without anybody noticing. Also pretty much every enemy fits into every tileset, so no need for a style guide there either at the moment. Sure for the next milestone we might need to decide what tileset to use and if we should reuse any stuff from the former milestones, but for now we can basically use everything that is available. --=20 WWW: http://pingus.seul.org/~grumbel/=20 JabberID: gr...@ja...=20 ICQ: 59461927 |
From: <cos...@ho...> - 2004-03-20 17:22:25
|
> > I forgot to say that I found two problems in the levels 2 and 3 of the >cvs: > > > > Level 2: maybe isn't really a problem but just the way the designer >wanted > > it to be, and well the thing is that if you enter the level as >supertux(big > > tux), hit the first block that will contain the coffee cup you can't get >it > > coz you are way too big to enter to the tiny place it is. If you are >normal > > tux there is no problem, but you can actually get the coffee if you hit >the > > box when you are supertux then get hit by an enemy and as normal tux you > > can enter and get the cafeine to have a mini cafeinated tux. The thing >is > > that you can't get the coffee if you don't get hit. > > > You can get it if you duck yourself (jump and press down). I didn't knew that but ducked moving Tux's animation should be changed then. >Holla Eduardo! ;) > >Em S=E1bado, 20 de Mar=E7o de 2004 02:08, o Eduardo Hern=C3=A1ndez >escreveu: > > Well it seems like you have a defined path of what you want to do, >however > > I don't think I would want to rewrite supertux in C++ if there is a >decent > > piece of game in the 0.1, so I'm not quitte sure I will feel like >helping > > there... > > > > In case you haven't noticed, we are already compiling it under g++, so it >= >is=20 >already ported ;) Nah, I hadn't noticed mainly becoz I don't check the compile process for any program unless there's something to fix ;) > > And actually it was version 0.0.5 that atracted me united to the lack of > > games in linux ;) > > > > Currently, there are thousands of linux games (gametome has a database of >= >an=20 >hundred games!), but not more than a hand of platform ones. Well yes, most of the games in linux are slow, puzzle, incomplete or just plain boring for my taste. That's what I'm talking about. > > I sent an email to the supertux website also, tought I dont know if the > > ones who manage the website are supertux developers too. If so I would >ha= >ve > > written it here. > > > The email on the page is the one of the mailing list, isn't it? Actually what I actually meant is that I filed somekind of form they have in the site. > > About the supertux design, I know there are supposed to be like 15 >levels > > for 0.1 but what are those levels are supposed to be like? I mean should > > all levels be ice? change gradually to rock, then ice then fire or > > something bizarre as that? > > > For the milestone1, we were hoping to have two tileset available: a >regular >ice and an ice cave one. You didn't got me. More clearly I meant. Level 1-3 is prolly going to be iced based. But should level 4 be a cave level? Mostly I was asking about if there is a general idea of which levels to make and in which order to make em. Knowing that helps for designers coz level 15 shouldn't be as easy as level 5. > > Same to tux control, should he skid on ice? and such. This is mainly for > > level designers, if I knew who they are I would have told to them >directly > > > Nothing like that is expected for the milestone1. Okay, maybe I'm just thinking too far ahead :p _________________________________________________________________ MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/ |
From: Ricardo C. <ri...@ae...> - 2004-03-20 02:45:54
|
Em S=E1bado, 20 de Mar=E7o de 2004 02:25, o Eduardo Hern=C3=A1ndez escreveu: > I should really stop remembering stuff after I send messages.. > > About the supertux design, I know there are supposed to be like 15 levels > for 0.1 but what are those levels are supposed to be like? I mean should > all levels be ice? change gradually to rock, then ice then fire or > something bizarre as that? > For the milestone1, we were hoping to have two tileset available: a regula= r=20 ice and an ice cave one. > Same to tux control, should he skid on ice? and such. This is mainly for > level designers, if I knew who they are I would have told to them directly > Nothing like that is expected for the milestone1. > :p > =2D-=20 =2E.. though his invention worked superbly -- his theory was a crock of sew= age from beginning to end. -- Vernor Vinge, "The Peace War" |
From: Ricardo C. <ri...@ae...> - 2004-03-20 02:37:56
|
Holla Eduardo! ;) Em S=E1bado, 20 de Mar=E7o de 2004 02:08, o Eduardo Hern=C3=A1ndez escreveu: > Well it seems like you have a defined path of what you want to do, however > I don't think I would want to rewrite supertux in C++ if there is a decent > piece of game in the 0.1, so I'm not quitte sure I will feel like helping > there... > In case you haven't noticed, we are already compiling it under g++, so it = is=20 already ported ;) Anyway, speaking about C++, I haven't really understood what exactly we ar= e=20 going to use... I am all for the use of classes, but Tobias showed little interest on this= =2E..=20 Since we are now using g++, we can port piece per piece (like fonts, then=20 textures, then menus, then levels, then player...). I could start working o= n=20 these. Can I start using booleans? I really hate to see those show_menu with valu= es=20 as 0 and 1. Ingo and Tobias already expressed their willing to use strings, instead of= =20 chars. Truth be told, I don't have knowledge on this... I mean, I've learne= d=20 C++ basically by myself. Currently I'm only on my 1st year of college (so=20 i've just learned Haskell and now started with C). Obviously, I've studied the use of templates, however never used them in=20 practice, and I've never going further with the Standard Template Library. So, I can't vote on this. > But if you are saying supertux main need is artists then I will do art. I > guess I would try to get the other artist through IRC and the mailing lis= t, > but I think that maybe a list of developers and the job they are actually > doing(something general like designer, programmer, artist, sound engineer > and so on) and how to contact them. I need to talk to them about what are > they doing so I can do stuff that no one is working on, and get informati= on > about the conventions(file type, size of sprites and such) > Basically, yes, we are really in the need of artists for the creation of a= =20 tileset and levels. But there are some small stuff you could help in the code. Small stuff lik= e=20 the behavior and looking for bugs. For example, Tux's jump is ugly and shou= ld=20 be tile-based, as described at: http://super-tux.sourceforge.net/milestone1/gameplay.html > And actually it was version 0.0.5 that atracted me united to the lack of > games in linux ;) > Currently, there are thousands of linux games (gametome has a database of = an=20 hundred games!), but not more than a hand of platform ones. > I sent an email to the supertux website also, tought I dont know if the > ones who manage the website are supertux developers too. If so I would ha= ve > written it here. > The email on the page is the one of the mailing list, isn't it? Gracias, Ricardo Cruz =2D-=20 Sentenced to two years hard labor (for sodomy), Oscar Wilde stood handcuffed in driving rain waiting for transport to prison. "If this is the way Queen Victoria treats her prisoners," he remarked, "she doesn't deserve to have any." |
From: Ricardo C. <ri...@ae...> - 2004-03-20 02:35:40
|
Em S=E1bado, 20 de Mar=E7o de 2004 02:20, o Eduardo Hern=C3=A1ndez escreveu: > I forgot to say that I found two problems in the levels 2 and 3 of the cv= s: > > Level 2: maybe isn't really a problem but just the way the designer wanted > it to be, and well the thing is that if you enter the level as supertux(b= ig > tux), hit the first block that will contain the coffee cup you can't get = it > coz you are way too big to enter to the tiny place it is. If you are norm= al > tux there is no problem, but you can actually get the coffee if you hit t= he > box when you are supertux then get hit by an enemy and as normal tux you > can enter and get the cafeine to have a mini cafeinated tux. The thing is > that you can't get the coffee if you don't get hit. > You can get it if you duck yourself (jump and press down). A part from it, when small tux gets coffee, he should become big and not w= ith=20 fire powers. And when tux with fire power is hurt, he should get back to=20 normal one... There should be also a limit of bullets, really easy to do. > Level 3: There is a point in the level where there is one laptop in a pla= ce > that is like a hole with the form of an inverted T and on top of the hole > there is a box (I didnt checked what was inside the box tought). If you > jump to the left/right side while the laptop is in the same side as you, = it > will keep bouncing, and bouncing, and bouncing.. I mean you just have to > leave tux there and he will gain infinite points. I had this happen with > supertux so I don't know if it happens with normal tux. And what's with > not even getting an extra life for sooo many damn points?? hey when I get > points I want them to do actually something not just to have a high score. > I guess that's something more in the TODO list ;) > > That sounds like a bug. Ricardo Cruz =2D-=20 "It's what you learn after you know it all that counts." =2D- John Wooden |
From: <cos...@ho...> - 2004-03-20 02:25:47
|
I should really stop remembering stuff after I send messages.. About the supertux design, I know there are supposed to be like 15 levels for 0.1 but what are those levels are supposed to be like? I mean should all levels be ice? change gradually to rock, then ice then fire or something bizarre as that? What are sounds supposed to be like? and music? just general ideas, that cover all aspects but not all details. Same to tux control, should he skid on ice? and such. This is mainly for level designers, if I knew who they are I would have told to them directly :p _________________________________________________________________ MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/ |
From: <cos...@ho...> - 2004-03-20 02:21:06
|
I forgot to say that I found two problems in the levels 2 and 3 of the cvs: Level 2: maybe isn't really a problem but just the way the designer wanted it to be, and well the thing is that if you enter the level as supertux(big tux), hit the first block that will contain the coffee cup you can't get it coz you are way too big to enter to the tiny place it is. If you are normal tux there is no problem, but you can actually get the coffee if you hit the box when you are supertux then get hit by an enemy and as normal tux you can enter and get the cafeine to have a mini cafeinated tux. The thing is that you can't get the coffee if you don't get hit. Level 3: There is a point in the level where there is one laptop in a place that is like a hole with the form of an inverted T and on top of the hole there is a box (I didnt checked what was inside the box tought). If you jump to the left/right side while the laptop is in the same side as you, it will keep bouncing, and bouncing, and bouncing.. I mean you just have to leave tux there and he will gain infinite points. I had this happen with supertux so I don't know if it happens with normal tux. And what's with not even getting an extra life for sooo many damn points?? hey when I get points I want them to do actually something not just to have a high score. I guess that's something more in the TODO list ;) _________________________________________________________________ MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/ |
From: <cos...@ho...> - 2004-03-20 02:08:49
|
Well it seems like you have a defined path of what you want to do, however I don't think I would want to rewrite supertux in C++ if there is a decent piece of game in the 0.1, so I'm not quitte sure I will feel like helping there... But if you are saying supertux main need is artists then I will do art. I guess I would try to get the other artist through IRC and the mailing list, but I think that maybe a list of developers and the job they are actually doing(something general like designer, programmer, artist, sound engineer and so on) and how to contact them. I need to talk to them about what are they doing so I can do stuff that no one is working on, and get information about the conventions(file type, size of sprites and such) And actually it was version 0.0.5 that atracted me united to the lack of games in linux ;) I sent an email to the supertux website also, tought I dont know if the ones who manage the website are supertux developers too. If so I would have written it here. _________________________________________________________________ Charla con tus amigos en línea mediante MSN Messenger: http://messenger.latam.msn.com/ |
From: Ingo R. <gr...@gm...> - 2004-03-20 00:23:26
|
Supertux CVS now features a worldmap, similar to MarioBros3, graphics are currently just placeholders and starting levels, music and other funky stuff isn't supported either, however the movement and loading of tilemap and definitions files already works rather well. To enter the worldmap mode, use the --worldmap switch: ./supertux --worldmap -- WWW: http://pingus.seul.org/~grumbel/ JabberID: gr...@ja... ICQ: 59461927 |
From: Ricardo C. <ri...@ae...> - 2004-03-19 23:47:24
|
Hey folks, Here goes a few places where the new version of SuperTux was announced: http://www.happypenguin.org/show?Super%20Tux http://www.linuxgames.com/news/feedback.php?identiferID=6554&action=flatview http://www.linuxgamingplanet.com/article.pl?sid=04/03/17/2125248&mode=thread http://www.linux-gamers.net/modules/news/article.php?storyid=216 This reminds me that we should provide a more info over the webpage (feel free to write something). Also stuff like screenshots and credits (maybe with photos) is something that ppl like to see. Take care, Ricardo Cruz -- Madness takes its toll. |
From: Ricardo C. <ri...@ae...> - 2004-03-19 23:40:40
|
Hey Rachel, That's a nice piece of level, but you forgot about the rest ;) A level should have about 300 tiles... Anyway, I liked it and you can be s= ure=20 that a larger level like that, would be included with SuperTux. Also, the snow tiles don't look very smooth, make use of the others too. Good work though, Ricardo Cruz Em Sexta, 19 de Mar=E7o de 2004 20:06, o C Ratchet escreveu: =2D-=20 If you want to put yourself on the map, publish your own map. |
From: Tobias <tob...@gm...> - 2004-03-19 18:29:50
|
I'll apply it, thanks! Sorry for the timedelay. ;) Greetz... Tobias Gläßer Am Fr, den 19.03.2004 schrieb Ricardo Cruz um 10:09: > I've made a patch that did that and also used the back button when available. > It was never applied, here it goes again. > > Ricardo Cruz > > Em Quinta, 18 de Março de 2004 22:48, o Michael George escreveu: > > Pressing escape in the main menu currently exits the game, even if > > you're in a submenu like load or options. I've attached a patch that > > only exits if you're actually at the top level. > > > > I'm not sure if you think it's worthwhile to always treat the escape key > > like a "back" button rather than a "close menu" button, but if you want > > me to I can change this to be the behavior for all of the menus. > > > > --Mike -- |
From: Tobias <tob...@gm...> - 2004-03-19 18:28:48
|
Good idea grumbel! I'll polish it and commit it then. Greetz... Tobias Gläßer Am Fr, den 19.03.2004 schrieb Ingo Ruhnke um 09:08: > Here a little patch to allow to run levels from command line, ala: > > ./supertux ../data/levels/default/level4.dat > > The patch does some ugly stuff with gameloop(), so I havn't commited > it yet to CVS. > > Index: src/gameloop.cpp > =================================================================== > RCS file: /cvsroot/super-tux/supertux/src/gameloop.cpp,v > retrieving revision 1.1 > diff -u -r1.1 gameloop.cpp > --- src/gameloop.cpp 17 Mar 2004 19:19:10 -0000 1.1 > +++ src/gameloop.cpp 19 Mar 2004 13:49:59 -0000 > @@ -357,8 +357,18 @@ > player_level_begin(&tux); > set_defaults(); > level_free(¤t_level); > - if(level_load(¤t_level,level_subset,level) != 0) > - return 0; > + > + if (level_startup_file) > + { > + if(level_load(¤t_level, level_startup_file) != 0) > + return 0; > + } > + else > + { > + if(level_load(¤t_level,level_subset,level) != 0) > + return 0; > + } > + > arrays_free(); > arrays_init(); > activate_bad_guys(); > @@ -568,7 +578,7 @@ > > /* --- GAME LOOP! --- */ > > -int gameloop(char * subset, int levelnb, int mode) > +int gameloop(const char* levelname, const char * subset, int levelnb, int mode) > { > int fps_cnt, jump, done; > timer_type fps_timer, frame_timer; > @@ -579,14 +589,23 @@ > > st_gl_mode = mode; > level = levelnb; > - strcpy(level_subset,subset); > > /* Init the game: */ > arrays_init(); > set_defaults(); > > - if(level_load(¤t_level,level_subset,level) != 0) > - exit(1); > + if (levelname) > + { > + if (level_load(¤t_level, levelname)) > + exit(1); > + } > + else > + { > + strcpy(level_subset,subset); > + if(level_load(¤t_level, level_subset, level) != 0) > + exit(1); > + } > + > level_load_gfx(¤t_level); > activate_bad_guys(); > level_load_song(¤t_level); > Index: src/gameloop.h > =================================================================== > RCS file: /cvsroot/super-tux/supertux/src/gameloop.h,v > retrieving revision 1.15 > diff -u -r1.15 gameloop.h > --- src/gameloop.h 15 Mar 2004 17:45:29 -0000 1.15 > +++ src/gameloop.h 19 Mar 2004 13:49:59 -0000 > @@ -28,7 +28,7 @@ > > /* Function prototypes: */ > > -int gameloop(char * subset, int levelnb, int mode); > +int gameloop(const char* filename, const char * subset, int levelnb, int mode); > void savegame(int slot); > void loadgame(int slot); > void slotinfo(char **pinfo, int slot); > Index: src/globals.cpp > =================================================================== > RCS file: /cvsroot/super-tux/supertux/src/globals.cpp,v > retrieving revision 1.1 > diff -u -r1.1 globals.cpp > --- src/globals.cpp 17 Mar 2004 19:19:10 -0000 1.1 > +++ src/globals.cpp 19 Mar 2004 13:49:59 -0000 > @@ -17,6 +17,8 @@ > > int use_gl, use_joystick, use_fullscreen, debug_mode, show_fps; > > +const char* level_startup_file = 0; > + > /* SuperTux directory ($HOME/.supertux) and save directory($HOME/.supertux/save) */ > char *st_dir, *st_save_dir; > > Index: src/globals.h > =================================================================== > RCS file: /cvsroot/super-tux/supertux/src/globals.h,v > retrieving revision 1.12 > diff -u -r1.12 globals.h > --- src/globals.h 15 Mar 2004 17:45:29 -0000 1.12 > +++ src/globals.h 19 Mar 2004 13:49:59 -0000 > @@ -23,6 +23,8 @@ > > extern int use_gl, use_joystick, use_fullscreen, debug_mode, show_fps; > > +extern const char* level_startup_file; > + > /* SuperTux directory ($HOME/.supertux) and save directory($HOME/.supertux/save) */ > extern char *st_dir, *st_save_dir; > > Index: src/level.cpp > =================================================================== > RCS file: /cvsroot/super-tux/supertux/src/level.cpp,v > retrieving revision 1.1 > diff -u -r1.1 level.cpp > --- src/level.cpp 17 Mar 2004 19:19:11 -0000 1.1 > +++ src/level.cpp 19 Mar 2004 13:50:00 -0000 > @@ -144,17 +144,23 @@ > /* Returns -1, if the loading of the level failed. */ > int level_load(st_level* plevel, char *subset, int level) > { > - int y,x; > - FILE * fi; > - char str[80]; > char filename[1024]; > - char * line; > > /* Load data file: */ > > snprintf(filename, 1024, "%s/levels/%s/level%d.dat", st_dir, subset, level); > if(!faccessible(filename)) > snprintf(filename, 1024, "%s/levels/%s/level%d.dat", DATA_PREFIX, subset, level); > + > + return level_load(plevel, filename); > +} > + > +int level_load(st_level* plevel, const char* filename) > +{ > + char str[80]; > + int x, y; > + char * line; > + FILE * fi; > fi = fopen(filename, "r"); > if (fi == NULL) > { > @@ -162,7 +168,6 @@ > return -1; > } > > - > /* Load header info: */ > > > Index: src/level.h > =================================================================== > RCS file: /cvsroot/super-tux/supertux/src/level.h,v > retrieving revision 1.8 > diff -u -r1.8 level.h > --- src/level.h 2 Mar 2004 15:42:36 -0000 1.8 > +++ src/level.h 19 Mar 2004 13:50:00 -0000 > @@ -51,6 +51,7 @@ > extern texture_type img_bkgd, img_bkgd_tile[2][4], img_solid[4], img_brick[2]; > > int level_load(st_level* plevel, char * subset, int level); > +int level_load(st_level* plevel, const char* filename); > void level_save(st_level* plevel, char * subset, int level); > void level_free(st_level* plevel); > void level_load_gfx(st_level* plevel); > Index: src/leveleditor.cpp > =================================================================== > RCS file: /cvsroot/super-tux/supertux/src/leveleditor.cpp,v > retrieving revision 1.1 > diff -u -r1.1 leveleditor.cpp > --- src/leveleditor.cpp 17 Mar 2004 19:19:11 -0000 1.1 > +++ src/leveleditor.cpp 19 Mar 2004 13:50:03 -0000 > @@ -1445,7 +1445,7 @@ > void le_testlevel() > { > level_save(le_current_level,"test",le_level); > - gameloop("test",le_level, ST_GL_TEST); > + gameloop(0, "test",le_level, ST_GL_TEST); > menu_set_current(&leveleditor_menu); > arrays_init(); > level_load_gfx(le_current_level); > Index: src/setup.cpp > =================================================================== > RCS file: /cvsroot/super-tux/supertux/src/setup.cpp,v > retrieving revision 1.1 > diff -u -r1.1 setup.cpp > --- src/setup.cpp 17 Mar 2004 19:19:11 -0000 1.1 > +++ src/setup.cpp 19 Mar 2004 13:50:05 -0000 > @@ -394,7 +394,7 @@ > { > if(game_started == NO) > { > - gameloop("default",slot - 1,ST_GL_LOAD_GAME); > + gameloop(0, "default",slot - 1,ST_GL_LOAD_GAME); > show_menu = YES; > menu_set_current(&main_menu); > } > @@ -950,6 +950,10 @@ > > exit(0); > } > + else if (argv[i][0] != '0') > + { > + level_startup_file = argv[i]; > + } > else > { > /* Unknown - complain! */ > Index: src/supertux.cpp > =================================================================== > RCS file: /cvsroot/super-tux/supertux/src/supertux.cpp,v > retrieving revision 1.1 > diff -u -r1.1 supertux.cpp > --- src/supertux.cpp 17 Mar 2004 19:19:12 -0000 1.1 > +++ src/supertux.cpp 19 Mar 2004 13:50:05 -0000 > @@ -32,19 +32,26 @@ > st_joystick_setup(); > st_general_setup(); > st_menu(); > - > - done = intro(); > - > - done = 0; > - > - while (!done) > + > + if (level_startup_file) > { > - done = title(); > + gameloop(level_startup_file, 0, 1, ST_GL_PLAY); > + } > + else > + { > + done = intro(); > + > + done = 0; > + > + while (!done) > + { > + done = title(); > + } > } > > clearscreen(0, 0, 0); > updatescreen(); > - > + > st_shutdown(); > > return(0); > Index: src/title.cpp > =================================================================== > RCS file: /cvsroot/super-tux/supertux/src/title.cpp,v > retrieving revision 1.1 > diff -u -r1.1 title.cpp > --- src/title.cpp 17 Mar 2004 19:19:12 -0000 1.1 > +++ src/title.cpp 19 Mar 2004 13:50:05 -0000 > @@ -220,7 +220,7 @@ > else if(key == SDLK_SPACE || key == SDLK_RETURN) > { > done = YES; > - quit = gameloop(subset.name,1,ST_GL_PLAY); > + quit = gameloop(0, subset.name,1,ST_GL_PLAY); > subset_free(&subset); > } > else if(key == SDLK_ESCAPE) -- |
From: Ricardo C. <ri...@ae...> - 2004-03-19 15:07:53
|
I've made a patch that did that and also used the back button when availab= le.=20 It was never applied, here it goes again. Ricardo Cruz Em Quinta, 18 de Mar=E7o de 2004 22:48, o Michael George escreveu: > Pressing escape in the main menu currently exits the game, even if > you're in a submenu like load or options. I've attached a patch that > only exits if you're actually at the top level. > > I'm not sure if you think it's worthwhile to always treat the escape key > like a "back" button rather than a "close menu" button, but if you want > me to I can change this to be the behavior for all of the menus. > > --Mike =2D-=20 Be careful what you set your heart on -- for it will surely be yours. -- James Baldwin, "Nobody Knows My Name" |
From: Ingo R. <gr...@gm...> - 2004-03-19 14:08:54
|
Here a little patch to allow to run levels from command line, ala: ./supertux ../data/levels/default/level4.dat The patch does some ugly stuff with gameloop(), so I havn't commited it yet to CVS. Index: src/gameloop.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/gameloop.cpp,v retrieving revision 1.1 diff -u -r1.1 gameloop.cpp --- src/gameloop.cpp 17 Mar 2004 19:19:10 -0000 1.1 +++ src/gameloop.cpp 19 Mar 2004 13:49:59 -0000 @@ -357,8 +357,18 @@ player_level_begin(&tux); set_defaults(); level_free(¤t_level); - if(level_load(¤t_level,level_subset,level) != 0) - return 0; + + if (level_startup_file) + { + if(level_load(¤t_level, level_startup_file) != 0) + return 0; + } + else + { + if(level_load(¤t_level,level_subset,level) != 0) + return 0; + } + arrays_free(); arrays_init(); activate_bad_guys(); @@ -568,7 +578,7 @@ /* --- GAME LOOP! --- */ -int gameloop(char * subset, int levelnb, int mode) +int gameloop(const char* levelname, const char * subset, int levelnb, int mode) { int fps_cnt, jump, done; timer_type fps_timer, frame_timer; @@ -579,14 +589,23 @@ st_gl_mode = mode; level = levelnb; - strcpy(level_subset,subset); /* Init the game: */ arrays_init(); set_defaults(); - if(level_load(¤t_level,level_subset,level) != 0) - exit(1); + if (levelname) + { + if (level_load(¤t_level, levelname)) + exit(1); + } + else + { + strcpy(level_subset,subset); + if(level_load(¤t_level, level_subset, level) != 0) + exit(1); + } + level_load_gfx(¤t_level); activate_bad_guys(); level_load_song(¤t_level); Index: src/gameloop.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/gameloop.h,v retrieving revision 1.15 diff -u -r1.15 gameloop.h --- src/gameloop.h 15 Mar 2004 17:45:29 -0000 1.15 +++ src/gameloop.h 19 Mar 2004 13:49:59 -0000 @@ -28,7 +28,7 @@ /* Function prototypes: */ -int gameloop(char * subset, int levelnb, int mode); +int gameloop(const char* filename, const char * subset, int levelnb, int mode); void savegame(int slot); void loadgame(int slot); void slotinfo(char **pinfo, int slot); Index: src/globals.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/globals.cpp,v retrieving revision 1.1 diff -u -r1.1 globals.cpp --- src/globals.cpp 17 Mar 2004 19:19:10 -0000 1.1 +++ src/globals.cpp 19 Mar 2004 13:49:59 -0000 @@ -17,6 +17,8 @@ int use_gl, use_joystick, use_fullscreen, debug_mode, show_fps; +const char* level_startup_file = 0; + /* SuperTux directory ($HOME/.supertux) and save directory($HOME/.supertux/save) */ char *st_dir, *st_save_dir; Index: src/globals.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/globals.h,v retrieving revision 1.12 diff -u -r1.12 globals.h --- src/globals.h 15 Mar 2004 17:45:29 -0000 1.12 +++ src/globals.h 19 Mar 2004 13:49:59 -0000 @@ -23,6 +23,8 @@ extern int use_gl, use_joystick, use_fullscreen, debug_mode, show_fps; +extern const char* level_startup_file; + /* SuperTux directory ($HOME/.supertux) and save directory($HOME/.supertux/save) */ extern char *st_dir, *st_save_dir; Index: src/level.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/level.cpp,v retrieving revision 1.1 diff -u -r1.1 level.cpp --- src/level.cpp 17 Mar 2004 19:19:11 -0000 1.1 +++ src/level.cpp 19 Mar 2004 13:50:00 -0000 @@ -144,17 +144,23 @@ /* Returns -1, if the loading of the level failed. */ int level_load(st_level* plevel, char *subset, int level) { - int y,x; - FILE * fi; - char str[80]; char filename[1024]; - char * line; /* Load data file: */ snprintf(filename, 1024, "%s/levels/%s/level%d.dat", st_dir, subset, level); if(!faccessible(filename)) snprintf(filename, 1024, "%s/levels/%s/level%d.dat", DATA_PREFIX, subset, level); + + return level_load(plevel, filename); +} + +int level_load(st_level* plevel, const char* filename) +{ + char str[80]; + int x, y; + char * line; + FILE * fi; fi = fopen(filename, "r"); if (fi == NULL) { @@ -162,7 +168,6 @@ return -1; } - /* Load header info: */ Index: src/level.h =================================================================== RCS file: /cvsroot/super-tux/supertux/src/level.h,v retrieving revision 1.8 diff -u -r1.8 level.h --- src/level.h 2 Mar 2004 15:42:36 -0000 1.8 +++ src/level.h 19 Mar 2004 13:50:00 -0000 @@ -51,6 +51,7 @@ extern texture_type img_bkgd, img_bkgd_tile[2][4], img_solid[4], img_brick[2]; int level_load(st_level* plevel, char * subset, int level); +int level_load(st_level* plevel, const char* filename); void level_save(st_level* plevel, char * subset, int level); void level_free(st_level* plevel); void level_load_gfx(st_level* plevel); Index: src/leveleditor.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/leveleditor.cpp,v retrieving revision 1.1 diff -u -r1.1 leveleditor.cpp --- src/leveleditor.cpp 17 Mar 2004 19:19:11 -0000 1.1 +++ src/leveleditor.cpp 19 Mar 2004 13:50:03 -0000 @@ -1445,7 +1445,7 @@ void le_testlevel() { level_save(le_current_level,"test",le_level); - gameloop("test",le_level, ST_GL_TEST); + gameloop(0, "test",le_level, ST_GL_TEST); menu_set_current(&leveleditor_menu); arrays_init(); level_load_gfx(le_current_level); Index: src/setup.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/setup.cpp,v retrieving revision 1.1 diff -u -r1.1 setup.cpp --- src/setup.cpp 17 Mar 2004 19:19:11 -0000 1.1 +++ src/setup.cpp 19 Mar 2004 13:50:05 -0000 @@ -394,7 +394,7 @@ { if(game_started == NO) { - gameloop("default",slot - 1,ST_GL_LOAD_GAME); + gameloop(0, "default",slot - 1,ST_GL_LOAD_GAME); show_menu = YES; menu_set_current(&main_menu); } @@ -950,6 +950,10 @@ exit(0); } + else if (argv[i][0] != '0') + { + level_startup_file = argv[i]; + } else { /* Unknown - complain! */ Index: src/supertux.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/supertux.cpp,v retrieving revision 1.1 diff -u -r1.1 supertux.cpp --- src/supertux.cpp 17 Mar 2004 19:19:12 -0000 1.1 +++ src/supertux.cpp 19 Mar 2004 13:50:05 -0000 @@ -32,19 +32,26 @@ st_joystick_setup(); st_general_setup(); st_menu(); - - done = intro(); - - done = 0; - - while (!done) + + if (level_startup_file) { - done = title(); + gameloop(level_startup_file, 0, 1, ST_GL_PLAY); + } + else + { + done = intro(); + + done = 0; + + while (!done) + { + done = title(); + } } clearscreen(0, 0, 0); updatescreen(); - + st_shutdown(); return(0); Index: src/title.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/title.cpp,v retrieving revision 1.1 diff -u -r1.1 title.cpp --- src/title.cpp 17 Mar 2004 19:19:12 -0000 1.1 +++ src/title.cpp 19 Mar 2004 13:50:05 -0000 @@ -220,7 +220,7 @@ else if(key == SDLK_SPACE || key == SDLK_RETURN) { done = YES; - quit = gameloop(subset.name,1,ST_GL_PLAY); + quit = gameloop(0, subset.name,1,ST_GL_PLAY); subset_free(&subset); } else if(key == SDLK_ESCAPE) -- WWW: http://pingus.seul.org/~grumbel/ JabberID: gr...@ja... ICQ: 59461927 |
From: Ingo R. <gr...@gm...> - 2004-03-19 13:24:35
|
Michael George <mi...@ge...> writes: > Just my $.02 - It would be nice if the TODO list on the website had > some indication of what people are working on vs. what's unclaimed. > For example, a couple of people have sent in small patches that were > rejected because the core team is already doing that stuff. The problem is that small stuff would need more work to track it, than to fix it. If I need ten minutes to maintain the status of an item on a webpage and only five to fix it, its not worth to track the issue in the first place. Beside that the tracking of items would very quickly get out of sync with what is going on in CVS unless one takes extrem causions, so it wouldn't really help all that much. Beside that there is also the problem with people starting something, but never getting it into a 'patch submit' ready stage, which would result in items being marked has 'handled' or whatever, but in the end not getting done at all. > Maybe this goes on on IRC. IRC is really the best to way coordinate small items. -- WWW: http://pingus.seul.org/~grumbel/ JabberID: gr...@ja... ICQ: 59461927 |