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

T() macro in overlays 6 (#2544)

* z_en_dns.c and questionable translation for 売りナッツ

* T() dnt_demo, dnt_jiji, dnt_nomal with translating the probably misspelled デグナッツ as deku scrub (japanese text of the game uses デクナッツ (note the second character is slightly different) and is translated to english as Deku Scrub)

* T() dy_extra, encount2, ex_ruppy, fhg_fire, fire_rock

* review

* なにみの? -> What?
This commit is contained in:
Dragorn421 2025-05-27 18:46:27 +02:00 committed by GitHub
parent 1eaae98ed3
commit 6459f33800
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 112 additions and 104 deletions

View file

@ -12,6 +12,7 @@
#include "printf.h"
#include "sfx.h"
#include "terminal.h"
#include "translation.h"
#include "z_en_item00.h"
#include "z_lib.h"
#include "z64effect.h"
@ -93,17 +94,17 @@ static u16 sStartingTextIds[] = {
#if DEBUG_FEATURES
static char* sItemDebugTxt[] = {
"デクの実売り ", // "Deku Nuts"
"デクの棒売り ", // "Deku Sticks"
"ハートの欠片売り ", // "Piece of Heart"
"デクの種売り ", // "Deku Seeds"
"デクの盾売り ", // "Deku Shield"
"バクダン売り ", // "Bombs"
"矢売り ", // "Arrows"
"赤のくすり売り ", // "Red Potion"
"緑のくすり売り ", // "Green Potion"
"デクの棒持てる数を増やす", // "Deku Stick Upgrade"
"デクの実持てる数を増やす", // "Deku Nut Upgrade"
T("デクの実売り ", "Deku Nuts "),
T("デクの棒売り ", "Deku Sticks "),
T("ハートの欠片売り ", "Piece of Heart "),
T("デクの種売り ", "Deku Seeds "),
T("デクの盾売り ", "Deku Shield "),
T("バクダン売り ", "Bombs "),
T("矢売り ", "Arrows "),
T("赤のくすり売り ", "Red Potion "),
T("緑のくすり売り ", "Green Potion "),
T("デクの棒持てる数を増やす", "Deku Stick Upgrade "),
T("デクの実持てる数を増やす", "Deku Nut Upgrade "),
};
#endif
@ -143,8 +144,9 @@ void EnDns_Init(Actor* thisx, PlayState* play) {
EnDns* this = (EnDns*)thisx;
if (DNS_GET_TYPE(&this->actor) < 0) {
// "Function Error (Deku Salesman)"
PRINTF(VT_FGCOL(RED) "引数エラー(売りナッツ)[ arg_data = %d ]" VT_RST "\n", this->actor.params);
PRINTF(VT_FGCOL(RED) T("引数エラー(売りナッツ)[ arg_data = %d ]",
"Argument error (selling nuts) [ arg_data = %d ]") VT_RST "\n",
this->actor.params);
Actor_Kill(&this->actor);
return;
}
@ -154,8 +156,8 @@ void EnDns_Init(Actor* thisx, PlayState* play) {
DNS_GET_TYPE(&this->actor) = DNS_TYPE_DEKU_SEEDS_30;
}
// "Deku Salesman"
PRINTF(VT_FGCOL(GREEN) "◆◆◆ 売りナッツ『%s』 ◆◆◆" VT_RST "\n", sItemDebugTxt[DNS_GET_TYPE(&this->actor)]);
PRINTF(VT_FGCOL(GREEN) T("◆◆◆ 売りナッツ『%s』 ◆◆◆", "◆◆◆ Selling nuts『%s』 ◆◆◆") VT_RST "\n",
sItemDebugTxt[DNS_GET_TYPE(&this->actor)]);
Actor_ProcessInitChain(&this->actor, sInitChain);

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 "z64debug_display.h"
@ -89,8 +90,8 @@ void EnDntDemo_Init(Actor* thisx, PlayState* play2) {
s32 pad;
PRINTF("\n\n");
// "Deku Scrub mask show start"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ デグナッツお面品評会開始 ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN)
T("☆☆☆☆☆ デグナッツお面品評会開始 ☆☆☆☆☆ \n", "☆☆☆☆☆ Deku Scrub mask competition start ☆☆☆☆☆ \n") VT_RST);
for (i = 0; i < 9; i++) {
this->scrubPos[i] = sScrubPos[i];
this->scrubs[i] = (EnDntNomal*)Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_EN_DNT_NOMAL,
@ -108,8 +109,10 @@ void EnDntDemo_Init(Actor* thisx, PlayState* play2) {
this->leader = (EnDntJiji*)Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_EN_DNT_JIJI,
this->leaderPos.x, this->leaderPos.y, this->leaderPos.z, 0, 0, 0, 0);
if (this->leader != NULL) {
// "jiji jiji jiji jiji jiji" [onomatopoeia for the scrub sound?]
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ じじじじじじじじじじい ☆☆☆☆☆ %x\n" VT_RST, this->leader);
// onomatopoeia for the scrub sound?
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ じじじじじじじじじじい ☆☆☆☆☆ %x\n", "☆☆☆☆☆ jiji jiji jiji jiji jiji ☆☆☆☆☆ %x\n")
VT_RST,
this->leader);
}
this->subCamId = SUB_CAM_ID_DONE;
this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
@ -206,15 +209,17 @@ void EnDntDemo_Judge(EnDntDemo* this, PlayState* play) {
ignore = true;
delay = 8;
reaction = DNT_SIGNAL_HIDE;
// "Special!"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 特別! ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 特別! ☆☆☆☆☆ \n", "☆☆☆☆☆ Special! ☆☆☆☆☆ \n") VT_RST);
} else {
if (maskIdx >= PLAYER_MASK_MAX - 1) {
// "This is dangerous!"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ ヤバいよこれ! ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ ヤバいよこれ! ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ ヤバいよこれ! ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ ヤバいよこれ! ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ ヤバいよこれ! ☆☆☆☆☆ \n", "☆☆☆☆☆ This is bad! ☆☆☆☆☆ \n")
VT_RST);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ ヤバいよこれ! ☆☆☆☆☆ \n", "☆☆☆☆☆ This is bad! ☆☆☆☆☆ \n")
VT_RST);
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ ヤバいよこれ! ☆☆☆☆☆ \n", "☆☆☆☆☆ This is bad! ☆☆☆☆☆ \n")
VT_RST);
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ ヤバいよこれ! ☆☆☆☆☆ \n", "☆☆☆☆☆ This is bad! ☆☆☆☆☆ \n")
VT_RST);
maskIdx = Rand_ZeroFloat(7.99f);
}
@ -237,17 +242,22 @@ void EnDntDemo_Judge(EnDntDemo* this, PlayState* play) {
break;
}
PRINTF("\n\n");
// "Each index 1"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 各インデックス1 ☆☆☆☆☆ %d\n" VT_RST, rand9);
// "Each index 2"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 各インデックス2 ☆☆☆☆☆ %d\n" VT_RST, maskIdx);
// "Each index 3"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 各インデックス3 ☆☆☆☆☆ %d\n" VT_RST, resultIdx);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 各インデックス1 ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Each index 1 ☆☆☆☆☆ %d\n")
VT_RST,
rand9);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 各インデックス2 ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Each index 2 ☆☆☆☆☆ %d\n")
VT_RST,
maskIdx);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 各インデックス3 ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Each index 3 ☆☆☆☆☆ %d\n")
VT_RST,
resultIdx);
PRINTF("\n");
// "What kind of evaluation?"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ どういう評価? ☆☆☆☆☆☆ %d\n" VT_RST, reaction);
// "What kind of action?"
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ どういうアクション? ☆☆☆ %d\n" VT_RST, this->action);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ どういう評価? ☆☆☆☆☆☆ %d\n",
"☆☆☆☆☆ What kind of evaluation? ☆☆☆☆☆☆ %d\n") VT_RST,
reaction);
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ どういうアクション? ☆☆☆ %d\n",
"☆☆☆☆☆ What kind of action? ☆☆☆ %d\n") VT_RST,
this->action);
PRINTF("\n\n");
break;
}

View file

@ -21,6 +21,7 @@
#include "sfx.h"
#include "sys_matrix.h"
#include "terminal.h"
#include "translation.h"
#include "z_lib.h"
#include "z64effect.h"
#include "z64play.h"
@ -99,8 +100,9 @@ void EnDntJiji_Init(Actor* thisx, PlayState* play) {
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
this->stage = (EnDntDemo*)this->actor.parent;
PRINTF("\n\n");
// "Deku Scrub mask show elder"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ デグナッツお面品評会長老 ☆☆☆☆☆ %x\n" VT_RST, this->stage);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ デグナッツお面品評会長老 ☆☆☆☆☆ %x\n",
"☆☆☆☆☆ Deku Scrub mask competition elder ☆☆☆☆☆ %x\n") VT_RST,
this->stage);
this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.colChkInfo.mass = MASS_IMMOVABLE;
this->actor.attentionRangeType = ATTENTION_RANGE_6;
@ -292,24 +294,22 @@ void EnDntJiji_GivePrize(EnDntJiji* this, PlayState* play) {
SkelAnime_Update(&this->skelAnime);
if ((Message_GetState(&play->msgCtx) == TEXT_STATE_DONE) && Message_ShouldAdvance(play)) {
if ((this->getItemId == GI_DEKU_NUT_UPGRADE_30) || (this->getItemId == GI_DEKU_NUT_UPGRADE_40)) {
// "nut"
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
PRINTF(T("\n", "nut \n"));
PRINTF(T("\n", "nut \n"));
PRINTF(T("\n", "nut \n"));
PRINTF(T("\n", "nut \n"));
PRINTF(T("\n", "nut \n"));
PRINTF(T("\n", "nut \n"));
PRINTF(T("\n", "nut \n"));
PRINTF(T("\n", "nut \n"));
SET_ITEMGETINF(ITEMGETINF_FOREST_STAGE_NUT_UPGRADE);
} else {
// "stick"
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
PRINTF(T("\n", "stick \n"));
PRINTF(T("\n", "stick \n"));
PRINTF(T("\n", "stick \n"));
PRINTF(T("\n", "stick \n"));
PRINTF(T("\n", "stick \n"));
PRINTF(T("\n", "stick \n"));
SET_ITEMGETINF(ITEMGETINF_FOREST_STAGE_STICK_UPGRADE);
}
this->actor.textId = 0;
@ -393,8 +393,7 @@ void EnDntJiji_Update(Actor* thisx, PlayState* play) {
Actor_SetScale(&this->actor, 0.015f);
this->unkTimer++;
if (BREG(0)) {
// "time"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 時間 ☆☆☆☆☆ %d\n" VT_RST, this->timer);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ 時間 ☆☆☆☆☆ %d\n", "☆☆☆☆☆ time ☆☆☆☆☆ %d\n") VT_RST, this->timer);
}
if ((this->timer > 1) && (this->timer != 0)) {
this->timer--;

View file

@ -21,6 +21,7 @@
#include "sfx.h"
#include "sys_matrix.h"
#include "terminal.h"
#include "translation.h"
#include "versions.h"
#include "z_lib.h"
#include "z64effect.h"
@ -149,16 +150,15 @@ void EnDntNomal_Init(Actor* thisx, PlayState* play) {
this->objectId = -1;
if (this->type == ENDNTNOMAL_TARGET) {
PRINTF("\n\n");
// "Deku Scrub target"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ デグナッツ的当て ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ デグナッツ的当て ☆☆☆☆☆ \n", "☆☆☆☆☆ Deku Scrub target ☆☆☆☆☆ \n") VT_RST);
Collider_InitQuad(play, &this->targetColliderQuad);
Collider_SetQuad(play, &this->targetColliderQuad, &this->actor, &sTargetQuadInit);
this->actor.world.rot.y = this->actor.shape.rot.y = this->actor.yawTowardsPlayer;
this->objectId = OBJECT_HINTNUTS;
} else {
PRINTF("\n\n");
// "Deku Scrub mask show audience"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ デグナッツお面品評会一般人 ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ デグナッツお面品評会一般人 ☆☆☆☆☆ \n",
"☆☆☆☆☆ Deku Scrub mask competition audience ☆☆☆☆☆ \n") VT_RST);
Collider_InitCylinder(play, &this->bodyColliderCylinder);
Collider_SetCylinder(play, &this->bodyColliderCylinder, &this->actor, &sBodyCylinderInit);
this->objectId = OBJECT_DNK;
@ -167,10 +167,9 @@ void EnDntNomal_Init(Actor* thisx, PlayState* play) {
this->requiredObjectSlot = Object_GetSlot(&play->objectCtx, this->objectId);
if (this->requiredObjectSlot < 0) {
Actor_Kill(&this->actor);
// "What?"
PRINTF(VT_FGCOL(MAGENTA) " なにみの? %d\n" VT_RST "\n", this->requiredObjectSlot);
// "Bank is funny"
PRINTF(VT_FGCOL(CYAN) " バンクおかしいしぞ!%d\n" VT_RST "\n", this->actor.params);
PRINTF(VT_FGCOL(MAGENTA) T(" なにみの? %d\n", " What? %d\n") VT_RST "\n", this->requiredObjectSlot);
PRINTF(VT_FGCOL(CYAN) T(" バンクおかしいしぞ!%d\n", " The bank is weird! %d\n") VT_RST "\n",
this->actor.params);
return;
}
} else {
@ -279,8 +278,7 @@ void EnDntNomal_TargetWait(EnDntNomal* this, PlayState* play) {
EffectSsExtra_Spawn(play, &scorePos, &scoreVel, &scoreAccel, 4, 2);
Audio_StopSfxById(NA_SE_SY_TRE_BOX_APPEAR);
Sfx_PlaySfxCentered(NA_SE_SY_TRE_BOX_APPEAR);
// "Big hit"
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ 大当り ☆☆☆☆☆ %d\n" VT_RST, this->hitCounter);
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ 大当り ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Big hit ☆☆☆☆☆ %d\n") VT_RST, this->hitCounter);
if (!LINK_IS_ADULT && !GET_ITEMGETINF(ITEMGETINF_1D)) {
this->hitCounter++;
if (this->hitCounter >= 3) {

View file

@ -13,6 +13,7 @@
#include "sfx.h"
#include "sys_matrix.h"
#include "terminal.h"
#include "translation.h"
#include "z_lib.h"
#include "z64play.h"
@ -47,8 +48,8 @@ void EnDyExtra_Init(Actor* thisx, PlayState* play) {
EnDyExtra* this = (EnDyExtra*)thisx;
PRINTF("\n\n");
// "Big fairy effect"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 大妖精効果 ☆☆☆☆☆ %d\n" VT_RST, this->actor.params);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ 大妖精効果 ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Big fairy effect ☆☆☆☆☆ %d\n") VT_RST,
this->actor.params);
this->type = this->actor.params;
this->scale.x = 0.025f;
this->scale.y = 0.039f;

View file

@ -10,6 +10,7 @@
#include "sfx.h"
#include "sys_matrix.h"
#include "terminal.h"
#include "translation.h"
#include "z_lib.h"
#include "z64play.h"
#include "z64player.h"
@ -57,16 +58,16 @@ void EnEncount2_Init(Actor* thisx, PlayState* play) {
if (!this->isNotDeathMountain) {
PRINTF("\n\n");
// "☆☆☆☆☆ Death Mountain Encount2 set ☆☆☆☆☆"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ デスマウンテンエンカウント2セットされました ☆☆☆☆☆ %d\n" VT_RST,
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ デスマウンテンエンカウント2セットされました ☆☆☆☆☆ %d\n",
"☆☆☆☆☆ Death Mountain Encount2 set ☆☆☆☆☆ %d\n") VT_RST,
this->actor.params);
if (LINK_IS_ADULT && GET_EVENTCHKINF(EVENTCHKINF_49)) { // flag for having used fire temple blue warp
Actor_Kill(thisx);
}
} else {
PRINTF("\n\n");
// "☆☆☆☆☆ Ganon Tower Escape Encount2 set ☆☆☆☆☆"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ ガノンタワー脱出エンカウント2セットされました ☆☆☆☆☆ %d\n" VT_RST,
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ ガノンタワー脱出エンカウント2セットされました ☆☆☆☆☆ %d\n",
"☆☆☆☆☆ Ganon Tower Escape Encount2 set ☆☆☆☆☆ %d\n") VT_RST,
this->actor.params);
}
@ -248,12 +249,11 @@ void EnEncount2_SpawnRocks(EnEncount2* this, PlayState* play) {
this->numSpawnedRocks++;
return;
}
// "☆☆☆☆☆ Can't occur! ☆☆☆☆☆"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 発生できません! ☆☆☆☆☆\n" VT_RST);
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 発生できません! ☆☆☆☆☆\n" VT_RST);
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 発生できません! ☆☆☆☆☆\n" VT_RST);
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 発生できません! ☆☆☆☆☆\n" VT_RST);
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 発生できません! ☆☆☆☆☆\n\n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 発生できません! ☆☆☆☆☆\n", "☆☆☆☆☆ Can't occur! ☆☆☆☆☆\n") VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 発生できません! ☆☆☆☆☆\n", "☆☆☆☆☆ Can't occur! ☆☆☆☆☆\n") VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 発生できません! ☆☆☆☆☆\n", "☆☆☆☆☆ Can't occur! ☆☆☆☆☆\n") VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 発生できません! ☆☆☆☆☆\n", "☆☆☆☆☆ Can't occur! ☆☆☆☆☆\n") VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 発生できません! ☆☆☆☆☆\n\n", "☆☆☆☆☆ Can't occur! ☆☆☆☆☆\n\n") VT_RST);
}
}
}

View file

@ -122,7 +122,7 @@ void EnExItem_Init(Actor* thisx, PlayState* play) {
this->actor.draw = NULL;
if (this->requiredObjectSlot < 0) {
Actor_Kill(&this->actor);
PRINTF(T("なにみの? %d\n", "What's that? %d\n"), this->actor.params);
PRINTF(T("なにみの? %d\n", "What? %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;

View file

@ -10,6 +10,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"
@ -63,8 +64,7 @@ void EnExRuppy_Init(Actor* thisx, PlayState* play) {
s16 temp3;
this->type = this->actor.params;
// "Index"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ インデックス ☆☆☆☆☆ %x\n" VT_RST, this->type);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ インデックス ☆☆☆☆☆ %x\n", "☆☆☆☆☆ Index ☆☆☆☆☆ %x\n") VT_RST, this->type);
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 25.0f);
switch (this->type) {
@ -134,8 +134,7 @@ void EnExRuppy_Init(Actor* thisx, PlayState* play) {
this->colorIdx = (s16)Rand_ZeroFloat(3.99f) + 1;
}
this->actor.gravity = -3.0f;
// "Wow Coin"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ わーなーコイン ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ わーなーコイン ☆☆☆☆☆ \n", "☆☆☆☆☆ Wow Coin ☆☆☆☆☆ \n") VT_RST);
this->actor.shape.shadowScale = 6.0f;
this->actor.shape.yOffset = 700.0f;
this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
@ -156,8 +155,7 @@ void EnExRuppy_Init(Actor* thisx, PlayState* play) {
break;
}
this->actor.gravity = -3.0f;
// "Normal rupee"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ ノーマルルピー ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ ノーマルルピー ☆☆☆☆☆ \n", "☆☆☆☆☆ Normal rupee ☆☆☆☆☆ \n") VT_RST);
this->actor.shape.shadowScale = 6.0f;
this->actor.shape.yOffset = 700.0f;
this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
@ -342,10 +340,10 @@ void EnExRuppy_WaitToBlowUp(EnExRuppy* this, PlayState* play) {
parent->unk_226 = 1;
}
} else {
// "That idiot! error"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ そ、そんなばかな!エラー!!!!! ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ そ、そんなばかな!エラー!!!!! ☆☆☆☆☆ \n",
"☆☆☆☆☆ That's stupid! Error!!!!! ☆☆☆☆☆ \n") VT_RST);
}
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ バカめ! ☆☆☆☆☆ \n" VT_RST); // "Stupid!"
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ バカめ! ☆☆☆☆☆ \n", "☆☆☆☆☆ Stupid! ☆☆☆☆☆ \n") VT_RST);
explosionScale = 100;
explosionScaleStep = 30;
if (this->type == 2) {

View file

@ -20,6 +20,7 @@
#include "segmented_address.h"
#include "sfx.h"
#include "sys_matrix.h"
#include "translation.h"
#include "z_lib.h"
#include "z64effect.h"
#include "z64play.h"
@ -135,9 +136,9 @@ void EnFhgFire_Init(Actor* thisx, PlayState* play) {
this->collider.dim.height = this->actor.world.rot.x * 0.13f;
this->collider.dim.yShift = 0;
} else if (this->actor.params == FHGFIRE_SPEAR_LIGHT) {
PRINTF("yari hikari ct 1\n"); // "light spear"
PRINTF(T("yari hikari ct 1\n", "spear light ct 1\n"));
EnFhgFire_SetUpdate(this, EnFhgFire_SpearLight);
PRINTF("yari hikari ct 2\n");
PRINTF(T("yari hikari ct 2\n", "spear light ct 2\n"));
this->work[FHGFIRE_TIMER] = this->actor.world.rot.x;
this->work[FHGFIRE_FIRE_MODE] = this->actor.world.rot.y;
} else if ((this->actor.params == FHGFIRE_WARP_EMERGE) || (this->actor.params == FHGFIRE_WARP_RETREAT) ||
@ -655,8 +656,7 @@ void EnFhgFire_EnergyBall(EnFhgFire* this, PlayState* play) {
this->actor.speed = 20.0f;
}
Actor_PlaySfx(&this->actor, NA_SE_EN_FANTOM_FIRE - SFX_FLAG);
// "Why ah ah ah ah"
PRINTF("なぜだああああああああ %d\n", this->work[FHGFIRE_VARIANCE_TIMER]);
PRINTF(T("なぜだああああああああ %d\n", "Whyyyyyyyy %d\n"), this->work[FHGFIRE_VARIANCE_TIMER]);
}
}

View file

@ -10,6 +10,7 @@
#include "sfx.h"
#include "sys_matrix.h"
#include "terminal.h"
#include "translation.h"
#include "z_lib.h"
#include "z64debug_display.h"
#include "z64effect.h"
@ -100,16 +101,14 @@ void EnFireRock_Init(Actor* thisx, PlayState* play) {
switch (this->type) {
case FIRE_ROCK_CEILING_SPOT_SPAWNER:
this->actor.draw = NULL;
// "☆☆☆☆☆ ceiling waiting rock ☆☆☆☆☆"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 天井待ち岩 ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ 天井待ち岩 ☆☆☆☆☆ \n", "☆☆☆☆☆ ceiling waiting rock ☆☆☆☆☆ \n") VT_RST);
this->actionFunc = FireRock_WaitSpawnRocksFromCeiling;
break;
case FIRE_ROCK_ON_FLOOR:
Actor_SetScale(&this->actor, 0.03f);
Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &D_80A12CCC);
// "☆☆☆☆☆ floor rock ☆☆☆☆☆"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 床岩 ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ 床岩 ☆☆☆☆☆ \n", "☆☆☆☆☆ floor rock ☆☆☆☆☆ \n") VT_RST);
this->collider.dim.radius = 23;
this->collider.dim.height = 37;
this->collider.dim.yShift = -10;
@ -154,8 +153,8 @@ void EnFireRock_Init(Actor* thisx, PlayState* play) {
this->actionFunc = EnFireRock_Fall;
break;
default:
// "☆☆☆☆☆ No such rock! ERR !!!!!! ☆☆☆☆☆"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ そんな岩はねぇERR!!!!!! ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(YELLOW)
T("☆☆☆☆☆ そんな岩はねぇERR!!!!!! ☆☆☆☆☆ \n", "☆☆☆☆☆ No such rock! ERR!!!!!! ☆☆☆☆☆ \n") VT_RST);
Actor_Kill(&this->actor);
break;
}
@ -169,8 +168,9 @@ void EnFireRock_Destroy(Actor* thisx, PlayState* play) {
if ((spawner->actor.update != NULL) && (spawner->numSpawnedRocks > 0)) {
spawner->numSpawnedRocks--;
PRINTF("\n\n");
// "☆☆☆☆☆ Number of spawned instances recovery ☆☆☆☆☆%d"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 発生数回復 ☆☆☆☆☆%d\n" VT_RST, spawner->numSpawnedRocks);
PRINTF(VT_FGCOL(GREEN)
T("☆☆☆☆☆ 発生数回復 ☆☆☆☆☆%d\n", "☆☆☆☆☆ Number of spawned instances recovery ☆☆☆☆☆%d\n") VT_RST,
spawner->numSpawnedRocks);
PRINTF("\n\n");
}
}
@ -369,8 +369,8 @@ void EnFireRock_Update(Actor* thisx, PlayState* play) {
thisx->velocity.y = 0.0f;
thisx->speed = 0.0f;
this->actionFunc = EnFireRock_SpawnMoreBrokenPieces;
// "☆☆☆☆☆ Shield Defense Lv1 ☆☆☆☆☆"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ シールド防御 Lv ☆☆☆☆☆ \n" VT_RST);
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ シールド防御 Lv ☆☆☆☆☆ \n", "☆☆☆☆☆ Shield Defense Lv1 ☆☆☆☆☆ \n")
VT_RST);
return;
}
setCollision = true;

View file

@ -19,6 +19,7 @@
#include "sfx.h"
#include "sys_matrix.h"
#include "terminal.h"
#include "translation.h"
#include "z_en_item00.h"
#include "z_lib.h"
#include "z64audio.h"
@ -163,8 +164,7 @@ void EnGSwitch_Init(Actor* thisx, PlayState* play) {
this->requiredObjectSlot = Object_GetSlot(&play->objectCtx, this->objectId);
if (this->requiredObjectSlot < 0) {
Actor_Kill(&this->actor);
// "what?"
PRINTF(VT_FGCOL(MAGENTA) " なにみの? %d\n" VT_RST "\n", this->requiredObjectSlot);
PRINTF(VT_FGCOL(MAGENTA) T(" なにみの? %d\n", " What? %d\n") VT_RST "\n", this->requiredObjectSlot);
// "bank is funny"
PRINTF(VT_FGCOL(CYAN) " バンクおかしいしぞ!%d\n" VT_RST "\n", this->actor.params);
}