about summary refs log tree commit diff
path: root/src/game/server/gamemodes
diff options
context:
space:
mode:
authorDominik Geyer <dominik.geyer@gmx.de>2008-11-04 16:35:48 +0000
committerDominik Geyer <dominik.geyer@gmx.de>2008-11-04 16:35:48 +0000
commit1adbddcccac078f54a8e57bab99109297c74fd6a (patch)
tree4f05b97533dd9349d955b46a31e6ada3860612c7 /src/game/server/gamemodes
parent0259e5c3e5acdebdc8669c2b5b91f26cce1945a1 (diff)
downloadzcatch-1adbddcccac078f54a8e57bab99109297c74fd6a.tar.gz
zcatch-1adbddcccac078f54a8e57bab99109297c74fd6a.zip
do not take/reset the flag if character is dead or spectator; ticket #556
Diffstat (limited to 'src/game/server/gamemodes')
-rw-r--r--src/game/server/gamemodes/ctf.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/game/server/gamemodes/ctf.cpp b/src/game/server/gamemodes/ctf.cpp
index 498a41c9..05265bb7 100644
--- a/src/game/server/gamemodes/ctf.cpp
+++ b/src/game/server/gamemodes/ctf.cpp
@@ -115,6 +115,9 @@ void GAMECONTROLLER_CTF::tick()
 			int num = game.world.find_entities(f->pos, 32.0f, (ENTITY**)close_characters, MAX_CLIENTS, NETOBJTYPE_CHARACTER);
 			for(int i = 0; i < num; i++)
 			{
+				if(!close_characters[i]->alive || close_characters[i]->player->team == -1)
+					continue;
+				
 				int collision = col_intersect_line(f->pos, close_characters[i]->pos, NULL);
 				if(!collision && close_characters[i]->team == f->team)
 				{