1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-06-08 17:41:56 +00:00

T() macro in overlays 5 (#2537)

* T() in some ovl_En_*

* T() in some more ovl_En_*

* old man appears
This commit is contained in:
Dragorn421 2025-05-25 23:57:27 +02:00 committed by GitHub
parent faf2003d37
commit c854743d84
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 123 additions and 104 deletions

View file

@ -17,6 +17,7 @@
#include "sfx.h"
#include "sys_matrix.h"
#include "terminal.h"
#include "translation.h"
#include "z_en_item00.h"
#include "z_lib.h"
#include "z64effect.h"
@ -147,8 +148,7 @@ void EnAnubice_Init(Actor* thisx, PlayState* play) {
ANUBICE_LIMB_MAX);
PRINTF("\n\n");
// "☆☆☆☆☆ Anubis occurence ☆☆☆☆☆"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ アヌビス発生 ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ アヌビス発生 ☆☆☆☆☆ \n", "☆☆☆☆☆ Anubis occurrence ☆☆☆☆☆ \n") VT_RST);
this->actor.naviEnemyId = NAVI_ENEMY_ANUBIS;
@ -196,9 +196,9 @@ void EnAnubice_FindFlameCircles(EnAnubice* this, PlayState* play) {
currentProp = currentProp->next;
} else {
this->flameCircles[flameCirclesFound] = (BgHidanCurtain*)currentProp;
// "☆☆☆☆☆ How many fires? ☆☆☆☆☆"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 火は幾つ? ☆☆☆☆☆ %d\n" VT_RST, flameCirclesFound);
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 火は幾つ? ☆☆☆☆☆ %x\n" VT_RST,
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 火は幾つ? ☆☆☆☆☆ %d\n", "☆☆☆☆☆ How many fires? ☆☆☆☆☆ %d\n") VT_RST,
flameCirclesFound);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ 火は幾つ? ☆☆☆☆☆ %x\n", "☆☆☆☆☆ How many fires? ☆☆☆☆☆ %x\n") VT_RST,
this->flameCircles[flameCirclesFound]);
if (flameCirclesFound < ARRAY_COUNT(this->flameCircles) - 1) {
flameCirclesFound++;

View file

@ -10,6 +10,7 @@
#include "printf.h"
#include "regs.h"
#include "terminal.h"
#include "translation.h"
#include "z_lib.h"
#include "z64debug_display.h"
#include "z64play.h"
@ -40,8 +41,9 @@ void EnAnubiceTag_Init(Actor* thisx, PlayState* play) {
EnAnubiceTag* this = (EnAnubiceTag*)thisx;
PRINTF("\n\n");
// "Anubis control tag generated"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ アヌビス制御タグ発生 ☆☆☆☆☆ %d\n" VT_RST, this->actor.params);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ アヌビス制御タグ発生 ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Anubis control tag generated ☆☆☆☆☆ %d\n")
VT_RST,
this->actor.params);
if (this->actor.params < -1) {
this->actor.params = 0;

View file

@ -10,6 +10,7 @@
#include "segmented_address.h"
#include "sfx.h"
#include "terminal.h"
#include "translation.h"
#include "z64effect.h"
#include "z64play.h"
#include "z64player.h"
@ -73,10 +74,10 @@ void EnBomBowlMan_Init(Actor* thisx, PlayState* play2) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f);
SkelAnime_InitFlex(play, &this->skelAnime, &gChuGirlSkel, &gChuGirlNoddingOffAnim, this->jointTable,
this->morphTable, 11);
// "☆ Man, my shoulders hurt~ ☆"
PRINTF(VT_FGCOL(GREEN) "☆ もー 肩こっちゃうよねぇ〜 \t\t\n" VT_RST);
// "☆ Isn't there some sort of job that will pay better and be more relaxing? ☆ %d"
PRINTF(VT_FGCOL(GREEN) "☆ もっとラクしてもうかるバイトないかしら? ☆ %d\n" VT_RST, play->bombchuBowlingStatus);
PRINTF(VT_FGCOL(GREEN) T("☆ もー 肩こっちゃうよねぇ〜 \t\t\n", "☆ Man, my shoulders hurt~ \t\t\n") VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆ もっとラクしてもうかるバイトないかしら? ☆ %d\n",
"☆ Isn't there some sort of job that will pay better and be more relaxing? ☆ %d\n") VT_RST,
play->bombchuBowlingStatus);
this->posCopy = this->actor.world.pos;
this->actor.shape.yOffset = -60.0f;
Actor_SetScale(&this->actor, 0.013f);
@ -233,12 +234,12 @@ void EnBomBowlMan_RunGame(EnBomBowlMan* this, PlayState* play) {
if (BREG(3)) {
PRINTF(VT_FGCOL(RED) "☆ game_play->bomchu_game_flag ☆ %d\n" VT_RST, play->bombchuBowlingStatus);
// "HOW'S THE FIRST WALL DOING?"
PRINTF(VT_FGCOL(RED) "☆ 壁1の状態どう? ☆ %d\n" VT_RST, this->wallStatus[0]);
// "HOW'S THE SECOND WALL DOING?"
PRINTF(VT_FGCOL(RED) "☆ 壁2の状態どう? ☆ %d\n" VT_RST, this->wallStatus[1]);
// "HOLE INFORMATION"
PRINTF(VT_FGCOL(RED) "☆ 穴情報\t ☆ %d\n" VT_RST, this->bowlPit->status);
PRINTF(VT_FGCOL(RED) T("☆ 壁1の状態どう? ☆ %d\n", "☆ What's the state of wall 1? ☆ %d\n") VT_RST,
this->wallStatus[0]);
PRINTF(VT_FGCOL(RED) T("☆ 壁2の状態どう? ☆ %d\n", "☆ What's the state of wall 2? ☆ %d\n") VT_RST,
this->wallStatus[1]);
PRINTF(VT_FGCOL(RED) T("☆ 穴情報\t ☆ %d\n", "☆ Hole Information\t ☆ %d\n") VT_RST,
this->bowlPit->status);
PRINTF("\n\n");
}
@ -248,15 +249,13 @@ void EnBomBowlMan_RunGame(EnBomBowlMan* this, PlayState* play) {
if ((this->wallStatus[0] != 1) && (this->wallStatus[1] != 1) && (this->bowlPit->status == 2)) {
this->gameResult = 1; // Won
this->bowlPit->status = 0;
// "Center HIT!"
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 中央HIT!!!! ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 中央HIT!!!! ☆☆☆☆☆ \n", "☆☆☆☆☆ Center HIT!!!! ☆☆☆☆☆ \n") VT_RST);
}
if ((play->bombchuBowlingStatus == -1) && (play->actorCtx.actorLists[ACTORCAT_EXPLOSIVE].length == 0) &&
(this->bowlPit->status == 0) && (this->wallStatus[0] != 1) && (this->wallStatus[1] != 1)) {
this->gameResult = 2; // Lost
// "Bombchu lost"
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ ボムチュウ消化 ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ ボムチュウ消化 ☆☆☆☆☆ \n", "☆☆☆☆☆ Bombchu digestion ☆☆☆☆☆ \n") VT_RST);
}
}
@ -470,8 +469,7 @@ void EnBomBowlMan_BeginPlayGame(EnBomBowlMan* this, PlayState* play) {
BREG(2) = 0;
}
// "Wow"
PRINTF(VT_FGCOL(YELLOW) "☆ わー ☆ %d\n" VT_RST, play->bombchuBowlingStatus);
PRINTF(VT_FGCOL(YELLOW) T("☆ わー ☆ %d\n", "☆ Wow ☆ %d\n") VT_RST, play->bombchuBowlingStatus);
Player_SetCsActionWithHaltedActors(play, NULL, PLAYER_CSACTION_7);
this->actionFunc = EnBomBowlMan_SetupRunGame;
}

