6#include "sprite/player.h"
9#define NAMESPACE battle_item_egg_missile
13API_CALLABLE(N(func_802A123C_71CF1C)) {
19 fx_smoke_ring(0, x, y, z);
20 fx_explosion(0, x, y + 20, z);
29#include "battle/move/item/egg_missile1.png.h"
30INCLUDE_IMG(
"battle/move/item/egg_missile1.png", battle_item_egg_missile1_png);
31INCLUDE_PAL(
"battle/move/item/egg_missile1.pal", battle_item_egg_missile1_pal);
33#include "battle/move/item/egg_missile2.png.h"
34INCLUDE_IMG(
"battle/move/item/egg_missile2.png", battle_item_egg_missile2_png);
35INCLUDE_PAL(
"battle/move/item/egg_missile2.pal", battle_item_egg_missile2_pal);
37#include "battle/move/item/egg_missile3.png.h"
38INCLUDE_IMG(
"battle/move/item/egg_missile3.png", battle_item_egg_missile3_png);
39INCLUDE_PAL(
"battle/move/item/egg_missile3.pal", battle_item_egg_missile3_pal);
41#include "battle/move/item/egg_missile4.png.h"
42INCLUDE_IMG(
"battle/move/item/egg_missile4.png", battle_item_egg_missile4_png);
43INCLUDE_PAL(
"battle/move/item/egg_missile4.pal", battle_item_egg_missile4_pal);
45Vtx N(EggMissileVtx)[] = {
46 { .v = {{ -16, -16, 0 }, FALSE, { 0, 0 }, { 0, 0, 0, 255 }}},
47 { .v = {{ 15, -16, 0 }, FALSE, { 1024, 0 }, { 0, 0, 0, 255 }}},
48 { .v = {{ 15, 15, 0 }, FALSE, { 1024, 1024 }, { 0, 0, 0, 255 }}},
49 { .v = {{ -16, 15, 0 }, FALSE, { 0, 1024 }, { 0, 0, 0, 255 }}},
54 gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
55 gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
56 gsDPSetTexturePersp(G_TP_PERSP),
57 gsDPSetTextureDetail(G_TD_CLAMP),
58 gsDPSetTextureLOD(G_TL_TILE),
59 gsDPSetTextureLUT(G_TT_NONE),
60 gsDPSetTextureFilter(G_TF_AVERAGE),
61 gsDPSetTextureConvert(G_TC_FILT),
62 gsDPSetTextureLUT(G_TT_RGBA16),
63 gsDPLoadTLUT_pal16(0, battle_item_egg_missile1_pal),
64 gsDPLoadTextureTile_4b(battle_item_egg_missile1_png, G_IM_FMT_CI, battle_item_egg_missile1_png_width, battle_item_egg_missile1_png_height, 0, 0, battle_item_egg_missile1_png_width - 1, battle_item_egg_missile1_png_height - 1, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD),
65 gsSPClearGeometryMode(G_LIGHTING),
66 gsSPClearGeometryMode(G_SHADING_SMOOTH),
67 gsSPVertex(N(EggMissileVtx),
ARRAY_COUNT(N(EggMissileVtx)), 0),
68 gsSP1Triangle(0, 1, 2, 0),
69 gsSP1Triangle(0, 2, 3, 0),
76 gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
77 gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
78 gsDPSetTexturePersp(G_TP_PERSP),
79 gsDPSetTextureDetail(G_TD_CLAMP),
80 gsDPSetTextureLOD(G_TL_TILE),
81 gsDPSetTextureLUT(G_TT_NONE),
82 gsDPSetTextureFilter(G_TF_AVERAGE),
83 gsDPSetTextureConvert(G_TC_FILT),
84 gsDPSetTextureLUT(G_TT_RGBA16),
85 gsDPLoadTLUT_pal16(0, battle_item_egg_missile2_pal),
86 gsDPLoadTextureTile_4b(battle_item_egg_missile2_png, G_IM_FMT_CI, battle_item_egg_missile2_png_width, 0, 0, 0, battle_item_egg_missile2_png_width - 1, battle_item_egg_missile2_png_height - 1, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD),
87 gsSPClearGeometryMode(G_LIGHTING),
88 gsSPClearGeometryMode(G_SHADING_SMOOTH),
89 gsSPVertex(N(EggMissileVtx),
ARRAY_COUNT(N(EggMissileVtx)), 0),
90 gsSP1Triangle(0, 1, 2, 0),
91 gsSP1Triangle(0, 2, 3, 0),
98 gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
99 gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
100 gsDPSetTexturePersp(G_TP_PERSP),
101 gsDPSetTextureDetail(G_TD_CLAMP),
102 gsDPSetTextureLOD(G_TL_TILE),
103 gsDPSetTextureLUT(G_TT_NONE),
104 gsDPSetTextureFilter(G_TF_AVERAGE),
105 gsDPSetTextureConvert(G_TC_FILT),
106 gsDPSetTextureLUT(G_TT_RGBA16),
107 gsDPLoadTLUT_pal16(0, battle_item_egg_missile3_pal),
108 gsDPLoadTextureTile_4b(battle_item_egg_missile3_png, G_IM_FMT_CI, battle_item_egg_missile3_png_width, 0, 0, 0, battle_item_egg_missile3_png_width - 1, battle_item_egg_missile3_png_height - 1, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD),
109 gsSPClearGeometryMode(G_LIGHTING),
110 gsSPClearGeometryMode(G_SHADING_SMOOTH),
111 gsSPVertex(N(EggMissileVtx),
ARRAY_COUNT(N(EggMissileVtx)), 0),
112 gsSP1Triangle(0, 1, 2, 0),
113 gsSP1Triangle(0, 2, 3, 0),
115 gsSPEndDisplayList(),
118Gfx N(Frame4Gfx)[] = {
120 gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
121 gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
122 gsDPSetTexturePersp(G_TP_PERSP),
123 gsDPSetTextureDetail(G_TD_CLAMP),
124 gsDPSetTextureLOD(G_TL_TILE),
125 gsDPSetTextureLUT(G_TT_NONE),
126 gsDPSetTextureFilter(G_TF_AVERAGE),
127 gsDPSetTextureConvert(G_TC_FILT),
128 gsDPSetTextureLUT(G_TT_RGBA16),
129 gsDPLoadTLUT_pal16(0, battle_item_egg_missile4_pal),
130 gsDPLoadTextureTile_4b(battle_item_egg_missile4_png, G_IM_FMT_CI, battle_item_egg_missile4_png_width, 0, 0, 0, battle_item_egg_missile4_png_width - 1, battle_item_egg_missile4_png_height - 1, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD),
131 gsSPClearGeometryMode(G_LIGHTING),
132 gsSPClearGeometryMode(G_SHADING_SMOOTH),
133 gsSPVertex(N(EggMissileVtx),
ARRAY_COUNT(N(EggMissileVtx)), 0),
134 gsSP1Triangle(0, 1, 2, 0),
135 gsSP1Triangle(0, 2, 3, 0),
137 gsSPEndDisplayList(),
155 Call(MoveBattleCamOver, 15)
165 Call(InitTargetIterator)
EntityModelScript unusedModelScript
#define STANDARD_ENTITY_MODEL_SCRIPT(gfx, renderMode)
#define ems_SetRenderMode(mode)
#define ems_Draw(dlist, holdTime)
@ BS_FLAGS1_TRIGGER_EVENTS
@ SOUND_EGG_MISSILE_BLAST
@ DAMAGE_TYPE_IGNORE_DEFENSE
s32 evt_get_variable(Evt *script, Bytecode var)
#define INCLUDE_PAL(FILENAME, SYMBOLNAME)
#define INCLUDE_IMG(FILENAME, SYMBOLNAME)
ApiStatus PlaySound(Evt *script, b32 isInitialCall)
ApiStatus CreateVirtualEntity(Evt *script, b32 isInitialCall)
ApiStatus SetVirtualEntityPosition(Evt *script, b32 isInitialCall)
ApiStatus SetVirtualEntityJumpGravity(Evt *script, b32 isInitialCall)
ApiStatus ShakeCam(Evt *script, b32 isInitialCall)
ApiStatus DeleteVirtualEntity(Evt *script, b32 isInitialCall)
ApiStatus GetItemPower(Evt *script, b32 isInitialCall)
ApiStatus VirtualEntityJumpTo(Evt *script, b32 isInitialCall)
ApiStatus SetVirtualEntityRotation(Evt *script, b32 isInitialCall)
#define Ref(sym)
Address/pointer constant.
#define Set(VAR, INT_VALUE)
Sets the given variable to a given value casted to an integer.
#define End
Signals the end of EVT script data. A script missing this will likely crash on load.
#define Add(VAR, INT_VALUE)
#define EndLoop
Marks the end of a loop.
#define ExecWait(EVT_SOURCE)
Launches a new child thread.
#define Thread
Marks the start of a thread block.
#define EndThread
Marks the end of a thread block.
#define Wait(NUM_FRAMES)
Blocks for the given number of frames.
#define Call(FUNC, ARGS...)
Calls a given C EVT API function with any number of arguments.
#define Loop(TIMES)
Marks the beginning of a loop.
#define SetConst(VAR, CONST)
Sets the given variable to a given value, skipping the evt_get_variable call.
#define Return
Kills the current EVT thread.