pushed bombs are not working right...

origin
stpohle 19 years ago
parent 699ba07d3c
commit 8f1077cf3b

@ -1,4 +1,4 @@
/* $Id: packets.h,v 1.36 2007/02/22 21:12:18 stpohle Exp $ /* $Id: packets.h,v 1.37 2007/02/22 21:32:58 stpohle Exp $
* network packets.. */ * network packets.. */
#ifndef _PACKETS_H_ #ifndef _PACKETS_H_
@ -212,15 +212,15 @@ struct pkg_bombdata {
struct pkgheader h; struct pkgheader h;
unsigned char p_nr; unsigned char p_nr;
unsigned char b_nr; unsigned char b_nr;
Uint16 x; Sint16 x;
Uint16 y; Sint16 y;
unsigned char state; unsigned char state;
unsigned char r; unsigned char r;
Sint32 ex_nr; Sint32 ex_nr;
Sint32 to; Sint32 to;
Uint16 destx; Sint16 destx;
Uint16 desty; Sint16 desty;
Uint16 fdata; Sint16 fdata;
} __attribute__((packed)); } __attribute__((packed));
struct pkg_quit { struct pkg_quit {

@ -1,4 +1,4 @@
/* $Id: bomb.c,v 1.67 2007/01/12 22:42:31 stpohle Exp $ */ /* $Id: bomb.c,v 1.68 2007/02/22 21:32:59 stpohle Exp $ */
/* everything what have to do with the bombs */ /* everything what have to do with the bombs */
#include "bomberclone.h" #include "bomberclone.h"
@ -131,15 +131,16 @@ void bomb_move (_bomb * bomb) {
step = (timefactor * bomb->fdata); step = (timefactor * bomb->fdata);
/* move the bomb to the new position */ /* move the bomb to the new position */
if (bomb->dest.x < 0) if (bomb->dest.x < 0.5f)
bomb->pos.x -= step; bomb->pos.x -= step;
else if (bomb->dest.x > 0) else if (bomb->dest.x > 0.5f)
bomb->pos.x += step; bomb->pos.x += step;
else if (bomb->dest.y < 0) else if (bomb->dest.y < 0.5f)
bomb->pos.y -= step; bomb->pos.y -= step;
else if (bomb->dest.y > 0) else if (bomb->dest.y > 0.5f)
bomb->pos.y += step; bomb->pos.y += step;
// printf ("%2.3f,%2.3f\n", bomb->dest.x, bomb->dest.y);
/* if we are on a complete field, check if we /* if we are on a complete field, check if we
can move to the next one */ can move to the next one */
if ((CUTINT (bomb->pos.x) == 0.0f) && (CUTINT (bomb->pos.y) == 0.0f)) { if ((CUTINT (bomb->pos.x) == 0.0f) && (CUTINT (bomb->pos.y) == 0.0f)) {
@ -184,6 +185,7 @@ void bomb_move (_bomb * bomb) {
i++; i++;
} while (b == -1 && i < MAX_BOMBS); } while (b == -1 && i < MAX_BOMBS);
/* if the bomb from our player send the current data again.. */
if (b != -1) if (b != -1)
net_game_send_bomb (bman.p_nr, b); net_game_send_bomb (bman.p_nr, b);
} }

Loading…
Cancel
Save