summaryrefslogtreecommitdiff
path: root/src/base/shot.c
diff options
context:
space:
mode:
authororoborus <oroborus@0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e>2008-07-01 20:46:04 +0000
committeroroborus <oroborus@0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e>2008-07-01 20:46:04 +0000
commit7a41e2f1d440f521660a251125cd064490164f60 (patch)
treeef7820b6cb16c9fd93f81aedd49cb5bc1223fb24 /src/base/shot.c
parent38b98c9ecd0c300d40ae6db05ab9dc2b9189df8d (diff)
- oprava chyby, ked mal tux bonus neviditelnost server aj tak odosielal vsetkym clientom spravu o jeho pohybe (
upravou clienta by sa z toho dalo vycitat kde sa nachadza ) - oprava chyby, v sietovej hre sa client zrutil vzdy ked dostal spravu o stielani z lassera. - oprava chyby, pri vybuch bombballu, program pristupoval do uvolnenej pamate - v protokole musi client checknut aj prikaz "init" - do stataus ptibudla polozka "name: [name]" nastavuje sa v server.conf ako "NAME [name]" ak nie je tak sa pouzije "noname" - z server.c boli odstraneny kod #ifdef SUPPORT_NET_SDL_UDP ... #endif git-svn-id: http://opensvn.csie.org/tuxanci_ng@82 0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e
Diffstat (limited to 'src/base/shot.c')
-rw-r--r--src/base/shot.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/base/shot.c b/src/base/shot.c
index 9c0e33c..1858bc0 100644
--- a/src/base/shot.c
+++ b/src/base/shot.c
@@ -227,10 +227,19 @@ void boundBombBall(shot_t *shot)
void transformOnlyLasser(shot_t *shot)
{
space_t *space;
+ int mustRefesh = 0;
space = getCurrentArena()->spaceShot;
- delObjectFromSpace(space, shot);
+ if( getObjectFromSpaceWithID(space, shot->id) != NULL )
+ {
+ mustRefesh = 1;
+ }
+
+ if( mustRefesh )
+ {
+ delObjectFromSpace(space, shot);
+ }
switch( shot->position )
{
@@ -252,7 +261,10 @@ void transformOnlyLasser(shot_t *shot)
break;
}
- addObjectToSpace(space, shot);
+ if( mustRefesh)
+ {
+ addObjectToSpace(space, shot);
+ }
}
void eventMoveListShot(arena_t *arena)