diff --git a/datasrc/network.py b/datasrc/network.py index b618bf931..751c33839 100644 --- a/datasrc/network.py +++ b/datasrc/network.py @@ -5,7 +5,7 @@ PlayerFlags = ["PLAYING", "IN_MENU", "CHATTING", "SCOREBOARD", "AIM"] GameFlags = ["TEAMS", "FLAGS"] GameStateFlags = ["GAMEOVER", "SUDDENDEATH", "PAUSED", "RACETIME"] CharacterFlags = ["SOLO", "JETPACK", "NO_COLLISION", "ENDLESS_HOOK", "ENDLESS_JUMP", "SUPER", - "DISABLE_HIT_HAMMER", "DISABLE_HIT_SHOTGUN", "DISABLE_HIT_GRENADE", "DISABLE_HIT_RIFLE", "DISABLE_HOOK", + "NO_HAMMER_HIT", "NO_SHOTGUN_HIT", "NO_GRENADE_HIT", "NO_RIFLE_HIT", "NO_HOOK", "TELEGUN_GUN", "TELEGUN_GRENADE", "TELEGUN_LASER", "FROZEN", "DEEP_FROZEN", "SPECTATING"] diff --git a/src/game/client/gameclient.cpp b/src/game/client/gameclient.cpp index 518208104..c56eb5b9d 100644 --- a/src/game/client/gameclient.cpp +++ b/src/game/client/gameclient.cpp @@ -1126,15 +1126,15 @@ void CGameClient::OnNewSnapshot() m_aClients[Item.m_ID].m_NoCollision = m_aClients[Item.m_ID].m_Predicted.m_NoCollision = pCharacterData->m_Flags & CHARACTERFLAG_NO_COLLISION; m_aClients[Item.m_ID].m_NoHammerHit = m_aClients[Item.m_ID].m_Predicted.m_NoHammerHit = - pCharacterData->m_Flags & CHARACTERFLAG_DISABLE_HIT_HAMMER; + pCharacterData->m_Flags & CHARACTERFLAG_NO_HAMMER_HIT; m_aClients[Item.m_ID].m_NoGrenadeHit = m_aClients[Item.m_ID].m_Predicted.m_NoGrenadeHit = - pCharacterData->m_Flags & CHARACTERFLAG_DISABLE_HIT_GRENADE; + pCharacterData->m_Flags & CHARACTERFLAG_NO_GRENADE_HIT; m_aClients[Item.m_ID].m_NoRifleHit = m_aClients[Item.m_ID].m_Predicted.m_NoRifleHit = - pCharacterData->m_Flags & CHARACTERFLAG_DISABLE_HIT_RIFLE; + pCharacterData->m_Flags & CHARACTERFLAG_NO_RIFLE_HIT; m_aClients[Item.m_ID].m_NoShotgunHit = m_aClients[Item.m_ID].m_Predicted.m_NoShotgunHit = - pCharacterData->m_Flags & CHARACTERFLAG_DISABLE_HIT_SHOTGUN; + pCharacterData->m_Flags & CHARACTERFLAG_NO_SHOTGUN_HIT; m_aClients[Item.m_ID].m_NoHookHit = m_aClients[Item.m_ID].m_Predicted.m_NoHookHit = - pCharacterData->m_Flags & CHARACTERFLAG_DISABLE_HOOK; + pCharacterData->m_Flags & CHARACTERFLAG_NO_HOOK; m_aClients[Item.m_ID].m_Super = m_aClients[Item.m_ID].m_Predicted.m_Super = pCharacterData->m_Flags & CHARACTERFLAG_SUPER; diff --git a/src/game/server/entities/character.cpp b/src/game/server/entities/character.cpp index 6b6df79ed..59bf30189 100644 --- a/src/game/server/entities/character.cpp +++ b/src/game/server/entities/character.cpp @@ -1178,6 +1178,10 @@ void CCharacter::Snap(int SnappingClient) pDDNetCharacter->m_Flags |= CHARACTERFLAG_SUPER; if(m_EndlessHook) pDDNetCharacter->m_Flags |= CHARACTERFLAG_ENDLESS_HOOK; + if(!m_Core.m_Collision) + pDDNetCharacter->m_Flags |= CHARACTERFLAG_NO_COLLISION; + if(!m_Core.m_Hook) + pDDNetCharacter->m_Flags |= CHARACTERFLAG_NO_HOOK; if(m_SuperJump) pDDNetCharacter->m_Flags |= CHARACTERFLAG_ENDLESS_JUMP; if(m_Jetpack || m_NinjaJetpack) @@ -1187,13 +1191,13 @@ void CCharacter::Snap(int SnappingClient) if(m_DeepFreeze) pDDNetCharacter->m_Flags |= CHARACTERFLAG_DEEP_FROZEN; if(m_Hit&DISABLE_HIT_GRENADE) - pDDNetCharacter->m_Flags |= CHARACTERFLAG_DISABLE_HIT_GRENADE; + pDDNetCharacter->m_Flags |= CHARACTERFLAG_NO_GRENADE_HIT; if(m_Hit&DISABLE_HIT_HAMMER) - pDDNetCharacter->m_Flags |= CHARACTERFLAG_DISABLE_HIT_HAMMER; + pDDNetCharacter->m_Flags |= CHARACTERFLAG_NO_HAMMER_HIT; if(m_Hit&DISABLE_HIT_RIFLE) - pDDNetCharacter->m_Flags |= CHARACTERFLAG_DISABLE_HIT_RIFLE; + pDDNetCharacter->m_Flags |= CHARACTERFLAG_NO_RIFLE_HIT; if(m_Hit&DISABLE_HIT_SHOTGUN) - pDDNetCharacter->m_Flags |= CHARACTERFLAG_DISABLE_HIT_SHOTGUN; + pDDNetCharacter->m_Flags |= CHARACTERFLAG_NO_SHOTGUN_HIT; if(IsPaused()) pDDNetCharacter->m_Flags |= CHARACTERFLAG_SPECTATING; if(m_HasTeleGun)