@@ -401,7 +401,7 @@ void func_80ABA9B8(EnNiwLady* this, GlobalContext* globalCtx) {
401401 } else {
402402 // TODO: get-item-rework Adult trade sequence
403403 this -> getItemEntry = Randomizer_GetItemFromKnownCheck (RC_KAK_ANJU_AS_ADULT , GI_POCKET_EGG );
404- GiveItemEntryFromActor ( & this -> actor , globalCtx , this -> getItemEntry , 200.0f , 100.0f ) ;
404+ gSaveContext . itemGetInf [ 2 ] |= 0x1000 ;
405405 }
406406
407407 this -> actionFunc = func_80ABAC00 ;
@@ -431,7 +431,14 @@ void func_80ABAB08(EnNiwLady* this, GlobalContext* globalCtx) {
431431 case 0 :
432432 Message_CloseTextbox (globalCtx );
433433 this -> actor .parent = NULL ;
434- func_8002F434 (& this -> actor , globalCtx , GI_COJIRO , 200.0f , 100.0f );
434+ if (!gSaveContext .n64ddFlag ) {
435+ func_8002F434 (& this -> actor , globalCtx , GI_COJIRO , 200.0f , 100.0f );
436+ } else {
437+ // TODO: get-item-rework Adult trade sequence
438+ this -> getItemEntry = Randomizer_GetItemFromKnownCheck (RC_KAK_TRADE_POCKET_CUCCO , GI_COJIRO );
439+ Randomizer_ConsumeAdultTradeItem (globalCtx , ITEM_POCKET_CUCCO );
440+ gSaveContext .itemGetInf [2 ] |= 0x4000 ;
441+ }
435442 this -> actionFunc = func_80ABAC00 ;
436443 break ;
437444 case 1 :
@@ -455,18 +462,14 @@ void func_80ABAC00(EnNiwLady* this, GlobalContext* globalCtx) {
455462 } else {
456463 getItemId = this -> getItemId ;
457464 if (LINK_IS_ADULT ) {
458- getItemId = !(gSaveContext .itemGetInf [2 ] & 0x1000 ) ? GI_POCKET_EGG : GI_COJIRO ;
459-
460- if (gSaveContext .n64ddFlag ) {
461- if (getItemId == GI_POCKET_EGG ) {
462- // TODO: get-item-rework Adult trade sequence
463- this -> getItemEntry = Randomizer_GetItemFromKnownCheck (RC_KAK_ANJU_AS_ADULT , GI_POCKET_EGG );
464- GiveItemEntryFromActor (& this -> actor , globalCtx , this -> getItemEntry , 200.0f , 100.0f );
465- } else {
466- this -> getItemEntry = Randomizer_GetItemFromKnownCheck (RC_KAK_TRADE_POCKET_CUCCO , GI_COJIRO );
467- Randomizer_ConsumeAdultTradeItem (globalCtx , ITEM_POCKET_CUCCO );
468- GiveItemEntryFromActor (& this -> actor , globalCtx , this -> getItemEntry , 200.0f , 100.0f );
469- }
465+ if (!gSaveContext .n64ddFlag ) {
466+ getItemId = !(gSaveContext .itemGetInf [2 ] & 0x1000 ) ? GI_POCKET_EGG : GI_COJIRO ;
467+ } else {
468+ // TODO: get-item-rework Adult trade sequence
469+ getItemId = this -> getItemEntry .getItemId ;
470+ GiveItemEntryFromActor (& this -> actor , globalCtx , this -> getItemEntry , 200.0f , 100.0f );
471+ // Skip setting item flags because that was done earlier
472+ this -> actionFunc = func_80ABA778 ;
470473 }
471474 }
472475 if (this -> getItemEntry .getItemId == GI_NONE ) {
0 commit comments