function OnGameEvent_player_say(params) { if (params.text.tolower() == "hardmode" || params.text.tolower() == "/hardmode" || params.text.tolower() == "!hardmode" || params.text.tolower() == "hard" || params.text.tolower() == "/hard" || params.text.tolower() == "!hard") { EntFire("popscript", "$EnableHardMode") } } __CollectGameEventCallbacks(this) ::ZombieUnderworld <- { function SetSpecialCloak() { local hPlayer = self local hItem = hPlayer.GetActiveWeapon() for(local hChild = hPlayer.FirstMoveChild(); hChild; hChild = hChild.NextMovePeer()) if(hChild != hItem && hChild.GetScriptThinkFunc() == "") { hItem = hChild; break } if(!hItem) return hPlayer.AddCond(TF_COND_STEALTHED_USER_BUFF_FADING) hItem.ValidateScriptScope() local hItem_scope = hItem.GetScriptScope() hItem_scope.Think <- function() { if(!self.IsValid()) return if(hPlayer.InCond(TF_COND_STEALTHED)) hPlayer.RemoveCond(TF_COND_STEALTHED) SetPropFloat(hPlayer, "m_Shared.m_flInvisChangeCompleteTime", Time() + 0.15) return -1 } AddThinkToEnt(hItem, "Think") } }