about summary refs log tree commit diff
path: root/src/game/server/gamemodes/tdm.cpp
diff options
context:
space:
mode:
authorMagnus Auvinen <magnus.auvinen@gmail.com>2008-08-14 18:25:44 +0000
committerMagnus Auvinen <magnus.auvinen@gmail.com>2008-08-14 18:25:44 +0000
commita420eb543f8206730aebb80e60a625f7204694e4 (patch)
tree235971d38c917c1b97c512743db64c2fd23ffadc /src/game/server/gamemodes/tdm.cpp
parent817f431377c7f1545621ff597c018b133651e991 (diff)
downloadzcatch-a420eb543f8206730aebb80e60a625f7204694e4.tar.gz
zcatch-a420eb543f8206730aebb80e60a625f7204694e4.zip
moved alot of stuff to their own cpp/hpp files
Diffstat (limited to 'src/game/server/gamemodes/tdm.cpp')
-rw-r--r--src/game/server/gamemodes/tdm.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/game/server/gamemodes/tdm.cpp b/src/game/server/gamemodes/tdm.cpp
new file mode 100644
index 00000000..26441c9f
--- /dev/null
+++ b/src/game/server/gamemodes/tdm.cpp
@@ -0,0 +1,31 @@
+/* copyright (c) 2007 magnus auvinen, see licence.txt for more info */
+#include <engine/e_server_interface.h>
+#include <game/server/entities/character.hpp>
+#include <game/server/player.hpp>
+#include "tdm.hpp"
+
+GAMECONTROLLER_TDM::GAMECONTROLLER_TDM()
+{
+	is_teamplay = true;
+}
+
+int GAMECONTROLLER_TDM::on_character_death(class CHARACTER *victim, class PLAYER *killer, int weapon)
+{
+	GAMECONTROLLER::on_character_death(victim, killer, weapon);
+	
+	if(weapon >= 0)
+	{
+		// do team scoring
+		if(killer == victim->player)
+			teamscore[killer->team&1]--; // klant arschel
+		else
+			teamscore[killer->team&1]++; // good shit
+	}
+	return 0;
+}
+
+void GAMECONTROLLER_TDM::tick()
+{
+	do_team_score_wincheck();
+	GAMECONTROLLER::tick();
+}