mirror of https://github.com/zeldaret/oot.git
T() macro in overlays 9 (#2552)
* T() okarina_effect, ossan, reeba, rr * T() ru1, sb, sth, syateki_itm * T() syateki_niw, ta, takara_man, tite * T() tubo_trap, wall_tubo, weather_tag, wf * T() wonder_talk, wonder_talk2 * review
This commit is contained in:
parent
1f9bf023a0
commit
a4182086ee
|
@ -10,6 +10,7 @@
|
|||
#include "regs.h"
|
||||
#include "sequence.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "versions.h"
|
||||
#include "z64audio.h"
|
||||
#include "z64cutscene_flags.h"
|
||||
|
@ -64,8 +65,8 @@ void EnOkarinaEffect_Init(Actor* thisx, PlayState* play) {
|
|||
EnOkarinaEffect* this = (EnOkarinaEffect*)thisx;
|
||||
|
||||
PRINTF("\n\n");
|
||||
// "Ocarina Storm Effect"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ オカリナあらし効果ビカビカビカ〜 ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ オカリナあらし効果ビカビカビカ〜 ☆☆☆☆☆ \n",
|
||||
"☆☆☆☆☆ Ocarina storm effect sparkle sparkle sparkle ☆☆☆☆☆ \n") VT_RST);
|
||||
PRINTF("\n\n");
|
||||
if (play->envCtx.precipitation[PRECIP_RAIN_CUR] != 0) {
|
||||
Actor_Kill(&this->actor);
|
||||
|
@ -97,7 +98,7 @@ void EnOkarinaEffect_ManageStorm(EnOkarinaEffect* this, PlayState* play) {
|
|||
}
|
||||
PRINTF("\nthis->timer=[%d]", this->timer);
|
||||
if (this->timer == 308) {
|
||||
PRINTF("\n\n\n豆よ のびろ 指定\n\n\n"); // "Let's grow some beans"
|
||||
PRINTF(T("\n\n\n豆よ のびろ 指定\n\n\n", "\n\n\nBeans, grow!\n\n\n"));
|
||||
CutsceneFlags_Set(play, 5);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -673,8 +673,8 @@ void EnOssan_UpdateCursorPos(PlayState* play, EnOssan* this) {
|
|||
void EnOssan_EndInteraction(PlayState* play, EnOssan* this) {
|
||||
Player* player = GET_PLAYER(play);
|
||||
|
||||
// "End of conversation!"
|
||||
PRINTF(VT_FGCOL(YELLOW) "%s[%d]:★★★ 会話終了!! ★★★" VT_RST "\n", "../z_en_oB1.c", 1337);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("%s[%d]:★★★ 会話終了!! ★★★", "%s[%d]:★★★ End of conversation!! ★★★") VT_RST "\n",
|
||||
"../z_en_oB1.c", 1337);
|
||||
YREG(31) = 0;
|
||||
Actor_TalkOfferAccepted(&this->actor, play);
|
||||
play->msgCtx.msgMode = MSGMODE_TEXT_CLOSING;
|
||||
|
@ -761,8 +761,7 @@ void EnOssan_State_Idle(EnOssan* this, PlayState* play, Player* player) {
|
|||
this->headTargetRot = this->actor.yawTowardsPlayer - this->actor.shape.rot.y;
|
||||
|
||||
if (Actor_TalkOfferAccepted(&this->actor, play)) {
|
||||
// "Start conversation!!"
|
||||
PRINTF(VT_FGCOL(YELLOW) "★★★ 会話開始!! ★★★" VT_RST "\n");
|
||||
PRINTF(VT_FGCOL(YELLOW) T("★★★ 会話開始!! ★★★", "★★★ Start conversation!! ★★★") VT_RST "\n");
|
||||
player->stateFlags2 |= PLAYER_STATE2_29;
|
||||
Play_SetShopBrowsingViewpoint(play);
|
||||
EnOssan_SetStateStartShopping(play, this, false);
|
||||
|
@ -951,8 +950,7 @@ void EnOssan_State_StartConversation(EnOssan* this, PlayState* play, Player* pla
|
|||
}
|
||||
|
||||
if (!EnOssan_TestEndInteraction(this, play, &play->state.input[0])) {
|
||||
// "Shop around by moving the stick left and right"
|
||||
PRINTF("「スティック左右で品物みてくれ!」\n");
|
||||
PRINTF(T("「スティック左右で品物みてくれ!」\n", "「Shop around by moving the stick left and right!」\n"));
|
||||
EnOssan_StartShopping(play, this);
|
||||
}
|
||||
}
|
||||
|
@ -2141,14 +2139,14 @@ void EnOssan_InitActionFunc(EnOssan* this, PlayState* play) {
|
|||
|
||||
if (this->shelves == NULL) {
|
||||
PRINTF_COLOR_ERROR();
|
||||
// "Warning!! There are no shelves!!"
|
||||
PRINTF("★★★ 警告!! 棚がないよ!! ★★★\n");
|
||||
PRINTF(T("★★★ 警告!! 棚がないよ!! ★★★\n", "★★★ Warning!! There are no shelves!! ★★★\n"));
|
||||
PRINTF_RST();
|
||||
return;
|
||||
}
|
||||
|
||||
// "Shopkeeper (params) init"
|
||||
PRINTF(VT_FGCOL(YELLOW) "◇◇◇ 店のおやじ( %d ) 初期設定 ◇◇◇" VT_RST "\n", this->actor.params);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("◇◇◇ 店のおやじ( %d ) 初期設定 ◇◇◇", "◇◇◇ Shopkeeper ( %d ) initial setting ◇◇◇")
|
||||
VT_RST "\n",
|
||||
this->actor.params);
|
||||
|
||||
this->actor.world.pos.x += sShopkeeperPositionOffsets[this->actor.params].x;
|
||||
this->actor.world.pos.y += sShopkeeperPositionOffsets[this->actor.params].y;
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
#include "regs.h"
|
||||
#include "sfx.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "z_en_item00.h"
|
||||
#include "z_lib.h"
|
||||
#include "z64debug_display.h"
|
||||
|
@ -147,8 +148,8 @@ void EnReeba_Init(Actor* thisx, PlayState* play) {
|
|||
this->scale *= 1.5f;
|
||||
this->collider.dim.radius = 35;
|
||||
this->collider.dim.height = 45;
|
||||
// "Reeba Boss Appears %f"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ リーバぼす登場 ☆☆☆☆☆ %f\n" VT_RST, this->scale);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ リーバぼす登場 ☆☆☆☆☆ %f\n", "☆☆☆☆☆ Reeba boss appears ☆☆☆☆☆ %f\n") VT_RST,
|
||||
this->scale);
|
||||
this->actor.colChkInfo.health = 20;
|
||||
this->collider.elem.atDmgInfo.effect = 4;
|
||||
this->collider.elem.atDmgInfo.damage = 16;
|
||||
|
@ -520,9 +521,10 @@ void EnReeba_Die(EnReeba* this, PlayState* play) {
|
|||
if (spawner->killCount < 10) {
|
||||
spawner->killCount++;
|
||||
}
|
||||
// "How many are dead?"
|
||||
PRINTF("\n\n");
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 何匹DEAD? ☆☆☆☆☆%d\n" VT_RST, spawner->killCount);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 何匹DEAD? ☆☆☆☆☆%d\n", "☆☆☆☆☆ How many are DEAD? ☆☆☆☆☆%d\n")
|
||||
VT_RST,
|
||||
spawner->killCount);
|
||||
PRINTF("\n\n");
|
||||
}
|
||||
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
#include "sfx.h"
|
||||
#include "sys_matrix.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "versions.h"
|
||||
#include "z_en_item00.h"
|
||||
#include "z_lib.h"
|
||||
|
@ -468,9 +469,9 @@ void EnRr_CollisionCheck(EnRr* this, PlayState* play) {
|
|||
dropType++; // magic jar
|
||||
FALLTHROUGH;
|
||||
case RR_DMG_NORMAL:
|
||||
// "ouch"
|
||||
PRINTF(VT_FGCOL(RED) "いてっ( %d : LIFE %d : DAMAGE %d : %x )!!" VT_RST "\n", this->frameCount,
|
||||
this->actor.colChkInfo.health, this->actor.colChkInfo.damage,
|
||||
PRINTF(VT_FGCOL(RED) T("いてっ( %d : LIFE %d : DAMAGE %d : %x )!!",
|
||||
"ouch ( %d : LIFE %d : DAMAGE %d : %x )!!") VT_RST "\n",
|
||||
this->frameCount, this->actor.colChkInfo.health, this->actor.colChkInfo.damage,
|
||||
this->actor.colChkInfo.damageEffect);
|
||||
this->stopScroll = false;
|
||||
Actor_ApplyDamage(&this->actor);
|
||||
|
@ -532,8 +533,7 @@ void EnRr_CollisionCheck(EnRr* this, PlayState* play) {
|
|||
((this->collider1.base.ocFlags1 & OC1_HIT) || (this->collider2.base.ocFlags1 & OC1_HIT))) {
|
||||
this->collider1.base.ocFlags1 &= ~OC1_HIT;
|
||||
this->collider2.base.ocFlags1 &= ~OC1_HIT;
|
||||
// "catch"
|
||||
PRINTF(VT_FGCOL(GREEN) "キャッチ(%d)!!" VT_RST "\n", this->frameCount);
|
||||
PRINTF(VT_FGCOL(GREEN) T("キャッチ(%d)!!", "catch (%d)!!") VT_RST "\n", this->frameCount);
|
||||
if (play->grabPlayer(play, player)) {
|
||||
player->actor.parent = &this->actor;
|
||||
this->stopScroll = false;
|
||||
|
@ -714,8 +714,7 @@ void EnRr_Death(EnRr* this, PlayState* play) {
|
|||
Item_DropCollectible(play, &dropPos, ITEM00_TUNIC_ZORA);
|
||||
break;
|
||||
}
|
||||
// "dropped"
|
||||
PRINTF(VT_FGCOL(GREEN) "「%s」が出た!!" VT_RST "\n", sDropNames[this->dropType]);
|
||||
PRINTF(VT_FGCOL(GREEN) T("「%s」が出た!!", "「%s」dropped!!") VT_RST "\n", sDropNames[this->dropType]);
|
||||
switch (this->dropType) {
|
||||
case RR_DROP_MAGIC:
|
||||
Item_DropCollectible(play, &dropPos, ITEM00_MAGIC_SMALL);
|
||||
|
|
|
@ -322,8 +322,8 @@ BgBdanObjects* EnRu1_FindSwitch(PlayState* play) {
|
|||
}
|
||||
actorIt = actorIt->next;
|
||||
}
|
||||
// "There is no stand"
|
||||
PRINTF(VT_FGCOL(RED) "お立ち台が無い!!!!!!!!!!!!!!!!!!!!!!!!!\n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("お立ち台が無い!!!!!!!!!!!!!!!!!!!!!!!!!\n", "There is no stand!!!!!!!!!!!!!!!!!!!!!!!!!\n")
|
||||
VT_RST);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -2246,11 +2246,9 @@ void func_80AEFF94(EnRu1* this, PlayState* play) {
|
|||
this->roomNum1 = actorRoom;
|
||||
this->roomNum3 = actorRoom;
|
||||
this->roomNum2 = actorRoom;
|
||||
// "Ruto switch set"
|
||||
PRINTF("スイッチルトセット!!!!!!!!!!!!!!!!!!!!!!\n");
|
||||
PRINTF(T("スイッチルトセット!!!!!!!!!!!!!!!!!!!!!!\n", "Ruto switch set!!!!!!!!!!!!!!!!!!!!!!\n"));
|
||||
} else {
|
||||
// "Ruto switch not set"
|
||||
PRINTF("スイッチルトセットしない!!!!!!!!!!!!!!!!!!!!!!\n");
|
||||
PRINTF(T("スイッチルトセットしない!!!!!!!!!!!!!!!!!!!!!!\n", "Ruto switch not set!!!!!!!!!!!!!!!!!!!!!!\n"));
|
||||
Actor_Kill(&this->actor);
|
||||
}
|
||||
}
|
||||
|
@ -2313,8 +2311,7 @@ void EnRu1_Init(Actor* thisx, PlayState* play) {
|
|||
#endif
|
||||
default:
|
||||
Actor_Kill(&this->actor);
|
||||
// "Relevant arge_data = %d unacceptable"
|
||||
PRINTF("該当 arge_data = %d 無し\n", func_80AEADF0(this));
|
||||
PRINTF(T("該当 arge_data = %d 無し\n", "Relevant arge_data = %d unacceptable\n"), func_80AEADF0(this));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -2340,8 +2337,8 @@ s32 EnRu1_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* p
|
|||
EnRu1* this = (EnRu1*)thisx;
|
||||
|
||||
if ((this->unk_290 < 0) || (this->unk_290 > 0) || (*sPreLimbDrawFuncs[this->unk_290] == NULL)) {
|
||||
// "Neck rotation mode is improper!"
|
||||
PRINTF(VT_FGCOL(RED) "首回しモードがおかしい!!!!!!!!!!!!!!!!!!!!!!!!!\n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("首回しモードがおかしい!!!!!!!!!!!!!!!!!!!!!!!!!\n",
|
||||
"Neck rotation mode is improper!!!!!!!!!!!!!!!!!!!!!!!!!\n") VT_RST);
|
||||
} else {
|
||||
sPreLimbDrawFuncs[this->unk_290](this, play, limbIndex, rot);
|
||||
}
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#include "rand.h"
|
||||
#include "sfx.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "z_en_item00.h"
|
||||
#include "z_lib.h"
|
||||
#include "z64effect.h"
|
||||
|
@ -277,8 +278,7 @@ void EnSb_TurnAround(EnSb* this, PlayState* play) {
|
|||
EnSb_SpawnBubbles(play, this);
|
||||
this->bouncesLeft = 3;
|
||||
EnSb_SetupLunge(this);
|
||||
// "Attack!!"
|
||||
PRINTF("アタァ〜ック!!\n");
|
||||
PRINTF(T("アタァ〜ック!!\n", "Attack!!\n"));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -322,7 +322,7 @@ void EnSb_Bounce(EnSb* this, PlayState* play) {
|
|||
this->actor.speed = 0.0f;
|
||||
this->timer = 1;
|
||||
EnSb_SetupWaitClosed(this);
|
||||
PRINTF(VT_FGCOL(RED) "攻撃終了!!" VT_RST "\n"); // "Attack Complete!"
|
||||
PRINTF(VT_FGCOL(RED) T("攻撃終了!!", "Attack complete!!") VT_RST "\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#include "segmented_address.h"
|
||||
#include "sys_matrix.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "z_lib.h"
|
||||
#include "z64play.h"
|
||||
#include "z64save.h"
|
||||
|
@ -107,18 +108,17 @@ void EnSth_Init(Actor* thisx, PlayState* play) {
|
|||
s32 params = this->actor.params;
|
||||
s32 objectSlot;
|
||||
|
||||
PRINTF(VT_FGCOL(BLUE) "金スタル屋 no = %d\n" VT_RST, params); // "Gold Skulltula Shop"
|
||||
PRINTF(VT_FGCOL(BLUE) T("金スタル屋 no = %d\n", "Gold Skulltula Shop no = %d\n") VT_RST, params);
|
||||
if (this->actor.params == 0) {
|
||||
if (gSaveContext.save.info.inventory.gsTokens < 100) {
|
||||
Actor_Kill(&this->actor);
|
||||
// "Gold Skulltula Shop I still can't be a human"
|
||||
PRINTF("金スタル屋 まだ 人間に戻れない \n");
|
||||
PRINTF(T("金スタル屋 まだ 人間に戻れない \n", "Gold Skulltula Shop I still can't be a human \n"));
|
||||
return;
|
||||
}
|
||||
} else if (gSaveContext.save.info.inventory.gsTokens < (this->actor.params * 10)) {
|
||||
Actor_Kill(&this->actor);
|
||||
// "Gold Skulltula Shop I still can't be a human"
|
||||
PRINTF(VT_FGCOL(BLUE) "金スタル屋 まだ 人間に戻れない \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(BLUE) T("金スタル屋 まだ 人間に戻れない \n", "Gold Skulltula Shop I still can't be a human \n")
|
||||
VT_RST);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
#include "regs.h"
|
||||
#include "sfx.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "z_lib.h"
|
||||
#include "z64debug_display.h"
|
||||
#include "z64play.h"
|
||||
|
@ -85,8 +86,7 @@ void EnSyatekiItm_Init(Actor* thisx, PlayState* play2) {
|
|||
this->man = (EnSyatekiMan*)Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_EN_SYATEKI_MAN, 140.0f,
|
||||
0.0f, 255.0f, 0, -0x4000, 0, 0);
|
||||
if (this->man == NULL) {
|
||||
// "Spawn error"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ エラー原 ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ エラー原 ☆☆☆☆ \n", "☆☆☆☆☆ Spawn error ☆☆☆☆ \n") VT_RST);
|
||||
Actor_Kill(&this->actor);
|
||||
return;
|
||||
}
|
||||
|
@ -94,8 +94,7 @@ void EnSyatekiItm_Init(Actor* thisx, PlayState* play2) {
|
|||
this->markers[i] = (EnExRuppy*)Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_EN_EX_RUPPY,
|
||||
sRupeePos[i].x, sRupeePos[i].y, sRupeePos[i].z, 0, 0, 0, 4);
|
||||
if (this->markers[i] == NULL) {
|
||||
// "Second spawn error"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ エラー原セカンド ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ エラー原セカンド ☆☆☆☆ \n", "☆☆☆☆☆ Second spawn error ☆☆☆☆ \n") VT_RST);
|
||||
Actor_Kill(&this->actor);
|
||||
return;
|
||||
}
|
||||
|
@ -246,8 +245,7 @@ void EnSyatekiItm_SpawnTargets(EnSyatekiItm* this, PlayState* play) {
|
|||
&play->actorCtx, &this->actor, play, ACTOR_EN_G_SWITCH, this->targetHome[i].x, this->targetHome[i].y,
|
||||
this->targetHome[i].z, 0, 0, 0, (ENGSWITCH_TARGET_RUPEE << 0xC) | 0x3F);
|
||||
if (this->targets[i] == NULL) {
|
||||
// "Rupee spawn error"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ ルピーでエラー原 ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ ルピーでエラー原 ☆☆☆☆ \n", "☆☆☆☆☆ Rupee spawn error ☆☆☆☆ \n") VT_RST);
|
||||
Actor_Kill(&this->actor);
|
||||
return;
|
||||
}
|
||||
|
@ -324,17 +322,16 @@ void EnSyatekiItm_EndGame(EnSyatekiItm* this, PlayState* play) {
|
|||
this->actionFunc = EnSyatekiItm_Idle;
|
||||
}
|
||||
if (this->signal == ENSYATEKI_START) {
|
||||
// "1 frame attack and defense!"
|
||||
PRINTF(VT_FGCOL(RED) "☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) "☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) "☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) "☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) "☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) "☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) "☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) "☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) "☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) "☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n", "☆☆☆☆☆ 1 frame attack and defense! ☆☆☆☆ \n") VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n", "☆☆☆☆☆ 1 frame attack and defense! ☆☆☆☆ \n") VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n", "☆☆☆☆☆ 1 frame attack and defense! ☆☆☆☆ \n") VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n", "☆☆☆☆☆ 1 frame attack and defense! ☆☆☆☆ \n") VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n", "☆☆☆☆☆ 1 frame attack and defense! ☆☆☆☆ \n") VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n", "☆☆☆☆☆ 1 frame attack and defense! ☆☆☆☆ \n") VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n", "☆☆☆☆☆ 1 frame attack and defense! ☆☆☆☆ \n") VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n", "☆☆☆☆☆ 1 frame attack and defense! ☆☆☆☆ \n") VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n", "☆☆☆☆☆ 1 frame attack and defense! ☆☆☆☆ \n") VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T("☆☆☆☆☆ 1フレームの攻防! ☆☆☆☆ \n", "☆☆☆☆☆ 1 frame attack and defense! ☆☆☆☆ \n") VT_RST);
|
||||
this->signal = ENSYATEKI_NONE;
|
||||
this->actionFunc = EnSyatekiItm_Idle;
|
||||
}
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
#include "sfx.h"
|
||||
#include "sys_matrix.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "z_lib.h"
|
||||
#include "z64effect.h"
|
||||
#include "z64play.h"
|
||||
|
@ -96,13 +97,11 @@ void EnSyatekiNiw_Init(Actor* thisx, PlayState* play) {
|
|||
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
|
||||
if (this->minigameType == SYATEKI_MINIGAME_ARCHERY) {
|
||||
PRINTF("\n\n");
|
||||
// "Archery range chicken"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 射的場鶏 ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 射的場鶏 ☆☆☆☆☆ \n", "☆☆☆☆☆ Archery range chicken ☆☆☆☆☆ \n") VT_RST);
|
||||
Actor_SetScale(&this->actor, 0.01f);
|
||||
} else {
|
||||
PRINTF("\n\n");
|
||||
// "Bomb chicken"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ ボムにわ! ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ ボムにわ! ☆☆☆☆☆ \n", "☆☆☆☆☆ Bomb chicken! ☆☆☆☆☆ \n") VT_RST);
|
||||
this->actor.colChkInfo.mass = MASS_IMMOVABLE;
|
||||
Actor_SetScale(&this->actor, 0.01f);
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
#include "sfx.h"
|
||||
#include "sys_matrix.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "z_lib.h"
|
||||
#include "z64audio.h"
|
||||
#include "z64face_reaction.h"
|
||||
|
@ -176,8 +177,7 @@ void EnTa_Init(Actor* thisx, PlayState* play2) {
|
|||
|
||||
switch (this->actor.params) {
|
||||
case ENTA_IN_KAKARIKO:
|
||||
// "Exile Talon"
|
||||
PRINTF(VT_FGCOL(CYAN) " 追放タロン \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(CYAN) T(" 追放タロン \n", " Exile Talon \n") VT_RST);
|
||||
if (GET_EVENTCHKINF(EVENTCHKINF_TALON_RETURNED_FROM_KAKARIKO)) {
|
||||
Actor_Kill(&this->actor);
|
||||
} else if (!LINK_IS_ADULT) {
|
||||
|
@ -197,15 +197,14 @@ void EnTa_Init(Actor* thisx, PlayState* play2) {
|
|||
break;
|
||||
|
||||
case ENTA_RETURNED_FROM_KAKARIKO:
|
||||
// "Return Talon"
|
||||
PRINTF(VT_FGCOL(CYAN) " 出戻りタロン \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(CYAN) T(" 出戻りタロン \n", " Return Talon \n") VT_RST);
|
||||
if (!GET_EVENTCHKINF(EVENTCHKINF_TALON_RETURNED_FROM_KAKARIKO)) {
|
||||
Actor_Kill(&this->actor);
|
||||
} else if (!LINK_IS_ADULT) {
|
||||
Actor_Kill(&this->actor);
|
||||
} else if (play->sceneId == SCENE_STABLE && !IS_DAY) {
|
||||
Actor_Kill(&this->actor);
|
||||
PRINTF(VT_FGCOL(CYAN) " 夜はいない \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(CYAN) T(" 夜はいない \n", " He's not here at night \n") VT_RST);
|
||||
} else {
|
||||
EnTa_SetupAction(this, EnTa_IdleAtRanch, EnTa_AnimRepeatCurrent);
|
||||
this->eyeIndex = TALON_EYE_INDEX_OPEN;
|
||||
|
@ -215,8 +214,7 @@ void EnTa_Init(Actor* thisx, PlayState* play2) {
|
|||
break;
|
||||
|
||||
default: // Child era Talon
|
||||
// "Other Talon"
|
||||
PRINTF(VT_FGCOL(CYAN) " その他のタロン \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(CYAN) T(" その他のタロン \n", " Other Talon \n") VT_RST);
|
||||
if (play->sceneId == SCENE_HYRULE_CASTLE) {
|
||||
if (GET_EVENTCHKINF(EVENTCHKINF_TALON_RETURNED_FROM_CASTLE)) {
|
||||
Actor_Kill(&this->actor);
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#include "rand.h"
|
||||
#include "segmented_address.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "versions.h"
|
||||
#include "z64play.h"
|
||||
#include "z64save.h"
|
||||
|
@ -56,14 +57,14 @@ void EnTakaraMan_Init(Actor* thisx, PlayState* play) {
|
|||
|
||||
if (sTakaraIsInitialized) {
|
||||
Actor_Kill(&this->actor);
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ もういてる原 ☆☆☆☆☆ \n" VT_RST); // "Already initialized"
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ もういてる原 ☆☆☆☆☆ \n", "☆☆☆☆☆ Already initialized ☆☆☆☆☆ \n") VT_RST);
|
||||
return;
|
||||
}
|
||||
|
||||
sTakaraIsInitialized = true;
|
||||
PRINTF("\n\n");
|
||||
// "Bun! %x" (needs a better translation)
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ ばぅん! ☆☆☆☆☆ %x\n" VT_RST, play->actorCtx.flags.chest);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ ばぅん! ☆☆☆☆☆ %x\n", "☆☆☆☆☆ Bang! ☆☆☆☆☆ %x\n") VT_RST,
|
||||
play->actorCtx.flags.chest);
|
||||
play->actorCtx.flags.chest = 0;
|
||||
gSaveContext.save.info.inventory.dungeonKeys[gSaveContext.mapIndex] = -1;
|
||||
SkelAnime_InitFlex(play, &this->skelAnime, &object_ts_Skel_004FE0, &object_ts_Anim_000498, this->jointTable,
|
||||
|
|
|
@ -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"
|
||||
|
@ -226,8 +227,9 @@ void EnTite_Destroy(Actor* thisx, PlayState* play) {
|
|||
spawner->curNumSpawn--;
|
||||
}
|
||||
PRINTF("\n\n");
|
||||
// "Number of simultaneous occurrences"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 同時発生数 ☆☆☆☆☆%d\n" VT_RST, spawner->curNumSpawn);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 同時発生数 ☆☆☆☆☆%d\n", "☆☆☆☆☆ Number of simultaneous occurrences ☆☆☆☆☆%d\n")
|
||||
VT_RST,
|
||||
spawner->curNumSpawn);
|
||||
PRINTF("\n\n");
|
||||
}
|
||||
Collider_DestroyJntSph(play, &this->collider);
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#include "regs.h"
|
||||
#include "sfx.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "z_en_item00.h"
|
||||
#include "z_lib.h"
|
||||
#include "z64effect.h"
|
||||
|
@ -69,7 +70,7 @@ void EnTuboTrap_Init(Actor* thisx, PlayState* play) {
|
|||
|
||||
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 2.0f);
|
||||
PRINTF("\n\n");
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 壷トラップ ☆☆☆☆☆ %x\n" VT_RST, this->actor.params); // "Urn Trap"
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 壷トラップ ☆☆☆☆☆ %x\n", "☆☆☆☆☆ Urn Trap ☆☆☆☆☆ %x\n") VT_RST, this->actor.params);
|
||||
Collider_InitCylinder(play, &this->collider);
|
||||
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
|
||||
Actor_SetScale(&this->actor, 0.1f);
|
||||
|
@ -234,8 +235,9 @@ void EnTuboTrap_WaitForProximity(EnTuboTrap* this, PlayState* play) {
|
|||
f32 targetHeight;
|
||||
|
||||
if (BREG(2) != 0) {
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ わて ☆☆☆☆☆ %f\n" VT_RST, this->actor.world.pos.y); // "You"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ おいどん ☆☆☆☆☆ %f\n" VT_RST, player->actor.world.pos.y); // "Me"
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ わて ☆☆☆☆☆ %f\n", "☆☆☆☆☆ You ☆☆☆☆☆ %f\n") VT_RST, this->actor.world.pos.y);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ おいどん ☆☆☆☆☆ %f\n", "☆☆☆☆☆ Me ☆☆☆☆☆ %f\n") VT_RST,
|
||||
player->actor.world.pos.y);
|
||||
PRINTF("\n\n");
|
||||
}
|
||||
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
#include "printf.h"
|
||||
#include "quake.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "z_lib.h"
|
||||
#include "z64debug_display.h"
|
||||
#include "z64effect.h"
|
||||
|
@ -46,8 +47,7 @@ void EnWallTubo_Init(Actor* thisx, PlayState* play) {
|
|||
EnWallTubo* this = (EnWallTubo*)thisx;
|
||||
|
||||
PRINTF("\n\n");
|
||||
// "Wall Target"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 壁のツボ ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ 壁のツボ ☆☆☆☆☆ \n", "☆☆☆☆☆ Points on the wall ☆☆☆☆☆ \n") VT_RST);
|
||||
this->unk_164 = this->actor.world.pos;
|
||||
this->actionFunc = EnWallTubo_FindGirl;
|
||||
}
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
#include "printf.h"
|
||||
#include "regs.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "versions.h"
|
||||
#include "z_lib.h"
|
||||
#include "z64debug_display.h"
|
||||
|
@ -67,14 +68,14 @@ void EnWeatherTag_Init(Actor* thisx, PlayState* play) {
|
|||
switch (PARAMS_GET_U(this->actor.params, 0, 4)) {
|
||||
case EN_WEATHER_TAG_TYPE_CLOUDY_MARKET:
|
||||
PRINTF("\n\n");
|
||||
// "☆☆☆☆☆ (;o;) About ☆☆☆☆☆☆"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ (;o;) くらいよー ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ (;o;) くらいよー ☆☆☆☆☆ \n", "☆☆☆☆☆ (;o;) About that much ☆☆☆☆☆ \n")
|
||||
VT_RST);
|
||||
EnWeatherTag_SetupAction(this, EnWeatherTag_DisabledCloudyHyruleMarket);
|
||||
break;
|
||||
case EN_WEATHER_TAG_TYPE_CLOUDY_LON_LON_RANCH:
|
||||
PRINTF("\n\n");
|
||||
// "☆☆☆☆☆ Cloudy (._.) Ah Melancholy ☆☆☆☆☆"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ くもり (._.) あーあ 憂鬱 ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ くもり (._.) あーあ 憂鬱 ☆☆☆☆☆ \n",
|
||||
"☆☆☆☆☆ Cloudy (._.) Ah Melancholy ☆☆☆☆☆ \n") VT_RST);
|
||||
if (Flags_GetEventChkInf(EVENTCHKINF_EPONA_OBTAINED)) {
|
||||
Actor_Kill(&this->actor);
|
||||
}
|
||||
|
@ -82,8 +83,8 @@ void EnWeatherTag_Init(Actor* thisx, PlayState* play) {
|
|||
break;
|
||||
case EN_WEATHER_TAG_TYPE_SNOW_ZORAS_DOMAIN:
|
||||
PRINTF("\n\n");
|
||||
// "☆☆☆☆☆ Yukigafuru You won't come (._.) ☆☆☆☆☆"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ ゆきがふるー あなたはこないー (._.) ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ ゆきがふるー あなたはこないー (._.) ☆☆☆☆☆ \n",
|
||||
"☆☆☆☆☆ The snow is falling... You're not coming... (._.) ☆☆☆☆☆ \n") VT_RST);
|
||||
|
||||
if (GET_EVENTCHKINF(EVENTCHKINF_4A)) {
|
||||
Actor_Kill(&this->actor);
|
||||
|
@ -92,8 +93,8 @@ void EnWeatherTag_Init(Actor* thisx, PlayState* play) {
|
|||
break;
|
||||
case EN_WEATHER_TAG_TYPE_RAIN_LAKE_HYLIA:
|
||||
PRINTF("\n\n");
|
||||
// "☆☆☆☆☆ Wow wa wa na wa saa ki ha (^o^) ☆☆☆☆☆"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ わわわわー なーがーさーきーはー (^o^) ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ わわわわー なーがーさーきーはー (^o^) ☆☆☆☆☆ \n",
|
||||
"☆☆☆☆☆ Waaaa- Na-ga-sa-ki wa- (^o^) ☆☆☆☆☆ \n") VT_RST);
|
||||
|
||||
if (GET_EVENTCHKINF(EVENTCHKINF_4A)) {
|
||||
Actor_Kill(&this->actor);
|
||||
|
@ -102,8 +103,8 @@ void EnWeatherTag_Init(Actor* thisx, PlayState* play) {
|
|||
break;
|
||||
case EN_WEATHER_TAG_TYPE_CLOUDY_DEATH_MOUNTAIN:
|
||||
PRINTF("\n\n");
|
||||
// "☆☆☆☆☆ Cloudy (._.) Ah Melancholy ☆☆☆☆☆"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ くもり (._.) あーあ 憂鬱 ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW)
|
||||
T("☆☆☆☆☆ くもり (._.) あーあ 憂鬱 ☆☆☆☆☆ \n", "☆☆☆☆☆ Cloudy (._.) Ah Melancholy ☆☆☆☆☆") VT_RST);
|
||||
if (GET_EVENTCHKINF(EVENTCHKINF_49)) {
|
||||
Actor_Kill(&this->actor);
|
||||
}
|
||||
|
@ -111,8 +112,8 @@ void EnWeatherTag_Init(Actor* thisx, PlayState* play) {
|
|||
break;
|
||||
case EN_WEATHER_TAG_TYPE_THUNDERSTORM_KAKARIKO:
|
||||
PRINTF("\n\n");
|
||||
// "☆☆☆☆☆ Cloudy Rain Thunder (;O;) Uo Melancholy ☆☆☆☆☆"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ くもり雨雷 (;O;) うおお 憂鬱 ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ くもり雨雷 (;O;) うおお 憂鬱 ☆☆☆☆☆ \n",
|
||||
"☆☆☆☆☆ Cloudy with rain and thunder (;O;) Wow, I'm depressed ☆☆☆☆☆ \n") VT_RST);
|
||||
|
||||
if (!GET_EVENTCHKINF(EVENTCHKINF_48) || !GET_EVENTCHKINF(EVENTCHKINF_49) ||
|
||||
!GET_EVENTCHKINF(EVENTCHKINF_4A) || CHECK_QUEST_ITEM(QUEST_MEDALLION_SHADOW)) {
|
||||
|
@ -122,14 +123,14 @@ void EnWeatherTag_Init(Actor* thisx, PlayState* play) {
|
|||
break;
|
||||
case EN_WEATHER_TAG_TYPE_SANDSTORM_INTENSITY:
|
||||
PRINTF("\n\n");
|
||||
// "☆☆☆☆☆ The desert becomes thicker ☆☆☆☆☆"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 砂漠が濃くなります ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ 砂漠が濃くなります ☆☆☆☆☆ \n", "☆☆☆☆☆ The desert becomes thicker ☆☆☆☆☆ \n")
|
||||
VT_RST);
|
||||
EnWeatherTag_SetupAction(this, EnWeatherTag_SetSandstormIntensity);
|
||||
break;
|
||||
case EN_WEATHER_TAG_TYPE_THUNDERSTORM_GRAVEYARD:
|
||||
PRINTF("\n\n");
|
||||
// "☆☆☆☆☆ Wow wa wa na wa saa ki ha (^o^) ☆☆☆☆☆"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ わわわわー なーがーさーきーはー (^o^) ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ わわわわー なーがーさーきーはー (^o^) ☆☆☆☆☆ \n",
|
||||
"☆☆☆☆☆ Waaaa- Na-ga-sa-ki wa- (^o^) ☆☆☆☆☆ \n") VT_RST);
|
||||
|
||||
EnWeatherTag_SetupAction(this, EnWeatherTag_DisabledRainThunder);
|
||||
break;
|
||||
|
|
|
@ -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"
|
||||
|
@ -292,8 +293,9 @@ void EnWf_Destroy(Actor* thisx, PlayState* play) {
|
|||
}
|
||||
|
||||
PRINTF("\n\n");
|
||||
// "☆☆☆☆☆ Number of concurrent events ☆☆☆☆☆"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 同時発生数 ☆☆☆☆☆%d\n" VT_RST, parent->curNumSpawn);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 同時発生数 ☆☆☆☆☆%d\n", "☆☆☆☆☆ Number of simultaneous occurrences ☆☆☆☆☆%d\n")
|
||||
VT_RST,
|
||||
parent->curNumSpawn);
|
||||
PRINTF("\n\n");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
#include "printf.h"
|
||||
#include "regs.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "z64debug_display.h"
|
||||
#include "z64play.h"
|
||||
#include "z64save.h"
|
||||
|
@ -42,8 +43,8 @@ void EnWonderTalk_Init(Actor* thisx, PlayState* play) {
|
|||
EnWonderTalk* this = (EnWonderTalk*)thisx;
|
||||
|
||||
PRINTF("\n\n");
|
||||
// "Special conversation"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 特殊会話くん ☆☆☆☆☆ %x\n" VT_RST, this->actor.params);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 特殊会話くん ☆☆☆☆☆ %x\n", "☆☆☆☆☆ Special conversation ☆☆☆☆☆ %x\n") VT_RST,
|
||||
this->actor.params);
|
||||
|
||||
this->unk_150 = PARAMS_GET_U(this->actor.params, 11, 5);
|
||||
this->unk_152 = PARAMS_GET_U(this->actor.params, 6, 5);
|
||||
|
@ -67,19 +68,17 @@ void func_80B391CC(EnWonderTalk* this, PlayState* play) {
|
|||
if (this->switchFlag < 0 || !Flags_GetSwitch(play, this->switchFlag)) {
|
||||
switch (this->unk_150) {
|
||||
case 1:
|
||||
// "Slate GO!"
|
||||
PRINTF(VT_FGCOL(GREEN) " ☆☆☆☆☆ 石板GO! ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(GREEN) T(" ☆☆☆☆☆ 石板GO! ☆☆☆☆☆ \n", " ☆☆☆☆☆ Slate GO! ☆☆☆☆☆ \n") VT_RST);
|
||||
this->height = 0.0f;
|
||||
this->unk_15C = 80.0f;
|
||||
// "Attention coordinates"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 注目座標\t \t☆☆☆☆☆ %f\n" VT_RST, 0.0f);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 注目座標\t \t☆☆☆☆☆ %f\n",
|
||||
"☆☆☆☆☆ Attention coordinates\t \t☆☆☆☆☆ %f\n") VT_RST,
|
||||
0.0f);
|
||||
if (!LINK_IS_ADULT) {
|
||||
this->actor.textId = 0x7040;
|
||||
// "Children"
|
||||
PRINTF(VT_FGCOL(GREEN) " ☆☆☆☆☆ こども ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(GREEN) T(" ☆☆☆☆☆ こども ☆☆☆☆☆ \n", " ☆☆☆☆☆ Child ☆☆☆☆☆ \n") VT_RST);
|
||||
} else {
|
||||
// "Adult"
|
||||
PRINTF(VT_FGCOL(CYAN) " ☆☆☆☆☆ おとな ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(CYAN) T(" ☆☆☆☆☆ おとな ☆☆☆☆☆ \n", " ☆☆☆☆☆ Adult ☆☆☆☆☆ \n") VT_RST);
|
||||
this->actor.textId = 0x7088;
|
||||
}
|
||||
|
||||
|
@ -87,29 +86,31 @@ void func_80B391CC(EnWonderTalk* this, PlayState* play) {
|
|||
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ this->actor.talk_message ☆☆☆☆☆ %x\n" VT_RST, this->actor.textId);
|
||||
break;
|
||||
case 2:
|
||||
// "Diary start!"
|
||||
PRINTF(VT_FGCOL(GREEN) " ☆☆☆☆☆ 日記帳スタート! ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(GREEN) T(" ☆☆☆☆☆ 日記帳スタート! ☆☆☆☆☆ \n", " ☆☆☆☆☆ Diary start! ☆☆☆☆☆ \n") VT_RST);
|
||||
this->actor.textId = 0x5002;
|
||||
this->unk_156 = TEXT_STATE_CHOICE;
|
||||
this->unk_15C = 40.0f;
|
||||
this->height = 30.0f;
|
||||
// "Attention coordinates"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 注目座標\t \t☆☆☆☆☆ %f\n" VT_RST, 30.0f);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 注目座標\t \t☆☆☆☆☆ %f\n",
|
||||
"☆☆☆☆☆ Attention coordinates\t \t☆☆☆☆☆ %f\n") VT_RST,
|
||||
30.0f);
|
||||
break;
|
||||
case 3:
|
||||
this->actor.textId = 0x501E;
|
||||
this->unk_156 = TEXT_STATE_EVENT;
|
||||
this->height = 0.0f;
|
||||
this->unk_15C = 110.0f;
|
||||
// "Attention coordinates"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 注目座標\t \t☆☆☆☆☆ %f\n" VT_RST, 0.0f);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 注目座標\t \t☆☆☆☆☆ %f\n",
|
||||
"☆☆☆☆☆ Attention coordinates\t \t☆☆☆☆☆ %f\n") VT_RST,
|
||||
0.0f);
|
||||
break;
|
||||
case 4:
|
||||
this->actor.textId = 0x5020;
|
||||
this->unk_156 = TEXT_STATE_DONE;
|
||||
this->height = 0.0f;
|
||||
// "Attention coordinates"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 注目座標\t \t☆☆☆☆☆ %f\n" VT_RST, 0.0f);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 注目座標\t \t☆☆☆☆☆ %f\n",
|
||||
"☆☆☆☆☆ Attention coordinates\t \t☆☆☆☆☆ %f\n") VT_RST,
|
||||
0.0f);
|
||||
this->unk_15C = 120.0f;
|
||||
if (GET_EVENTCHKINF(EVENTCHKINF_1D)) {
|
||||
Actor_Kill(&this->actor);
|
||||
|
@ -120,8 +121,9 @@ void func_80B391CC(EnWonderTalk* this, PlayState* play) {
|
|||
this->unk_156 = TEXT_STATE_EVENT;
|
||||
this->height = 0.0f;
|
||||
this->unk_15C = 110.0f;
|
||||
// "Attention coordinates"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 注目座標\t \t☆☆☆☆☆ %f\n" VT_RST, 0.0f);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 注目座標\t \t☆☆☆☆☆ %f\n",
|
||||
"☆☆☆☆☆ Attention coordinates\t \t☆☆☆☆☆ %f\n") VT_RST,
|
||||
0.0f);
|
||||
break;
|
||||
default:
|
||||
this->actor.textId = 0x7072;
|
||||
|
@ -161,14 +163,18 @@ void func_80B3943C(EnWonderTalk* this, PlayState* play) {
|
|||
if (yawDiff < 0x4000) {
|
||||
if (this->unk_15A >= 2) {
|
||||
PRINTF("\n\n");
|
||||
// "Save information"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ セーブ情報\t\t☆☆☆☆☆ %d\n" VT_RST, this->switchFlag);
|
||||
// "Type index"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 種類インデックス\t☆☆☆☆☆ %d\n" VT_RST, this->unk_150);
|
||||
// "Actual message type"
|
||||
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ 実質メッセージ種類 %x\n" VT_RST, this->actor.textId);
|
||||
// "Specified range"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 指定範囲 %d\n" VT_RST, this->actor.world.rot.z);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ セーブ情報\t\t☆☆☆☆☆ %d\n", "☆☆☆☆☆ Save information\t\t☆☆☆☆☆ %d\n")
|
||||
VT_RST,
|
||||
this->switchFlag);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 種類インデックス\t☆☆☆☆☆ %d\n", "☆☆☆☆☆ Type index\t☆☆☆☆☆ %d\n")
|
||||
VT_RST,
|
||||
this->unk_150);
|
||||
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ 実質メッセージ種類 %x\n", "☆☆☆☆☆ Actual message type %x\n")
|
||||
VT_RST,
|
||||
this->actor.textId);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 指定範囲 %d\n",
|
||||
"☆☆☆☆☆ Specified range %d\n") VT_RST,
|
||||
this->actor.world.rot.z);
|
||||
PRINTF("\n\n");
|
||||
}
|
||||
this->unk_15A = 0;
|
||||
|
@ -193,18 +199,17 @@ void func_80B395F0(EnWonderTalk* this, PlayState* play) {
|
|||
switch (play->msgCtx.choiceIndex) {
|
||||
case 0:
|
||||
if (!LINK_IS_ADULT) {
|
||||
// "I'm still a child!"
|
||||
PRINTF(VT_FGCOL(GREEN) " ☆☆☆☆☆ まだコドモなの! ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(GREEN) T(" ☆☆☆☆☆ まだコドモなの! ☆☆☆☆☆ \n",
|
||||
" ☆☆☆☆☆ I'm still a child! ☆☆☆☆☆ \n") VT_RST);
|
||||
this->actor.textId = 0x5001;
|
||||
} else {
|
||||
// "I'm an adult. .. .."
|
||||
PRINTF(VT_FGCOL(YELLOW) " ☆☆☆☆☆ アダルトなの。。。 ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(YELLOW) T(" ☆☆☆☆☆ アダルトなの。。。 ☆☆☆☆☆ \n",
|
||||
" ☆☆☆☆☆ I'm an adult... ☆☆☆☆☆ \n") VT_RST);
|
||||
this->actor.textId = 0x5003;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
// "Out!"
|
||||
PRINTF(VT_FGCOL(MAGENTA) " ☆☆☆☆☆ はずれ! ☆☆☆☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T(" ☆☆☆☆☆ はずれ! ☆☆☆☆☆ \n", " ☆☆☆☆☆ No luck! ☆☆☆☆☆ \n") VT_RST);
|
||||
this->actor.textId = 0x5004;
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
#include "printf.h"
|
||||
#include "regs.h"
|
||||
#include "terminal.h"
|
||||
#include "translation.h"
|
||||
#include "z64debug_display.h"
|
||||
#include "z64item.h"
|
||||
#include "z64play.h"
|
||||
|
@ -48,8 +49,8 @@ void EnWonderTalk2_Init(Actor* thisx, PlayState* play) {
|
|||
EnWonderTalk2* this = (EnWonderTalk2*)thisx;
|
||||
|
||||
PRINTF("\n\n");
|
||||
// "Transparent message"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 透明メッセージ君 ☆☆☆☆☆ %x\n" VT_RST, this->actor.params);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 透明メッセージ君 ☆☆☆☆☆ %x\n", "☆☆☆☆☆ Transparent message ☆☆☆☆☆ %x\n") VT_RST,
|
||||
this->actor.params);
|
||||
this->baseMsgId = PARAMS_GET_U(this->actor.params, 6, 8);
|
||||
if (this->actor.world.rot.z > 0) {
|
||||
s32 rangeIndex = 0;
|
||||
|
@ -68,12 +69,12 @@ void EnWonderTalk2_Init(Actor* thisx, PlayState* play) {
|
|||
this->actor.attentionRangeType = D_80B3A8E0[rangeIndex];
|
||||
|
||||
PRINTF("\n\n");
|
||||
// "originally?"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 元は? ☆☆☆☆☆ %d\n" VT_RST, this->actor.world.rot.z);
|
||||
// "The range is?"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ レンジは? ☆☆☆☆☆ %d\n" VT_RST, this->actor.attentionRangeType);
|
||||
// "Is the range?"
|
||||
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ は、範囲わ? ☆☆☆☆☆ %f\n" VT_RST, this->triggerRange);
|
||||
PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ 元は? ☆☆☆☆☆ %d\n", "☆☆☆☆☆ Originally? ☆☆☆☆☆ %d\n") VT_RST,
|
||||
this->actor.world.rot.z);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ レンジは? ☆☆☆☆☆ %d\n", "☆☆☆☆☆ The range is? ☆☆☆☆☆ %d\n") VT_RST,
|
||||
this->actor.attentionRangeType);
|
||||
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ は、範囲わ? ☆☆☆☆☆ %f\n", "☆☆☆☆☆ The range is? ☆☆☆☆☆ %f\n") VT_RST,
|
||||
this->triggerRange);
|
||||
PRINTF("\n\n");
|
||||
PRINTF("\n\n");
|
||||
PRINTF("\n\n");
|
||||
|
@ -127,8 +128,9 @@ void func_80B3A15C(EnWonderTalk2* this, PlayState* play) {
|
|||
} else if (Actor_TalkOfferAccepted(&this->actor, play)) {
|
||||
if ((this->switchFlag >= 0) && (this->talkMode != 2)) {
|
||||
Flags_SetSwitch(play, this->switchFlag);
|
||||
// "I saved it! All of it!"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ セーブしたよ!おもいっきり! %x\n" VT_RST, this->switchFlag);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ セーブしたよ!おもいっきり! %x\n", "☆☆☆☆☆ I saved it! All of it! %x\n")
|
||||
VT_RST,
|
||||
this->switchFlag);
|
||||
}
|
||||
|
||||
this->actionFunc = func_80B3A10C;
|
||||
|
@ -140,30 +142,33 @@ void func_80B3A15C(EnWonderTalk2* this, PlayState* play) {
|
|||
|
||||
if (DEBUG_FEATURES && this->unk_158 >= 2) {
|
||||
PRINTF("\n\n");
|
||||
// "Transparent Message Kimi Set"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 透明メッセージ君せっと %x\n" VT_RST, this->actor.params);
|
||||
// "Save Information"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ セーブ情報 \t %x\n" VT_RST, this->switchFlag);
|
||||
// "Specified message type"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 指定メッセージ種類 %x\n" VT_RST, this->baseMsgId);
|
||||
// "Actual message type"
|
||||
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ 実質メッセージ種類 %x\n" VT_RST, this->actor.textId);
|
||||
// "Specified range"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 指定範囲 %d\n" VT_RST, this->actor.world.rot.z);
|
||||
// "Processing range"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 処理範囲 %f\n" VT_RST, this->triggerRange);
|
||||
PRINTF(VT_FGCOL(GREEN) T("☆☆☆☆☆ 透明メッセージ君せっと %x\n", "☆☆☆☆☆ Transparent Message Kimi Set %x\n")
|
||||
VT_RST,
|
||||
this->actor.params);
|
||||
PRINTF(VT_FGCOL(YELLOW)
|
||||
T("☆☆☆☆☆ セーブ情報 \t %x\n", "☆☆☆☆☆ Save Information \t %x\n") VT_RST,
|
||||
this->switchFlag);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 指定メッセージ種類 %x\n", "☆☆☆☆☆ Specified message type %x\n")
|
||||
VT_RST,
|
||||
this->baseMsgId);
|
||||
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ 実質メッセージ種類 %x\n", "☆☆☆☆☆ Actual message type %x\n")
|
||||
VT_RST,
|
||||
this->actor.textId);
|
||||
PRINTF(VT_FGCOL(GREEN)
|
||||
T("☆☆☆☆☆ 指定範囲 %d\n", "☆☆☆☆☆ Specified range %d\n") VT_RST,
|
||||
this->actor.world.rot.z);
|
||||
PRINTF(VT_FGCOL(YELLOW)
|
||||
T("☆☆☆☆☆ 処理範囲 %f\n", "☆☆☆☆☆ Processing range %f\n") VT_RST,
|
||||
this->triggerRange);
|
||||
switch (this->talkMode) {
|
||||
case 0:
|
||||
// "Normal"
|
||||
PRINTF(VT_FGCOL(MAGENTA) " ☆☆ 通常 ☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T(" ☆☆ 通常 ☆☆ \n", " ☆☆ Normal ☆☆ \n") VT_RST);
|
||||
break;
|
||||
case 2:
|
||||
// "Check only"
|
||||
PRINTF(VT_FGCOL(MAGENTA) " ☆☆ チェックのみ ☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T(" ☆☆ チェックのみ ☆☆ \n", " ☆☆ Check only ☆☆ \n") VT_RST);
|
||||
break;
|
||||
case 3:
|
||||
// "Lock only"
|
||||
PRINTF(VT_FGCOL(MAGENTA) " ☆☆ ロックのみ ☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T(" ☆☆ ロックのみ ☆☆ \n", " ☆☆ Lock only ☆☆ \n") VT_RST);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -176,8 +181,7 @@ void func_80B3A15C(EnWonderTalk2* this, PlayState* play) {
|
|||
|
||||
void func_80B3A3D4(EnWonderTalk2* this, PlayState* play) {
|
||||
if (BREG(2) != 0) {
|
||||
// "Oh"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ わー %d\n" VT_RST, Message_GetState(&play->msgCtx));
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ わー %d\n", "☆☆☆☆☆ Oh %d\n") VT_RST, Message_GetState(&play->msgCtx));
|
||||
}
|
||||
|
||||
switch (Message_GetState(&play->msgCtx)) {
|
||||
|
@ -193,8 +197,9 @@ void func_80B3A3D4(EnWonderTalk2* this, PlayState* play) {
|
|||
case TEXT_STATE_NONE:
|
||||
if ((this->switchFlag >= 0) && (this->talkMode != 4)) {
|
||||
Flags_SetSwitch(play, this->switchFlag);
|
||||
// "(Forced) I saved it! All of it!"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ (強制)セーブしたよ!おもいっきり! %x\n" VT_RST, this->switchFlag);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ (強制)セーブしたよ!おもいっきり! %x\n",
|
||||
"☆☆☆☆☆ (Forced) I saved it! All of it! %x\n") VT_RST,
|
||||
this->switchFlag);
|
||||
}
|
||||
|
||||
if (this->talkMode == 4) {
|
||||
|
@ -220,8 +225,7 @@ void func_80B3A4F8(EnWonderTalk2* this, PlayState* play) {
|
|||
}
|
||||
} else if ((this->talkMode != 4) || !this->unk_15A) {
|
||||
if (BREG(2) != 0) {
|
||||
// "distance"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ きょり %f\n" VT_RST, this->actor.xzDistToPlayer);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ きょり %f\n", "☆☆☆☆☆ distance %f\n") VT_RST, this->actor.xzDistToPlayer);
|
||||
}
|
||||
if (((this->actor.xzDistToPlayer < (40.0f + this->triggerRange)) &&
|
||||
(fabsf(player->actor.world.pos.y - this->actor.world.pos.y) < 100.0f)) &&
|
||||
|
@ -229,30 +233,34 @@ void func_80B3A4F8(EnWonderTalk2* this, PlayState* play) {
|
|||
|
||||
if (DEBUG_FEATURES && this->unk_158 >= 2) {
|
||||
PRINTF("\n\n");
|
||||
// "Transparent Message Kimi Seto"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 透明メッセージ君せっと %x\n" VT_RST, this->actor.params);
|
||||
// "Save Information"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ セーブ情報 \t %x\n" VT_RST, this->switchFlag);
|
||||
// "Specified message type"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 指定メッセージ種類 %x\n" VT_RST, this->baseMsgId);
|
||||
// "Real message type"
|
||||
PRINTF(VT_FGCOL(CYAN) "☆☆☆☆☆ 実質メッセージ種類 %x\n" VT_RST, this->actor.textId);
|
||||
// "Specified range"
|
||||
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 指定範囲 %d\n" VT_RST, this->actor.world.rot.z);
|
||||
// "Processing range"
|
||||
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ 処理範囲 %f\n" VT_RST, this->triggerRange);
|
||||
// "What is your range?"
|
||||
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ レンジは? \t\t %d\n" VT_RST, this->actor.attentionRangeType);
|
||||
PRINTF(VT_FGCOL(GREEN)
|
||||
T("☆☆☆☆☆ 透明メッセージ君せっと %x\n", "☆☆☆☆☆ Transparent Message Kimi Seto %x\n") VT_RST,
|
||||
this->actor.params);
|
||||
PRINTF(VT_FGCOL(YELLOW)
|
||||
T("☆☆☆☆☆ セーブ情報 \t %x\n", "☆☆☆☆☆ Save Information \t %x\n") VT_RST,
|
||||
this->switchFlag);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ 指定メッセージ種類 %x\n", "☆☆☆☆☆ Specified message type %x\n")
|
||||
VT_RST,
|
||||
this->baseMsgId);
|
||||
PRINTF(VT_FGCOL(CYAN) T("☆☆☆☆☆ 実質メッセージ種類 %x\n", "☆☆☆☆☆ Real message type %x\n") VT_RST,
|
||||
this->actor.textId);
|
||||
PRINTF(VT_FGCOL(GREEN)
|
||||
T("☆☆☆☆☆ 指定範囲 %d\n", "☆☆☆☆☆ Specified range %d\n") VT_RST,
|
||||
this->actor.world.rot.z);
|
||||
PRINTF(VT_FGCOL(YELLOW)
|
||||
T("☆☆☆☆☆ 処理範囲 %f\n", "☆☆☆☆☆ Processing range %f\n") VT_RST,
|
||||
this->triggerRange);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T("☆☆☆☆☆ レンジは? \t\t %d\n", "☆☆☆☆☆ The range is? \t\t %d\n") VT_RST,
|
||||
this->actor.attentionRangeType);
|
||||
PRINTF("\n\n");
|
||||
PRINTF("\n\n");
|
||||
switch (this->talkMode) {
|
||||
case 1:
|
||||
// "Compulsion"
|
||||
PRINTF(VT_FGCOL(MAGENTA) " ☆☆ 強制 ☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(MAGENTA) T(" ☆☆ 強制 ☆☆ \n", " ☆☆ Compulsion ☆☆ \n") VT_RST);
|
||||
break;
|
||||
case 4:
|
||||
// "Gerudo Training Grounds Forced Check Only"
|
||||
PRINTF(VT_FGCOL(RED) " ☆☆ ゲルドの修練場強制チェックのみ ☆☆ \n" VT_RST);
|
||||
PRINTF(VT_FGCOL(RED) T(" ☆☆ ゲルドの修練場強制チェックのみ ☆☆ \n",
|
||||
" ☆☆ Gerudo Training Grounds Forced Check Only ☆☆ \n") VT_RST);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue