MCPcopy Create free account
hub / github.com/ZDoom/Raze / ChopsCheck

Function ChopsCheck

source/games/sw/src/player.cpp:6635–6680  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

6633}
6634
6635void ChopsCheck(DSWPlayer* pp)
6636{
6637 if (!M_Active() && !(pp->Flags & PF_DEAD) && !pp->sop_riding && numplayers <= 1)
6638 {
6639 if (pp->cmd.ucmd.actions & ~SB_RUN || !pp->cmd.ucmd.vel.XY().isZero() || !pp->cmd.ucmd.ang.isZero() ||
6640 (pp->Flags & (PF_CLIMBING | PF_FALLING | PF_DIVING)))
6641 {
6642 // Hit a input key or other reason to stop chops
6643 //if (pp->Chops && pp->Chops->State != pp->Chops->State->RetractState)
6644 if (pp->Chops)
6645 {
6646 if (!pp->sop_control) // specail case
6647 pp->Flags &= ~(PF_WEAPON_DOWN);
6648 ChopsSetRetract(pp);
6649 }
6650 ChopTics = 0;
6651 }
6652 else
6653 {
6654 ChopTics += synctics;
6655 if (!pp->Chops)
6656 {
6657 // Chops not up
6658 if (ChopTics > 30*120)
6659 {
6660 ChopTics = 0;
6661 // take weapon down
6662 pp->Flags |= (PF_WEAPON_DOWN);
6663 InitChops(pp);
6664 }
6665 }
6666 else
6667 {
6668 // Chops already up
6669 if (ChopTics > 30*120)
6670 {
6671 ChopTics = 0;
6672 // bring weapon back up
6673 if (!pp->sop || !(pp->sop->flags & SOBJ_HAS_WEAPON))
6674 pp->Flags &= ~(PF_WEAPON_DOWN);
6675 ChopsSetRetract(pp);
6676 }
6677 }
6678 }
6679 }
6680}
6681
6682//---------------------------------------------------------------------------
6683//

Callers 1

TRAVERSE_CONNECTFunction · 0.85

Calls 4

M_ActiveFunction · 0.85
ChopsSetRetractFunction · 0.85
InitChopsFunction · 0.85
isZeroMethod · 0.45

Tested by

no test coverage detected