| 753 | } |
| 754 | |
| 755 | S32 zNPCSpawner::SpawnBeastie(SMNPCStatus* npcstat, SMSPStatus* spstat) |
| 756 | { |
| 757 | zNPCCommon* npc; |
| 758 | zMovePoint* sp; |
| 759 | xVec3 pos_sp = { 0, 0, 0 }; |
| 760 | zMovePoint* nav_dest = NULL; |
| 761 | |
| 762 | npc = npcstat->npc; |
| 763 | sp = spstat->sp; |
| 764 | zMovePointGetNext(sp, sp, &nav_dest, NULL); |
| 765 | |
| 766 | if (nav_dest == NULL) |
| 767 | { |
| 768 | nav_dest = sp; |
| 769 | } |
| 770 | |
| 771 | xVec3Copy(&pos_sp, sp->PosGet()); |
| 772 | |
| 773 | npcstat->status = SM_NPC_SPAWNED; |
| 774 | XOrdRemove(&pendlist, npcstat, -1); |
| 775 | XOrdAppend(&actvlist, npcstat); |
| 776 | |
| 777 | npc->Respawn(&pos_sp, nav_dest, sp); |
| 778 | |
| 779 | cnt_spawn++; |
| 780 | |
| 781 | zEntEvent(npc_owner, eEventDuploNPCBorn); |
| 782 | |
| 783 | return 1; |
| 784 | } |
| 785 | |
| 786 | SMNPCStatus* zNPCSpawner::ToastedBeastie(zNPCCommon* npc) |
| 787 | { |
nothing calls this directly
no test coverage detected