View file

@ -5,6 +5,7 @@
#include "regs.h"
#include "sfx.h"
#include "terminal.h"
#include "translation.h"
#include "z_lib.h"
#include "z64play.h"
#include "z64player.h"
@ -208,12 +209,10 @@ void EnBomBowlPit_WaitTillPrizeGiven(EnBomBowlPit* this, PlayState* play) {
void EnBomBowlPit_Reset(EnBomBowlPit* this, PlayState* play) {
if ((Message_GetState(&play->msgCtx) == TEXT_STATE_DONE) && Message_ShouldAdvance(play)) {
// "Normal termination"/"completion"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n", "☆☆☆☆☆ Normal termination ☆☆☆☆☆ \n") VT_RST);
if (this->getItemId == GI_HEART_PIECE) {
gSaveContext.healthAccumulator = 0x140;
// "Ah recovery!" (?)
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ あぁ回復! ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ あぁ回復! ☆☆☆☆☆ \n", "☆☆☆☆☆ Ah recovery! ☆☆☆☆☆ \n") VT_RST);
}
this->exItemDone = 0;
this->status = 2;

View file

@ -16,6 +16,7 @@
#include "sfx.h"
#include "sys_math3d.h"
#include "sys_matrix.h"
#include "translation.h"
#include "z_lib.h"
#include "z64play.h"
#include "z64player.h"
@ -182,8 +183,8 @@ void EnButte_Init(Actor* thisx, PlayState* play) {
EnButte_SetupFlyAround(this);
this->actor.shape.rot.x -= 0x2320;
this->drawSkelAnime = true;
// "field keep butterfly"
PRINTF("(field keep 蝶)(%x)(arg_data 0x%04x)\n", this, this->actor.params);
PRINTF(T("(field keep 蝶)(%x)(arg_data 0x%04x)\n", "(field keep butterfly)(%x)(arg_data 0x%04x)\n"), this,
this->actor.params);
}
void EnButte_Destroy(Actor* thisx, PlayState* play2) {

View file

@ -13,6 +13,7 @@
#include "rand.h"
#include "regs.h"
#include "terminal.h"
#include "translation.h"
#include "z64debug_display.h"
#include "z64play.h"
#include "z64save.h"
@ -92,14 +93,14 @@ void EnChanger_Init(Actor* thisx, PlayState* play2) {
}
PRINTF("\n\n");
// "Treasure generation (which room is it?)"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 宝発生(部屋はどれ?) %d\n" VT_RST, play->roomCtx.curRoom.num);
// "How is the Bit?"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ ビットは? \t %x\n" VT_RST, play->actorCtx.flags.chest);
// "How is the Save BIT?"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ セーブBITは? %x\n" VT_RST, sTreasureFlags[minigameRoomNum]);
// "Is it already a zombie?"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ もう、ゾンビ?\t %d\n" VT_RST, this->roomChestsOpened);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 宝発生(部屋はどれ?) %d\n", "☆☆☆☆☆ Treasure found (which room?) %d\n") VT_RST,
play->roomCtx.curRoom.num);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ ビットは? \t %x\n", "☆☆☆☆☆ What about bits? \t %x\n") VT_RST,
play->actorCtx.flags.chest);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ セーブBITは? %x\n", "☆☆☆☆☆ What is the save BIT? %x\n") VT_RST,
sTreasureFlags[minigameRoomNum]);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ もう、ゾンビ?\t %d\n", "☆☆☆☆☆ Already a zombie?\t %d\n") VT_RST,
this->roomChestsOpened);
PRINTF("\n\n");
minigameRoomNum *= 2;
@ -120,8 +121,9 @@ void EnChanger_Init(Actor* thisx, PlayState* play2) {
0xFF;
Actor_Spawn(&play->actorCtx, play, ACTOR_ITEM_ETCETERA, 20.0f, 20.0f, -2500.0f, 0, 0, 0,
((sTreasureFlags[5] & 0x1F) << 8) + rewardParams);
// "Central treasure instance/occurrence (GREAT)"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 中央宝発生() ☆☆☆☆☆ %x\n" VT_RST, rewardChestParams);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ 中央宝発生() ☆☆☆☆☆ %x\n",
"☆☆☆☆☆ Central treasure occurrence (GREAT) ☆☆☆☆☆ %x\n") VT_RST,
rewardChestParams);
this->actionFunc = EnChanger_SetHeartPieceFlag;
return;
}
@ -157,14 +159,15 @@ void EnChanger_Init(Actor* thisx, PlayState* play2) {
leftChestParams);
if (this->leftChest != NULL) {
// "Left treasure generation (what does it contain?)"
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 左宝発生(ナニがはいってるの?) ☆☆☆☆☆ %x\n" VT_RST, leftChestParams);
// "What is the room number?"
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 部屋番号は? %x\n" VT_RST, play->roomCtx.curRoom.num);
// "What is the bit?"
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ ビットはなぁに? %x\n" VT_RST, this->rightChestNum);
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 左宝発生(ナニがはいってるの?) ☆☆☆☆☆ %x\n",
"☆☆☆☆☆ Left treasure generation (what does it contain?) ☆☆☆☆☆ %x\n") VT_RST,
leftChestParams);
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 部屋番号は? %x\n", "☆☆☆☆☆ What is the room number? %x\n") VT_RST,
play->roomCtx.curRoom.num);
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ ビットはなぁに? %x\n", "☆☆☆☆☆ What is the bit? %x\n") VT_RST,
this->rightChestNum);
// "Sukesuke-kun" (something to do with being invisible)
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ すけすけ君? %x\n" VT_RST, rightChestItem);
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ すけすけ君? %x\n", "☆☆☆☆☆ See-through guy? %x\n") VT_RST, rightChestItem);
PRINTF("\n\n");
if (this->roomChestsOpened) {
Flags_SetTreasure(play, this->leftChestNum & 0x1F);
@ -181,14 +184,15 @@ void EnChanger_Init(Actor* thisx, PlayState* play2) {
rightChestParams);
if (this->rightChest != NULL) {
// "Right treasure generation (what does it contain?)"
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ 右宝発生(ナニがはいってるの?) ☆☆☆☆☆ %x\n" VT_RST, rightChestParams);
// "What is the room number?"
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ 部屋番号は? %d\n" VT_RST, play->roomCtx.curRoom.num);
// "What is the bit?"
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ ビットはなぁに? %x\n" VT_RST, this->leftChestNum);
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ 右宝発生(ナニがはいってるの?) ☆☆☆☆☆ %x\n",
"☆☆☆☆☆ Right treasure generation (what does it contain?) ☆☆☆☆☆ %x\n") VT_RST,
rightChestParams);
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ 部屋番号は? %d\n", "☆☆☆☆☆ What is the room number? %d\n") VT_RST,
play->roomCtx.curRoom.num);
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ ビットはなぁに? %x\n", "☆☆☆☆☆ What is the bit? %x\n") VT_RST,
this->leftChestNum);
// "Sukesuke-kun" (something to do with being invisible)
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ すけすけ君? %x\n" VT_RST, leftChestItem);
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ すけすけ君? %x\n", "☆☆☆☆☆ See-through guy? %x\n") VT_RST, leftChestItem);
PRINTF("\n\n");
if (this->roomChestsOpened) {
@ -249,8 +253,9 @@ void EnChanger_OpenChests(EnChanger* this, PlayState* play) {
} else {
unopenedChestItemType =
(s16)(this->rightChestGetItemId - GI_RUPEE_GREEN_LOSE) + EXITEM_GREEN_RUPEE_CHEST;
// "Open right treasure (chest)"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 右宝開く ☆☆☆☆☆ %d\n" VT_RST, unopenedChestItemType);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 右宝開く ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Right treasure open ☆☆☆☆☆ %d\n")
VT_RST,
unopenedChestItemType);
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_EX_ITEM, xPos, yPos, zPos, 0, 0, 0,
unopenedChestItemType);
}
@ -267,8 +272,8 @@ void EnChanger_OpenChests(EnChanger* this, PlayState* play) {
} else {
unopenedChestItemType =
(s16)(this->leftChestGetItemId - GI_RUPEE_GREEN_LOSE) + EXITEM_GREEN_RUPEE_CHEST;
// "Open left treasure (chest)"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 左宝開く ☆☆☆☆☆ %d\n" VT_RST, unopenedChestItemType);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 左宝開く ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Left treasure open ☆☆☆☆☆ %d\n") VT_RST,
unopenedChestItemType);
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_EX_ITEM, xPos, yPos, zPos, 0, 0, 0,
unopenedChestItemType);
}

