diff options
| author | Magnus Auvinen <magnus.auvinen@gmail.com> | 2007-12-13 20:28:22 +0000 |
|---|---|---|
| committer | Magnus Auvinen <magnus.auvinen@gmail.com> | 2007-12-13 20:28:22 +0000 |
| commit | c3b492b4be53cd6ec4be3948d86bbc993f187787 (patch) | |
| tree | 2f2d2eca75c98d6fe2a97aeaf092288fc7745d03 /src/game/server | |
| parent | 8f39b81ab0c49bd2c46dcdd191e626d577b7ba1d (diff) | |
| download | zcatch-c3b492b4be53cd6ec4be3948d86bbc993f187787.tar.gz zcatch-c3b492b4be53cd6ec4be3948d86bbc993f187787.zip | |
variuos crash fixes and fixed ninja
Diffstat (limited to 'src/game/server')
| -rw-r--r-- | src/game/server/game_server.cpp | 12 | ||||
| -rw-r--r-- | src/game/server/srv_common.h | 2 |
2 files changed, 10 insertions, 4 deletions
diff --git a/src/game/server/game_server.cpp b/src/game/server/game_server.cpp index 5ca2b3db..3d8550a6 100644 --- a/src/game/server/game_server.cpp +++ b/src/game/server/game_server.cpp @@ -356,7 +356,6 @@ void player::init() client_id = -1; team = -1; // -1 == spectator extrapowerflags = 0; - ninjaactivationtick = 0; latency_accum = 0; latency_accum_min = 0; @@ -390,6 +389,9 @@ void player::reset() emote_stop = 0; damage_taken_tick = 0; attack_tick = 0; + numobjectshit = 0; + ninjaactivationtick = 0; + currentmovetime = 0; active_weapon = WEAPON_GUN; last_weapon = WEAPON_HAMMER; @@ -571,6 +573,7 @@ int player::handle_ninja() activationdir = direction; currentmovetime = data->weapons[WEAPON_NINJA].movetime * server_tickspeed() / 1000; currentcooldown = data->weapons[WEAPON_NINJA].firedelay * server_tickspeed() / 1000 + server_tick(); + // reset hit objects numobjectshit = 0; @@ -1038,8 +1041,11 @@ void player::tick_defered() { create_sound(pos, SOUND_PLAYER_JUMP, mask); ev_common *c = (ev_common *)::events.create(EVENT_AIR_JUMP, sizeof(ev_common), mask); - c->x = (int)pos.x; - c->y = (int)pos.y; + if(c) + { + c->x = (int)pos.x; + c->y = (int)pos.y; + } } //if(events&COREEVENT_HOOK_LAUNCH) snd_play_random(CHN_WORLD, SOUND_HOOK_LOOP, 1.0f, pos); diff --git a/src/game/server/srv_common.h b/src/game/server/srv_common.h index 901e37af..b28d3066 100644 --- a/src/game/server/srv_common.h +++ b/src/game/server/srv_common.h @@ -14,7 +14,7 @@ inline bool cmask_is_set(int mask, int cid) { return (mask&cmask_one(cid)) != 0; class event_handler { static const int MAX_EVENTS = 128; - static const int MAX_DATASIZE = 128*4; + static const int MAX_DATASIZE = 128*64; int types[MAX_EVENTS]; // TODO: remove some of these arrays int offsets[MAX_EVENTS]; |