mirror of
https://github.com/ddnet/ddnet.git
synced 2024-09-20 09:34:19 +00:00
Fix pickup prediction on vanilla
This commit is contained in:
parent
00ab99aa2e
commit
6848274b43
|
@ -14,6 +14,8 @@ void CPickup::Tick()
|
|||
CCharacter * pChr = apEnts[i];
|
||||
if(pChr && pChr->IsAlive())
|
||||
{
|
||||
if(GameWorld()->m_WorldConfig.m_IsVanilla && distance(m_Pos, pChr->m_Pos) >= 20.0f*2) // pickup distance is shorter on vanilla due to using ClosestEntity
|
||||
continue;
|
||||
if(m_Layer == LAYER_SWITCH && !Collision()->m_pSwitchers[m_Number].m_Status[pChr->Team()]) continue;
|
||||
bool sound = false;
|
||||
// player picked us up, is someone was hooking us, let them go
|
||||
|
@ -24,7 +26,10 @@ void CPickup::Tick()
|
|||
break;
|
||||
|
||||
case POWERUP_ARMOR:
|
||||
if(pChr->Team() == TEAM_SUPER) continue;
|
||||
if(!GameWorld()->m_WorldConfig.m_IsDDRace || !GameWorld()->m_WorldConfig.m_PredictDDRace)
|
||||
continue;
|
||||
if(pChr->m_Super)
|
||||
continue;
|
||||
for(int i = WEAPON_SHOTGUN; i < NUM_WEAPONS; i++)
|
||||
{
|
||||
if(pChr->GetWeaponGot(i))
|
||||
|
@ -47,7 +52,6 @@ void CPickup::Tick()
|
|||
break;
|
||||
|
||||
case POWERUP_WEAPON:
|
||||
|
||||
if(m_Subtype >= 0 && m_Subtype < NUM_WEAPONS && (!pChr->GetWeaponGot(m_Subtype) || (pChr->GetWeaponAmmo(m_Subtype) != -1 && !pChr->m_FreezeTime)))
|
||||
pChr->GiveWeapon(m_Subtype, -1);
|
||||
break;
|
||||
|
@ -58,6 +62,7 @@ void CPickup::Tick()
|
|||
pChr->GiveNinja();
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
break;
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue