Implement most of NPC_ACTOR class

This commit is contained in:
Cuyler36
2023-12-20 16:07:18 -05:00
parent e9991b80e4
commit 4c4140af99
5 changed files with 249 additions and 22 deletions
+2 -2
View File
@@ -48,8 +48,8 @@ static void aESC_actor_ct(ACTOR* actorx, GAME* game) {
if ((*Common_Get(clip).npc_clip->birth_check_proc)(actorx, game) == TRUE) {
(*Common_Get(clip).npc_clip->ct_proc)(actorx, game, &ct_data);
soncho_actor->npc_class._8F4 = -1;
soncho_actor->npc_class._751 = 3;
soncho_actor->npc_class.palActorIgnoreTimer = -1;
soncho_actor->npc_class.draw._5BD = 3;
if (soncho_event == NULL) {
soncho_event = (aESC_event_save_c*)mEv_reserve_save_area(mEv_EVENT_SONCHO_BRIDGE_MAKE, 34);
+1 -1
View File
@@ -136,7 +136,7 @@ static void Actor_ct(ACTOR* actor, GAME* game) {
(*Common_Get(clip).npc_clip->dma_draw_data_proc)(&draw_data, actor->npc_id);
tex_bank_id = mSc_bank_regist_check(exchange, draw_data.texture_bank);
npc_actor->texture_bank_idx = tex_bank_id;
npc_actor->draw.texture_bank_idx = tex_bank_id;
bank = &exchange->banks[tex_bank_id];
bank->num_exist++;
+2 -2
View File
@@ -49,7 +49,7 @@ extern void mMld_MakeMelody(u16 inst) {
extern void mMld_ActorMakeThisMelody(u8* melody, ACTOR* actor) {
if (actor != NULL && actor->part == ACTOR_PART_NPC) {
NPC_ACTOR* npc_actor = (NPC_ACTOR*)actor;
int melody_inst = npc_actor->melody_inst;
int melody_inst = npc_actor->talk_info.melody_inst;
if (melody_inst != 0) {
sAdo_Inst(melody_inst, melody);
@@ -60,7 +60,7 @@ extern void mMld_ActorMakeThisMelody(u8* melody, ACTOR* actor) {
extern void mMld_ActorMakeMelody(ACTOR* actor) {
if (actor != NULL && actor->part == ACTOR_PART_NPC) {
NPC_ACTOR* npc_actor = (NPC_ACTOR*)actor;
int melody_inst = npc_actor->melody_inst;
int melody_inst = npc_actor->talk_info.melody_inst;
if (melody_inst != 0) {
mMld_MakeMelody(melody_inst);
+2 -2
View File
@@ -787,7 +787,7 @@ static void mSCR_talk_inspection(TAISOU_NPC0_ACTOR* taisou_actor, GAME_PLAY* pla
Common_Get(clip).handOverItem_clip->player_after_mode = 8;
mDemo_Set_OrderValue(mDemo_ORDER_NPC0, 9, 3);
mMsg_Unset_LockContinue(msg_win);
taisou_actor->npc_actor_class.talk_base_anim_id = 30;
taisou_actor->npc_actor_class.talk_info.default_animation = 30;
}
break;
}
@@ -805,7 +805,7 @@ static void mSCR_talk_inspection(TAISOU_NPC0_ACTOR* taisou_actor, GAME_PLAY* pla
case 4:
{
if (Common_Get(clip).handOverItem_clip->master_actor == NULL) {
taisou_actor->npc_actor_class.talk_base_anim_id = -1;
taisou_actor->npc_actor_class.talk_info.default_animation = -1;
mDemo_Set_OrderValue(mDemo_ORDER_NPC0, 9, 0);
if (radiocard->days >= mSC_RADIO_DAYS) {