MCPcopy Create free account
hub / github.com/bfbbdecomp/bfbb / KickFromTheNest

Method KickFromTheNest

src/SB/Game/zNPCGoalRobo.cpp:4216–4259  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4214}
4215
4216void zNPCGoalRespawn::KickFromTheNest()
4217{
4218 zNPCGoalAfterlife* wanna;
4219 zNPCRobot* npc = (zNPCRobot*)(psyche->clt_owner);
4220 zMovePoint* nav_preserveCurr = npc->nav_curr;
4221 zMovePoint* nav_preserveDest = npc->nav_dest;
4222
4223 npc->Reset();
4224 npc->ModelScaleSet(0.0f);
4225 wanna = (zNPCGoalAfterlife*)(psyche->FindGoal(NPC_GOAL_AFTERLIFE));
4226 if (wanna != NULL)
4227 {
4228 wanna->DieWithABang();
4229 }
4230
4231 xVec3Copy(npc->Pos(), &pos_poofHere);
4232 xVec3Copy(&npc->frame->mat.pos, &pos_poofHere);
4233
4234 npc->frame->mode = 1;
4235
4236 npc->frame->dvel.x = 0.0f;
4237 npc->frame->dvel.y = 0.0f;
4238 npc->frame->dvel.z = 0.0f;
4239
4240 npc->frame->vel.x = 0.0f;
4241 npc->frame->vel.y = 0.0f;
4242 npc->frame->vel.z = 0.0f;
4243
4244 npc->frame->mode |= 0xc;
4245
4246 npc->frame->dpos.x = 0.0f;
4247 npc->frame->dpos.y = 0.0f;
4248 npc->frame->dpos.z = 0.0f;
4249
4250 npc->frame->mode |= 2;
4251
4252 npc->nav_past = nav_preserveCurr;
4253 npc->nav_curr = nav_preserveCurr;
4254 npc->nav_dest = nav_preserveDest;
4255 npc->nav_lead = nav_preserveDest;
4256
4257 npc->arena.SetHome(npc, nav_preserveCurr);
4258 npc->psy_instinct->GoalSet(NPC_GOAL_IDLE, 1);
4259}
4260
4261S32 zNPCGoalRespawn::InputInfo(NPCSpawnInfo* info)
4262{

Callers

nothing calls this directly

Calls 7

xVec3CopyFunction · 0.85
FindGoalMethod · 0.80
DieWithABangMethod · 0.80
GoalSetMethod · 0.80
ResetMethod · 0.45
ModelScaleSetMethod · 0.45
PosMethod · 0.45

Tested by

no test coverage detected