View file

@ -17,6 +17,7 @@
#include "sequence.h"
#include "sfx.h"
#include "terminal.h"
#include "translation.h"
#include "z_lib.h"
#include "z64audio.h"
#include "z64effect.h"
@ -497,8 +498,7 @@ void func_809EEA90(EnDivingGame* this, PlayState* play) {
void func_809EEAF8(EnDivingGame* this, PlayState* play) {
SkelAnime_Update(&this->skelAnime);
if (Message_GetState(&play->msgCtx) == TEXT_STATE_DONE && Message_ShouldAdvance(play)) {
// "Successful completion"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n", "☆☆☆☆☆ Normal termination ☆☆☆☆☆ \n") VT_RST);
this->allRupeesThrown = this->state = this->phase = this->unk_2A2 = this->grabbedRupeesCounter = 0;
SET_EVENTCHKINF(EVENTCHKINF_38);
this->actionFunc = func_809EDCB0;

View file

@ -15,6 +15,7 @@
#include "sfx.h"
#include "sys_matrix.h"
#include "terminal.h"
#include "translation.h"
#include "z_lib.h"
#include "z64draw.h"
#include "z64play.h"
@ -69,10 +70,10 @@ void EnExItem_Init(Actor* thisx, PlayState* play) {
this->type = PARAMS_GET_U(this->actor.params, 0, 8);
this->unusedParam = PARAMS_GET_U(this->actor.params, 8, 8);
PRINTF("\n\n");
// "What will come out?"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ なにがでるかな? ☆☆☆☆☆ %d\n" VT_RST, this->type);
// "What will come out?"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ なにがでるかな? ☆☆☆☆☆ %d\n" VT_RST, this->unusedParam);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ なにがでるかな? ☆☆☆☆☆ %d\n", "☆☆☆☆☆ What will you get? ☆☆☆☆☆ %d\n") VT_RST,
this->type);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ なにがでるかな? ☆☆☆☆☆ %d\n", "☆☆☆☆☆ What will you get? ☆☆☆☆☆ %d\n") VT_RST,
this->unusedParam);
this->initPos = this->actor.world.pos;
this->getItemObjectId = -1;
switch (this->type) {
@ -121,10 +122,9 @@ void EnExItem_Init(Actor* thisx, PlayState* play) {
this->actor.draw = NULL;
if (this->requiredObjectSlot < 0) {
Actor_Kill(&this->actor);
// "What?"
PRINTF("なにみの? %d\n", this->actor.params);
// "bank is funny"
PRINTF(VT_FGCOL(MAGENTA) " バンクおかしいしぞ!%d\n" VT_RST "\n", this->actor.params);
PRINTF(T("なにみの? %d\n", "What's that? %d\n"), this->actor.params);
PRINTF(VT_FGCOL(MAGENTA) T(" バンクおかしいしぞ!%d\n", " The bank is weird!%d\n") VT_RST "\n",
this->actor.params);
return;
}
this->actionFunc = EnExItem_WaitForObject;
@ -135,12 +135,16 @@ void EnExItem_WaitForObject(EnExItem* this, PlayState* play) {
s32 onCounter;
if (Object_IsLoaded(&play->objectCtx, this->requiredObjectSlot)) {
// "End of transfer"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 転送終了 ☆☆☆☆☆ %d\n" VT_RST, this->actor.params);
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 転送終了 ☆☆☆☆☆ %d\n" VT_RST, this->actor.params);
PRINTF(VT_FGCOL(BLUE) "☆☆☆☆☆ 転送終了 ☆☆☆☆☆ %d\n" VT_RST, this->actor.params);
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 転送終了 ☆☆☆☆☆ %d\n" VT_RST, this->actor.params);
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ 転送終了 ☆☆☆☆☆ %d\n\n" VT_RST, this->actor.params);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 転送終了 ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Transfer completed ☆☆☆☆☆ %d\n") VT_RST,
this->actor.params);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ 転送終了 ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Transfer completed ☆☆☆☆☆ %d\n") VT_RST,
this->actor.params);
PRINTF(VT_FGCOL(BLUE) T("☆☆☆☆☆ 転送終了 ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Transfer completed ☆☆☆☆☆ %d\n") VT_RST,
this->actor.params);
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 転送終了 ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Transfer completed ☆☆☆☆☆ %d\n") VT_RST,
this->actor.params);
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ 転送終了 ☆☆☆☆☆ %d\n\n", "☆☆☆☆☆ Transfer completed ☆☆☆☆☆ %d\n\n") VT_RST,
this->actor.params);
this->actor.objectSlot = this->requiredObjectSlot;
this->actor.draw = EnExItem_Draw;
this->stopRotate = false;
@ -314,14 +318,13 @@ void EnExItem_BowlPrize(EnExItem* this, PlayState* play) {
this->actor.world.pos.z += (tmpf3 / tmpf4) * 5.0f;
}
} else {
// "parent"
PRINTF(VT_FGCOL(GREEN) " ☆☆☆☆☆ 母親ー? ☆☆☆☆☆ %x\n" VT_RST, this->actor.parent);
// "Can it move?"
PRINTF(VT_FGCOL(GREEN) " ☆☆☆☆☆ 動いてねー? ☆☆☆☆☆ %x\n" VT_RST, this->actor.parent->update);
PRINTF(VT_FGCOL(GREEN) T(" ☆☆☆☆☆ 母親ー? ☆☆☆☆☆ %x\n", " ☆☆☆☆☆ Mother? ☆☆☆☆☆ %x\n") VT_RST,
this->actor.parent);
PRINTF(VT_FGCOL(GREEN) T(" ☆☆☆☆☆ 動いてねー? ☆☆☆☆☆ %x\n", " ☆☆☆☆☆ Is it moving? ☆☆☆☆☆ %x\n") VT_RST,
this->actor.parent->update);
if ((this->actor.parent != NULL) && (this->actor.parent->update != NULL)) {
((EnBomBowlPit*)this->actor.parent)->exItemDone = 1;
// "It can't move!"
PRINTF(VT_FGCOL(GREEN) " ☆☆☆☆☆ さぁきえるぞ! ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T(" ☆☆☆☆☆ さぁきえるぞ! ☆☆☆☆☆ \n", " ☆☆☆☆☆ Now it's gone! ☆☆☆☆☆ \n") VT_RST);
}
Actor_Kill(&this->actor);
}
@ -426,8 +429,7 @@ void EnExItem_TargetPrizeGive(EnExItem* this, PlayState* play) {
void EnExItem_TargetPrizeFinish(EnExItem* this, PlayState* play) {
if ((Message_GetState(&play->msgCtx) == TEXT_STATE_DONE) && Message_ShouldAdvance(play)) {
// "Successful completion"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n", "☆☆☆☆☆ Normal termination ☆☆☆☆☆ \n") VT_RST);
SET_ITEMGETINF(ITEMGETINF_1D);
Actor_Kill(&this->actor);
}

View file

@ -10,6 +10,7 @@
#include "segmented_address.h"
#include "sfx.h"
#include "terminal.h"
#include "translation.h"
#include "versions.h"
#include "z_lib.h"
#include "z64face_reaction.h"
@ -100,7 +101,8 @@ void EnNiwLady_Init(Actor* thisx, PlayState* play) {
Actor_Kill(thisx);
return;
}
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ ねぇちゃんうっふん ☆☆☆☆☆ %d\n" VT_RST, this->unk_278);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ ねぇちゃんうっふん ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Neechan ugh ☆☆☆☆☆ %d\n") VT_RST,
this->unk_278);
PRINTF("\n\n");
this->actionFunc = func_80AB9F24;
thisx->cullingVolumeDistance = 600.0f;
@ -228,8 +230,9 @@ void func_80ABA244(EnNiwLady* this, PlayState* play) {
gSaveContext.save.info.infTable[INFTABLE_INDEX_199_19A_19B_19C_19D_19E_19F] |=
D_80ABB3B4[currentCucco->unk_2AA];
if (BREG(1) != 0) {
// "GET inside the chicken fence!"
PRINTF(VT_FGCOL(GREEN) "☆ 鶏柵内GET!☆ %x\n" VT_RST, D_80ABB3B4[currentCucco->unk_2AA]);
PRINTF(VT_FGCOL(GREEN) T("☆ 鶏柵内GET!☆ %x\n", "☆ GET inside the chicken fence! ☆ %x\n")
VT_RST,
D_80ABB3B4[currentCucco->unk_2AA]);
}
}
this->cuccosInPen++;
@ -267,12 +270,21 @@ void func_80ABA244(EnNiwLady* this, PlayState* play) {
}
if (Actor_TalkOfferAccepted(&this->actor, play)) {
PRINTF("\n\n");
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ ねぇちゃん選択\t ☆☆☆☆ %d\n" VT_RST, phi_s1);
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ ねぇちゃんハート ☆☆☆☆ %d\n" VT_RST, this->unk_26C);
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ ねぇちゃん保存 ☆☆☆☆ %d\n" VT_RST, this->unk_26A);
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ ねぇちゃん今\t ☆☆☆☆ %d\n" VT_RST, this->cuccosInPen);
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ this->actor.talk_message ☆☆ %x\n" VT_RST, this->actor.textId);
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ this->message_end_code ☆☆ %d\n" VT_RST, this->unk_262);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ ねぇちゃん選択\t ☆☆☆☆ %d\n", "☆☆☆☆☆ Select your sister\t ☆☆☆☆ %d\n") VT_RST,
phi_s1);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ ねぇちゃんハート ☆☆☆☆ %d\n", "☆☆☆☆☆ Neechan Heart ☆☆☆☆ %d\n") VT_RST,
this->unk_26C);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ ねぇちゃん保存 ☆☆☆☆ %d\n", "☆☆☆☆☆ Save my sister ☆☆☆☆ %d\n")
VT_RST,
this->unk_26A);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ ねぇちゃん今\t ☆☆☆☆ %d\n", "☆☆☆☆☆ Neechan now\t ☆☆☆☆ %d\n") VT_RST,
this->cuccosInPen);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ this->actor.talk_message ☆☆ %x\n", "☆☆☆☆☆ this->actor.talk_message ☆☆ %x\n")
VT_RST,
this->actor.textId);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ this->message_end_code ☆☆ %d\n", "☆☆☆☆☆ this->message_end_code ☆☆ %d\n")
VT_RST,
this->unk_262);
PRINTF("\n\n");
if (MaskReaction_GetTextId(play, MASK_REACTION_SET_CUCCO_LADY) == 0) {
#if OOT_VERSION >= NTSC_1_1
@ -290,13 +302,15 @@ void func_80ABA244(EnNiwLady* this, PlayState* play) {
this->unk_26C = 1;
this->unk_262 = TEXT_STATE_EVENT;
this->unk_26A = this->cuccosInPen;
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ 柵内BIT変更前 ☆☆ %x\n" VT_RST,
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ 柵内BIT変更前 ☆☆ %x\n", "☆☆☆☆☆ Before changing the fence BIT ☆☆ %x\n")
VT_RST,
gSaveContext.save.info.infTable[INFTABLE_INDEX_199_19A_19B_19C_19D_19E_19F]);
gSaveContext.save.info.infTable[INFTABLE_INDEX_199_19A_19B_19C_19D_19E_19F] &=
(u16) ~(INFTABLE_MASK(INFTABLE_199) | INFTABLE_MASK(INFTABLE_19A) | INFTABLE_MASK(INFTABLE_19B) |
INFTABLE_MASK(INFTABLE_19C) | INFTABLE_MASK(INFTABLE_19D) | INFTABLE_MASK(INFTABLE_19E) |
INFTABLE_MASK(INFTABLE_19F));
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ 柵内BIT変更後 ☆☆ %x\n" VT_RST,
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ 柵内BIT変更後 ☆☆ %x\n",
"☆☆☆☆☆ After changing the BIT inside the fence ☆☆ %x\n") VT_RST,
gSaveContext.save.info.infTable[INFTABLE_INDEX_199_19A_19B_19C_19D_19E_19F]);
PRINTF("\n\n");
this->actionFunc = func_80ABA654;
@ -329,8 +343,8 @@ void func_80ABA244(EnNiwLady* this, PlayState* play) {
void func_80ABA654(EnNiwLady* this, PlayState* play) {
if (this->unk_262 == Message_GetState(&play->msgCtx) && Message_ShouldAdvance(play)) {
Message_CloseTextbox(play);
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ ハート ☆☆☆☆☆ %d\n" VT_RST, this->unk_26C);
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 爆弾 ☆☆☆☆☆ %d\n" VT_RST, this->unk_272);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ ハート ☆☆☆☆☆ %d\n", "☆☆☆☆☆ heart ☆☆☆☆☆ %d\n") VT_RST, this->unk_26C);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ 爆弾 ☆☆☆☆☆ %d\n", "☆☆☆☆☆ bomb ☆☆☆☆☆ %d\n") VT_RST, this->unk_272);
PRINTF("\n\n");
this->unk_26E = 0xB;
if (!GET_ITEMGETINF(ITEMGETINF_0C)) {
@ -353,8 +367,7 @@ static s16 sTradeItemTextIds[] = { 0x503E, 0x503F, 0x5047, 0x5040, 0x5042, 0x504
0x5044, 0x00CF, 0x5045, 0x5042, 0x5027 };
void func_80ABA778(EnNiwLady* this, PlayState* play) {
// "☆☆☆☆☆ Adult message check ☆☆☆☆☆"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ アダルトメッセージチェック ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ アダルトメッセージチェック ☆☆☆☆☆ \n", "☆☆☆☆☆ Adult message check ☆☆☆☆☆ \n") VT_RST);
this->unk_262 = TEXT_STATE_DONE;
this->unk_273 = 0;
if (!GET_ITEMGETINF(ITEMGETINF_2C)) {
@ -480,7 +493,7 @@ void func_80ABAC84(EnNiwLady* this, PlayState* play) {
if ((Message_GetState(&play->msgCtx) != TEXT_STATE_DONE) || !Message_ShouldAdvance(play)) {
return;
}
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n", "☆☆☆☆☆ Normal termination ☆☆☆☆☆ \n") VT_RST);
if (LINK_IS_ADULT) {
if (!GET_ITEMGETINF(ITEMGETINF_2C)) {
SET_ITEMGETINF(ITEMGETINF_2C);
@ -496,7 +509,7 @@ void func_80ABAC84(EnNiwLady* this, PlayState* play) {
}
void func_80ABAD38(EnNiwLady* this, PlayState* play) {
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 通常メッセージチェック ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 通常メッセージチェック ☆☆☆☆☆ \n", "☆☆☆☆☆ Normal message check ☆☆☆☆☆ \n") VT_RST);
this->unk_262 = TEXT_STATE_DONE;
this->actionFunc = func_80ABAD7C;
}

View file

@ -10,6 +10,7 @@
#include "seqcmd.h"
#include "sequence.h"
#include "terminal.h"
#include "translation.h"
#include "z64play.h"
#include "z64player.h"
#include "z64save.h"
@ -173,8 +174,8 @@ void EnSyatekiMan_Init(Actor* thisx, PlayState* play) {
EnSyatekiMan* this = (EnSyatekiMan*)thisx;
PRINTF("\n\n");
// "Old man appeared!! Muhohohohohohohon"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 親父登場!!むほほほほほほほーん ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 親父登場!!むほほほほほほほーん ☆☆☆☆☆ \n",
"☆☆☆☆☆ Old man appears!! Muhohohohohohoon ☆☆☆☆☆ \n") VT_RST);
this->actor.attentionRangeType = ATTENTION_RANGE_1;
Actor_SetScale(&this->actor, 0.01f);
SkelAnime_InitFlex(play, &this->skelAnime, &gObjectOssanSkel, &gObjectOssanAnim_000338, this->jointTable,
@ -421,8 +422,7 @@ void EnSyatekiMan_GivePrize(EnSyatekiMan* this, PlayState* play) {
void EnSyatekiMan_FinishPrize(EnSyatekiMan* this, PlayState* play) {
SkelAnime_Update(&this->skelAnime);
if ((Message_GetState(&play->msgCtx) == TEXT_STATE_DONE) && Message_ShouldAdvance(play)) {
// "Successful completion"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n", "☆☆☆☆☆ Normal termination ☆☆☆☆☆ \n") VT_RST);
if (!LINK_IS_ADULT) {
SET_ITEMGETINF(ITEMGETINF_0D);
} else if ((this->getItemId == GI_QUIVER_40) || (this->getItemId == GI_QUIVER_50)) {
@ -444,8 +444,7 @@ void EnSyatekiMan_RestartGame(EnSyatekiMan* this, PlayState* play) {
gallery->signal = ENSYATEKI_START;
this->gameResult = SYATEKI_RESULT_NONE;
this->actionFunc = EnSyatekiMan_WaitForGame;
// "Let's try again! Baby!"
PRINTF(VT_FGCOL(BLUE) "再挑戦だぜ!ベイビー!" VT_RST "\n");
PRINTF(VT_FGCOL(BLUE) T("再挑戦だぜ!ベイビー!", "Let's try again! Baby!") VT_RST "\n");
}
}
}