diff --git a/ChangeLog b/ChangeLog index ada9dae..fa51766 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,6 @@ -$Id: ChangeLog,v 1.57 2004/01/25 19:36:22 stpohle Exp $ +$Id: ChangeLog,v 1.58 2004/01/30 22:32:50 stpohle Exp $ + +- Added: Deathmatch mode. - Added: Kick Bombs special @@ -30,6 +32,8 @@ $Id: ChangeLog,v 1.57 2004/01/25 19:36:22 stpohle Exp $ - Added: Drop Items On Death element. You can collect now your opponents items if he died. +- Fixed: Missing "Press F4 to Start" Screen Text in Multiplayer + Version 0.11.0 ============== diff --git a/src/game.c b/src/game.c index 6052e4a..cdc9aba 100644 --- a/src/game.c +++ b/src/game.c @@ -1,4 +1,4 @@ -/* $Id: game.c,v 1.73 2004/01/27 21:13:44 stpohle Exp $ +/* $Id: game.c,v 1.74 2004/01/30 22:32:51 stpohle Exp $ game.c - procedures for the game. */ #include @@ -95,9 +95,9 @@ game_draw_info () } if (bman.state == GS_ready && GT_MP_PTPM) - font_draw (100, 32, "Press F4 to start the game", 0, 0); + font_gfxdraw (100, 32, "Press F4 to start the game", 0, COLOR_yellow, 0xFFFF); else if (bman.state == GS_ready) - font_draw (100, 32, "Waiting for the Server to Start", 0, 0); + font_gfxdraw (100, 32, "Waiting for the Server to Start", 0, COLOR_yellow, 0xFFFF); } /* draw the warning part */ diff --git a/src/gfx.c b/src/gfx.c index 9f1bb5c..47dc58a 100644 --- a/src/gfx.c +++ b/src/gfx.c @@ -1,4 +1,4 @@ -/* $Id: gfx.c,v 1.31 2004/01/27 20:49:07 stpohle Exp $ */ +/* $Id: gfx.c,v 1.32 2004/01/30 22:32:51 stpohle Exp $ */ /* gfx.c */ #include "bomberclone.h" @@ -122,6 +122,7 @@ gfx_load_players (int sx, int sy) // getRGBpixel (tmpimage1, 0, 0, &r, &g, &b); // SDL_SetColorKey (tmpimage1, SDL_SRCCOLORKEY, SDL_MapRGB (tmpimage1->format, r, g, b)); gfx.respawn.image = SDL_DisplayFormat (tmpimage1); +// SDL_SetAlpha(gfx.respawn.image, SDL_SRCALPHA, 0); SDL_FreeSurface (tmpimage); SDL_FreeSurface (tmpimage1); diff --git a/src/gfxpixelimage.c b/src/gfxpixelimage.c index 37668e2..6b9e28f 100644 --- a/src/gfxpixelimage.c +++ b/src/gfxpixelimage.c @@ -1,4 +1,4 @@ -/* $Id: gfxpixelimage.c,v 1.8 2004/01/25 02:21:01 stpohle Exp $ */ +/* $Id: gfxpixelimage.c,v 1.9 2004/01/30 22:32:51 stpohle Exp $ */ /* gfx pixel manipulation and image manipulation */ #include "bomberclone.h" @@ -27,6 +27,7 @@ getRGBpixel (SDL_Surface * surface, int x, int y, int *R, int *G, int *B) *B = b; }; + /* getpixel for every BPP version */ Uint32 getpixel (SDL_Surface * surface, int x, int y) diff --git a/src/packets.c b/src/packets.c index 2d6f2e8..abee47e 100644 --- a/src/packets.c +++ b/src/packets.c @@ -1345,20 +1345,22 @@ void do_respawn (struct pkg_respawn *r_pkg, _net_addr *addr) { return; /* check if the right player is sending the information */ - if (addr->pl_nr != bman.p_servnr && addr->pl_nr != r_pkg->pl_nr) + if (addr->pl_nr != bman.p_servnr && r_pkg->pl_nr != addr->pl_nr) return; if ((r_pkg->state & PSF_respawn) == PSF_respawn) { players[r_pkg->pl_nr].pos.x = r_pkg->x; players[r_pkg->pl_nr].pos.y = r_pkg->y; - if (PS_IS_dead (players[r_pkg->pl_nr].state)) - players[r_pkg->pl_nr].state |= PSF_respawn; - } - else if ((r_pkg->state & (PSF_respawn + PSF_alife)) == PSF_alife) { + players[r_pkg->pl_nr].state &= (0xFF - PSF_alife); + players[r_pkg->pl_nr].state |= PSF_respawn; + players[r_pkg->pl_nr].frame = 0.0f; + + } + else if (r_pkg->state & (PSF_respawn + PSF_alife)) { players[r_pkg->pl_nr].pos.x = r_pkg->x; players[r_pkg->pl_nr].pos.y = r_pkg->y; players[r_pkg->pl_nr].state |= PSF_alife; - players[r_pkg->pl_nr].state &= (0xFF - PSF_alife); + players[r_pkg->pl_nr].state &= (0xFF - PSF_respawn); } }; diff --git a/src/player.c b/src/player.c index 052b533..6fd3ebe 100644 --- a/src/player.c +++ b/src/player.c @@ -1,4 +1,4 @@ -/* $Id: player.c,v 1.72 2004/01/27 22:52:14 stpohle Exp $ +/* $Id: player.c,v 1.73 2004/01/30 22:32:51 stpohle Exp $ * player.c - everything what have to do with the player */ #include @@ -905,5 +905,8 @@ void player_checkdeath (int pnr) { for (i = 0; i < PI_max; i++) if (player->ill[i].to > 0.0f) player_clear_ilness (player, i); + + if (GT_MP) + net_game_send_respawn (pnr); } };