| 5229 | //--------------------------------------------------------------------------- |
| 5230 | |
| 5231 | void DoPlayerStopOperate(DSWPlayer* pp) |
| 5232 | { |
| 5233 | pp->Flags &= ~(PF_WEAPON_DOWN); |
| 5234 | DoPlayerResetMovement(pp); |
| 5235 | DoTankTreads(pp); |
| 5236 | DoPlayerOperateMatch(pp, false); |
| 5237 | StopSOsound(pp->sop->mid_sector); |
| 5238 | |
| 5239 | if (pp->sop_remote) |
| 5240 | { |
| 5241 | DSWActor* rsp = pp->remoteActor; |
| 5242 | pp->GetActor()->PrevAngles.Yaw = pp->GetActor()->spr.Angles.Yaw = rsp && TEST_BOOL1(rsp) ? rsp->spr.Angles.Yaw : (pp->sop_remote->pmid.XY() - pp->GetActor()->spr.pos.XY()).Angle(); |
| 5243 | } |
| 5244 | |
| 5245 | if (pp->sop_control) |
| 5246 | { |
| 5247 | pp->sop_control->controller = nullptr; |
| 5248 | } |
| 5249 | pp->sop_control = nullptr; |
| 5250 | pp->sop_riding = nullptr; |
| 5251 | pp->sop_remote = nullptr; |
| 5252 | pp->sop = nullptr; |
| 5253 | DoPlayerBeginRun(pp); |
| 5254 | } |
| 5255 | |
| 5256 | //--------------------------------------------------------------------------- |
| 5257 | // |
no test coverage detected