summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortgsm <doodrabbit@hotmail.com>2021-06-01 01:05:51 -0400
committertgsm <doodrabbit@hotmail.com>2021-06-01 01:09:34 -0400
commit0e5566e7d26509088d0528f6b0946afa882a4532 (patch)
tree9b8dedea74584a7e2a673de4bab3ca832a9944d4
parent40bf7584958428b8645256d5093143b7f0c6ebdd (diff)
Document scrcmd_20 -> scrcmd_prizes
-rw-r--r--arm9/arm9.lsf2
-rw-r--r--arm9/asm/unk_02038C78.s2
-rw-r--r--arm9/global.inc2
-rw-r--r--arm9/src/scrcmd_20.c35
-rw-r--r--arm9/src/scrcmd_prizes.c36
-rw-r--r--include/scrcmd.h4
6 files changed, 41 insertions, 40 deletions
diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf
index 124467f0..fa609048 100644
--- a/arm9/arm9.lsf
+++ b/arm9/arm9.lsf
@@ -176,7 +176,7 @@ Static arm9
Object scrcmd_18_c.o
Object scrcmd_18.o
Object scrcmd_fossils.o
- Object scrcmd_20.o
+ Object scrcmd_prizes.o
Object scrcmd_flags.o
Object scrcmd_items.o
Object scrcmd_underground.o
diff --git a/arm9/asm/unk_02038C78.s b/arm9/asm/unk_02038C78.s
index a21e170a..bbed9516 100644
--- a/arm9/asm/unk_02038C78.s
+++ b/arm9/asm/unk_02038C78.s
@@ -827,7 +827,7 @@ gScriptCmdTable: ; 0x020F355C
.word ScrCmd_Unk02A3
.word ScrCmd_Unk02A4
.word ScrCmd_Unk02A5
- .word ScrCmd_Unk02A6
+ .word ScrCmd_GetPrizeItemIdAndCost
.word ScrCmd_Unk02A7
.word ScrCmd_TakeCoinsAddress
.word ScrCmd_HasEnoughCoinsAddress
diff --git a/arm9/global.inc b/arm9/global.inc
index 1c0b51e3..46268a8c 100644
--- a/arm9/global.inc
+++ b/arm9/global.inc
@@ -3357,7 +3357,7 @@
.extern ScrCmd_GetFossilMinimumAmount
.extern ScrCmd_Unk01F2
.extern ScrCmd_Unk01F3
-.extern ScrCmd_Unk02A6
+.extern ScrCmd_GetPrizeItemIdAndCost
.extern ScrCmd_HasSinnohDex
.extern ScrCmd_GiveSinnohDex
.extern ScrCmd_HasRunningShoes
diff --git a/arm9/src/scrcmd_20.c b/arm9/src/scrcmd_20.c
deleted file mode 100644
index 882126a0..00000000
--- a/arm9/src/scrcmd_20.c
+++ /dev/null
@@ -1,35 +0,0 @@
-#include "scrcmd.h"
-
-const u16 UNK_020F452A[19][2] = {
- { 0x00FB, 0x03E8 },
- { 0x0109, 0x03E8 },
- { 0x0114, 0x03E8 },
- { 0x0115, 0x03E8 },
- { 0x01A1, 0x07D0 },
- { 0x0181, 0x07D0 },
- { 0x0192, 0x0FA0 },
- { 0x0167, 0x0FA0 },
- { 0x0173, 0x1770 },
- { 0x01A0, 0x1770 },
- { 0x0151, 0x1770 },
- { 0x0162, 0x1F40 },
- { 0x015C, 0x1F40 },
- { 0x016A, 0x2710 },
- { 0x015F, 0x2710 },
- { 0x0154, 0x2710 },
- { 0x0164, 0x2710 },
- { 0x0191, 0x3A98 },
- { 0x018B, 0x4E20 },
-};
-
-THUMB_FUNC BOOL ScrCmd_Unk02A6(struct ScriptContext * ctx)
-{
- u16 idx = VarGet(ctx->unk80, ScriptReadHalfword(ctx));
- u16 * ret_ptr1 = GetVarPointer(ctx->unk80, ScriptReadHalfword(ctx));
- u16 * ret_ptr2 = GetVarPointer(ctx->unk80, ScriptReadHalfword(ctx));
-
- *ret_ptr1 = UNK_020F452A[idx][0];
- *ret_ptr2 = UNK_020F452A[idx][1];
-
- return FALSE;
-}
diff --git a/arm9/src/scrcmd_prizes.c b/arm9/src/scrcmd_prizes.c
new file mode 100644
index 00000000..9a6cde41
--- /dev/null
+++ b/arm9/src/scrcmd_prizes.c
@@ -0,0 +1,36 @@
+#include "scrcmd.h"
+#include "constants/items.h"
+
+const u16 gGameCornerPrizes[19][2] = {
+ { ITEM_SILK_SCARF, 1000 },
+ { ITEM_WIDE_LENS, 1000 },
+ { ITEM_ZOOM_LENS, 1000 },
+ { ITEM_METRONOME, 1000 },
+ { ITEM_TM90, 2000 },
+ { ITEM_TM58, 2000 },
+ { ITEM_TM75, 4000 },
+ { ITEM_TM32, 4000 },
+ { ITEM_TM44, 6000 },
+ { ITEM_TM89, 6000 },
+ { ITEM_TM10, 6000 },
+ { ITEM_TM27, 8000 },
+ { ITEM_TM21, 8000 },
+ { ITEM_TM35, 10000 },
+ { ITEM_TM24, 10000 },
+ { ITEM_TM13, 10000 },
+ { ITEM_TM29, 10000 },
+ { ITEM_TM74, 15000 },
+ { ITEM_TM68, 20000 },
+};
+
+THUMB_FUNC BOOL ScrCmd_GetPrizeItemIdAndCost(struct ScriptContext* ctx)
+{
+ u16 idx = VarGet(ctx->unk80, ScriptReadHalfword(ctx));
+ u16* prize_item_id = GetVarPointer(ctx->unk80, ScriptReadHalfword(ctx));
+ u16* prize_cost_in_coins = GetVarPointer(ctx->unk80, ScriptReadHalfword(ctx));
+
+ *prize_item_id = gGameCornerPrizes[idx][0];
+ *prize_cost_in_coins = gGameCornerPrizes[idx][1];
+
+ return FALSE;
+}
diff --git a/include/scrcmd.h b/include/scrcmd.h
index 53f40bda..91cb306c 100644
--- a/include/scrcmd.h
+++ b/include/scrcmd.h
@@ -257,8 +257,8 @@ BOOL ScrCmd_GetFossilMinimumAmount(struct ScriptContext* ctx);
BOOL ScrCmd_Unk01F2(struct ScriptContext* ctx);
BOOL ScrCmd_Unk01F3(struct ScriptContext* ctx);
-//scrcmd_20.c
-BOOL ScrCmd_Unk02A6(struct ScriptContext* ctx);
+//scrcmd_prizes.c
+BOOL ScrCmd_GetPrizeItemIdAndCost(struct ScriptContext* ctx);
//scrcmd_flags.c
BOOL ScrCmd_HasSinnohDex(struct ScriptContext* ctx);