diff --git a/src/server/gamerules.qc b/src/server/gamerules.qc index 70a4e58..7df7d3f 100644 --- a/src/server/gamerules.qc +++ b/src/server/gamerules.qc @@ -29,7 +29,6 @@ TFCGameRules::DropGoalItem(NSClientPlayer pp) if (!(pp.g_items & ITEM_GOALITEM)) return; - item_tfgoal target; for (entity e = world; (e = find(e, ::classname, "item_tfgoal"));) { @@ -90,6 +89,13 @@ TFCGameRules::PlayerDisconnect(NSClientPlayer pl) pl.SendFlags = PLAYER_MODELINDEX; } +void +TFCGameRules_PlayerRespawn(void) +{ + TFCGameRules rule = (TFCGameRules)g_grMode; + rule.PlayerRespawn((NSClientPlayer)self); +} + void TFCGameRules::PlayerDeath(NSClientPlayer pp) { @@ -98,7 +104,8 @@ TFCGameRules::PlayerDeath(NSClientPlayer pp) DropGoalItem(pp); pl.SetSolid(SOLID_NOT); pl.SetMovetype(MOVETYPE_NONE); - pl.think = PlayerRespawn; + + pl.think = TFCGameRules_PlayerRespawn; pl.nextthink = time + 4.0f; /* play the iconic death sound */ diff --git a/src/server/teleporter.qc b/src/server/teleporter.qc index c281637..518d632 100644 --- a/src/server/teleporter.qc +++ b/src/server/teleporter.qc @@ -38,7 +38,7 @@ TFCTeleporter::Touch(entity eToucher) if (m_flNextTeleport > time) return; - TFCTeleporter target = world; + TFCTeleporter target = __NULL__; string exitname; if (classname == "TFCTeleporter") diff --git a/src/shared/items.h b/src/shared/items.h index fd97e24..072dfaa 100644 --- a/src/shared/items.h +++ b/src/shared/items.h @@ -37,7 +37,7 @@ #define ITEM_GRAPPLE 0x00080000 #define ITEM_SUIT 0x00100000 -#define ITEM_UNUSED22 0x00200000 +#define ITEM_GOALITEM 0x00200000 #define ITEM_UNUSED23 0x00400000 #define ITEM_UNUSED24 0x00800000 #define ITEM_UNUSED25 0x01000000 @@ -47,4 +47,4 @@ #define ITEM_UNUSED29 0x10000000 #define ITEM_UNUSED30 0x20000000 #define ITEM_UNUSED31 0x40000000 -#define ITEM_GOALITEM 0x80000000 +#define ITEM_UNUSED32 0x80000000