diff --git a/Makefile b/Makefile index 572deaa3..ae84e93d 100644 --- a/Makefile +++ b/Makefile @@ -452,21 +452,6 @@ endif # Extra Source Files # #==============================================================================# -# Luigi, wario and toad sounds don't work on 32-bit right now -# And the audio code is so terrible I don't care enough to figure it out at the moment -ifeq ($(TARGET_BITS), 32) - _ := $(shell rm -rf sound/samples/sfx_custom_luigi/*.aiff) - _ := $(shell rm -rf sound/samples/sfx_custom_luigi_peach/*.aiff) - _ := $(shell rm -rf sound/samples/sfx_custom_wario/*.aiff) - _ := $(shell rm -rf sound/samples/sfx_custom_wario_peach/*.aiff) - _ := $(shell rm -rf sound/samples/sfx_custom_toad/*.aiff) - _ := $(shell rm -rf sound/samples/sfx_custom_toad_peach/*.aiff) - -# Copy missing character sounds from mario sound banks -_ := $(shell $(PYTHON) $(TOOLS_DIR)/copy_mario_sounds.py) - -endif - # Copy missing instrument samples from the music sound banks _ := $(shell $(PYTHON) $(TOOLS_DIR)/copy_extended_sounds.py) @@ -997,11 +982,6 @@ export LANG := C # Extra CC Flags # #==============================================================================# -# Identify that this is a coop build so that one patch can be applied to EX -# and/or COOP. They can choose to ifdef entity synchronization out. -CC_CHECK_CFLAGS += -DCOOP -CFLAGS += -DCOOP - # Enforce -Werror in strict mode ifeq ($(STRICT),1) CC_CHECK_CFLAGS += -Werror diff --git a/mods/character-select-coop/a-utils.lua b/mods/character-select-coop/a-utils.lua index 4f067f00..80742747 100644 --- a/mods/character-select-coop/a-utils.lua +++ b/mods/character-select-coop/a-utils.lua @@ -81,6 +81,6 @@ end -- Global Variables -- ---------------------- -modVersion = "1.5.2" +modVersion = "1.5.3" allowMenu = {} diff --git a/mods/character-select-coop/z-dev-32.lua b/mods/character-select-coop/z-dev-32.lua index d4c101b8..b69a01d3 100644 Binary files a/mods/character-select-coop/z-dev-32.lua and b/mods/character-select-coop/z-dev-32.lua differ diff --git a/mods/character-select-coop/z-dev-64.lua b/mods/character-select-coop/z-dev-64.lua index d8b4b1d3..292b9203 100644 Binary files a/mods/character-select-coop/z-dev-64.lua and b/mods/character-select-coop/z-dev-64.lua differ diff --git a/mods/day-night-cycle/README.md b/mods/day-night-cycle/README.md deleted file mode 100644 index 1b1cd8cf..00000000 --- a/mods/day-night-cycle/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# Day Night Cycle - - - Watch the video - - -This mod adds a fully featured day night cycle system with night, sunrise, day and sunset to sm64ex-coop. Days last 24 minutes and you can switch to and from 24 hour time with /ampm - -Special thanks to AngelicMiracles for the sunset, sunrise and night time skyboxes diff --git a/mods/day-night-cycle/day-night-cycle.zip b/mods/day-night-cycle/day-night-cycle.zip deleted file mode 100644 index d1981446..00000000 Binary files a/mods/day-night-cycle/day-night-cycle.zip and /dev/null differ diff --git a/mods/day-night-cycle/main.lua b/mods/day-night-cycle/main.lua index aea7ecd6..8908f848 100644 --- a/mods/day-night-cycle/main.lua +++ b/mods/day-night-cycle/main.lua @@ -1,6 +1,6 @@ -- name: .Day Night Cycle DX -- incompatible: light --- description: Day Night Cycle DX v2.0\nBy \\#ec7731\\Agent X\n\n\\#dcdcdc\\This mod adds a fully featured day night cycle system with night, sunrise, day and sunset to sm64coopdx. Days last 24 minutes and you can switch to and from 24 hour time with /ampm\n\nSpecial thanks to \\#00ffff\\AngelicMiracles \\#dcdcdc\\for the sunset, sunrise and night time skyboxes +-- description: Day Night Cycle DX v2.0\nBy \\#ec7731\\Agent X\n\n\\#dcdcdc\\This mod adds a fully featured day night cycle system with night, sunrise, day and sunset to sm64coopdx. Days last 24 minutes and you can switch to and from 24 hour time with /time 24h\n\nSpecial thanks to \\#00ffff\\AngelicMiracles \\#dcdcdc\\for the sunset, sunrise and night time skyboxes -- deluxe: true --- @diagnostic disable: undefined-global diff --git a/mods/gun-mod/actors/ak47/geo.inc.c b/mods/gun-mod/actors/ak47/geo.inc.c deleted file mode 100644 index 6c972c3c..00000000 --- a/mods/gun-mod/actors/ak47/geo.inc.c +++ /dev/null @@ -1,24 +0,0 @@ -#include "src/game/envfx_snow.h" - -const GeoLayout ak47_geo[] = { - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_SCALE(LAYER_FORCE, 65536), - GEO_OPEN_NODE(), - GEO_ASM(0, geo_mario_set_player_colors), - GEO_ASM(8, geo_mario_set_player_colors), - GEO_SWITCH_CASE(0, geo_switch_anim_state), - GEO_OPEN_NODE(), - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 0, -45, 0, NULL), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 25, 0, 0, ak47_Arm_mesh_layer_1), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_DISPLAY_LIST(LAYER_OPAQUE, ak47_material_revert_render_settings), - GEO_CLOSE_NODE(), - GEO_END(), -}; diff --git a/mods/gun-mod/actors/ak47/geo_header.h b/mods/gun-mod/actors/ak47/geo_header.h deleted file mode 100644 index 25c233f5..00000000 --- a/mods/gun-mod/actors/ak47/geo_header.h +++ /dev/null @@ -1,25 +0,0 @@ -extern const GeoLayout ak47_geo[]; -extern Lights1 ak47_wood_lights; -extern Lights1 ak47_gray_lights; -extern Lights1 ak47_darkgray_lights; -extern Lights1 ak47_darkergray_lights; -extern u8 ak47_wood_rgba16[]; -extern u8 ak47_noise_i8[]; -extern Vtx ak47_Arm_mesh_layer_1_vtx_0[101]; -extern Gfx ak47_Arm_mesh_layer_1_tri_0[]; -extern Vtx ak47_Arm_mesh_layer_1_vtx_1[226]; -extern Gfx ak47_Arm_mesh_layer_1_tri_1[]; -extern Vtx ak47_Arm_mesh_layer_1_vtx_2[4]; -extern Gfx ak47_Arm_mesh_layer_1_tri_2[]; -extern Vtx ak47_Arm_mesh_layer_1_vtx_3[71]; -extern Gfx ak47_Arm_mesh_layer_1_tri_3[]; -extern Vtx ak47_Arm_mesh_layer_1_vtx_4[60]; -extern Gfx ak47_Arm_mesh_layer_1_tri_4[]; -extern Gfx mat_ak47_wood[]; -extern Gfx mat_ak47_gray[]; -extern Gfx mat_ak47_black_layer1[]; -extern Gfx mat_revert_ak47_black_layer1[]; -extern Gfx mat_ak47_darkgray[]; -extern Gfx mat_ak47_darkergray[]; -extern Gfx ak47_Arm_mesh_layer_1[]; -extern Gfx ak47_material_revert_render_settings[]; diff --git a/mods/gun-mod/actors/ak47/model.inc.c b/mods/gun-mod/actors/ak47/model.inc.c deleted file mode 100644 index f9f482eb..00000000 --- a/mods/gun-mod/actors/ak47/model.inc.c +++ /dev/null @@ -1,905 +0,0 @@ -Lights1 ak47_wood_lights = gdSPDefLights1( - 0x7F, 0x7F, 0x7F, - 0xFF, 0xFF, 0xFF, 0x28, 0x28, 0x28); - -Lights1 ak47_gray_lights = gdSPDefLights1( - 0x53, 0x53, 0x53, - 0xAA, 0xAA, 0xAA, 0x28, 0x28, 0x28); - -Lights1 ak47_darkgray_lights = gdSPDefLights1( - 0x3B, 0x3B, 0x3B, - 0x7C, 0x7C, 0x7C, 0x28, 0x28, 0x28); - -Lights1 ak47_darkergray_lights = gdSPDefLights1( - 0xF, 0xF, 0xF, - 0x2A, 0x2A, 0x2A, 0x28, 0x28, 0x28); - -Gfx ak47_wood_rgba16_aligner[] = {gsSPEndDisplayList()}; -u8 ak47_wood_rgba16[] = { - #include "actors/ak47/wood.rgba16.inc.c" -}; - -Gfx ak47_noise_i8_aligner[] = {gsSPEndDisplayList()}; -u8 ak47_noise_i8[] = { - #include "actors/ak47/noise.i8.inc.c" -}; - -Vtx ak47_Arm_mesh_layer_1_vtx_0[101] = { - {{ {119, 40, -12}, 0, {-197, 504}, {161, 28, 176, 255} }}, - {{ {119, 22, -12}, 0, {-197, 1006}, {177, 179, 194, 255} }}, - {{ {121, 22, 1}, 0, {165, 1006}, {200, 179, 84, 255} }}, - {{ {120, 45, -2}, 0, {75, 365}, {188, 89, 59, 255} }}, - {{ {121, 40, 1}, 0, {165, 504}, {191, 28, 105, 255} }}, - {{ {119, 45, -9}, 0, {-107, 365}, {173, 89, 220, 255} }}, - {{ {119, 22, -12}, 0, {165, -639}, {177, 179, 194, 255} }}, - {{ {143, 25, -15}, 0, {144, -1330}, {0, 167, 165, 255} }}, - {{ {168, 28, -13}, 0, {-16, -2021}, {86, 163, 242, 255} }}, - {{ {121, 22, 1}, 0, {-197, -639}, {200, 179, 84, 255} }}, - {{ {145, 25, -4}, 0, {-176, -1330}, {28, 167, 86, 255} }}, - {{ {143, 25, -15}, 0, {63, -1330}, {0, 167, 165, 255} }}, - {{ {119, 22, -12}, 0, {-14, -639}, {177, 179, 194, 255} }}, - {{ {119, 40, -12}, 0, {488, -639}, {161, 28, 176, 255} }}, - {{ {167, 34, -18}, 0, {309, -2021}, {72, 231, 154, 255} }}, - {{ {167, 40, -18}, 0, {488, -2021}, {68, 29, 153, 255} }}, - {{ {119, 40, -12}, 0, {488, -639}, {161, 28, 176, 255} }}, - {{ {119, 45, -9}, 0, {627, -639}, {173, 89, 220, 255} }}, - {{ {167, 40, -18}, 0, {488, -2021}, {68, 29, 153, 255} }}, - {{ {168, 44, -16}, 0, {585, -2021}, {72, 88, 199, 255} }}, - {{ {143, 25, -15}, 0, {63, -1330}, {0, 167, 165, 255} }}, - {{ {167, 34, -18}, 0, {309, -2021}, {72, 231, 154, 255} }}, - {{ {168, 28, -13}, 0, {140, -2021}, {86, 163, 242, 255} }}, - {{ {168, 28, -13}, 0, {-172, -2021}, {86, 163, 242, 255} }}, - {{ {169, 34, -8}, 0, {-341, -2021}, {100, 231, 74, 255} }}, - {{ {145, 25, -4}, 0, {-95, -1330}, {28, 167, 86, 255} }}, - {{ {169, 40, -8}, 0, {-520, -2021}, {97, 29, 77, 255} }}, - {{ {121, 22, 1}, 0, {-18, -639}, {200, 179, 84, 255} }}, - {{ {121, 40, 1}, 0, {-520, -639}, {191, 28, 105, 255} }}, - {{ {120, 45, -2}, 0, {-659, -639}, {188, 89, 59, 255} }}, - {{ {169, 44, -11}, 0, {-617, -2021}, {86, 88, 32, 255} }}, - {{ {169, 34, -8}, 0, {-154, 683}, {100, 231, 74, 255} }}, - {{ {168, 28, -13}, 0, {-16, 852}, {86, 163, 242, 255} }}, - {{ {167, 34, -18}, 0, {122, 683}, {72, 231, 154, 255} }}, - {{ {169, 44, -11}, 0, {-85, 407}, {86, 88, 32, 255} }}, - {{ {167, 40, -18}, 0, {122, 504}, {68, 29, 153, 255} }}, - {{ {168, 44, -16}, 0, {53, 407}, {72, 88, 199, 255} }}, - {{ {169, 40, -8}, 0, {-154, 504}, {97, 29, 77, 255} }}, - {{ {169, 44, -11}, 0, {53, -2021}, {86, 88, 32, 255} }}, - {{ {119, 45, -9}, 0, {-107, -639}, {173, 89, 220, 255} }}, - {{ {120, 45, -2}, 0, {75, -639}, {188, 89, 59, 255} }}, - {{ {168, 44, -16}, 0, {-85, -2021}, {72, 88, 199, 255} }}, - {{ {70, 22, 0}, 0, {-16, 768}, {84, 225, 166, 255} }}, - {{ {42, 0, 3}, 0, {-640, 1553}, {153, 24, 186, 255} }}, - {{ {53, 22, 3}, 0, {-16, 1248}, {171, 43, 172, 255} }}, - {{ {57, -10, 0}, 0, {-937, 1115}, {39, 168, 173, 255} }}, - {{ {42, -8, 3}, 0, {-855, 1553}, {166, 190, 195, 255} }}, - {{ {57, -10, 0}, 0, {95, 1929}, {39, 168, 173, 255} }}, - {{ {70, 22, 0}, 0, {43, 1008}, {84, 225, 166, 255} }}, - {{ {70, 22, 4}, 0, {-75, 1008}, {108, 225, 60, 255} }}, - {{ {59, -10, 8}, 0, {-127, 1929}, {62, 168, 67, 255} }}, - {{ {43, 0, 11}, 0, {95, 1632}, {179, 24, 98, 255} }}, - {{ {54, 22, 7}, 0, {43, 1008}, {201, 43, 106, 255} }}, - {{ {53, 22, 3}, 0, {-75, 1008}, {171, 43, 172, 255} }}, - {{ {42, 0, 3}, 0, {-127, 1632}, {153, 24, 186, 255} }}, - {{ {42, -8, 3}, 0, {-127, 1847}, {166, 190, 195, 255} }}, - {{ {43, -8, 11}, 0, {95, 1847}, {190, 190, 86, 255} }}, - {{ {43, 0, 11}, 0, {608, 1553}, {179, 24, 98, 255} }}, - {{ {70, 22, 4}, 0, {-16, 768}, {108, 225, 60, 255} }}, - {{ {54, 22, 7}, 0, {-16, 1248}, {201, 43, 106, 255} }}, - {{ {59, -10, 8}, 0, {905, 1115}, {62, 168, 67, 255} }}, - {{ {43, -8, 11}, 0, {823, 1553}, {190, 190, 86, 255} }}, - {{ {57, -10, 0}, 0, {95, 1115}, {39, 168, 173, 255} }}, - {{ {59, -10, 8}, 0, {-127, 1115}, {62, 168, 67, 255} }}, - {{ {43, -8, 11}, 0, {-127, 1553}, {190, 190, 86, 255} }}, - {{ {42, -8, 3}, 0, {95, 1553}, {166, 190, 195, 255} }}, - {{ {51, 22, 5}, 0, {-16, 1317}, {202, 141, 8, 255} }}, - {{ {52, 38, 10}, 0, {-449, 1317}, {228, 66, 105, 255} }}, - {{ {31, 31, 14}, 0, {-263, 1902}, {22, 69, 105, 255} }}, - {{ {18, 11, 13}, 0, {314, 2254}, {44, 167, 79, 255} }}, - {{ {22, 33, 15}, 0, {-329, 2171}, {18, 90, 87, 255} }}, - {{ {-21, 27, 22}, 0, {-159, 3377}, {184, 56, 89, 255} }}, - {{ {-15, -1, 18}, 0, {643, 3190}, {218, 162, 76, 255} }}, - {{ {51, 22, 5}, 0, {-16, 1317}, {202, 141, 8, 255} }}, - {{ {30, 31, 4}, 0, {231, 1902}, {245, 69, 150, 255} }}, - {{ {50, 38, 0}, 0, {417, 1317}, {197, 66, 165, 255} }}, - {{ {18, 11, 8}, 0, {-346, 2254}, {18, 167, 167, 255} }}, - {{ {20, 33, 5}, 0, {297, 2171}, {246, 90, 167, 255} }}, - {{ {20, 33, 5}, 0, {297, 2171}, {246, 90, 167, 255} }}, - {{ {18, 11, 8}, 0, {-346, 2254}, {18, 167, 167, 255} }}, - {{ {-22, 27, 12}, 0, {127, 3377}, {161, 56, 194, 255} }}, - {{ {-15, -1, 13}, 0, {-675, 3190}, {196, 162, 195, 255} }}, - {{ {51, 22, 5}, 0, {-16, 1317}, {202, 141, 8, 255} }}, - {{ {18, 11, 13}, 0, {-87, 2254}, {44, 167, 79, 255} }}, - {{ {18, 11, 8}, 0, {55, 2254}, {18, 167, 167, 255} }}, - {{ {-15, -1, 13}, 0, {55, 3190}, {196, 162, 195, 255} }}, - {{ {-15, -1, 18}, 0, {-87, 3190}, {218, 162, 76, 255} }}, - {{ {-22, 27, 12}, 0, {-158, 3377}, {161, 56, 194, 255} }}, - {{ {-21, 27, 22}, 0, {126, 3377}, {184, 56, 89, 255} }}, - {{ {22, 33, 15}, 0, {126, 2171}, {18, 90, 87, 255} }}, - {{ {20, 33, 5}, 0, {-158, 2171}, {246, 90, 167, 255} }}, - {{ {30, 31, 4}, 0, {-158, 1902}, {245, 69, 150, 255} }}, - {{ {31, 31, 14}, 0, {126, 1902}, {22, 69, 105, 255} }}, - {{ {50, 38, 0}, 0, {-158, 1317}, {197, 66, 165, 255} }}, - {{ {50, 38, 0}, 0, {-158, 1317}, {197, 66, 165, 255} }}, - {{ {31, 31, 14}, 0, {126, 1902}, {22, 69, 105, 255} }}, - {{ {52, 38, 10}, 0, {126, 1317}, {228, 66, 105, 255} }}, - {{ {-22, 27, 12}, 0, {-158, 865}, {161, 56, 194, 255} }}, - {{ {-15, -1, 18}, 0, {55, 1667}, {218, 162, 76, 255} }}, - {{ {-21, 27, 22}, 0, {126, 865}, {184, 56, 89, 255} }}, - {{ {-15, -1, 13}, 0, {-87, 1667}, {196, 162, 195, 255} }}, -}; - -Gfx ak47_Arm_mesh_layer_1_tri_0[] = { - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_0 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(3, 5, 0, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(8, 9, 6, 0), - gsSP1Triangle(8, 10, 9, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(13, 14, 11, 0), - gsSP1Triangle(13, 15, 14, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_0 + 16, 15, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(9, 8, 10, 0), - gsSP1Triangle(10, 11, 9, 0), - gsSP1Triangle(10, 12, 11, 0), - gsSP1Triangle(12, 10, 13, 0), - gsSP1Triangle(14, 13, 10, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_0 + 31, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 0, 2, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(4, 5, 3, 0), - gsSP1Triangle(3, 6, 0, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(7, 10, 8, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(12, 11, 14, 0), - gsSP1Triangle(15, 12, 14, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_0 + 47, 15, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(8, 4, 7, 0), - gsSP1Triangle(8, 9, 4, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(11, 10, 13, 0), - gsSP1Triangle(14, 13, 10, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_0 + 62, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(6, 7, 4, 0), - gsSP1Triangle(8, 7, 6, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(10, 7, 9, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(14, 12, 11, 0), - gsSP1Triangle(14, 15, 12, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_0 + 78, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(7, 6, 5, 0), - gsSP1Triangle(7, 5, 8, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(9, 11, 12, 0), - gsSP1Triangle(11, 13, 12, 0), - gsSP1Triangle(11, 14, 13, 0), - gsSP1Triangle(15, 13, 14, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_0 + 94, 7, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(3, 6, 4, 0), - gsSPEndDisplayList(), -}; - -Vtx ak47_Arm_mesh_layer_1_vtx_1[226] = { - {{ {218, 32, -19}, 0, {-85, 746}, {125, 0, 236, 255} }}, - {{ {218, 29, -20}, 0, {-37, 828}, {125, 0, 236, 255} }}, - {{ {218, 35, -20}, 0, {-37, 664}, {125, 0, 236, 255} }}, - {{ {218, 29, -24}, 0, {58, 828}, {125, 0, 236, 255} }}, - {{ {217, 32, -25}, 0, {105, 746}, {125, 0, 236, 255} }}, - {{ {218, 35, -24}, 0, {58, 664}, {125, 0, 236, 255} }}, - {{ {52, 22, 10}, 0, {126, 1008}, {195, 183, 84, 255} }}, - {{ {52, 38, 10}, 0, {126, 575}, {228, 66, 105, 255} }}, - {{ {51, 22, 5}, 0, {-16, 1008}, {202, 141, 8, 255} }}, - {{ {50, 22, 0}, 0, {-158, 1008}, {172, 183, 195, 255} }}, - {{ {50, 38, 0}, 0, {-158, 575}, {197, 66, 165, 255} }}, - {{ {90, 36, 4}, 0, {126, 218}, {0, 127, 0, 255} }}, - {{ {98, 36, 8}, 0, {277, 24}, {0, 127, 0, 255} }}, - {{ {95, 36, 1}, 0, {65, 71}, {0, 127, 0, 255} }}, - {{ {90, 34, 4}, 0, {-158, 218}, {0, 129, 0, 255} }}, - {{ {95, 34, 1}, 0, {-97, 71}, {0, 129, 0, 255} }}, - {{ {98, 34, 8}, 0, {-309, 24}, {0, 129, 0, 255} }}, - {{ {193, 37, -16}, 0, {9, 582}, {131, 0, 20, 255} }}, - {{ {193, 39, -17}, 0, {-17, 538}, {131, 0, 20, 255} }}, - {{ {193, 39, -19}, 0, {-68, 538}, {131, 0, 20, 255} }}, - {{ {193, 36, -19}, 0, {-68, 627}, {131, 0, 20, 255} }}, - {{ {193, 37, -20}, 0, {-94, 582}, {131, 0, 20, 255} }}, - {{ {193, 36, -17}, 0, {-17, 627}, {131, 0, 20, 255} }}, - {{ {156, 39, -13}, 0, {-68, -1673}, {246, 110, 193, 255} }}, - {{ {156, 39, -11}, 0, {-17, -1673}, {10, 110, 63, 255} }}, - {{ {193, 39, -17}, 0, {-17, -2728}, {10, 110, 63, 255} }}, - {{ {193, 39, -19}, 0, {-68, -2728}, {246, 110, 193, 255} }}, - {{ {156, 39, -11}, 0, {-486, -1673}, {10, 110, 63, 255} }}, - {{ {193, 37, -16}, 0, {-442, -2728}, {20, 0, 125, 255} }}, - {{ {193, 39, -17}, 0, {-486, -2728}, {10, 110, 63, 255} }}, - {{ {156, 39, -11}, 0, {-486, -1673}, {10, 110, 63, 255} }}, - {{ {156, 37, -10}, 0, {-442, -1673}, {20, 0, 125, 255} }}, - {{ {193, 37, -16}, 0, {-442, -2728}, {20, 0, 125, 255} }}, - {{ {193, 36, -17}, 0, {-397, -2728}, {10, 146, 63, 255} }}, - {{ {156, 36, -11}, 0, {-397, -1673}, {10, 146, 63, 255} }}, - {{ {193, 35, -16}, 0, {5, 664}, {131, 0, 20, 255} }}, - {{ {193, 37, -15}, 0, {53, 582}, {131, 0, 20, 255} }}, - {{ {193, 40, -16}, 0, {5, 500}, {131, 0, 20, 255} }}, - {{ {192, 37, -21}, 0, {-137, 582}, {131, 0, 20, 255} }}, - {{ {193, 40, -20}, 0, {-90, 500}, {131, 0, 20, 255} }}, - {{ {193, 35, -20}, 0, {-90, 664}, {131, 0, 20, 255} }}, - {{ {193, 32, -15}, 0, {53, 746}, {131, 0, 20, 255} }}, - {{ {193, 29, -20}, 0, {-90, 828}, {131, 0, 20, 255} }}, - {{ {192, 32, -21}, 0, {-137, 746}, {131, 0, 20, 255} }}, - {{ {193, 29, -16}, 0, {5, 828}, {131, 0, 20, 255} }}, - {{ {193, 35, -16}, 0, {-360, -2728}, {17, 192, 109, 255} }}, - {{ {206, 35, -18}, 0, {-360, -3083}, {17, 192, 109, 255} }}, - {{ {206, 37, -17}, 0, {-442, -3083}, {17, 192, 109, 255} }}, - {{ {193, 37, -15}, 0, {-442, -2728}, {17, 192, 109, 255} }}, - {{ {218, 35, -20}, 0, {-360, -3439}, {17, 64, 109, 255} }}, - {{ {206, 35, -18}, 0, {-360, -3083}, {17, 64, 109, 255} }}, - {{ {193, 35, -16}, 0, {-360, -2728}, {17, 64, 109, 255} }}, - {{ {218, 32, -19}, 0, {-278, -3439}, {17, 64, 109, 255} }}, - {{ {193, 32, -15}, 0, {-278, -2728}, {17, 64, 109, 255} }}, - {{ {192, 37, -21}, 0, {410, -2728}, {239, 192, 147, 255} }}, - {{ {205, 35, -22}, 0, {328, -3083}, {239, 192, 147, 255} }}, - {{ {193, 35, -20}, 0, {328, -2728}, {239, 192, 147, 255} }}, - {{ {205, 37, -23}, 0, {410, -3083}, {239, 192, 147, 255} }}, - {{ {193, 35, -20}, 0, {328, -2728}, {239, 64, 147, 255} }}, - {{ {205, 35, -22}, 0, {328, -3083}, {239, 64, 147, 255} }}, - {{ {218, 35, -24}, 0, {328, -3439}, {239, 64, 147, 255} }}, - {{ {218, 35, -24}, 0, {328, -3439}, {239, 64, 147, 255} }}, - {{ {192, 32, -21}, 0, {246, -2728}, {239, 64, 147, 255} }}, - {{ {193, 35, -20}, 0, {328, -2728}, {239, 64, 147, 255} }}, - {{ {217, 32, -25}, 0, {246, -3439}, {239, 64, 147, 255} }}, - {{ {193, 40, -16}, 0, {5, -2728}, {0, 127, 0, 255} }}, - {{ {206, 40, -18}, 0, {5, -3083}, {0, 127, 0, 255} }}, - {{ {205, 40, -22}, 0, {-90, -3083}, {0, 127, 0, 255} }}, - {{ {193, 40, -20}, 0, {-90, -2728}, {0, 127, 0, 255} }}, - {{ {193, 37, -15}, 0, {-442, -2728}, {17, 64, 109, 255} }}, - {{ {206, 40, -18}, 0, {-524, -3083}, {17, 64, 109, 255} }}, - {{ {193, 40, -16}, 0, {-524, -2728}, {17, 64, 109, 255} }}, - {{ {206, 37, -17}, 0, {-442, -3083}, {17, 64, 109, 255} }}, - {{ {156, 36, -11}, 0, {-15, -1673}, {10, 146, 63, 255} }}, - {{ {193, 36, -19}, 0, {36, -2728}, {246, 146, 193, 255} }}, - {{ {193, 36, -17}, 0, {-15, -2728}, {10, 146, 63, 255} }}, - {{ {156, 36, -13}, 0, {36, -1673}, {246, 146, 193, 255} }}, - {{ {156, 36, -13}, 0, {365, -1673}, {246, 146, 193, 255} }}, - {{ {193, 37, -20}, 0, {410, -2728}, {236, 0, 131, 255} }}, - {{ {193, 36, -19}, 0, {365, -2728}, {246, 146, 193, 255} }}, - {{ {156, 37, -14}, 0, {410, -1673}, {236, 0, 131, 255} }}, - {{ {193, 39, -19}, 0, {454, -2728}, {246, 110, 193, 255} }}, - {{ {156, 39, -13}, 0, {454, -1673}, {246, 110, 193, 255} }}, - {{ {156, 30, -13}, 0, {201, -1673}, {246, 146, 193, 255} }}, - {{ {193, 32, -20}, 0, {246, -2728}, {236, 0, 131, 255} }}, - {{ {193, 30, -19}, 0, {201, -2728}, {246, 146, 193, 255} }}, - {{ {156, 32, -14}, 0, {246, -1673}, {236, 0, 131, 255} }}, - {{ {156, 33, -13}, 0, {290, -1673}, {246, 110, 193, 255} }}, - {{ {193, 33, -19}, 0, {290, -2728}, {246, 110, 193, 255} }}, - {{ {156, 30, -11}, 0, {-15, -1673}, {10, 146, 63, 255} }}, - {{ {156, 30, -13}, 0, {36, -1673}, {246, 146, 193, 255} }}, - {{ {193, 30, -19}, 0, {36, -2728}, {246, 146, 193, 255} }}, - {{ {193, 30, -17}, 0, {-15, -2728}, {10, 146, 63, 255} }}, - {{ {156, 32, -10}, 0, {-278, -1673}, {20, 0, 125, 255} }}, - {{ {156, 30, -11}, 0, {-233, -1673}, {10, 146, 63, 255} }}, - {{ {193, 30, -17}, 0, {-233, -2728}, {10, 146, 63, 255} }}, - {{ {193, 32, -16}, 0, {-278, -2728}, {20, 0, 125, 255} }}, - {{ {156, 33, -11}, 0, {-322, -1673}, {10, 110, 63, 255} }}, - {{ {193, 33, -17}, 0, {-322, -2728}, {10, 110, 63, 255} }}, - {{ {193, 29, -20}, 0, {58, -2728}, {0, 129, 0, 255} }}, - {{ {218, 29, -24}, 0, {58, -3439}, {0, 129, 0, 255} }}, - {{ {218, 29, -20}, 0, {-37, -3439}, {0, 129, 0, 255} }}, - {{ {193, 29, -16}, 0, {-37, -2728}, {0, 129, 0, 255} }}, - {{ {193, 29, -20}, 0, {164, -2728}, {239, 192, 147, 255} }}, - {{ {192, 32, -21}, 0, {246, -2728}, {239, 192, 147, 255} }}, - {{ {217, 32, -25}, 0, {246, -3439}, {239, 192, 147, 255} }}, - {{ {218, 29, -24}, 0, {164, -3439}, {239, 192, 147, 255} }}, - {{ {193, 40, -20}, 0, {492, -2728}, {239, 64, 147, 255} }}, - {{ {205, 37, -23}, 0, {410, -3083}, {239, 64, 147, 255} }}, - {{ {192, 37, -21}, 0, {410, -2728}, {239, 64, 147, 255} }}, - {{ {205, 40, -22}, 0, {492, -3083}, {239, 64, 147, 255} }}, - {{ {205, 37, -22}, 0, {58, 583}, {125, 0, 236, 255} }}, - {{ {205, 37, -23}, 0, {105, 582}, {125, 0, 236, 255} }}, - {{ {205, 40, -22}, 0, {58, 500}, {125, 0, 236, 255} }}, - {{ {205, 35, -22}, 0, {58, 664}, {125, 0, 236, 255} }}, - {{ {211, 49, -23}, 0, {-90, 251}, {154, 74, 16, 255} }}, - {{ {205, 40, -22}, 0, {-90, 500}, {154, 74, 16, 255} }}, - {{ {206, 40, -18}, 0, {5, 500}, {154, 74, 16, 255} }}, - {{ {212, 49, -19}, 0, {5, 251}, {154, 74, 16, 255} }}, - {{ {193, 32, -15}, 0, {-278, -2728}, {17, 192, 109, 255} }}, - {{ {193, 29, -16}, 0, {-196, -2728}, {17, 192, 109, 255} }}, - {{ {218, 29, -20}, 0, {-196, -3439}, {17, 192, 109, 255} }}, - {{ {218, 32, -19}, 0, {-278, -3439}, {17, 192, 109, 255} }}, - {{ {206, 40, -18}, 0, {-37, 500}, {125, 0, 236, 255} }}, - {{ {206, 37, -17}, 0, {-85, 582}, {125, 0, 236, 255} }}, - {{ {206, 35, -18}, 0, {-37, 664}, {125, 0, 236, 255} }}, - {{ {206, 37, -18}, 0, {-37, 583}, {125, 0, 236, 255} }}, - {{ {206, 35, -18}, 0, {-360, -3083}, {20, 0, 125, 255} }}, - {{ {218, 35, -20}, 0, {-360, -3439}, {20, 0, 125, 255} }}, - {{ {218, 37, -20}, 0, {-441, -3439}, {20, 0, 125, 255} }}, - {{ {209, 37, -19}, 0, {-441, -3165}, {20, 0, 125, 255} }}, - {{ {215, 37, -20}, 0, {-441, -3357}, {20, 0, 125, 255} }}, - {{ {218, 49, -20}, 0, {-773, -3439}, {20, 0, 125, 255} }}, - {{ {215, 46, -20}, 0, {-691, -3357}, {20, 0, 125, 255} }}, - {{ {213, 46, -20}, 0, {-691, -3303}, {20, 0, 125, 255} }}, - {{ {212, 49, -19}, 0, {-773, -3261}, {20, 0, 125, 255} }}, - {{ {206, 37, -18}, 0, {-441, -3083}, {20, 0, 125, 255} }}, - {{ {206, 40, -18}, 0, {-524, -3083}, {20, 0, 125, 255} }}, - {{ {209, 39, -19}, 0, {-498, -3165}, {20, 0, 125, 255} }}, - {{ {218, 35, -24}, 0, {328, -3439}, {236, 0, 131, 255} }}, - {{ {205, 35, -22}, 0, {328, -3083}, {236, 0, 131, 255} }}, - {{ {205, 37, -22}, 0, {409, -3083}, {236, 0, 131, 255} }}, - {{ {208, 37, -22}, 0, {409, -3165}, {236, 0, 131, 255} }}, - {{ {205, 40, -22}, 0, {492, -3083}, {236, 0, 131, 255} }}, - {{ {208, 39, -22}, 0, {466, -3165}, {236, 0, 131, 255} }}, - {{ {213, 46, -23}, 0, {659, -3303}, {236, 0, 131, 255} }}, - {{ {211, 49, -23}, 0, {741, -3261}, {236, 0, 131, 255} }}, - {{ {218, 49, -24}, 0, {741, -3439}, {236, 0, 131, 255} }}, - {{ {215, 46, -23}, 0, {659, -3357}, {236, 0, 131, 255} }}, - {{ {215, 37, -23}, 0, {409, -3357}, {236, 0, 131, 255} }}, - {{ {218, 37, -24}, 0, {409, -3439}, {236, 0, 131, 255} }}, - {{ {212, 49, -19}, 0, {5, -3261}, {0, 127, 0, 255} }}, - {{ {218, 49, -20}, 0, {5, -3439}, {0, 127, 0, 255} }}, - {{ {218, 49, -24}, 0, {-90, -3439}, {0, 127, 0, 255} }}, - {{ {211, 49, -23}, 0, {-90, -3261}, {0, 127, 0, 255} }}, - {{ {218, 37, -24}, 0, {58, 583}, {125, 0, 236, 255} }}, - {{ {218, 49, -24}, 0, {58, 251}, {125, 0, 236, 255} }}, - {{ {218, 49, -20}, 0, {-37, 251}, {125, 0, 236, 255} }}, - {{ {218, 37, -20}, 0, {-37, 583}, {125, 0, 236, 255} }}, - {{ {218, 35, -24}, 0, {58, 664}, {125, 0, 236, 255} }}, - {{ {218, 35, -20}, 0, {-37, 664}, {125, 0, 236, 255} }}, - {{ {209, 37, -19}, 0, {5, -3165}, {0, 127, 0, 255} }}, - {{ {215, 37, -20}, 0, {5, -3357}, {0, 127, 0, 255} }}, - {{ {215, 37, -23}, 0, {-90, -3357}, {0, 127, 0, 255} }}, - {{ {208, 37, -22}, 0, {-90, -3165}, {0, 127, 0, 255} }}, - {{ {209, 39, -19}, 0, {-37, 526}, {125, 0, 236, 255} }}, - {{ {209, 37, -19}, 0, {-37, 583}, {125, 0, 236, 255} }}, - {{ {208, 37, -22}, 0, {58, 583}, {125, 0, 236, 255} }}, - {{ {208, 39, -22}, 0, {58, 526}, {125, 0, 236, 255} }}, - {{ {215, 37, -20}, 0, {5, 583}, {131, 0, 20, 255} }}, - {{ {215, 46, -23}, 0, {-90, 333}, {131, 0, 20, 255} }}, - {{ {215, 37, -23}, 0, {-90, 583}, {131, 0, 20, 255} }}, - {{ {215, 46, -20}, 0, {5, 333}, {131, 0, 20, 255} }}, - {{ {213, 46, -20}, 0, {-37, 333}, {102, 182, 240, 255} }}, - {{ {209, 39, -19}, 0, {-37, 526}, {102, 182, 240, 255} }}, - {{ {208, 39, -22}, 0, {58, 526}, {102, 182, 240, 255} }}, - {{ {213, 46, -23}, 0, {58, 333}, {102, 182, 240, 255} }}, - {{ {215, 46, -20}, 0, {-37, -3357}, {0, 129, 0, 255} }}, - {{ {213, 46, -20}, 0, {-37, -3303}, {0, 129, 0, 255} }}, - {{ {213, 46, -23}, 0, {58, -3303}, {0, 129, 0, 255} }}, - {{ {215, 46, -23}, 0, {58, -3357}, {0, 129, 0, 255} }}, - {{ {156, 33, -13}, 0, {-68, -1673}, {246, 110, 193, 255} }}, - {{ {193, 33, -17}, 0, {-17, -2728}, {10, 110, 63, 255} }}, - {{ {193, 33, -19}, 0, {-68, -2728}, {246, 110, 193, 255} }}, - {{ {156, 33, -11}, 0, {-17, -1673}, {10, 110, 63, 255} }}, - {{ {51, 22, 5}, 0, {-16, 1317}, {202, 141, 8, 255} }}, - {{ {50, 22, 0}, 0, {126, 1317}, {172, 183, 195, 255} }}, - {{ {89, 22, -6}, 0, {126, 203}, {245, 165, 168, 255} }}, - {{ {52, 22, 10}, 0, {-158, 1317}, {195, 183, 84, 255} }}, - {{ {91, 22, 4}, 0, {-158, 203}, {17, 165, 87, 255} }}, - {{ {139, 26, -4}, 0, {-158, -1178}, {21, 168, 90, 255} }}, - {{ {138, 26, -13}, 0, {126, -1178}, {248, 168, 164, 255} }}, - {{ {52, 38, 10}, 0, {-449, 1317}, {228, 66, 105, 255} }}, - {{ {52, 22, 10}, 0, {-16, 1317}, {195, 183, 84, 255} }}, - {{ {91, 22, 4}, 0, {-16, 203}, {17, 165, 87, 255} }}, - {{ {139, 38, -4}, 0, {-449, -1178}, {19, 27, 122, 255} }}, - {{ {139, 26, -4}, 0, {-117, -1178}, {21, 168, 90, 255} }}, - {{ {139, 44, -6}, 0, {-617, -1178}, {11, 107, 68, 255} }}, - {{ {57, 44, 7}, 0, {-617, 1149}, {229, 107, 63, 255} }}, - {{ {50, 38, 0}, 0, {-158, 1317}, {197, 66, 165, 255} }}, - {{ {52, 38, 10}, 0, {126, 1317}, {228, 66, 105, 255} }}, - {{ {57, 44, 7}, 0, {48, 1149}, {229, 107, 63, 255} }}, - {{ {56, 44, 2}, 0, {-80, 1149}, {211, 107, 205, 255} }}, - {{ {139, 44, -6}, 0, {48, -1178}, {11, 107, 68, 255} }}, - {{ {138, 44, -11}, 0, {-80, -1178}, {245, 107, 188, 255} }}, - {{ {138, 26, -13}, 0, {85, -1178}, {248, 168, 164, 255} }}, - {{ {89, 22, -6}, 0, {-16, 203}, {245, 165, 168, 255} }}, - {{ {50, 22, 0}, 0, {-16, 1317}, {172, 183, 195, 255} }}, - {{ {138, 38, -13}, 0, {417, -1178}, {237, 27, 134, 255} }}, - {{ {50, 38, 0}, 0, {417, 1317}, {197, 66, 165, 255} }}, - {{ {56, 44, 2}, 0, {585, 1149}, {211, 107, 205, 255} }}, - {{ {138, 44, -11}, 0, {585, -1178}, {245, 107, 188, 255} }}, - {{ {90, 36, 4}, 0, {375, 218}, {190, 0, 148, 255} }}, - {{ {95, 36, 1}, 0, {375, 71}, {190, 0, 148, 255} }}, - {{ {95, 34, 1}, 0, {305, 71}, {190, 0, 148, 255} }}, - {{ {90, 36, 4}, 0, {375, 218}, {190, 0, 148, 255} }}, - {{ {95, 34, 1}, 0, {305, 71}, {190, 0, 148, 255} }}, - {{ {90, 34, 4}, 0, {305, 218}, {190, 0, 148, 255} }}, - {{ {98, 36, 8}, 0, {-407, 24}, {195, 0, 111, 255} }}, - {{ {90, 36, 4}, 0, {-407, 218}, {195, 0, 111, 255} }}, - {{ {90, 34, 4}, 0, {-337, 218}, {195, 0, 111, 255} }}, - {{ {98, 34, 8}, 0, {-337, 24}, {195, 0, 111, 255} }}, - {{ {95, 36, 1}, 0, {-97, 617}, {118, 0, 209, 255} }}, - {{ {98, 36, 8}, 0, {-309, 617}, {118, 0, 209, 255} }}, - {{ {98, 34, 8}, 0, {-309, 687}, {118, 0, 209, 255} }}, - {{ {95, 34, 1}, 0, {-97, 687}, {118, 0, 209, 255} }}, -}; - -Gfx ak47_Arm_mesh_layer_1_tri_1[] = { - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 0, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(9, 8, 10, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 14, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 3, 5, 0), - gsSP1Triangle(5, 7, 6, 0), - gsSP1Triangle(6, 8, 3, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(9, 11, 12, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 30, 15, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(1, 3, 2, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(7, 8, 5, 0), - gsSP1Triangle(7, 9, 8, 0), - gsSP1Triangle(8, 10, 5, 0), - gsSP1Triangle(11, 5, 10, 0), - gsSP1Triangle(12, 11, 10, 0), - gsSP1Triangle(10, 13, 12, 0), - gsSP1Triangle(12, 14, 11, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 45, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(6, 7, 4, 0), - gsSP1Triangle(6, 8, 7, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(9, 12, 10, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 61, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 11, 9, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 15, 13, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 77, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(3, 4, 1, 0), - gsSP1Triangle(3, 5, 4, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 9, 7, 0), - gsSP1Triangle(7, 9, 10, 0), - gsSP1Triangle(7, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 93, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 0, 3, 0), - gsSP1Triangle(4, 3, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 12, 13, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 107, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 7, 5, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 123, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(7, 4, 6, 0), - gsSP1Triangle(6, 8, 7, 0), - gsSP1Triangle(8, 6, 9, 0), - gsSP1Triangle(10, 8, 9, 0), - gsSP1Triangle(11, 10, 9, 0), - gsSP1Triangle(9, 12, 11, 0), - gsSP1Triangle(12, 13, 11, 0), - gsSP1Triangle(12, 14, 13, 0), - gsSP1Triangle(13, 15, 11, 0), - gsSP1Triangle(13, 7, 15, 0), - gsSP1Triangle(7, 13, 4, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 139, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 0, 2, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(5, 3, 4, 0), - gsSP1Triangle(6, 5, 4, 0), - gsSP1Triangle(4, 7, 6, 0), - gsSP1Triangle(7, 8, 6, 0), - gsSP1Triangle(8, 9, 6, 0), - gsSP1Triangle(8, 10, 9, 0), - gsSP1Triangle(8, 11, 10, 0), - gsSP1Triangle(10, 11, 0, 0), - gsSP1Triangle(3, 10, 0, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 155, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 3, 0, 0), - gsSP1Triangle(4, 0, 3, 0), - gsSP1Triangle(3, 5, 4, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 12, 13, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 169, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 15, 13, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 185, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 0, 2, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(5, 4, 2, 0), - gsSP1Triangle(5, 2, 6, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(9, 10, 7, 0), - gsSP1Triangle(9, 11, 10, 0), - gsSP1Triangle(7, 10, 12, 0), - gsSP1Triangle(7, 12, 13, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 199, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(8, 9, 6, 0), - gsSP1Triangle(8, 10, 9, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(9, 11, 12, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_1 + 215, 11, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(3, 5, 6, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(7, 9, 10, 0), - gsSPEndDisplayList(), -}; - -Vtx ak47_Arm_mesh_layer_1_vtx_2[4] = { - {{ {218, 29, -20}, 0, {-37, 828}, {125, 0, 236, 255} }}, - {{ {218, 29, -24}, 0, {58, 828}, {125, 0, 236, 255} }}, - {{ {218, 35, -20}, 0, {-37, 664}, {125, 0, 236, 255} }}, - {{ {218, 35, -24}, 0, {58, 664}, {125, 0, 236, 255} }}, -}; - -Gfx ak47_Arm_mesh_layer_1_tri_2[] = { - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_2 + 0, 4, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSPEndDisplayList(), -}; - -Vtx ak47_Arm_mesh_layer_1_vtx_3[71] = { - {{ {73, 18, 1}, 0, {-125, 678}, {183, 188, 177, 255} }}, - {{ {75, 15, 1}, 0, {-218, 619}, {183, 188, 177, 255} }}, - {{ {72, 18, 2}, 0, {-125, 724}, {183, 188, 177, 255} }}, - {{ {75, 15, 1}, 0, {-10, 1210}, {106, 68, 239, 255} }}, - {{ {73, 18, 1}, 0, {21, 1117}, {106, 68, 239, 255} }}, - {{ {73, 18, 3}, 0, {-40, 1117}, {106, 68, 239, 255} }}, - {{ {75, 15, 1}, 0, {186, 619}, {211, 188, 97, 255} }}, - {{ {73, 18, 3}, 0, {93, 678}, {211, 188, 97, 255} }}, - {{ {72, 18, 2}, 0, {93, 724}, {211, 188, 97, 255} }}, - {{ {70, 14, 4}, 0, {-67, 768}, {0, 129, 0, 255} }}, - {{ {70, 14, 1}, 0, {35, 768}, {0, 129, 0, 255} }}, - {{ {79, 14, -1}, 0, {35, 512}, {0, 129, 0, 255} }}, - {{ {79, 14, 3}, 0, {-67, 512}, {0, 129, 0, 255} }}, - {{ {67, 18, 5}, 0, {35, 1136}, {166, 167, 14, 255} }}, - {{ {70, 14, 1}, 0, {-67, 1238}, {166, 167, 14, 255} }}, - {{ {70, 14, 4}, 0, {35, 1238}, {166, 167, 14, 255} }}, - {{ {67, 18, 5}, 0, {35, 1136}, {166, 167, 14, 255} }}, - {{ {66, 18, 1}, 0, {-67, 1136}, {166, 167, 14, 255} }}, - {{ {70, 14, 1}, 0, {-67, 1238}, {166, 167, 14, 255} }}, - {{ {70, 15, 2}, 0, {-16, 760}, {7, 118, 45, 255} }}, - {{ {70, 14, 4}, 0, {35, 768}, {7, 118, 45, 255} }}, - {{ {79, 14, 3}, 0, {35, 512}, {7, 118, 45, 255} }}, - {{ {79, 15, 1}, 0, {-16, 522}, {7, 118, 45, 255} }}, - {{ {67, 18, 3}, 0, {-16, 1128}, {91, 83, 32, 255} }}, - {{ {67, 18, 5}, 0, {-67, 1136}, {91, 83, 32, 255} }}, - {{ {70, 14, 4}, 0, {-67, 1238}, {91, 83, 32, 255} }}, - {{ {70, 15, 2}, 0, {-16, 1218}, {91, 83, 32, 255} }}, - {{ {79, 14, 3}, 0, {-67, 1238}, {97, 176, 241, 255} }}, - {{ {79, 14, -1}, 0, {35, 1238}, {97, 176, 241, 255} }}, - {{ {82, 18, -1}, 0, {35, 1136}, {97, 176, 241, 255} }}, - {{ {82, 18, 2}, 0, {-67, 1136}, {97, 176, 241, 255} }}, - {{ {79, 15, 1}, 0, {-16, 1218}, {172, 75, 60, 255} }}, - {{ {79, 14, 3}, 0, {35, 1238}, {172, 75, 60, 255} }}, - {{ {82, 18, 2}, 0, {35, 1136}, {172, 75, 60, 255} }}, - {{ {81, 18, 1}, 0, {-16, 1129}, {172, 75, 60, 255} }}, - {{ {70, 14, 1}, 0, {-67, 768}, {249, 118, 211, 255} }}, - {{ {79, 15, 1}, 0, {-16, 522}, {249, 118, 211, 255} }}, - {{ {79, 14, -1}, 0, {-67, 512}, {249, 118, 211, 255} }}, - {{ {70, 15, 2}, 0, {-16, 760}, {249, 118, 211, 255} }}, - {{ {79, 14, -1}, 0, {-67, 1238}, {158, 75, 225, 255} }}, - {{ {79, 15, 1}, 0, {-16, 1218}, {158, 75, 225, 255} }}, - {{ {81, 18, 1}, 0, {-16, 1129}, {158, 75, 225, 255} }}, - {{ {82, 18, -1}, 0, {-67, 1136}, {158, 75, 225, 255} }}, - {{ {66, 18, 1}, 0, {35, 1136}, {77, 83, 197, 255} }}, - {{ {67, 18, 3}, 0, {-16, 1128}, {77, 83, 197, 255} }}, - {{ {70, 15, 2}, 0, {-16, 1218}, {77, 83, 197, 255} }}, - {{ {70, 14, 1}, 0, {35, 1238}, {77, 83, 197, 255} }}, - {{ {82, 18, -1}, 0, {-67, 1136}, {132, 0, 229, 255} }}, - {{ {81, 18, 1}, 0, {-16, 1129}, {132, 0, 229, 255} }}, - {{ {81, 25, 1}, 0, {-16, 944}, {132, 0, 229, 255} }}, - {{ {82, 25, -1}, 0, {-67, 944}, {132, 0, 229, 255} }}, - {{ {81, 18, 1}, 0, {-16, 1129}, {146, 0, 64, 255} }}, - {{ {82, 18, 2}, 0, {35, 1136}, {146, 0, 64, 255} }}, - {{ {82, 25, 2}, 0, {35, 944}, {146, 0, 64, 255} }}, - {{ {81, 25, 1}, 0, {-16, 944}, {146, 0, 64, 255} }}, - {{ {82, 18, 2}, 0, {-67, 1136}, {125, 0, 236, 255} }}, - {{ {82, 18, -1}, 0, {35, 1136}, {125, 0, 236, 255} }}, - {{ {82, 25, -1}, 0, {35, 944}, {125, 0, 236, 255} }}, - {{ {82, 25, 2}, 0, {-67, 944}, {125, 0, 236, 255} }}, - {{ {73, 24, 3}, 0, {-52, 678}, {203, 0, 115, 255} }}, - {{ {72, 24, 2}, 0, {-52, 724}, {203, 0, 115, 255} }}, - {{ {72, 18, 2}, 0, {93, 724}, {203, 0, 115, 255} }}, - {{ {73, 18, 3}, 0, {93, 678}, {203, 0, 115, 255} }}, - {{ {72, 24, 2}, 0, {20, 724}, {170, 0, 163, 255} }}, - {{ {73, 24, 1}, 0, {20, 678}, {170, 0, 163, 255} }}, - {{ {73, 18, 1}, 0, {-125, 678}, {170, 0, 163, 255} }}, - {{ {72, 18, 2}, 0, {-125, 724}, {170, 0, 163, 255} }}, - {{ {73, 18, 1}, 0, {21, 1117}, {125, 0, 236, 255} }}, - {{ {73, 24, 1}, 0, {21, 972}, {125, 0, 236, 255} }}, - {{ {73, 24, 3}, 0, {-40, 972}, {125, 0, 236, 255} }}, - {{ {73, 18, 3}, 0, {-40, 1117}, {125, 0, 236, 255} }}, -}; - -Gfx ak47_Arm_mesh_layer_1_tri_3[] = { - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_3 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(9, 11, 12, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_3 + 16, 15, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(3, 5, 6, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(7, 9, 10, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(11, 13, 14, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_3 + 31, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 7, 5, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_3 + 47, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_3 + 63, 8, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSPEndDisplayList(), -}; - -Vtx ak47_Arm_mesh_layer_1_vtx_4[60] = { - {{ {91, 22, -4}, 0, {-13, 165}, {236, 0, 131, 255} }}, - {{ {90, 28, -4}, 0, {150, 177}, {236, 0, 131, 255} }}, - {{ {108, 29, -7}, 0, {185, -310}, {236, 0, 131, 255} }}, - {{ {108, 24, -7}, 0, {22, -322}, {236, 0, 131, 255} }}, - {{ {111, 8, -7}, 0, {-419, -402}, {236, 0, 131, 255} }}, - {{ {103, -14, -6}, 0, {-1042, -187}, {236, 0, 131, 255} }}, - {{ {118, -6, -8}, 0, {-813, -618}, {236, 0, 131, 255} }}, - {{ {129, -17, -10}, 0, {-1108, -931}, {236, 0, 131, 255} }}, - {{ {117, -29, -8}, 0, {-1454, -587}, {236, 0, 131, 255} }}, - {{ {94, 3, -5}, 0, {-548, 68}, {236, 0, 131, 255} }}, - {{ {91, 22, -4}, 0, {-101, 1005}, {131, 247, 20, 255} }}, - {{ {91, 28, 2}, 0, {69, 842}, {131, 247, 20, 255} }}, - {{ {90, 28, -4}, 0, {-101, 842}, {131, 247, 20, 255} }}, - {{ {92, 22, 2}, 0, {69, 1005}, {131, 247, 20, 255} }}, - {{ {108, 29, -7}, 0, {-101, -310}, {247, 127, 1, 255} }}, - {{ {90, 28, -4}, 0, {-101, 177}, {247, 127, 1, 255} }}, - {{ {91, 28, 2}, 0, {69, 177}, {247, 127, 1, 255} }}, - {{ {109, 29, -1}, 0, {69, -310}, {247, 127, 1, 255} }}, - {{ {111, 8, -7}, 0, {69, 1411}, {110, 61, 239, 255} }}, - {{ {119, -6, -2}, 0, {-101, 1805}, {110, 61, 239, 255} }}, - {{ {118, -6, -8}, 0, {69, 1805}, {110, 61, 239, 255} }}, - {{ {112, 8, -1}, 0, {-101, 1411}, {110, 61, 239, 255} }}, - {{ {119, -6, -2}, 0, {69, -618}, {86, 92, 242, 255} }}, - {{ {129, -17, -10}, 0, {-101, -931}, {86, 92, 242, 255} }}, - {{ {118, -6, -8}, 0, {-101, -618}, {86, 92, 242, 255} }}, - {{ {130, -17, -4}, 0, {69, -931}, {86, 92, 242, 255} }}, - {{ {109, 24, -1}, 0, {-101, 970}, {125, 9, 236, 255} }}, - {{ {108, 24, -7}, 0, {69, 970}, {125, 9, 236, 255} }}, - {{ {108, 29, -7}, 0, {69, 807}, {125, 9, 236, 255} }}, - {{ {109, 29, -1}, 0, {-101, 807}, {125, 9, 236, 255} }}, - {{ {91, 22, -4}, 0, {-101, 1005}, {133, 233, 20, 255} }}, - {{ {94, 3, -5}, 0, {-101, 1540}, {133, 233, 20, 255} }}, - {{ {95, 3, 1}, 0, {69, 1540}, {133, 233, 20, 255} }}, - {{ {92, 22, 2}, 0, {69, 1005}, {133, 233, 20, 255} }}, - {{ {95, 3, 1}, 0, {69, 1540}, {145, 198, 18, 255} }}, - {{ {94, 3, -5}, 0, {-101, 1540}, {145, 198, 18, 255} }}, - {{ {103, -14, -6}, 0, {-101, 2034}, {145, 198, 18, 255} }}, - {{ {104, -14, 0}, 0, {69, 2034}, {145, 198, 18, 255} }}, - {{ {103, -14, -6}, 0, {-101, 2034}, {166, 168, 14, 255} }}, - {{ {117, -29, -8}, 0, {-101, 2446}, {166, 168, 14, 255} }}, - {{ {118, -29, -2}, 0, {69, 2446}, {166, 168, 14, 255} }}, - {{ {104, -14, 0}, 0, {69, 2034}, {166, 168, 14, 255} }}, - {{ {117, -29, -8}, 0, {69, 2446}, {89, 166, 242, 255} }}, - {{ {130, -17, -4}, 0, {-101, 2100}, {89, 166, 242, 255} }}, - {{ {118, -29, -2}, 0, {-101, 2446}, {89, 166, 242, 255} }}, - {{ {129, -17, -10}, 0, {69, 2100}, {89, 166, 242, 255} }}, - {{ {118, -29, -2}, 0, {1422, -587}, {20, 0, 125, 255} }}, - {{ {130, -17, -4}, 0, {1076, -931}, {20, 0, 125, 255} }}, - {{ {119, -6, -2}, 0, {781, -618}, {20, 0, 125, 255} }}, - {{ {112, 8, -1}, 0, {387, -402}, {20, 0, 125, 255} }}, - {{ {109, 24, -1}, 0, {-54, -322}, {20, 0, 125, 255} }}, - {{ {91, 28, 2}, 0, {-182, 177}, {20, 0, 125, 255} }}, - {{ {109, 29, -1}, 0, {-217, -310}, {20, 0, 125, 255} }}, - {{ {95, 3, 1}, 0, {516, 68}, {20, 0, 125, 255} }}, - {{ {92, 22, 2}, 0, {-19, 165}, {20, 0, 125, 255} }}, - {{ {104, -14, 0}, 0, {1010, -187}, {20, 0, 125, 255} }}, - {{ {108, 24, -7}, 0, {69, 970}, {123, 23, 236, 255} }}, - {{ {109, 24, -1}, 0, {-101, 970}, {123, 23, 236, 255} }}, - {{ {112, 8, -1}, 0, {-101, 1411}, {123, 23, 236, 255} }}, - {{ {111, 8, -7}, 0, {69, 1411}, {123, 23, 236, 255} }}, -}; - -Gfx ak47_Arm_mesh_layer_1_tri_4[] = { - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_4 + 0, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(0, 3, 4, 0), - gsSP1Triangle(5, 0, 4, 0), - gsSP1Triangle(4, 6, 5, 0), - gsSP1Triangle(6, 7, 5, 0), - gsSP1Triangle(7, 8, 5, 0), - gsSP1Triangle(5, 9, 0, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 13, 11, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_4 + 14, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 7, 5, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 11, 9, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_4 + 30, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 15, 13, 0), - gsSPVertex(ak47_Arm_mesh_layer_1_vtx_4 + 46, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(0, 3, 4, 0), - gsSP1Triangle(4, 5, 0, 0), - gsSP1Triangle(4, 6, 5, 0), - gsSP1Triangle(5, 7, 0, 0), - gsSP1Triangle(5, 8, 7, 0), - gsSP1Triangle(7, 9, 0, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 12, 13, 0), - gsSPEndDisplayList(), -}; - - -Gfx mat_ak47_wood[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPSetLights1(ak47_wood_lights), - gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 1, ak47_wood_rgba16), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(7, 0, 0, 1023, 256), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0), - gsDPSetTileSize(0, 0, 0, 124, 124), - gsSPEndDisplayList(), -}; - -Gfx mat_ak47_gray[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPSetLights1(ak47_gray_lights), - gsSPEndDisplayList(), -}; - -Gfx mat_ak47_black_layer1[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), - gsDPSetRenderMode(G_RM_ZB_OPA_SURF, G_RM_ZB_OPA_SURF2), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_ak47_black_layer1[] = { - gsDPPipeSync(), - gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2), - gsSPEndDisplayList(), -}; - -Gfx mat_ak47_darkgray[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPSetLights1(ak47_darkgray_lights), - gsSPEndDisplayList(), -}; - -Gfx mat_ak47_darkergray[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPSetLights1(ak47_darkergray_lights), - gsDPSetTextureImage(G_IM_FMT_I, G_IM_SIZ_8b_LOAD_BLOCK, 1, ak47_noise_i8), - gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_8b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(7, 0, 0, 511, 512), - gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_8b, 4, 0, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0), - gsDPSetTileSize(0, 0, 0, 124, 124), - gsSPEndDisplayList(), -}; - -Gfx ak47_Arm_mesh_layer_1[] = { - gsSPDisplayList(mat_ak47_wood), - gsSPDisplayList(ak47_Arm_mesh_layer_1_tri_0), - gsSPDisplayList(mat_ak47_gray), - gsSPDisplayList(ak47_Arm_mesh_layer_1_tri_1), - gsSPDisplayList(mat_ak47_black_layer1), - gsSPDisplayList(ak47_Arm_mesh_layer_1_tri_2), - gsSPDisplayList(mat_revert_ak47_black_layer1), - gsSPDisplayList(mat_ak47_darkgray), - gsSPDisplayList(ak47_Arm_mesh_layer_1_tri_3), - gsSPDisplayList(mat_ak47_darkergray), - gsSPDisplayList(ak47_Arm_mesh_layer_1_tri_4), - gsSPEndDisplayList(), -}; - -Gfx ak47_material_revert_render_settings[] = { - gsDPPipeSync(), - gsSPSetGeometryMode(G_LIGHTING), - gsSPClearGeometryMode(G_TEXTURE_GEN), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 0), - gsDPSetEnvColor(255, 255, 255, 255), - gsDPSetAlphaCompare(G_AC_NONE), - gsSPEndDisplayList(), -}; - diff --git a/mods/gun-mod/actors/ak47/noise.i8.png b/mods/gun-mod/actors/ak47/noise.i8.png deleted file mode 100644 index 24b775e3..00000000 Binary files a/mods/gun-mod/actors/ak47/noise.i8.png and /dev/null differ diff --git a/mods/gun-mod/actors/ak47/wood.rgba16.png b/mods/gun-mod/actors/ak47/wood.rgba16.png deleted file mode 100644 index a7d74c7e..00000000 Binary files a/mods/gun-mod/actors/ak47/wood.rgba16.png and /dev/null differ diff --git a/mods/gun-mod/actors/arm/custom_mario_metal_light.rgba16.png b/mods/gun-mod/actors/arm/custom_mario_metal_light.rgba16.png deleted file mode 100644 index f7e58e6e..00000000 Binary files a/mods/gun-mod/actors/arm/custom_mario_metal_light.rgba16.png and /dev/null differ diff --git a/mods/gun-mod/actors/arm/custom_mario_metal_shade.rgba16.png b/mods/gun-mod/actors/arm/custom_mario_metal_shade.rgba16.png deleted file mode 100644 index c37da060..00000000 Binary files a/mods/gun-mod/actors/arm/custom_mario_metal_shade.rgba16.png and /dev/null differ diff --git a/mods/gun-mod/actors/arm/geo.inc.c b/mods/gun-mod/actors/arm/geo.inc.c deleted file mode 100644 index 04836456..00000000 --- a/mods/gun-mod/actors/arm/geo.inc.c +++ /dev/null @@ -1,58 +0,0 @@ -#include "src/game/envfx_snow.h" - -const GeoLayout arm_Metal_Arm_Armature[] = { - GEO_TRANSLATE_ROTATE(LAYER_OPAQUE, 0, -43, 0, 0, 0, 0), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 0, -2, 0, arm_Switch_Option_Upper_Arm_Metal_mesh_layer_1), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 25, 0, 0, arm_Switch_Option_Arm_Metal_mesh_layer_1), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_RETURN(), -}; -const GeoLayout arm_Vanish_Arm_Armature[] = { - GEO_TRANSLATE_ROTATE(LAYER_OPAQUE, 0, -43, 0, 0, 0, 0), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, -2, 0, arm_Switch_Option_Upper_Arm_Vanish_mesh_layer_5), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_TRANSPARENT, 25, 0, 0, arm_Switch_Option_Arm_Vanish_mesh_layer_5), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_RETURN(), -}; -const GeoLayout arm_Vanish_Metal_Armature[] = { - GEO_TRANSLATE_ROTATE(LAYER_OPAQUE, 0, -43, 0, 0, 0, 0), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, -2, 0, arm_Switch_Option_Upper_Arm_Vanish_Metal_mesh_layer_5), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_TRANSPARENT, 25, 0, 0, arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_RETURN(), -}; -const GeoLayout arm_geo[] = { - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_SCALE(LAYER_FORCE, 65536), - GEO_OPEN_NODE(), - GEO_ASM(LAYER_OPAQUE, geo_mario_set_player_colors), - GEO_ASM(LAYER_TRANSPARENT + 3, geo_mario_set_player_colors), - GEO_SWITCH_CASE(4, geo_switch_anim_state), - GEO_OPEN_NODE(), - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 0, -45, 0, arm_Upper_Arm_mesh_layer_1), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 25, 0, 0, arm_Arm_mesh_layer_1), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_BRANCH(1, arm_Metal_Arm_Armature), - GEO_BRANCH(1, arm_Vanish_Arm_Armature), - GEO_BRANCH(1, arm_Vanish_Metal_Armature), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_DISPLAY_LIST(LAYER_OPAQUE, arm_material_revert_render_settings), - GEO_DISPLAY_LIST(LAYER_TRANSPARENT, arm_material_revert_render_settings), - GEO_CLOSE_NODE(), - GEO_END(), -}; diff --git a/mods/gun-mod/actors/arm/geo_header.h b/mods/gun-mod/actors/arm/geo_header.h deleted file mode 100644 index b75babef..00000000 --- a/mods/gun-mod/actors/arm/geo_header.h +++ /dev/null @@ -1,51 +0,0 @@ -extern const GeoLayout arm_Metal_Arm_Armature[]; -extern const GeoLayout arm_Vanish_Arm_Armature[]; -extern const GeoLayout arm_Vanish_Metal_Armature[]; -extern const GeoLayout arm_geo[]; -extern Lights1 arm_shirt_lights; -extern Lights1 arm_gloves_lights; -extern Lights1 arm_metal_lights; -extern Lights1 arm_shirt2_lights; -extern Lights1 arm_gloves2_lights; -extern Lights1 arm_metal2_lights; -extern u8 arm_custom_mario_metal_shade_rgba16_rgba16[]; -extern u8 arm_custom_mario_metal_light_rgba16_rgba16[]; -extern Vtx arm_Upper_Arm_mesh_layer_1_vtx_0[32]; -extern Gfx arm_Upper_Arm_mesh_layer_1_tri_0[]; -extern Vtx arm_Arm_mesh_layer_1_vtx_0[36]; -extern Gfx arm_Arm_mesh_layer_1_tri_0[]; -extern Vtx arm_Arm_mesh_layer_1_vtx_1[16]; -extern Gfx arm_Arm_mesh_layer_1_tri_1[]; -extern Vtx arm_Switch_Option_Upper_Arm_Metal_mesh_layer_1_vtx_0[32]; -extern Gfx arm_Switch_Option_Upper_Arm_Metal_mesh_layer_1_tri_0[]; -extern Vtx arm_Switch_Option_Arm_Metal_mesh_layer_1_vtx_0[52]; -extern Gfx arm_Switch_Option_Arm_Metal_mesh_layer_1_tri_0[]; -extern Vtx arm_Switch_Option_Upper_Arm_Vanish_mesh_layer_5_vtx_0[32]; -extern Gfx arm_Switch_Option_Upper_Arm_Vanish_mesh_layer_5_tri_0[]; -extern Vtx arm_Switch_Option_Arm_Vanish_mesh_layer_5_vtx_0[36]; -extern Gfx arm_Switch_Option_Arm_Vanish_mesh_layer_5_tri_0[]; -extern Vtx arm_Switch_Option_Arm_Vanish_mesh_layer_5_vtx_1[16]; -extern Gfx arm_Switch_Option_Arm_Vanish_mesh_layer_5_tri_1[]; -extern Vtx arm_Switch_Option_Upper_Arm_Vanish_Metal_mesh_layer_5_vtx_0[32]; -extern Gfx arm_Switch_Option_Upper_Arm_Vanish_Metal_mesh_layer_5_tri_0[]; -extern Vtx arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5_vtx_0[52]; -extern Gfx arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5_tri_0[]; -extern Gfx mat_arm_shirt[]; -extern Gfx mat_arm_gloves[]; -extern Gfx mat_arm_metal[]; -extern Gfx mat_revert_arm_metal[]; -extern Gfx mat_arm_shirt2[]; -extern Gfx mat_revert_arm_shirt2[]; -extern Gfx mat_arm_gloves2[]; -extern Gfx mat_revert_arm_gloves2[]; -extern Gfx mat_arm_metal2[]; -extern Gfx mat_revert_arm_metal2[]; -extern Gfx arm_Upper_Arm_mesh_layer_1[]; -extern Gfx arm_Arm_mesh_layer_1[]; -extern Gfx arm_Switch_Option_Upper_Arm_Metal_mesh_layer_1[]; -extern Gfx arm_Switch_Option_Arm_Metal_mesh_layer_1[]; -extern Gfx arm_Switch_Option_Upper_Arm_Vanish_mesh_layer_5[]; -extern Gfx arm_Switch_Option_Arm_Vanish_mesh_layer_5[]; -extern Gfx arm_Switch_Option_Upper_Arm_Vanish_Metal_mesh_layer_5[]; -extern Gfx arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5[]; -extern Gfx arm_material_revert_render_settings[]; diff --git a/mods/gun-mod/actors/arm/model.inc.c b/mods/gun-mod/actors/arm/model.inc.c deleted file mode 100644 index 51a54397..00000000 --- a/mods/gun-mod/actors/arm/model.inc.c +++ /dev/null @@ -1,1096 +0,0 @@ -Lights1 arm_shirt_lights = gdSPDefLights1( - 0x7F, 0x0, 0x0, - 0xFF, 0x0, 0x0, 0x28, 0x28, 0x28); - -Lights1 arm_gloves_lights = gdSPDefLights1( - 0x7F, 0x7F, 0x7F, - 0xFF, 0xFF, 0xFF, 0x28, 0x28, 0x28); - -Lights1 arm_metal_lights = gdSPDefLights1( - 0xFF, 0x0, 0x0, - 0xFF, 0x0, 0x0, 0x28, 0x28, 0x28); - -Lights1 arm_shirt2_lights = gdSPDefLights1( - 0x7F, 0x0, 0x0, - 0xFF, 0x0, 0x0, 0x28, 0x28, 0x28); - -Lights1 arm_gloves2_lights = gdSPDefLights1( - 0x7F, 0x7F, 0x7F, - 0xFF, 0xFF, 0xFF, 0x28, 0x28, 0x28); - -Lights1 arm_metal2_lights = gdSPDefLights1( - 0xFF, 0x0, 0x0, - 0xFF, 0x0, 0x0, 0x28, 0x28, 0x28); - -static const Lights1 mario_black_lights_group = gdSPDefLights1( - 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x28, 0x28, 0x28 -); - -Gfx arm_custom_mario_metal_shade_rgba16_rgba16_aligner[] = {gsSPEndDisplayList()}; -u8 arm_custom_mario_metal_shade_rgba16_rgba16[] = { - #include "actors/arm/custom_mario_metal_shade.rgba16.inc.c" -}; - -Gfx arm_custom_mario_metal_light_rgba16_rgba16_aligner[] = {gsSPEndDisplayList()}; -u8 arm_custom_mario_metal_light_rgba16_rgba16[] = { - #include "actors/arm/custom_mario_metal_light.rgba16.inc.c" -}; - -Vtx arm_Upper_Arm_mesh_layer_1_vtx_0[32] = { - {{ {19, 6, -8}, 0, {-16, -16}, {129, 0, 3, 0} }}, - {{ {19, -4, -1}, 0, {-16, -16}, {129, 3, 4, 0} }}, - {{ {20, 0, 10}, 0, {-16, -16}, {129, 0, 4, 0} }}, - {{ {19, 15, -1}, 0, {-16, -16}, {129, 255, 3, 0} }}, - {{ {20, 12, 10}, 0, {-16, -16}, {129, 0, 5, 0} }}, - {{ {23, -3, 13}, 0, {-16, -16}, {54, 187, 92, 0} }}, - {{ {27, 0, 10}, 0, {-16, -16}, {111, 221, 51, 0} }}, - {{ {27, 12, 10}, 0, {-16, -16}, {112, 35, 50, 0} }}, - {{ {27, -4, -1}, 0, {-16, -16}, {110, 196, 235, 0} }}, - {{ {22, -8, -2}, 0, {-16, -16}, {50, 145, 220, 0} }}, - {{ {-1, -5, 17}, 0, {-16, -16}, {224, 183, 99, 0} }}, - {{ {-1, 16, 17}, 0, {-16, -16}, {225, 70, 102, 0} }}, - {{ {23, 14, 14}, 0, {-16, -16}, {55, 66, 94, 0} }}, - {{ {27, 15, -1}, 0, {-16, -16}, {110, 60, 237, 0} }}, - {{ {26, 6, -8}, 0, {-16, -16}, {111, 3, 195, 0} }}, - {{ {22, 6, -13}, 0, {-16, -16}, {51, 2, 140, 0} }}, - {{ {22, 20, -2}, 0, {-16, -16}, {50, 112, 223, 0} }}, - {{ {27, 15, -1}, 0, {-16, -16}, {110, 60, 237, 0} }}, - {{ {22, 6, -13}, 0, {-16, -16}, {51, 2, 140, 0} }}, - {{ {-2, 6, -16}, 0, {-16, -16}, {217, 3, 135, 0} }}, - {{ {-2, -11, -3}, 0, {-16, -16}, {220, 140, 218, 0} }}, - {{ {22, -8, -2}, 0, {-16, -16}, {50, 145, 220, 0} }}, - {{ {27, -4, -1}, 0, {-16, -16}, {110, 196, 235, 0} }}, - {{ {-1, -5, 17}, 0, {-16, -16}, {224, 183, 99, 0} }}, - {{ {-8, -1, 12}, 0, {-16, -16}, {147, 220, 54, 0} }}, - {{ {-8, 12, 12}, 0, {-16, -16}, {147, 35, 55, 0} }}, - {{ {-1, 16, 17}, 0, {-16, -16}, {225, 70, 102, 0} }}, - {{ {-9, 16, 0}, 0, {-16, -16}, {144, 59, 244, 0} }}, - {{ {-2, 23, -3}, 0, {-16, -16}, {221, 117, 222, 0} }}, - {{ {23, 14, 14}, 0, {-16, -16}, {55, 66, 94, 0} }}, - {{ {-9, 6, -8}, 0, {-16, -16}, {143, 2, 197, 0} }}, - {{ {-9, -5, -1}, 0, {-16, -16}, {145, 196, 241, 0} }}, -}; - -Gfx arm_Upper_Arm_mesh_layer_1_tri_0[] = { - gsSPVertex(arm_Upper_Arm_mesh_layer_1_vtx_0 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 0, 2, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(8, 6, 5, 0), - gsSP1Triangle(9, 8, 5, 0), - gsSP1Triangle(9, 5, 10, 0), - gsSP1Triangle(5, 11, 10, 0), - gsSP1Triangle(5, 12, 11, 0), - gsSP1Triangle(5, 7, 12, 0), - gsSP1Triangle(12, 7, 13, 0), - gsSP1Triangle(13, 7, 14, 0), - gsSP1Triangle(7, 8, 14, 0), - gsSP1Triangle(7, 6, 8, 0), - gsSP1Triangle(15, 14, 8, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(arm_Upper_Arm_mesh_layer_1_vtx_0 + 16, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(2, 5, 4, 0), - gsSP1Triangle(2, 6, 5, 0), - gsSP1Triangle(5, 7, 4, 0), - gsSP1Triangle(7, 8, 4, 0), - gsSP1Triangle(9, 8, 7, 0), - gsSP1Triangle(10, 9, 7, 0), - gsSP1Triangle(11, 9, 10, 0), - gsSP1Triangle(12, 11, 10, 0), - gsSP1Triangle(13, 12, 10, 0), - gsSP1Triangle(13, 0, 12, 0), - gsSP1Triangle(13, 1, 0, 0), - gsSP1Triangle(0, 3, 12, 0), - gsSP1Triangle(3, 14, 12, 0), - gsSP1Triangle(15, 14, 3, 0), - gsSP1Triangle(4, 15, 3, 0), - gsSP1Triangle(8, 15, 4, 0), - gsSP1Triangle(15, 8, 9, 0), - gsSP1Triangle(15, 9, 11, 0), - gsSP1Triangle(11, 14, 15, 0), - gsSP1Triangle(14, 11, 12, 0), - gsSPEndDisplayList(), -}; - -Vtx arm_Arm_mesh_layer_1_vtx_0[36] = { - {{ {27, -9, 18}, 0, {-16, -16}, {71, 171, 63, 0} }}, - {{ {29, -10, -15}, 0, {-16, -16}, {74, 167, 204, 0} }}, - {{ {35, -7, -11}, 0, {-16, -16}, {249, 146, 193, 0} }}, - {{ {36, 9, -19}, 0, {-16, -16}, {20, 40, 137, 0} }}, - {{ {30, 10, -25}, 0, {-16, -16}, {94, 18, 172, 0} }}, - {{ {30, 25, 1}, 0, {-16, -16}, {81, 98, 1, 0} }}, - {{ {35, 20, 1}, 0, {-16, -16}, {10, 126, 249, 0} }}, - {{ {35, 11, 22}, 0, {-16, -16}, {3, 48, 118, 0} }}, - {{ {28, 12, 27}, 0, {-16, -16}, {83, 25, 93, 0} }}, - {{ {33, -7, 15}, 0, {-16, -16}, {12, 148, 66, 0} }}, - {{ {43, -13, 2}, 0, {-16, -16}, {194, 147, 20, 0} }}, - {{ {57, -22, -22}, 0, {-16, -16}, {254, 156, 178, 0} }}, - {{ {46, 11, -25}, 0, {-16, -16}, {222, 47, 143, 0} }}, - {{ {46, 27, 1}, 0, {-16, -16}, {228, 124, 251, 0} }}, - {{ {43, 12, 28}, 0, {-16, -16}, {212, 49, 109, 0} }}, - {{ {52, -5, 27}, 0, {-16, -16}, {242, 184, 104, 0} }}, - {{ {52, -5, 27}, 0, {-16, -16}, {242, 184, 104, 0} }}, - {{ {43, -13, 2}, 0, {-16, -16}, {194, 147, 20, 0} }}, - {{ {56, -21, 0}, 0, {-16, -16}, {253, 132, 28, 0} }}, - {{ {57, -22, -22}, 0, {-16, -16}, {254, 156, 178, 0} }}, - {{ {70, -15, -15}, 0, {-16, -16}, {96, 182, 216, 0} }}, - {{ {70, 9, -25}, 0, {-16, -16}, {71, 38, 158, 0} }}, - {{ {46, 11, -25}, 0, {-16, -16}, {222, 47, 143, 0} }}, - {{ {46, 27, 1}, 0, {-16, -16}, {228, 124, 251, 0} }}, - {{ {71, 26, 2}, 0, {-16, -16}, {73, 104, 255, 0} }}, - {{ {68, 11, 30}, 0, {-16, -16}, {64, 32, 105, 0} }}, - {{ {43, 12, 28}, 0, {-16, -16}, {212, 49, 109, 0} }}, - {{ {62, -10, 19}, 0, {-16, -16}, {48, 164, 73, 0} }}, - {{ {69, -15, -3}, 0, {-16, -16}, {82, 161, 22, 0} }}, - {{ {78, -1, 5}, 0, {-16, -16}, {123, 230, 21, 0} }}, - {{ {30, 25, 1}, 0, {-16, -16}, {145, 61, 251, 0} }}, - {{ {20, 6, 1}, 0, {-16, -16}, {129, 8, 252, 0} }}, - {{ {28, 12, 27}, 0, {-16, -16}, {135, 20, 33, 0} }}, - {{ {30, 10, -25}, 0, {-16, -16}, {138, 16, 213, 0} }}, - {{ {29, -10, -15}, 0, {-16, -16}, {137, 223, 226, 0} }}, - {{ {27, -9, 18}, 0, {-16, -16}, {135, 226, 23, 0} }}, -}; - -Gfx arm_Arm_mesh_layer_1_tri_0[] = { - gsSPVertex(arm_Arm_mesh_layer_1_vtx_0 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(5, 6, 3, 0), - gsSP1Triangle(7, 6, 5, 0), - gsSP1Triangle(5, 8, 7, 0), - gsSP1Triangle(7, 8, 0, 0), - gsSP1Triangle(0, 9, 7, 0), - gsSP1Triangle(2, 9, 0, 0), - gsSP1Triangle(10, 9, 2, 0), - gsSP1Triangle(11, 10, 2, 0), - gsSP1Triangle(12, 11, 2, 0), - gsSP1Triangle(2, 3, 12, 0), - gsSP1Triangle(13, 12, 3, 0), - gsSP1Triangle(3, 6, 13, 0), - gsSP1Triangle(13, 6, 7, 0), - gsSP1Triangle(14, 13, 7, 0), - gsSP1Triangle(14, 7, 9, 0), - gsSP1Triangle(15, 14, 9, 0), - gsSP1Triangle(9, 10, 15, 0), - gsSPVertex(arm_Arm_mesh_layer_1_vtx_0 + 16, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(3, 4, 2, 0), - gsSP1Triangle(5, 4, 3, 0), - gsSP1Triangle(6, 5, 3, 0), - gsSP1Triangle(7, 5, 6, 0), - gsSP1Triangle(7, 8, 5, 0), - gsSP1Triangle(9, 8, 7, 0), - gsSP1Triangle(10, 9, 7, 0), - gsSP1Triangle(9, 10, 0, 0), - gsSP1Triangle(0, 11, 9, 0), - gsSP1Triangle(11, 0, 2, 0), - gsSP1Triangle(12, 11, 2, 0), - gsSP1Triangle(4, 12, 2, 0), - gsSP1Triangle(4, 13, 12, 0), - gsSP1Triangle(5, 13, 4, 0), - gsSP1Triangle(8, 13, 5, 0), - gsSP1Triangle(9, 13, 8, 0), - gsSP1Triangle(11, 13, 9, 0), - gsSP1Triangle(13, 11, 12, 0), - gsSPVertex(arm_Arm_mesh_layer_1_vtx_0 + 30, 6, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 1, 0, 0), - gsSP1Triangle(4, 1, 3, 0), - gsSP1Triangle(5, 1, 4, 0), - gsSP1Triangle(2, 1, 5, 0), - gsSPEndDisplayList(), -}; - -Vtx arm_Arm_mesh_layer_1_vtx_1[16] = { - {{ {-6, -4, -1}, 0, {-16, -16}, {170, 166, 230, 0} }}, - {{ {-6, 6, -8}, 0, {-16, -16}, {166, 6, 166, 0} }}, - {{ {0, 6, -13}, 0, {-16, -16}, {217, 2, 135, 0} }}, - {{ {0, 20, -3}, 0, {-16, -16}, {221, 117, 222, 0} }}, - {{ {-6, 15, -1}, 0, {-16, -16}, {173, 93, 231, 0} }}, - {{ {1, 14, 14}, 0, {-16, -16}, {225, 69, 102, 0} }}, - {{ {-5, 12, 10}, 0, {-16, -16}, {177, 57, 81, 0} }}, - {{ {1, -3, 14}, 0, {-16, -16}, {223, 183, 99, 0} }}, - {{ {-5, 0, 10}, 0, {-16, -16}, {172, 199, 77, 0} }}, - {{ {0, -9, -3}, 0, {-16, -16}, {220, 140, 219, 0} }}, - {{ {23, 6, -12}, 0, {-16, -16}, {61, 1, 144, 0} }}, - {{ {23, 18, -3}, 0, {-16, -16}, {64, 105, 224, 0} }}, - {{ {24, 13, 12}, 0, {-16, -16}, {67, 62, 89, 0} }}, - {{ {24, -2, 11}, 0, {-16, -16}, {68, 191, 86, 0} }}, - {{ {23, -7, -3}, 0, {-16, -16}, {65, 152, 222, 0} }}, - {{ {29, 6, 1}, 0, {-16, -16}, {127, 1, 253, 0} }}, -}; - -Gfx arm_Arm_mesh_layer_1_tri_1[] = { - gsSPVertex(arm_Arm_mesh_layer_1_vtx_1 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 1, 3, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(4, 6, 5, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(6, 8, 7, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(8, 0, 9, 0), - gsSP1Triangle(9, 0, 2, 0), - gsSP1Triangle(10, 9, 2, 0), - gsSP1Triangle(11, 10, 2, 0), - gsSP1Triangle(11, 2, 3, 0), - gsSP1Triangle(12, 11, 3, 0), - gsSP1Triangle(12, 3, 5, 0), - gsSP1Triangle(13, 12, 5, 0), - gsSP1Triangle(13, 5, 7, 0), - gsSP1Triangle(14, 13, 7, 0), - gsSP1Triangle(14, 7, 9, 0), - gsSP1Triangle(10, 14, 9, 0), - gsSP1Triangle(10, 15, 14, 0), - gsSP1Triangle(11, 15, 10, 0), - gsSP1Triangle(12, 15, 11, 0), - gsSP1Triangle(13, 15, 12, 0), - gsSP1Triangle(14, 15, 13, 0), - gsSPEndDisplayList(), -}; - -Vtx arm_Switch_Option_Upper_Arm_Metal_mesh_layer_1_vtx_0[32] = { - {{ {19, 6, -8}, 0, {-260, -529}, {129, 0, 3, 0} }}, - {{ {19, -4, -1}, 0, {-260, -529}, {129, 3, 4, 0} }}, - {{ {20, 0, 10}, 0, {-260, -529}, {129, 0, 4, 0} }}, - {{ {19, 15, -1}, 0, {-260, -529}, {129, 255, 3, 0} }}, - {{ {20, 12, 10}, 0, {-260, -529}, {129, 0, 5, 0} }}, - {{ {23, -3, 13}, 0, {-260, -529}, {54, 187, 92, 0} }}, - {{ {27, 0, 10}, 0, {-260, -529}, {111, 221, 51, 0} }}, - {{ {27, 12, 10}, 0, {-260, -529}, {112, 35, 50, 0} }}, - {{ {27, -4, -1}, 0, {-260, -529}, {110, 196, 235, 0} }}, - {{ {22, -8, -2}, 0, {-260, -529}, {50, 145, 220, 0} }}, - {{ {-1, -5, 17}, 0, {-260, -529}, {224, 183, 99, 0} }}, - {{ {-1, 16, 17}, 0, {-260, -529}, {225, 70, 102, 0} }}, - {{ {23, 14, 14}, 0, {-260, -529}, {55, 66, 94, 0} }}, - {{ {27, 15, -1}, 0, {-260, -529}, {110, 60, 237, 0} }}, - {{ {26, 6, -8}, 0, {-260, -529}, {111, 3, 195, 0} }}, - {{ {22, 6, -13}, 0, {-260, -529}, {51, 2, 140, 0} }}, - {{ {22, 20, -2}, 0, {-260, -529}, {50, 112, 223, 0} }}, - {{ {27, 15, -1}, 0, {-260, -529}, {110, 60, 237, 0} }}, - {{ {22, 6, -13}, 0, {-260, -529}, {51, 2, 140, 0} }}, - {{ {-2, 6, -16}, 0, {-260, -529}, {217, 3, 135, 0} }}, - {{ {-2, -11, -3}, 0, {-260, -529}, {220, 140, 218, 0} }}, - {{ {22, -8, -2}, 0, {-260, -529}, {50, 145, 220, 0} }}, - {{ {27, -4, -1}, 0, {-260, -529}, {110, 196, 235, 0} }}, - {{ {-1, -5, 17}, 0, {-260, -529}, {224, 183, 99, 0} }}, - {{ {-8, -1, 12}, 0, {-260, -529}, {147, 220, 54, 0} }}, - {{ {-8, 12, 12}, 0, {-260, -529}, {147, 35, 55, 0} }}, - {{ {-1, 16, 17}, 0, {-260, -529}, {225, 70, 102, 0} }}, - {{ {-9, 16, 0}, 0, {-260, -529}, {144, 59, 244, 0} }}, - {{ {-2, 23, -3}, 0, {-260, -529}, {221, 117, 222, 0} }}, - {{ {23, 14, 14}, 0, {-260, -529}, {55, 66, 94, 0} }}, - {{ {-9, 6, -8}, 0, {-260, -529}, {143, 2, 197, 0} }}, - {{ {-9, -5, -1}, 0, {-260, -529}, {145, 196, 241, 0} }}, -}; - -Gfx arm_Switch_Option_Upper_Arm_Metal_mesh_layer_1_tri_0[] = { - gsSPVertex(arm_Switch_Option_Upper_Arm_Metal_mesh_layer_1_vtx_0 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 0, 2, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(8, 6, 5, 0), - gsSP1Triangle(9, 8, 5, 0), - gsSP1Triangle(9, 5, 10, 0), - gsSP1Triangle(5, 11, 10, 0), - gsSP1Triangle(5, 12, 11, 0), - gsSP1Triangle(5, 7, 12, 0), - gsSP1Triangle(12, 7, 13, 0), - gsSP1Triangle(13, 7, 14, 0), - gsSP1Triangle(7, 8, 14, 0), - gsSP1Triangle(7, 6, 8, 0), - gsSP1Triangle(15, 14, 8, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(arm_Switch_Option_Upper_Arm_Metal_mesh_layer_1_vtx_0 + 16, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(2, 5, 4, 0), - gsSP1Triangle(2, 6, 5, 0), - gsSP1Triangle(5, 7, 4, 0), - gsSP1Triangle(7, 8, 4, 0), - gsSP1Triangle(9, 8, 7, 0), - gsSP1Triangle(10, 9, 7, 0), - gsSP1Triangle(11, 9, 10, 0), - gsSP1Triangle(12, 11, 10, 0), - gsSP1Triangle(13, 12, 10, 0), - gsSP1Triangle(13, 0, 12, 0), - gsSP1Triangle(13, 1, 0, 0), - gsSP1Triangle(0, 3, 12, 0), - gsSP1Triangle(3, 14, 12, 0), - gsSP1Triangle(15, 14, 3, 0), - gsSP1Triangle(4, 15, 3, 0), - gsSP1Triangle(8, 15, 4, 0), - gsSP1Triangle(15, 8, 9, 0), - gsSP1Triangle(15, 9, 11, 0), - gsSP1Triangle(11, 14, 15, 0), - gsSP1Triangle(14, 11, 12, 0), - gsSPEndDisplayList(), -}; - -Vtx arm_Switch_Option_Arm_Metal_mesh_layer_1_vtx_0[52] = { - {{ {27, -9, 18}, 0, {-260, -529}, {71, 171, 63, 0} }}, - {{ {29, -10, -15}, 0, {-260, -529}, {74, 167, 204, 0} }}, - {{ {35, -7, -11}, 0, {-260, -529}, {249, 146, 193, 0} }}, - {{ {36, 9, -19}, 0, {-260, -529}, {20, 40, 137, 0} }}, - {{ {30, 10, -25}, 0, {-260, -529}, {94, 18, 172, 0} }}, - {{ {30, 25, 1}, 0, {-260, -529}, {81, 98, 1, 0} }}, - {{ {35, 20, 1}, 0, {-260, -529}, {10, 126, 249, 0} }}, - {{ {35, 11, 22}, 0, {-260, -529}, {3, 48, 118, 0} }}, - {{ {28, 12, 27}, 0, {-260, -529}, {83, 25, 93, 0} }}, - {{ {33, -7, 15}, 0, {-260, -529}, {12, 148, 66, 0} }}, - {{ {43, -13, 2}, 0, {-260, -529}, {194, 147, 20, 0} }}, - {{ {57, -22, -22}, 0, {-260, -529}, {254, 156, 178, 0} }}, - {{ {46, 11, -25}, 0, {-260, -529}, {222, 47, 143, 0} }}, - {{ {46, 27, 1}, 0, {-260, -529}, {228, 124, 251, 0} }}, - {{ {43, 12, 28}, 0, {-260, -529}, {212, 49, 109, 0} }}, - {{ {52, -5, 27}, 0, {-260, -529}, {242, 184, 104, 0} }}, - {{ {52, -5, 27}, 0, {-260, -529}, {242, 184, 104, 0} }}, - {{ {43, -13, 2}, 0, {-260, -529}, {194, 147, 20, 0} }}, - {{ {56, -21, 0}, 0, {-260, -529}, {253, 132, 28, 0} }}, - {{ {57, -22, -22}, 0, {-260, -529}, {254, 156, 178, 0} }}, - {{ {70, -15, -15}, 0, {-260, -529}, {96, 182, 216, 0} }}, - {{ {70, 9, -25}, 0, {-260, -529}, {71, 38, 158, 0} }}, - {{ {46, 11, -25}, 0, {-260, -529}, {222, 47, 143, 0} }}, - {{ {46, 27, 1}, 0, {-260, -529}, {228, 124, 251, 0} }}, - {{ {71, 26, 2}, 0, {-260, -529}, {73, 104, 255, 0} }}, - {{ {68, 11, 30}, 0, {-260, -529}, {64, 32, 105, 0} }}, - {{ {43, 12, 28}, 0, {-260, -529}, {212, 49, 109, 0} }}, - {{ {62, -10, 19}, 0, {-260, -529}, {48, 164, 73, 0} }}, - {{ {69, -15, -3}, 0, {-260, -529}, {82, 161, 22, 0} }}, - {{ {78, -1, 5}, 0, {-260, -529}, {123, 230, 21, 0} }}, - {{ {-6, -4, -1}, 0, {-260, -529}, {170, 166, 230, 0} }}, - {{ {-6, 6, -8}, 0, {-260, -529}, {166, 6, 166, 0} }}, - {{ {0, 6, -13}, 0, {-260, -529}, {217, 2, 135, 0} }}, - {{ {0, 20, -3}, 0, {-260, -529}, {221, 117, 222, 0} }}, - {{ {-6, 15, -1}, 0, {-260, -529}, {173, 93, 231, 0} }}, - {{ {1, 14, 14}, 0, {-260, -529}, {225, 69, 102, 0} }}, - {{ {-5, 12, 10}, 0, {-260, -529}, {177, 57, 81, 0} }}, - {{ {1, -3, 14}, 0, {-260, -529}, {223, 183, 99, 0} }}, - {{ {-5, 0, 10}, 0, {-260, -529}, {172, 199, 77, 0} }}, - {{ {0, -9, -3}, 0, {-260, -529}, {220, 140, 219, 0} }}, - {{ {23, 6, -12}, 0, {-260, -529}, {61, 1, 144, 0} }}, - {{ {23, 18, -3}, 0, {-260, -529}, {64, 105, 224, 0} }}, - {{ {24, 13, 12}, 0, {-260, -529}, {67, 62, 89, 0} }}, - {{ {24, -2, 11}, 0, {-260, -529}, {68, 191, 86, 0} }}, - {{ {23, -7, -3}, 0, {-260, -529}, {65, 152, 222, 0} }}, - {{ {29, 6, 1}, 0, {-260, -529}, {127, 1, 253, 0} }}, - {{ {30, 25, 1}, 0, {-260, -529}, {145, 61, 251, 0} }}, - {{ {20, 6, 1}, 0, {-260, -529}, {129, 8, 252, 0} }}, - {{ {28, 12, 27}, 0, {-260, -529}, {135, 20, 33, 0} }}, - {{ {30, 10, -25}, 0, {-260, -529}, {138, 16, 213, 0} }}, - {{ {29, -10, -15}, 0, {-260, -529}, {137, 223, 226, 0} }}, - {{ {27, -9, 18}, 0, {-260, -529}, {135, 226, 23, 0} }}, -}; - -Gfx arm_Switch_Option_Arm_Metal_mesh_layer_1_tri_0[] = { - gsSPVertex(arm_Switch_Option_Arm_Metal_mesh_layer_1_vtx_0 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(5, 6, 3, 0), - gsSP1Triangle(7, 6, 5, 0), - gsSP1Triangle(5, 8, 7, 0), - gsSP1Triangle(7, 8, 0, 0), - gsSP1Triangle(0, 9, 7, 0), - gsSP1Triangle(2, 9, 0, 0), - gsSP1Triangle(10, 9, 2, 0), - gsSP1Triangle(11, 10, 2, 0), - gsSP1Triangle(12, 11, 2, 0), - gsSP1Triangle(2, 3, 12, 0), - gsSP1Triangle(13, 12, 3, 0), - gsSP1Triangle(3, 6, 13, 0), - gsSP1Triangle(13, 6, 7, 0), - gsSP1Triangle(14, 13, 7, 0), - gsSP1Triangle(14, 7, 9, 0), - gsSP1Triangle(15, 14, 9, 0), - gsSP1Triangle(9, 10, 15, 0), - gsSPVertex(arm_Switch_Option_Arm_Metal_mesh_layer_1_vtx_0 + 16, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(3, 4, 2, 0), - gsSP1Triangle(5, 4, 3, 0), - gsSP1Triangle(6, 5, 3, 0), - gsSP1Triangle(7, 5, 6, 0), - gsSP1Triangle(7, 8, 5, 0), - gsSP1Triangle(9, 8, 7, 0), - gsSP1Triangle(10, 9, 7, 0), - gsSP1Triangle(9, 10, 0, 0), - gsSP1Triangle(0, 11, 9, 0), - gsSP1Triangle(11, 0, 2, 0), - gsSP1Triangle(12, 11, 2, 0), - gsSP1Triangle(4, 12, 2, 0), - gsSP1Triangle(4, 13, 12, 0), - gsSP1Triangle(5, 13, 4, 0), - gsSP1Triangle(8, 13, 5, 0), - gsSP1Triangle(9, 13, 8, 0), - gsSP1Triangle(11, 13, 9, 0), - gsSP1Triangle(13, 11, 12, 0), - gsSPVertex(arm_Switch_Option_Arm_Metal_mesh_layer_1_vtx_0 + 30, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 1, 3, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(4, 6, 5, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(6, 8, 7, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(8, 0, 9, 0), - gsSP1Triangle(9, 0, 2, 0), - gsSP1Triangle(10, 9, 2, 0), - gsSP1Triangle(11, 10, 2, 0), - gsSP1Triangle(11, 2, 3, 0), - gsSP1Triangle(12, 11, 3, 0), - gsSP1Triangle(12, 3, 5, 0), - gsSP1Triangle(13, 12, 5, 0), - gsSP1Triangle(13, 5, 7, 0), - gsSP1Triangle(14, 13, 7, 0), - gsSP1Triangle(14, 7, 9, 0), - gsSP1Triangle(10, 14, 9, 0), - gsSP1Triangle(10, 15, 14, 0), - gsSP1Triangle(11, 15, 10, 0), - gsSP1Triangle(12, 15, 11, 0), - gsSP1Triangle(13, 15, 12, 0), - gsSP1Triangle(14, 15, 13, 0), - gsSPVertex(arm_Switch_Option_Arm_Metal_mesh_layer_1_vtx_0 + 46, 6, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 1, 0, 0), - gsSP1Triangle(4, 1, 3, 0), - gsSP1Triangle(5, 1, 4, 0), - gsSP1Triangle(2, 1, 5, 0), - gsSPEndDisplayList(), -}; - -Vtx arm_Switch_Option_Upper_Arm_Vanish_mesh_layer_5_vtx_0[32] = { - {{ {19, 6, -8}, 0, {-16, -16}, {129, 0, 3, 0} }}, - {{ {19, -4, -1}, 0, {-16, -16}, {129, 3, 4, 0} }}, - {{ {20, 0, 10}, 0, {-16, -16}, {129, 0, 4, 0} }}, - {{ {19, 15, -1}, 0, {-16, -16}, {129, 255, 3, 0} }}, - {{ {20, 12, 10}, 0, {-16, -16}, {129, 0, 5, 0} }}, - {{ {23, -3, 13}, 0, {-16, -16}, {54, 187, 92, 0} }}, - {{ {27, 0, 10}, 0, {-16, -16}, {111, 221, 51, 0} }}, - {{ {27, 12, 10}, 0, {-16, -16}, {112, 35, 50, 0} }}, - {{ {27, -4, -1}, 0, {-16, -16}, {110, 196, 235, 0} }}, - {{ {22, -8, -2}, 0, {-16, -16}, {50, 145, 220, 0} }}, - {{ {-1, -5, 17}, 0, {-16, -16}, {224, 183, 99, 0} }}, - {{ {-1, 16, 17}, 0, {-16, -16}, {225, 70, 102, 0} }}, - {{ {23, 14, 14}, 0, {-16, -16}, {55, 66, 94, 0} }}, - {{ {27, 15, -1}, 0, {-16, -16}, {110, 60, 237, 0} }}, - {{ {26, 6, -8}, 0, {-16, -16}, {111, 3, 195, 0} }}, - {{ {22, 6, -13}, 0, {-16, -16}, {51, 2, 140, 0} }}, - {{ {22, 20, -2}, 0, {-16, -16}, {50, 112, 223, 0} }}, - {{ {27, 15, -1}, 0, {-16, -16}, {110, 60, 237, 0} }}, - {{ {22, 6, -13}, 0, {-16, -16}, {51, 2, 140, 0} }}, - {{ {-2, 6, -16}, 0, {-16, -16}, {217, 3, 135, 0} }}, - {{ {-2, -11, -3}, 0, {-16, -16}, {220, 140, 218, 0} }}, - {{ {22, -8, -2}, 0, {-16, -16}, {50, 145, 220, 0} }}, - {{ {27, -4, -1}, 0, {-16, -16}, {110, 196, 235, 0} }}, - {{ {-1, -5, 17}, 0, {-16, -16}, {224, 183, 99, 0} }}, - {{ {-8, -1, 12}, 0, {-16, -16}, {147, 220, 54, 0} }}, - {{ {-8, 12, 12}, 0, {-16, -16}, {147, 35, 55, 0} }}, - {{ {-1, 16, 17}, 0, {-16, -16}, {225, 70, 102, 0} }}, - {{ {-9, 16, 0}, 0, {-16, -16}, {144, 59, 244, 0} }}, - {{ {-2, 23, -3}, 0, {-16, -16}, {221, 117, 222, 0} }}, - {{ {23, 14, 14}, 0, {-16, -16}, {55, 66, 94, 0} }}, - {{ {-9, 6, -8}, 0, {-16, -16}, {143, 2, 197, 0} }}, - {{ {-9, -5, -1}, 0, {-16, -16}, {145, 196, 241, 0} }}, -}; - -Gfx arm_Switch_Option_Upper_Arm_Vanish_mesh_layer_5_tri_0[] = { - gsSPVertex(arm_Switch_Option_Upper_Arm_Vanish_mesh_layer_5_vtx_0 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 0, 2, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(8, 6, 5, 0), - gsSP1Triangle(9, 8, 5, 0), - gsSP1Triangle(9, 5, 10, 0), - gsSP1Triangle(5, 11, 10, 0), - gsSP1Triangle(5, 12, 11, 0), - gsSP1Triangle(5, 7, 12, 0), - gsSP1Triangle(12, 7, 13, 0), - gsSP1Triangle(13, 7, 14, 0), - gsSP1Triangle(7, 8, 14, 0), - gsSP1Triangle(7, 6, 8, 0), - gsSP1Triangle(15, 14, 8, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(arm_Switch_Option_Upper_Arm_Vanish_mesh_layer_5_vtx_0 + 16, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(2, 5, 4, 0), - gsSP1Triangle(2, 6, 5, 0), - gsSP1Triangle(5, 7, 4, 0), - gsSP1Triangle(7, 8, 4, 0), - gsSP1Triangle(9, 8, 7, 0), - gsSP1Triangle(10, 9, 7, 0), - gsSP1Triangle(11, 9, 10, 0), - gsSP1Triangle(12, 11, 10, 0), - gsSP1Triangle(13, 12, 10, 0), - gsSP1Triangle(13, 0, 12, 0), - gsSP1Triangle(13, 1, 0, 0), - gsSP1Triangle(0, 3, 12, 0), - gsSP1Triangle(3, 14, 12, 0), - gsSP1Triangle(15, 14, 3, 0), - gsSP1Triangle(4, 15, 3, 0), - gsSP1Triangle(8, 15, 4, 0), - gsSP1Triangle(15, 8, 9, 0), - gsSP1Triangle(15, 9, 11, 0), - gsSP1Triangle(11, 14, 15, 0), - gsSP1Triangle(14, 11, 12, 0), - gsSPEndDisplayList(), -}; - -Vtx arm_Switch_Option_Arm_Vanish_mesh_layer_5_vtx_0[36] = { - {{ {27, -9, 18}, 0, {-16, -16}, {71, 171, 63, 0} }}, - {{ {29, -10, -15}, 0, {-16, -16}, {74, 167, 204, 0} }}, - {{ {35, -7, -11}, 0, {-16, -16}, {249, 146, 193, 0} }}, - {{ {36, 9, -19}, 0, {-16, -16}, {20, 40, 137, 0} }}, - {{ {30, 10, -25}, 0, {-16, -16}, {94, 18, 172, 0} }}, - {{ {30, 25, 1}, 0, {-16, -16}, {81, 98, 1, 0} }}, - {{ {35, 20, 1}, 0, {-16, -16}, {10, 126, 249, 0} }}, - {{ {35, 11, 22}, 0, {-16, -16}, {3, 48, 118, 0} }}, - {{ {28, 12, 27}, 0, {-16, -16}, {83, 25, 93, 0} }}, - {{ {33, -7, 15}, 0, {-16, -16}, {12, 148, 66, 0} }}, - {{ {43, -13, 2}, 0, {-16, -16}, {194, 147, 20, 0} }}, - {{ {57, -22, -22}, 0, {-16, -16}, {254, 156, 178, 0} }}, - {{ {46, 11, -25}, 0, {-16, -16}, {222, 47, 143, 0} }}, - {{ {46, 27, 1}, 0, {-16, -16}, {228, 124, 251, 0} }}, - {{ {43, 12, 28}, 0, {-16, -16}, {212, 49, 109, 0} }}, - {{ {52, -5, 27}, 0, {-16, -16}, {242, 184, 104, 0} }}, - {{ {52, -5, 27}, 0, {-16, -16}, {242, 184, 104, 0} }}, - {{ {43, -13, 2}, 0, {-16, -16}, {194, 147, 20, 0} }}, - {{ {56, -21, 0}, 0, {-16, -16}, {253, 132, 28, 0} }}, - {{ {57, -22, -22}, 0, {-16, -16}, {254, 156, 178, 0} }}, - {{ {70, -15, -15}, 0, {-16, -16}, {96, 182, 216, 0} }}, - {{ {70, 9, -25}, 0, {-16, -16}, {71, 38, 158, 0} }}, - {{ {46, 11, -25}, 0, {-16, -16}, {222, 47, 143, 0} }}, - {{ {46, 27, 1}, 0, {-16, -16}, {228, 124, 251, 0} }}, - {{ {71, 26, 2}, 0, {-16, -16}, {73, 104, 255, 0} }}, - {{ {68, 11, 30}, 0, {-16, -16}, {64, 32, 105, 0} }}, - {{ {43, 12, 28}, 0, {-16, -16}, {212, 49, 109, 0} }}, - {{ {62, -10, 19}, 0, {-16, -16}, {48, 164, 73, 0} }}, - {{ {69, -15, -3}, 0, {-16, -16}, {82, 161, 22, 0} }}, - {{ {78, -1, 5}, 0, {-16, -16}, {123, 230, 21, 0} }}, - {{ {30, 25, 1}, 0, {-16, -16}, {145, 61, 251, 0} }}, - {{ {20, 6, 1}, 0, {-16, -16}, {129, 8, 252, 0} }}, - {{ {28, 12, 27}, 0, {-16, -16}, {135, 20, 33, 0} }}, - {{ {30, 10, -25}, 0, {-16, -16}, {138, 16, 213, 0} }}, - {{ {29, -10, -15}, 0, {-16, -16}, {137, 223, 226, 0} }}, - {{ {27, -9, 18}, 0, {-16, -16}, {135, 226, 23, 0} }}, -}; - -Gfx arm_Switch_Option_Arm_Vanish_mesh_layer_5_tri_0[] = { - gsSPVertex(arm_Switch_Option_Arm_Vanish_mesh_layer_5_vtx_0 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(5, 6, 3, 0), - gsSP1Triangle(7, 6, 5, 0), - gsSP1Triangle(5, 8, 7, 0), - gsSP1Triangle(7, 8, 0, 0), - gsSP1Triangle(0, 9, 7, 0), - gsSP1Triangle(2, 9, 0, 0), - gsSP1Triangle(10, 9, 2, 0), - gsSP1Triangle(11, 10, 2, 0), - gsSP1Triangle(12, 11, 2, 0), - gsSP1Triangle(2, 3, 12, 0), - gsSP1Triangle(13, 12, 3, 0), - gsSP1Triangle(3, 6, 13, 0), - gsSP1Triangle(13, 6, 7, 0), - gsSP1Triangle(14, 13, 7, 0), - gsSP1Triangle(14, 7, 9, 0), - gsSP1Triangle(15, 14, 9, 0), - gsSP1Triangle(9, 10, 15, 0), - gsSPVertex(arm_Switch_Option_Arm_Vanish_mesh_layer_5_vtx_0 + 16, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(3, 4, 2, 0), - gsSP1Triangle(5, 4, 3, 0), - gsSP1Triangle(6, 5, 3, 0), - gsSP1Triangle(7, 5, 6, 0), - gsSP1Triangle(7, 8, 5, 0), - gsSP1Triangle(9, 8, 7, 0), - gsSP1Triangle(10, 9, 7, 0), - gsSP1Triangle(9, 10, 0, 0), - gsSP1Triangle(0, 11, 9, 0), - gsSP1Triangle(11, 0, 2, 0), - gsSP1Triangle(12, 11, 2, 0), - gsSP1Triangle(4, 12, 2, 0), - gsSP1Triangle(4, 13, 12, 0), - gsSP1Triangle(5, 13, 4, 0), - gsSP1Triangle(8, 13, 5, 0), - gsSP1Triangle(9, 13, 8, 0), - gsSP1Triangle(11, 13, 9, 0), - gsSP1Triangle(13, 11, 12, 0), - gsSPVertex(arm_Switch_Option_Arm_Vanish_mesh_layer_5_vtx_0 + 30, 6, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 1, 0, 0), - gsSP1Triangle(4, 1, 3, 0), - gsSP1Triangle(5, 1, 4, 0), - gsSP1Triangle(2, 1, 5, 0), - gsSPEndDisplayList(), -}; - -Vtx arm_Switch_Option_Arm_Vanish_mesh_layer_5_vtx_1[16] = { - {{ {-6, -4, -1}, 0, {-16, -16}, {170, 166, 230, 0} }}, - {{ {-6, 6, -8}, 0, {-16, -16}, {166, 6, 166, 0} }}, - {{ {0, 6, -13}, 0, {-16, -16}, {217, 2, 135, 0} }}, - {{ {0, 20, -3}, 0, {-16, -16}, {221, 117, 222, 0} }}, - {{ {-6, 15, -1}, 0, {-16, -16}, {173, 93, 231, 0} }}, - {{ {1, 14, 14}, 0, {-16, -16}, {225, 69, 102, 0} }}, - {{ {-5, 12, 10}, 0, {-16, -16}, {177, 57, 81, 0} }}, - {{ {1, -3, 14}, 0, {-16, -16}, {223, 183, 99, 0} }}, - {{ {-5, 0, 10}, 0, {-16, -16}, {172, 199, 77, 0} }}, - {{ {0, -9, -3}, 0, {-16, -16}, {220, 140, 219, 0} }}, - {{ {23, 6, -12}, 0, {-16, -16}, {61, 1, 144, 0} }}, - {{ {23, 18, -3}, 0, {-16, -16}, {64, 105, 224, 0} }}, - {{ {24, 13, 12}, 0, {-16, -16}, {67, 62, 89, 0} }}, - {{ {24, -2, 11}, 0, {-16, -16}, {68, 191, 86, 0} }}, - {{ {23, -7, -3}, 0, {-16, -16}, {65, 152, 222, 0} }}, - {{ {29, 6, 1}, 0, {-16, -16}, {127, 1, 253, 0} }}, -}; - -Gfx arm_Switch_Option_Arm_Vanish_mesh_layer_5_tri_1[] = { - gsSPVertex(arm_Switch_Option_Arm_Vanish_mesh_layer_5_vtx_1 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 1, 3, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(4, 6, 5, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(6, 8, 7, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(8, 0, 9, 0), - gsSP1Triangle(9, 0, 2, 0), - gsSP1Triangle(10, 9, 2, 0), - gsSP1Triangle(11, 10, 2, 0), - gsSP1Triangle(11, 2, 3, 0), - gsSP1Triangle(12, 11, 3, 0), - gsSP1Triangle(12, 3, 5, 0), - gsSP1Triangle(13, 12, 5, 0), - gsSP1Triangle(13, 5, 7, 0), - gsSP1Triangle(14, 13, 7, 0), - gsSP1Triangle(14, 7, 9, 0), - gsSP1Triangle(10, 14, 9, 0), - gsSP1Triangle(10, 15, 14, 0), - gsSP1Triangle(11, 15, 10, 0), - gsSP1Triangle(12, 15, 11, 0), - gsSP1Triangle(13, 15, 12, 0), - gsSP1Triangle(14, 15, 13, 0), - gsSPEndDisplayList(), -}; - -Vtx arm_Switch_Option_Upper_Arm_Vanish_Metal_mesh_layer_5_vtx_0[32] = { - {{ {19, 6, -8}, 0, {-260, -529}, {129, 0, 3, 0} }}, - {{ {19, -4, -1}, 0, {-260, -529}, {129, 3, 4, 0} }}, - {{ {20, 0, 10}, 0, {-260, -529}, {129, 0, 4, 0} }}, - {{ {19, 15, -1}, 0, {-260, -529}, {129, 255, 3, 0} }}, - {{ {20, 12, 10}, 0, {-260, -529}, {129, 0, 5, 0} }}, - {{ {23, -3, 13}, 0, {-260, -529}, {54, 187, 92, 0} }}, - {{ {27, 0, 10}, 0, {-260, -529}, {111, 221, 51, 0} }}, - {{ {27, 12, 10}, 0, {-260, -529}, {112, 35, 50, 0} }}, - {{ {27, -4, -1}, 0, {-260, -529}, {110, 196, 235, 0} }}, - {{ {22, -8, -2}, 0, {-260, -529}, {50, 145, 220, 0} }}, - {{ {-1, -5, 17}, 0, {-260, -529}, {224, 183, 99, 0} }}, - {{ {-1, 16, 17}, 0, {-260, -529}, {225, 70, 102, 0} }}, - {{ {23, 14, 14}, 0, {-260, -529}, {55, 66, 94, 0} }}, - {{ {27, 15, -1}, 0, {-260, -529}, {110, 60, 237, 0} }}, - {{ {26, 6, -8}, 0, {-260, -529}, {111, 3, 195, 0} }}, - {{ {22, 6, -13}, 0, {-260, -529}, {51, 2, 140, 0} }}, - {{ {22, 20, -2}, 0, {-260, -529}, {50, 112, 223, 0} }}, - {{ {27, 15, -1}, 0, {-260, -529}, {110, 60, 237, 0} }}, - {{ {22, 6, -13}, 0, {-260, -529}, {51, 2, 140, 0} }}, - {{ {-2, 6, -16}, 0, {-260, -529}, {217, 3, 135, 0} }}, - {{ {-2, -11, -3}, 0, {-260, -529}, {220, 140, 218, 0} }}, - {{ {22, -8, -2}, 0, {-260, -529}, {50, 145, 220, 0} }}, - {{ {27, -4, -1}, 0, {-260, -529}, {110, 196, 235, 0} }}, - {{ {-1, -5, 17}, 0, {-260, -529}, {224, 183, 99, 0} }}, - {{ {-8, -1, 12}, 0, {-260, -529}, {147, 220, 54, 0} }}, - {{ {-8, 12, 12}, 0, {-260, -529}, {147, 35, 55, 0} }}, - {{ {-1, 16, 17}, 0, {-260, -529}, {225, 70, 102, 0} }}, - {{ {-9, 16, 0}, 0, {-260, -529}, {144, 59, 244, 0} }}, - {{ {-2, 23, -3}, 0, {-260, -529}, {221, 117, 222, 0} }}, - {{ {23, 14, 14}, 0, {-260, -529}, {55, 66, 94, 0} }}, - {{ {-9, 6, -8}, 0, {-260, -529}, {143, 2, 197, 0} }}, - {{ {-9, -5, -1}, 0, {-260, -529}, {145, 196, 241, 0} }}, -}; - -Gfx arm_Switch_Option_Upper_Arm_Vanish_Metal_mesh_layer_5_tri_0[] = { - gsSPVertex(arm_Switch_Option_Upper_Arm_Vanish_Metal_mesh_layer_5_vtx_0 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 0, 2, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(8, 6, 5, 0), - gsSP1Triangle(9, 8, 5, 0), - gsSP1Triangle(9, 5, 10, 0), - gsSP1Triangle(5, 11, 10, 0), - gsSP1Triangle(5, 12, 11, 0), - gsSP1Triangle(5, 7, 12, 0), - gsSP1Triangle(12, 7, 13, 0), - gsSP1Triangle(13, 7, 14, 0), - gsSP1Triangle(7, 8, 14, 0), - gsSP1Triangle(7, 6, 8, 0), - gsSP1Triangle(15, 14, 8, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(arm_Switch_Option_Upper_Arm_Vanish_Metal_mesh_layer_5_vtx_0 + 16, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(2, 5, 4, 0), - gsSP1Triangle(2, 6, 5, 0), - gsSP1Triangle(5, 7, 4, 0), - gsSP1Triangle(7, 8, 4, 0), - gsSP1Triangle(9, 8, 7, 0), - gsSP1Triangle(10, 9, 7, 0), - gsSP1Triangle(11, 9, 10, 0), - gsSP1Triangle(12, 11, 10, 0), - gsSP1Triangle(13, 12, 10, 0), - gsSP1Triangle(13, 0, 12, 0), - gsSP1Triangle(13, 1, 0, 0), - gsSP1Triangle(0, 3, 12, 0), - gsSP1Triangle(3, 14, 12, 0), - gsSP1Triangle(15, 14, 3, 0), - gsSP1Triangle(4, 15, 3, 0), - gsSP1Triangle(8, 15, 4, 0), - gsSP1Triangle(15, 8, 9, 0), - gsSP1Triangle(15, 9, 11, 0), - gsSP1Triangle(11, 14, 15, 0), - gsSP1Triangle(14, 11, 12, 0), - gsSPEndDisplayList(), -}; - -Vtx arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5_vtx_0[52] = { - {{ {27, -9, 18}, 0, {-260, -529}, {71, 171, 63, 0} }}, - {{ {29, -10, -15}, 0, {-260, -529}, {74, 167, 204, 0} }}, - {{ {35, -7, -11}, 0, {-260, -529}, {249, 146, 193, 0} }}, - {{ {36, 9, -19}, 0, {-260, -529}, {20, 40, 137, 0} }}, - {{ {30, 10, -25}, 0, {-260, -529}, {94, 18, 172, 0} }}, - {{ {30, 25, 1}, 0, {-260, -529}, {81, 98, 1, 0} }}, - {{ {35, 20, 1}, 0, {-260, -529}, {10, 126, 249, 0} }}, - {{ {35, 11, 22}, 0, {-260, -529}, {3, 48, 118, 0} }}, - {{ {28, 12, 27}, 0, {-260, -529}, {83, 25, 93, 0} }}, - {{ {33, -7, 15}, 0, {-260, -529}, {12, 148, 66, 0} }}, - {{ {43, -13, 2}, 0, {-260, -529}, {194, 147, 20, 0} }}, - {{ {57, -22, -22}, 0, {-260, -529}, {254, 156, 178, 0} }}, - {{ {46, 11, -25}, 0, {-260, -529}, {222, 47, 143, 0} }}, - {{ {46, 27, 1}, 0, {-260, -529}, {228, 124, 251, 0} }}, - {{ {43, 12, 28}, 0, {-260, -529}, {212, 49, 109, 0} }}, - {{ {52, -5, 27}, 0, {-260, -529}, {242, 184, 104, 0} }}, - {{ {52, -5, 27}, 0, {-260, -529}, {242, 184, 104, 0} }}, - {{ {43, -13, 2}, 0, {-260, -529}, {194, 147, 20, 0} }}, - {{ {56, -21, 0}, 0, {-260, -529}, {253, 132, 28, 0} }}, - {{ {57, -22, -22}, 0, {-260, -529}, {254, 156, 178, 0} }}, - {{ {70, -15, -15}, 0, {-260, -529}, {96, 182, 216, 0} }}, - {{ {70, 9, -25}, 0, {-260, -529}, {71, 38, 158, 0} }}, - {{ {46, 11, -25}, 0, {-260, -529}, {222, 47, 143, 0} }}, - {{ {46, 27, 1}, 0, {-260, -529}, {228, 124, 251, 0} }}, - {{ {71, 26, 2}, 0, {-260, -529}, {73, 104, 255, 0} }}, - {{ {68, 11, 30}, 0, {-260, -529}, {64, 32, 105, 0} }}, - {{ {43, 12, 28}, 0, {-260, -529}, {212, 49, 109, 0} }}, - {{ {62, -10, 19}, 0, {-260, -529}, {48, 164, 73, 0} }}, - {{ {69, -15, -3}, 0, {-260, -529}, {82, 161, 22, 0} }}, - {{ {78, -1, 5}, 0, {-260, -529}, {123, 230, 21, 0} }}, - {{ {-6, -4, -1}, 0, {-260, -529}, {170, 166, 230, 0} }}, - {{ {-6, 6, -8}, 0, {-260, -529}, {166, 6, 166, 0} }}, - {{ {0, 6, -13}, 0, {-260, -529}, {217, 2, 135, 0} }}, - {{ {0, 20, -3}, 0, {-260, -529}, {221, 117, 222, 0} }}, - {{ {-6, 15, -1}, 0, {-260, -529}, {173, 93, 231, 0} }}, - {{ {1, 14, 14}, 0, {-260, -529}, {225, 69, 102, 0} }}, - {{ {-5, 12, 10}, 0, {-260, -529}, {177, 57, 81, 0} }}, - {{ {1, -3, 14}, 0, {-260, -529}, {223, 183, 99, 0} }}, - {{ {-5, 0, 10}, 0, {-260, -529}, {172, 199, 77, 0} }}, - {{ {0, -9, -3}, 0, {-260, -529}, {220, 140, 219, 0} }}, - {{ {23, 6, -12}, 0, {-260, -529}, {61, 1, 144, 0} }}, - {{ {23, 18, -3}, 0, {-260, -529}, {64, 105, 224, 0} }}, - {{ {24, 13, 12}, 0, {-260, -529}, {67, 62, 89, 0} }}, - {{ {24, -2, 11}, 0, {-260, -529}, {68, 191, 86, 0} }}, - {{ {23, -7, -3}, 0, {-260, -529}, {65, 152, 222, 0} }}, - {{ {29, 6, 1}, 0, {-260, -529}, {127, 1, 253, 0} }}, - {{ {30, 25, 1}, 0, {-260, -529}, {145, 61, 251, 0} }}, - {{ {20, 6, 1}, 0, {-260, -529}, {129, 8, 252, 0} }}, - {{ {28, 12, 27}, 0, {-260, -529}, {135, 20, 33, 0} }}, - {{ {30, 10, -25}, 0, {-260, -529}, {138, 16, 213, 0} }}, - {{ {29, -10, -15}, 0, {-260, -529}, {137, 223, 226, 0} }}, - {{ {27, -9, 18}, 0, {-260, -529}, {135, 226, 23, 0} }}, -}; - -Gfx arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5_tri_0[] = { - gsSPVertex(arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5_vtx_0 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(5, 6, 3, 0), - gsSP1Triangle(7, 6, 5, 0), - gsSP1Triangle(5, 8, 7, 0), - gsSP1Triangle(7, 8, 0, 0), - gsSP1Triangle(0, 9, 7, 0), - gsSP1Triangle(2, 9, 0, 0), - gsSP1Triangle(10, 9, 2, 0), - gsSP1Triangle(11, 10, 2, 0), - gsSP1Triangle(12, 11, 2, 0), - gsSP1Triangle(2, 3, 12, 0), - gsSP1Triangle(13, 12, 3, 0), - gsSP1Triangle(3, 6, 13, 0), - gsSP1Triangle(13, 6, 7, 0), - gsSP1Triangle(14, 13, 7, 0), - gsSP1Triangle(14, 7, 9, 0), - gsSP1Triangle(15, 14, 9, 0), - gsSP1Triangle(9, 10, 15, 0), - gsSPVertex(arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5_vtx_0 + 16, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(3, 4, 2, 0), - gsSP1Triangle(5, 4, 3, 0), - gsSP1Triangle(6, 5, 3, 0), - gsSP1Triangle(7, 5, 6, 0), - gsSP1Triangle(7, 8, 5, 0), - gsSP1Triangle(9, 8, 7, 0), - gsSP1Triangle(10, 9, 7, 0), - gsSP1Triangle(9, 10, 0, 0), - gsSP1Triangle(0, 11, 9, 0), - gsSP1Triangle(11, 0, 2, 0), - gsSP1Triangle(12, 11, 2, 0), - gsSP1Triangle(4, 12, 2, 0), - gsSP1Triangle(4, 13, 12, 0), - gsSP1Triangle(5, 13, 4, 0), - gsSP1Triangle(8, 13, 5, 0), - gsSP1Triangle(9, 13, 8, 0), - gsSP1Triangle(11, 13, 9, 0), - gsSP1Triangle(13, 11, 12, 0), - gsSPVertex(arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5_vtx_0 + 30, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 1, 3, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(4, 6, 5, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(6, 8, 7, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(8, 0, 9, 0), - gsSP1Triangle(9, 0, 2, 0), - gsSP1Triangle(10, 9, 2, 0), - gsSP1Triangle(11, 10, 2, 0), - gsSP1Triangle(11, 2, 3, 0), - gsSP1Triangle(12, 11, 3, 0), - gsSP1Triangle(12, 3, 5, 0), - gsSP1Triangle(13, 12, 5, 0), - gsSP1Triangle(13, 5, 7, 0), - gsSP1Triangle(14, 13, 7, 0), - gsSP1Triangle(14, 7, 9, 0), - gsSP1Triangle(10, 14, 9, 0), - gsSP1Triangle(10, 15, 14, 0), - gsSP1Triangle(11, 15, 10, 0), - gsSP1Triangle(12, 15, 11, 0), - gsSP1Triangle(13, 15, 12, 0), - gsSP1Triangle(14, 15, 13, 0), - gsSPVertex(arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5_vtx_0 + 46, 6, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 1, 0, 0), - gsSP1Triangle(4, 1, 3, 0), - gsSP1Triangle(5, 1, 4, 0), - gsSP1Triangle(2, 1, 5, 0), - gsSPEndDisplayList(), -}; - - -Gfx mat_arm_shirt[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPCopyLightsPlayerPart(SHIRT), - gsSPEndDisplayList(), -}; - -Gfx mat_arm_gloves[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPCopyLightsPlayerPart(GLOVES), - gsSPEndDisplayList(), -}; - -Gfx mat_arm_metal[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(TEXEL0, 0, SHADE, TEXEL1, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, TEXEL1, 0, 0, 0, ENVIRONMENT), - gsSPSetGeometryMode(G_TEXTURE_GEN), - gsSPTexture(4032, 1984, 0, 0, 1), - gsSPLight(&mario_black_lights_group.l, 1), - gsSPCopyLightEXT(2, 15), - gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 1, arm_custom_mario_metal_shade_rgba16_rgba16), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(7, 0, 0, 2047, 128), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 6, 0), - gsDPSetTileSize(0, 0, 0, 252, 124), - gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 1, arm_custom_mario_metal_light_rgba16_rgba16), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 0, 512, 6, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(6, 0, 0, 2047, 128), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 512, 1, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 6, 0), - gsDPSetTileSize(1, 0, 0, 252, 124), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_arm_metal[] = { - gsDPPipeSync(), - gsSPClearGeometryMode(G_TEXTURE_GEN), - gsSPEndDisplayList(), -}; - -Gfx mat_arm_shirt2[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsDPSetAlphaCompare(G_AC_DITHER), - gsSPTexture(65535, 65535, 0, 0, 1), - gsDPSetEnvColor(255, 255, 255, 127), - gsSPCopyLightsPlayerPart(SHIRT), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_arm_shirt2[] = { - gsDPPipeSync(), - gsDPSetAlphaCompare(G_AC_NONE), - gsSPEndDisplayList(), -}; - -Gfx mat_arm_gloves2[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsDPSetAlphaCompare(G_AC_DITHER), - gsSPTexture(65535, 65535, 0, 0, 1), - gsDPSetEnvColor(255, 255, 255, 127), - gsSPCopyLightsPlayerPart(GLOVES), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_arm_gloves2[] = { - gsDPPipeSync(), - gsDPSetAlphaCompare(G_AC_NONE), - gsSPEndDisplayList(), -}; - -Gfx mat_arm_metal2[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(TEXEL0, 0, SHADE, TEXEL1, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, TEXEL1, 0, 0, 0, ENVIRONMENT), - gsSPSetGeometryMode(G_TEXTURE_GEN), - gsDPSetAlphaCompare(G_AC_DITHER), - gsSPTexture(4032, 1984, 0, 0, 1), - gsDPSetEnvColor(255, 255, 255, 127), - gsSPLight(&mario_black_lights_group.l, 1), - gsSPCopyLightEXT(2, 15), - gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 1, arm_custom_mario_metal_shade_rgba16_rgba16), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(7, 0, 0, 2047, 128), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 6, 0), - gsDPSetTileSize(0, 0, 0, 252, 124), - gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 1, arm_custom_mario_metal_light_rgba16_rgba16), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 0, 512, 6, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(6, 0, 0, 2047, 128), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 512, 1, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 6, 0), - gsDPSetTileSize(1, 0, 0, 252, 124), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_arm_metal2[] = { - gsDPPipeSync(), - gsSPClearGeometryMode(G_TEXTURE_GEN), - gsDPSetAlphaCompare(G_AC_NONE), - gsSPEndDisplayList(), -}; - -Gfx arm_Upper_Arm_mesh_layer_1[] = { - gsSPDisplayList(mat_arm_shirt), - gsSPDisplayList(arm_Upper_Arm_mesh_layer_1_tri_0), - gsSPEndDisplayList(), -}; - -Gfx arm_Arm_mesh_layer_1[] = { - gsSPDisplayList(mat_arm_gloves), - gsSPDisplayList(arm_Arm_mesh_layer_1_tri_0), - gsSPDisplayList(mat_arm_shirt), - gsSPDisplayList(arm_Arm_mesh_layer_1_tri_1), - gsSPEndDisplayList(), -}; - -Gfx arm_Switch_Option_Upper_Arm_Metal_mesh_layer_1[] = { - gsSPDisplayList(mat_arm_metal), - gsSPDisplayList(arm_Switch_Option_Upper_Arm_Metal_mesh_layer_1_tri_0), - gsSPDisplayList(mat_revert_arm_metal), - gsSPEndDisplayList(), -}; - -Gfx arm_Switch_Option_Arm_Metal_mesh_layer_1[] = { - gsSPDisplayList(mat_arm_metal), - gsSPDisplayList(arm_Switch_Option_Arm_Metal_mesh_layer_1_tri_0), - gsSPDisplayList(mat_revert_arm_metal), - gsSPEndDisplayList(), -}; - -Gfx arm_Switch_Option_Upper_Arm_Vanish_mesh_layer_5[] = { - gsSPDisplayList(mat_arm_shirt2), - gsSPDisplayList(arm_Switch_Option_Upper_Arm_Vanish_mesh_layer_5_tri_0), - gsSPDisplayList(mat_revert_arm_shirt2), - gsSPEndDisplayList(), -}; - -Gfx arm_Switch_Option_Arm_Vanish_mesh_layer_5[] = { - gsSPDisplayList(mat_arm_gloves2), - gsSPDisplayList(arm_Switch_Option_Arm_Vanish_mesh_layer_5_tri_0), - gsSPDisplayList(mat_revert_arm_gloves2), - gsSPDisplayList(mat_arm_shirt2), - gsSPDisplayList(arm_Switch_Option_Arm_Vanish_mesh_layer_5_tri_1), - gsSPDisplayList(mat_revert_arm_shirt2), - gsSPEndDisplayList(), -}; - -Gfx arm_Switch_Option_Upper_Arm_Vanish_Metal_mesh_layer_5[] = { - gsSPDisplayList(mat_arm_metal2), - gsSPDisplayList(arm_Switch_Option_Upper_Arm_Vanish_Metal_mesh_layer_5_tri_0), - gsSPDisplayList(mat_revert_arm_metal2), - gsSPEndDisplayList(), -}; - -Gfx arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5[] = { - gsSPDisplayList(mat_arm_metal2), - gsSPDisplayList(arm_Switch_Option_Arm_Vanish_Metal_mesh_layer_5_tri_0), - gsSPDisplayList(mat_revert_arm_metal2), - gsSPEndDisplayList(), -}; - -Gfx arm_material_revert_render_settings[] = { - gsDPPipeSync(), - gsSPSetGeometryMode(G_LIGHTING), - gsSPClearGeometryMode(G_TEXTURE_GEN), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 0), - gsDPSetEnvColor(255, 255, 255, 255), - gsDPSetAlphaCompare(G_AC_NONE), - - gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 1, 0), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(7, 0, 0, 1023, 256), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, 0, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, 0), - gsDPSetTileSize(0, 0, 0, 124, 124), - - gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 1, 0), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 0, 256, 6, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(6, 0, 0, 1023, 256), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 256, 1, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, 0), - gsDPSetTileSize(1, 0, 0, 124, 124), - - gsSPEndDisplayList(), -}; - diff --git a/mods/gun-mod/actors/arrow/geo.inc.c b/mods/gun-mod/actors/arrow/geo.inc.c deleted file mode 100644 index a4cb1d55..00000000 --- a/mods/gun-mod/actors/arrow/geo.inc.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "src/game/envfx_snow.h" - -const GeoLayout arrow_geo[] = { - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_BILLBOARD_WITH_PARAMS_AND_DL(LAYER_OPAQUE, 0, 0, 0, arrow_triangle_mesh_layer_1), - GEO_DISPLAY_LIST(LAYER_OPAQUE, arrow_material_revert_render_settings), - GEO_CLOSE_NODE(), - GEO_END(), -}; diff --git a/mods/gun-mod/actors/arrow/geo_header.h b/mods/gun-mod/actors/arrow/geo_header.h deleted file mode 100644 index 48852216..00000000 --- a/mods/gun-mod/actors/arrow/geo_header.h +++ /dev/null @@ -1,7 +0,0 @@ -extern const GeoLayout arrow_geo[]; -extern Vtx arrow_triangle_mesh_layer_1_vtx_0[3]; -extern Gfx arrow_triangle_mesh_layer_1_tri_0[]; -extern Gfx mat_arrow_white[]; -extern Gfx mat_revert_arrow_white[]; -extern Gfx arrow_triangle_mesh_layer_1[]; -extern Gfx arrow_material_revert_render_settings[]; diff --git a/mods/gun-mod/actors/arrow/model.inc.c b/mods/gun-mod/actors/arrow/model.inc.c deleted file mode 100644 index 300603ba..00000000 --- a/mods/gun-mod/actors/arrow/model.inc.c +++ /dev/null @@ -1,45 +0,0 @@ -Vtx arrow_triangle_mesh_layer_1_vtx_0[3] = { - {{ {-40, 58, 0}, 0, {-16, 1008}, {0, 0, 129, 255} }}, - {{ {40, 58, 0}, 0, {1008, 1008}, {0, 0, 129, 255} }}, - {{ {0, 0, 0}, 0, {-16, -16}, {0, 0, 129, 255} }}, -}; - -Gfx arrow_triangle_mesh_layer_1_tri_0[] = { - gsSPVertex(arrow_triangle_mesh_layer_1_vtx_0 + 0, 3, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSPEndDisplayList(), -}; - - -Gfx mat_arrow_white[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0), - gsSPClearGeometryMode(G_CULL_BACK), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_arrow_white[] = { - gsDPPipeSync(), - gsSPSetGeometryMode(G_CULL_BACK), - gsSPEndDisplayList(), -}; - -Gfx arrow_triangle_mesh_layer_1[] = { - gsSPDisplayList(mat_arrow_white), - gsSPDisplayList(arrow_triangle_mesh_layer_1_tri_0), - gsSPDisplayList(mat_revert_arrow_white), - gsSPEndDisplayList(), -}; - -Gfx arrow_material_revert_render_settings[] = { - gsDPPipeSync(), - gsSPSetGeometryMode(G_LIGHTING), - gsSPClearGeometryMode(G_TEXTURE_GEN), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 0), - gsDPSetEnvColor(255, 255, 255, 255), - gsDPSetAlphaCompare(G_AC_NONE), - gsSPEndDisplayList(), -}; - diff --git a/mods/gun-mod/actors/bullet_hole/bullet_hole.ia8.png b/mods/gun-mod/actors/bullet_hole/bullet_hole.ia8.png deleted file mode 100644 index d117341a..00000000 Binary files a/mods/gun-mod/actors/bullet_hole/bullet_hole.ia8.png and /dev/null differ diff --git a/mods/gun-mod/actors/bullet_hole/geo.inc.c b/mods/gun-mod/actors/bullet_hole/geo.inc.c deleted file mode 100644 index 611ff143..00000000 --- a/mods/gun-mod/actors/bullet_hole/geo.inc.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "src/game/envfx_snow.h" - -const GeoLayout bullet_hole_geo[] = { - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_DISPLAY_LIST(LAYER_ALPHA, bullet_hole_bullet_hole_mesh_layer_4), - GEO_DISPLAY_LIST(LAYER_ALPHA, bullet_hole_material_revert_render_settings), - GEO_CLOSE_NODE(), - GEO_END(), -}; diff --git a/mods/gun-mod/actors/bullet_hole/geo_header.h b/mods/gun-mod/actors/bullet_hole/geo_header.h deleted file mode 100644 index c18bb365..00000000 --- a/mods/gun-mod/actors/bullet_hole/geo_header.h +++ /dev/null @@ -1,9 +0,0 @@ -extern const GeoLayout bullet_hole_geo[]; -extern Lights1 bullet_hole_bullet_hole_lights; -extern u8 bullet_hole_bullet_hole_ia8[]; -extern Vtx bullet_hole_bullet_hole_mesh_layer_4_vtx_0[4]; -extern Gfx bullet_hole_bullet_hole_mesh_layer_4_tri_0[]; -extern Gfx mat_bullet_hole_bullet_hole[]; -extern Gfx mat_revert_bullet_hole_bullet_hole[]; -extern Gfx bullet_hole_bullet_hole_mesh_layer_4[]; -extern Gfx bullet_hole_material_revert_render_settings[]; diff --git a/mods/gun-mod/actors/bullet_hole/model.inc.c b/mods/gun-mod/actors/bullet_hole/model.inc.c deleted file mode 100644 index 28c91b14..00000000 --- a/mods/gun-mod/actors/bullet_hole/model.inc.c +++ /dev/null @@ -1,62 +0,0 @@ -Lights1 bullet_hole_bullet_hole_lights = gdSPDefLights1( - 0x7F, 0x7F, 0x7F, - 0xFF, 0xFF, 0xFF, 0x28, 0x28, 0x28); - -Gfx bullet_hole_bullet_hole_ia8_aligner[] = {gsSPEndDisplayList()}; -u8 bullet_hole_bullet_hole_ia8[] = { - #include "actors/bullet_hole/bullet_hole.ia8.inc.c" -}; - -Vtx bullet_hole_bullet_hole_mesh_layer_4_vtx_0[4] = { - {{ {-22, 1, 22}, 0, {-16, 2032}, {0, 127, 0, 255} }}, - {{ {22, 1, 22}, 0, {2032, 2032}, {0, 127, 0, 255} }}, - {{ {22, 1, -22}, 0, {2032, -16}, {0, 127, 0, 255} }}, - {{ {-22, 1, -22}, 0, {-16, -16}, {0, 127, 0, 255} }}, -}; - -Gfx bullet_hole_bullet_hole_mesh_layer_4_tri_0[] = { - gsSPVertex(bullet_hole_bullet_hole_mesh_layer_4_vtx_0 + 0, 4, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSPEndDisplayList(), -}; - - -Gfx mat_bullet_hole_bullet_hole[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0), - gsSPClearGeometryMode(G_CULL_BACK), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPSetLights1(bullet_hole_bullet_hole_lights), - gsDPSetTextureImage(G_IM_FMT_IA, G_IM_SIZ_8b_LOAD_BLOCK, 1, bullet_hole_bullet_hole_ia8), - gsDPSetTile(G_IM_FMT_IA, G_IM_SIZ_8b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(7, 0, 0, 2047, 256), - gsDPSetTile(G_IM_FMT_IA, G_IM_SIZ_8b, 8, 0, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 6, 0, G_TX_WRAP | G_TX_NOMIRROR, 6, 0), - gsDPSetTileSize(0, 0, 0, 252, 252), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_bullet_hole_bullet_hole[] = { - gsDPPipeSync(), - gsSPSetGeometryMode(G_CULL_BACK), - gsSPEndDisplayList(), -}; - -Gfx bullet_hole_bullet_hole_mesh_layer_4[] = { - gsSPDisplayList(mat_bullet_hole_bullet_hole), - gsSPDisplayList(bullet_hole_bullet_hole_mesh_layer_4_tri_0), - gsSPDisplayList(mat_revert_bullet_hole_bullet_hole), - gsSPEndDisplayList(), -}; - -Gfx bullet_hole_material_revert_render_settings[] = { - gsDPPipeSync(), - gsSPSetGeometryMode(G_LIGHTING), - gsSPClearGeometryMode(G_TEXTURE_GEN), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 0), - gsDPSetEnvColor(255, 255, 255, 255), - gsDPSetAlphaCompare(G_AC_NONE), - gsSPEndDisplayList(), -}; - diff --git a/mods/gun-mod/actors/magnum/geo.inc.c b/mods/gun-mod/actors/magnum/geo.inc.c deleted file mode 100644 index 46b6f13e..00000000 --- a/mods/gun-mod/actors/magnum/geo.inc.c +++ /dev/null @@ -1,24 +0,0 @@ -#include "src/game/envfx_snow.h" - -const GeoLayout magnum_geo[] = { - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_SCALE(LAYER_FORCE, 65536), - GEO_OPEN_NODE(), - GEO_ASM(0, geo_mario_set_player_colors), - GEO_ASM(8, geo_mario_set_player_colors), - GEO_SWITCH_CASE(0, geo_switch_anim_state), - GEO_OPEN_NODE(), - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 0, -45, 0, NULL), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 25, 0, 0, magnum_Arm_mesh_layer_1), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_DISPLAY_LIST(LAYER_OPAQUE, magnum_material_revert_render_settings), - GEO_CLOSE_NODE(), - GEO_END(), -}; diff --git a/mods/gun-mod/actors/magnum/geo_header.h b/mods/gun-mod/actors/magnum/geo_header.h deleted file mode 100644 index 336f8887..00000000 --- a/mods/gun-mod/actors/magnum/geo_header.h +++ /dev/null @@ -1,18 +0,0 @@ -extern const GeoLayout magnum_geo[]; -extern Lights1 magnum_darkergray_lights; -extern Lights1 magnum_metal_lights; -extern u8 magnum_noise_i8[]; -extern u8 magnum_plat_rgba16[]; -extern Vtx magnum_Arm_mesh_layer_1_vtx_0[64]; -extern Gfx magnum_Arm_mesh_layer_1_tri_0[]; -extern Vtx magnum_Arm_mesh_layer_1_vtx_1[8]; -extern Gfx magnum_Arm_mesh_layer_1_tri_1[]; -extern Vtx magnum_Arm_mesh_layer_1_vtx_2[533]; -extern Gfx magnum_Arm_mesh_layer_1_tri_2[]; -extern Gfx mat_magnum_darkergray[]; -extern Gfx mat_magnum_black_layer1[]; -extern Gfx mat_revert_magnum_black_layer1[]; -extern Gfx mat_magnum_metal[]; -extern Gfx mat_revert_magnum_metal[]; -extern Gfx magnum_Arm_mesh_layer_1[]; -extern Gfx magnum_material_revert_render_settings[]; diff --git a/mods/gun-mod/actors/magnum/model.inc.c b/mods/gun-mod/actors/magnum/model.inc.c deleted file mode 100644 index 0ac6f47f..00000000 --- a/mods/gun-mod/actors/magnum/model.inc.c +++ /dev/null @@ -1,1166 +0,0 @@ -Lights1 magnum_darkergray_lights = gdSPDefLights1( - 0xF, 0xF, 0xF, - 0x2A, 0x2A, 0x2A, 0x28, 0x28, 0x28); - -Lights1 magnum_metal_lights = gdSPDefLights1( - 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0x28, 0x28, 0x28); - -Gfx magnum_noise_i8_aligner[] = {gsSPEndDisplayList()}; -u8 magnum_noise_i8[] = { - #include "actors/magnum/noise.i8.inc.c" -}; - -Gfx magnum_plat_rgba16_aligner[] = {gsSPEndDisplayList()}; -u8 magnum_plat_rgba16[] = { - #include "actors/magnum/plat.rgba16.inc.c" -}; - -Vtx magnum_Arm_mesh_layer_1_vtx_0[64] = { - {{ {68, 33, 1}, 0, {-1613, 327}, {80, 72, 68, 255} }}, - {{ {68, 20, 1}, 0, {-1613, 1010}, {88, 194, 68, 255} }}, - {{ {67, 20, -6}, 0, {-1212, 1010}, {68, 194, 169, 255} }}, - {{ {67, 33, -6}, 0, {-1212, 327}, {61, 72, 171, 255} }}, - {{ {68, 20, 1}, 0, {763, 1010}, {88, 194, 68, 255} }}, - {{ {68, 33, 1}, 0, {763, 327}, {80, 72, 68, 255} }}, - {{ {62, 33, 1}, 0, {449, 327}, {6, 94, 85, 255} }}, - {{ {62, 19, 2}, 0, {449, 1098}, {52, 192, 96, 255} }}, - {{ {56, 33, 1}, 0, {135, 327}, {230, 93, 82, 255} }}, - {{ {57, 12, 2}, 0, {135, 1473}, {82, 224, 91, 255} }}, - {{ {42, 20, 3}, 0, {-653, 1012}, {196, 64, 92, 255} }}, - {{ {37, 13, 4}, 0, {-950, 1433}, {188, 47, 96, 255} }}, - {{ {32, 3, 4}, 0, {-1224, 1935}, {182, 43, 94, 255} }}, - {{ {55, 3, 2}, 0, {66, 1935}, {92, 14, 87, 255} }}, - {{ {28, -5, 5}, 0, {-1412, 2398}, {174, 44, 87, 255} }}, - {{ {59, -5, 3}, 0, {253, 2398}, {98, 45, 68, 255} }}, - {{ {68, 33, 1}, 0, {-765, -500}, {80, 72, 68, 255} }}, - {{ {67, 33, -6}, 0, {-765, -100}, {61, 72, 171, 255} }}, - {{ {62, 33, -5}, 0, {-451, -148}, {241, 94, 172, 255} }}, - {{ {62, 33, 1}, 0, {-451, -452}, {6, 94, 85, 255} }}, - {{ {56, 33, -4}, 0, {-137, -148}, {211, 93, 182, 255} }}, - {{ {56, 33, 1}, 0, {-137, -452}, {230, 93, 82, 255} }}, - {{ {41, 20, -2}, 0, {651, -148}, {176, 64, 181, 255} }}, - {{ {42, 20, 3}, 0, {651, -452}, {196, 64, 92, 255} }}, - {{ {67, 20, -6}, 0, {763, -100}, {68, 194, 169, 255} }}, - {{ {68, 20, 1}, 0, {763, -500}, {88, 194, 68, 255} }}, - {{ {62, 19, 2}, 0, {449, -500}, {52, 192, 96, 255} }}, - {{ {61, 19, -6}, 0, {449, -100}, {27, 192, 150, 255} }}, - {{ {67, 33, -6}, 0, {-765, 327}, {61, 72, 171, 255} }}, - {{ {67, 20, -6}, 0, {-765, 1010}, {68, 194, 169, 255} }}, - {{ {61, 19, -6}, 0, {-451, 1098}, {27, 192, 150, 255} }}, - {{ {62, 33, -5}, 0, {-451, 327}, {241, 94, 172, 255} }}, - {{ {62, 33, -5}, 0, {-451, 327}, {241, 94, 172, 255} }}, - {{ {61, 19, -6}, 0, {-451, 1098}, {27, 192, 150, 255} }}, - {{ {56, 12, -5}, 0, {-137, 1473}, {57, 224, 147, 255} }}, - {{ {56, 33, -4}, 0, {-137, 327}, {211, 93, 182, 255} }}, - {{ {36, 13, -2}, 0, {948, 1433}, {166, 47, 179, 255} }}, - {{ {54, 3, -4}, 0, {-68, 1935}, {68, 14, 150, 255} }}, - {{ {31, 3, -1}, 0, {1222, 1935}, {162, 43, 183, 255} }}, - {{ {58, -5, -6}, 0, {-255, 2398}, {78, 45, 167, 255} }}, - {{ {28, -5, -1}, 0, {1410, 2398}, {156, 44, 191, 255} }}, - {{ {41, 20, -2}, 0, {651, 1012}, {176, 64, 181, 255} }}, - {{ {32, 3, 4}, 0, {1545, 1935}, {182, 43, 94, 255} }}, - {{ {28, -5, -1}, 0, {1237, 2398}, {156, 44, 191, 255} }}, - {{ {28, -5, 5}, 0, {1584, 2398}, {174, 44, 87, 255} }}, - {{ {31, 3, -1}, 0, {1276, 1935}, {162, 43, 183, 255} }}, - {{ {37, 13, 4}, 0, {1562, 1433}, {188, 47, 96, 255} }}, - {{ {36, 13, -2}, 0, {1259, 1433}, {166, 47, 179, 255} }}, - {{ {42, 20, 3}, 0, {1562, 1012}, {196, 64, 92, 255} }}, - {{ {36, 13, -2}, 0, {1259, 1433}, {166, 47, 179, 255} }}, - {{ {37, 13, 4}, 0, {1562, 1433}, {188, 47, 96, 255} }}, - {{ {41, 20, -2}, 0, {1259, 1012}, {176, 64, 181, 255} }}, - {{ {58, -5, -6}, 0, {253, -71}, {0, 129, 0, 255} }}, - {{ {59, -5, 3}, 0, {253, -529}, {0, 129, 0, 255} }}, - {{ {28, -5, 5}, 0, {-1412, -473}, {0, 129, 0, 255} }}, - {{ {28, -5, -1}, 0, {-1412, -126}, {0, 129, 0, 255} }}, - {{ {54, 3, -4}, 0, {-1235, 1935}, {68, 14, 150, 255} }}, - {{ {59, -5, 3}, 0, {-1641, 2398}, {98, 45, 68, 255} }}, - {{ {58, -5, -6}, 0, {-1183, 2398}, {78, 45, 167, 255} }}, - {{ {55, 3, 2}, 0, {-1590, 1935}, {92, 14, 87, 255} }}, - {{ {56, 12, -5}, 0, {-1212, 1473}, {57, 224, 147, 255} }}, - {{ {57, 12, 2}, 0, {-1613, 1473}, {82, 224, 91, 255} }}, - {{ {61, 19, -6}, 0, {-1212, 1098}, {27, 192, 150, 255} }}, - {{ {62, 19, 2}, 0, {-1613, 1098}, {52, 192, 96, 255} }}, -}; - -Gfx magnum_Arm_mesh_layer_1_tri_0[] = { - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_0 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(7, 6, 8, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(9, 8, 10, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(9, 11, 12, 0), - gsSP1Triangle(9, 12, 13, 0), - gsSP1Triangle(13, 12, 14, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_0 + 16, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(5, 4, 6, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_0 + 32, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(4, 2, 5, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(6, 5, 7, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(3, 4, 9, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 13, 11, 0), - gsSP1Triangle(14, 13, 10, 0), - gsSP1Triangle(14, 15, 13, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_0 + 48, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 11, 9, 0), - gsSP1Triangle(12, 11, 8, 0), - gsSP1Triangle(12, 13, 11, 0), - gsSP1Triangle(14, 13, 12, 0), - gsSP1Triangle(14, 15, 13, 0), - gsSPEndDisplayList(), -}; - -Vtx magnum_Arm_mesh_layer_1_vtx_1[8] = { - {{ {169, 47, -12}, 0, {-678, 373}, {126, 0, 241, 255} }}, - {{ {169, 45, -13}, 0, {-659, 414}, {126, 0, 241, 255} }}, - {{ {168, 44, -15}, 0, {-608, 433}, {126, 0, 241, 255} }}, - {{ {168, 47, -18}, 0, {-539, 373}, {126, 0, 241, 255} }}, - {{ {168, 45, -17}, 0, {-558, 414}, {126, 0, 241, 255} }}, - {{ {168, 49, -15}, 0, {-608, 312}, {126, 0, 241, 255} }}, - {{ {168, 48, -17}, 0, {-558, 331}, {126, 0, 241, 255} }}, - {{ {169, 48, -13}, 0, {-659, 331}, {126, 0, 241, 255} }}, -}; - -Gfx magnum_Arm_mesh_layer_1_tri_1[] = { - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_1 + 0, 8, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(3, 5, 0, 0), - gsSP1Triangle(3, 6, 5, 0), - gsSP1Triangle(5, 7, 0, 0), - gsSPEndDisplayList(), -}; - -Vtx magnum_Arm_mesh_layer_1_vtx_2[533] = { - {{ {80, 33, -4}, 0, {931, -91}, {0, 129, 0, 255} }}, - {{ {101, 35, 0}, 0, {1862, -243}, {11, 163, 86, 255} }}, - {{ {81, 35, 2}, 0, {931, -243}, {11, 163, 86, 255} }}, - {{ {100, 33, -7}, 0, {1862, -91}, {0, 129, 0, 255} }}, - {{ {79, 35, -11}, 0, {931, 61}, {245, 163, 170, 255} }}, - {{ {99, 35, -13}, 0, {1862, 61}, {245, 163, 170, 255} }}, - {{ {80, 33, -4}, 0, {931, -91}, {187, 149, 8, 255} }}, - {{ {81, 35, 2}, 0, {931, -243}, {194, 180, 81, 255} }}, - {{ {76, 37, 1}, 0, {753, -198}, {175, 190, 72, 255} }}, - {{ {76, 35, -4}, 0, {753, -91}, {169, 164, 11, 255} }}, - {{ {79, 35, -11}, 0, {931, 61}, {176, 180, 193, 255} }}, - {{ {75, 37, -9}, 0, {753, 17}, {160, 190, 206, 255} }}, - {{ {81, 42, 5}, 0, {931, -28}, {15, 0, 126, 255} }}, - {{ {101, 48, 0}, 0, {1862, -168}, {11, 93, 86, 255} }}, - {{ {81, 48, 2}, 0, {931, -168}, {11, 93, 86, 255} }}, - {{ {101, 42, 3}, 0, {1862, -28}, {15, 0, 126, 255} }}, - {{ {81, 35, 2}, 0, {931, 111}, {11, 163, 86, 255} }}, - {{ {101, 42, 3}, 0, {1862, -28}, {15, 0, 126, 255} }}, - {{ {81, 42, 5}, 0, {931, -28}, {15, 0, 126, 255} }}, - {{ {101, 35, 0}, 0, {1862, 111}, {11, 163, 86, 255} }}, - {{ {81, 48, 2}, 0, {-1451, -243}, {11, 93, 86, 255} }}, - {{ {101, 48, 0}, 0, {-2382, -243}, {11, 93, 86, 255} }}, - {{ {100, 50, -7}, 0, {-2382, -91}, {0, 127, 0, 255} }}, - {{ {80, 50, -4}, 0, {-1451, -91}, {0, 127, 0, 255} }}, - {{ {99, 48, -13}, 0, {-2382, 61}, {245, 93, 170, 255} }}, - {{ {79, 48, -11}, 0, {-1451, 61}, {245, 93, 170, 255} }}, - {{ {100, 50, -7}, 0, {-1433, -225}, {126, 0, 241, 255} }}, - {{ {101, 48, 0}, 0, {-1737, -168}, {126, 0, 241, 255} }}, - {{ {101, 42, 3}, 0, {-1863, -28}, {126, 0, 241, 255} }}, - {{ {99, 42, -16}, 0, {-1002, -28}, {126, 0, 241, 255} }}, - {{ {100, 33, -7}, 0, {-1433, 168}, {126, 0, 241, 255} }}, - {{ {101, 35, 0}, 0, {-1737, 111}, {126, 0, 241, 255} }}, - {{ {100, 33, -7}, 0, {-1433, 168}, {126, 0, 241, 255} }}, - {{ {99, 35, -13}, 0, {-1128, 111}, {126, 0, 241, 255} }}, - {{ {99, 42, -16}, 0, {-1002, -28}, {126, 0, 241, 255} }}, - {{ {99, 48, -13}, 0, {-1128, -168}, {126, 0, 241, 255} }}, - {{ {100, 50, -7}, 0, {-1433, -225}, {126, 0, 241, 255} }}, - {{ {79, 42, -14}, 0, {-1451, -28}, {241, 0, 130, 255} }}, - {{ {99, 35, -13}, 0, {-2382, 111}, {245, 163, 170, 255} }}, - {{ {79, 35, -11}, 0, {-1451, 111}, {245, 163, 170, 255} }}, - {{ {99, 42, -16}, 0, {-2382, -28}, {241, 0, 130, 255} }}, - {{ {79, 48, -11}, 0, {-1451, -168}, {245, 93, 170, 255} }}, - {{ {99, 48, -13}, 0, {-2382, -168}, {245, 93, 170, 255} }}, - {{ {79, 42, -14}, 0, {-1451, -28}, {170, 0, 162, 255} }}, - {{ {79, 35, -11}, 0, {-1451, 111}, {176, 180, 193, 255} }}, - {{ {75, 37, -9}, 0, {-1273, 70}, {160, 190, 206, 255} }}, - {{ {75, 42, -10}, 0, {-1273, -28}, {155, 0, 179, 255} }}, - {{ {79, 48, -11}, 0, {-1451, -168}, {176, 76, 193, 255} }}, - {{ {79, 48, -11}, 0, {-1451, -168}, {176, 76, 193, 255} }}, - {{ {75, 42, -10}, 0, {-1273, -28}, {155, 0, 179, 255} }}, - {{ {75, 46, -9}, 0, {-1273, -127}, {160, 66, 206, 255} }}, - {{ {80, 50, -4}, 0, {-1451, -91}, {187, 107, 8, 255} }}, - {{ {79, 48, -11}, 0, {-1451, 61}, {176, 76, 193, 255} }}, - {{ {75, 46, -9}, 0, {-1273, 17}, {160, 66, 206, 255} }}, - {{ {76, 48, -4}, 0, {-1273, -91}, {169, 92, 11, 255} }}, - {{ {81, 48, 2}, 0, {-1451, -243}, {194, 76, 81, 255} }}, - {{ {76, 46, 1}, 0, {-1273, -198}, {175, 66, 72, 255} }}, - {{ {81, 42, 5}, 0, {931, -28}, {196, 0, 112, 255} }}, - {{ {81, 48, 2}, 0, {931, -168}, {194, 76, 81, 255} }}, - {{ {76, 46, 1}, 0, {753, -127}, {175, 66, 72, 255} }}, - {{ {77, 42, 3}, 0, {753, -28}, {177, 0, 99, 255} }}, - {{ {81, 35, 2}, 0, {931, 111}, {194, 180, 81, 255} }}, - {{ {76, 37, 1}, 0, {753, 70}, {175, 190, 72, 255} }}, - {{ {73, 41, -4}, 0, {874, -11}, {130, 0, 15, 255} }}, - {{ {73, 41, -3}, 0, {913, -4}, {130, 0, 15, 255} }}, - {{ {73, 41, -3}, 0, {951, -11}, {130, 0, 15, 255} }}, - {{ {73, 42, -3}, 0, {951, -46}, {130, 0, 15, 255} }}, - {{ {73, 42, -2}, 0, {967, -28}, {130, 0, 15, 255} }}, - {{ {73, 42, -4}, 0, {874, -46}, {130, 0, 15, 255} }}, - {{ {73, 43, -3}, 0, {913, -53}, {130, 0, 15, 255} }}, - {{ {73, 42, -5}, 0, {858, -28}, {130, 0, 15, 255} }}, - {{ {109, 42, -8}, 0, {925, -37}, {130, 0, 15, 255} }}, - {{ {110, 43, -4}, 0, {1084, -67}, {130, 0, 15, 255} }}, - {{ {110, 47, -3}, 0, {1150, -140}, {130, 0, 15, 255} }}, - {{ {109, 51, -8}, 0, {925, -243}, {130, 0, 15, 255} }}, - {{ {110, 50, -4}, 0, {1084, -212}, {130, 0, 15, 255} }}, - {{ {109, 47, -13}, 0, {699, -140}, {130, 0, 15, 255} }}, - {{ {109, 50, -11}, 0, {765, -212}, {130, 0, 15, 255} }}, - {{ {110, 43, -11}, 0, {765, -67}, {130, 0, 15, 255} }}, - {{ {110, 47, -3}, 0, {2283, -140}, {15, 252, 126, 255} }}, - {{ {110, 43, -4}, 0, {2283, -67}, {11, 163, 86, 255} }}, - {{ {169, 43, -11}, 0, {4979, -67}, {11, 163, 86, 255} }}, - {{ {169, 47, -10}, 0, {4979, -140}, {15, 0, 126, 255} }}, - {{ {110, 50, -4}, 0, {2313, -212}, {11, 93, 86, 255} }}, - {{ {169, 50, -11}, 0, {4979, -212}, {11, 93, 86, 255} }}, - {{ {110, 43, -4}, 0, {2283, -177}, {11, 163, 86, 255} }}, - {{ {168, 42, -15}, 0, {4979, -97}, {0, 129, 0, 255} }}, - {{ {169, 43, -11}, 0, {4979, -177}, {11, 163, 86, 255} }}, - {{ {109, 42, -8}, 0, {2283, -97}, {0, 129, 3, 255} }}, - {{ {168, 43, -18}, 0, {4979, -17}, {245, 163, 170, 255} }}, - {{ {110, 43, -11}, 0, {2313, -17}, {245, 163, 170, 255} }}, - {{ {109, 47, -13}, 0, {-2803, -140}, {241, 4, 130, 255} }}, - {{ {109, 50, -11}, 0, {-2803, -212}, {245, 93, 170, 255} }}, - {{ {168, 50, -18}, 0, {-5499, -212}, {245, 93, 170, 255} }}, - {{ {168, 47, -20}, 0, {-5499, -140}, {241, 0, 130, 255} }}, - {{ {110, 43, -11}, 0, {-2833, -67}, {245, 163, 170, 255} }}, - {{ {109, 47, -13}, 0, {-2803, -140}, {241, 4, 130, 255} }}, - {{ {168, 47, -20}, 0, {-5499, -140}, {241, 0, 130, 255} }}, - {{ {168, 43, -18}, 0, {-5499, -67}, {245, 163, 170, 255} }}, - {{ {109, 50, -11}, 0, {-2803, -17}, {245, 93, 170, 255} }}, - {{ {168, 51, -15}, 0, {-5499, -97}, {0, 127, 0, 255} }}, - {{ {168, 50, -18}, 0, {-5499, -17}, {245, 93, 170, 255} }}, - {{ {109, 51, -8}, 0, {-2803, -97}, {0, 127, 253, 255} }}, - {{ {169, 50, -11}, 0, {-5499, -177}, {11, 93, 86, 255} }}, - {{ {110, 50, -4}, 0, {-2833, -177}, {11, 93, 86, 255} }}, - {{ {101, 26, -7}, 0, {1919, -91}, {79, 157, 246, 255} }}, - {{ {100, 30, -18}, 0, {1919, 156}, {73, 186, 179, 255} }}, - {{ {105, 34, -16}, 0, {2141, 99}, {79, 193, 179, 255} }}, - {{ {106, 29, -8}, 0, {2141, -91}, {90, 167, 245, 255} }}, - {{ {103, 30, 4}, 0, {1919, -338}, {89, 186, 57, 255} }}, - {{ {107, 34, 1}, 0, {2141, -281}, {95, 193, 56, 255} }}, - {{ {106, 29, -8}, 0, {-1433, 262}, {90, 167, 245, 255} }}, - {{ {105, 34, -16}, 0, {-1052, 153}, {79, 193, 179, 255} }}, - {{ {109, 37, -15}, 0, {-1126, 81}, {82, 202, 175, 255} }}, - {{ {109, 34, -8}, 0, {-1433, 144}, {104, 184, 243, 255} }}, - {{ {107, 34, 1}, 0, {-1813, 153}, {95, 193, 56, 255} }}, - {{ {110, 37, -1}, 0, {-1740, 81}, {99, 202, 59, 255} }}, - {{ {105, 34, -16}, 0, {-2661, 153}, {79, 193, 179, 255} }}, - {{ {108, 43, -17}, 0, {-2803, -59}, {65, 3, 147, 255} }}, - {{ {109, 37, -15}, 0, {-2803, 81}, {82, 202, 175, 255} }}, - {{ {105, 43, -19}, 0, {-2661, -61}, {56, 12, 143, 255} }}, - {{ {100, 30, -18}, 0, {-2439, 237}, {73, 186, 179, 255} }}, - {{ {100, 40, -22}, 0, {-2439, 12}, {61, 247, 145, 255} }}, - {{ {105, 51, -16}, 0, {-2661, -235}, {36, 94, 178, 255} }}, - {{ {100, 50, -18}, 0, {-2439, -214}, {20, 82, 161, 255} }}, - {{ {109, 49, -15}, 0, {-2803, -200}, {66, 78, 180, 255} }}, - {{ {105, 51, -16}, 0, {-2661, 99}, {36, 94, 178, 255} }}, - {{ {109, 51, -8}, 0, {-2803, -91}, {71, 105, 247, 255} }}, - {{ {109, 49, -15}, 0, {-2803, 63}, {66, 78, 180, 255} }}, - {{ {106, 53, -8}, 0, {-2661, -91}, {34, 122, 252, 255} }}, - {{ {100, 50, -18}, 0, {-2439, 156}, {20, 82, 161, 255} }}, - {{ {101, 53, -7}, 0, {-2439, -91}, {255, 127, 0, 255} }}, - {{ {107, 51, 1}, 0, {-2661, -281}, {54, 94, 67, 255} }}, - {{ {103, 50, 4}, 0, {-2439, -338}, {42, 82, 87, 255} }}, - {{ {110, 49, -1}, 0, {-2803, -244}, {82, 78, 58, 255} }}, - {{ {107, 51, 1}, 0, {2141, -235}, {54, 94, 67, 255} }}, - {{ {111, 43, 2}, 0, {2283, -59}, {90, 3, 90, 255} }}, - {{ {110, 49, -1}, 0, {2283, -200}, {82, 78, 58, 255} }}, - {{ {108, 43, 4}, 0, {2141, -61}, {82, 12, 96, 255} }}, - {{ {103, 50, 4}, 0, {1919, -214}, {42, 82, 87, 255} }}, - {{ {103, 40, 8}, 0, {1919, 12}, {86, 247, 93, 255} }}, - {{ {107, 34, 1}, 0, {2141, 153}, {95, 193, 56, 255} }}, - {{ {103, 40, 8}, 0, {1919, 12}, {86, 247, 93, 255} }}, - {{ {103, 30, 4}, 0, {1919, 237}, {89, 186, 57, 255} }}, - {{ {107, 34, 1}, 0, {2141, 153}, {95, 193, 56, 255} }}, - {{ {108, 43, 4}, 0, {2141, -61}, {82, 12, 96, 255} }}, - {{ {110, 37, -1}, 0, {2283, 81}, {99, 202, 59, 255} }}, - {{ {111, 43, 2}, 0, {2283, -59}, {90, 3, 90, 255} }}, - {{ {101, 26, -7}, 0, {913, 331}, {130, 0, 15, 255} }}, - {{ {103, 30, 4}, 0, {1406, 237}, {130, 0, 15, 255} }}, - {{ {103, 40, 8}, 0, {1610, 12}, {130, 0, 15, 255} }}, - {{ {101, 53, -7}, 0, {913, -297}, {130, 0, 15, 255} }}, - {{ {103, 50, 4}, 0, {1406, -214}, {130, 0, 15, 255} }}, - {{ {100, 40, -22}, 0, {215, 12}, {130, 0, 15, 255} }}, - {{ {100, 50, -18}, 0, {419, -214}, {130, 0, 15, 255} }}, - {{ {100, 30, -18}, 0, {419, 237}, {130, 0, 15, 255} }}, - {{ {109, 34, -8}, 0, {-1433, 144}, {126, 0, 241, 255} }}, - {{ {109, 37, -15}, 0, {-1126, 81}, {126, 0, 241, 255} }}, - {{ {108, 43, -17}, 0, {-999, -59}, {126, 0, 241, 255} }}, - {{ {111, 43, 2}, 0, {-1867, -59}, {126, 0, 241, 255} }}, - {{ {109, 51, -8}, 0, {-1433, -248}, {126, 0, 241, 255} }}, - {{ {109, 49, -15}, 0, {-1126, -200}, {126, 0, 241, 255} }}, - {{ {110, 49, -1}, 0, {-1740, -200}, {126, 0, 241, 255} }}, - {{ {110, 37, -1}, 0, {-1740, 81}, {126, 0, 241, 255} }}, - {{ {109, 39, -8}, 0, {925, 31}, {130, 0, 15, 255} }}, - {{ {110, 39, -6}, 0, {968, 22}, {130, 0, 15, 255} }}, - {{ {110, 42, -6}, 0, {986, 3}, {130, 0, 15, 255} }}, - {{ {109, 43, -8}, 0, {925, -25}, {130, 0, 15, 255} }}, - {{ {110, 42, -7}, 0, {968, -17}, {130, 0, 15, 255} }}, - {{ {109, 42, -10}, 0, {864, 3}, {130, 0, 15, 255} }}, - {{ {109, 42, -9}, 0, {882, -17}, {130, 0, 15, 255} }}, - {{ {109, 39, -9}, 0, {882, 22}, {130, 0, 15, 255} }}, - {{ {110, 42, -6}, 0, {2283, 3}, {15, 36, 121, 255} }}, - {{ {168, 42, -14}, 0, {2524, -17}, {8, 108, 66, 255} }}, - {{ {110, 42, -7}, 0, {2283, -17}, {8, 108, 66, 255} }}, - {{ {169, 42, -13}, 0, {2524, 3}, {15, 36, 121, 255} }}, - {{ {110, 39, -6}, 0, {2283, 22}, {11, 167, 90, 255} }}, - {{ {168, 39, -14}, 0, {2524, 22}, {11, 167, 90, 255} }}, - {{ {109, 43, -8}, 0, {-2803, -97}, {0, 127, 0, 255} }}, - {{ {168, 42, -16}, 0, {-3044, -75}, {248, 108, 190, 255} }}, - {{ {109, 42, -9}, 0, {-2803, -75}, {248, 108, 190, 255} }}, - {{ {168, 43, -15}, 0, {-3044, -97}, {0, 127, 0, 255} }}, - {{ {110, 42, -7}, 0, {-2803, -118}, {8, 108, 66, 255} }}, - {{ {168, 42, -14}, 0, {-3044, -118}, {8, 108, 66, 255} }}, - {{ {109, 39, -8}, 0, {2283, -97}, {0, 129, 0, 255} }}, - {{ {168, 39, -14}, 0, {2524, -118}, {11, 167, 90, 255} }}, - {{ {110, 39, -6}, 0, {2283, -118}, {11, 167, 90, 255} }}, - {{ {168, 39, -15}, 0, {2524, -97}, {0, 129, 0, 255} }}, - {{ {109, 39, -9}, 0, {2283, -75}, {245, 167, 166, 255} }}, - {{ {168, 39, -15}, 0, {2524, -97}, {0, 129, 0, 255} }}, - {{ {109, 39, -8}, 0, {2283, -97}, {0, 129, 0, 255} }}, - {{ {168, 39, -16}, 0, {2524, -75}, {245, 167, 166, 255} }}, - {{ {168, 39, -15}, 0, {-1445, 31}, {126, 0, 241, 255} }}, - {{ {168, 39, -16}, 0, {-1402, 22}, {126, 0, 241, 255} }}, - {{ {168, 42, -17}, 0, {-1384, 3}, {126, 0, 241, 255} }}, - {{ {169, 42, -13}, 0, {-1506, 3}, {126, 0, 241, 255} }}, - {{ {168, 43, -15}, 0, {-1445, -25}, {126, 0, 241, 255} }}, - {{ {168, 42, -16}, 0, {-1402, -17}, {126, 0, 241, 255} }}, - {{ {168, 42, -14}, 0, {-1488, -17}, {126, 0, 241, 255} }}, - {{ {168, 39, -14}, 0, {-1488, 22}, {126, 0, 241, 255} }}, - {{ {109, 42, -9}, 0, {-2803, -17}, {248, 108, 190, 255} }}, - {{ {168, 42, -16}, 0, {-3044, -17}, {248, 108, 190, 255} }}, - {{ {168, 42, -17}, 0, {-3044, 3}, {241, 36, 135, 255} }}, - {{ {109, 42, -10}, 0, {-2803, 3}, {241, 36, 135, 255} }}, - {{ {109, 42, -10}, 0, {-2803, 3}, {241, 36, 135, 255} }}, - {{ {168, 42, -17}, 0, {-3044, 3}, {241, 36, 135, 255} }}, - {{ {168, 39, -16}, 0, {-3044, 22}, {245, 167, 166, 255} }}, - {{ {109, 39, -9}, 0, {-2803, 22}, {245, 167, 166, 255} }}, - {{ {106, 52, -9}, 0, {-2646, -254}, {247, 167, 166, 255} }}, - {{ {109, 53, -9}, 0, {-2785, -276}, {75, 55, 170, 255} }}, - {{ {109, 52, -9}, 0, {-2785, -254}, {64, 183, 174, 255} }}, - {{ {106, 54, -9}, 0, {-2646, -307}, {6, 94, 171, 255} }}, - {{ {76, 52, -5}, 0, {-1281, -307}, {238, 87, 166, 255} }}, - {{ {76, 50, -5}, 0, {-1281, -254}, {250, 165, 168, 255} }}, - {{ {106, 54, -9}, 0, {-2646, -62}, {6, 94, 171, 255} }}, - {{ {109, 53, -7}, 0, {-2785, -120}, {94, 55, 66, 255} }}, - {{ {109, 53, -9}, 0, {-2785, -62}, {75, 55, 170, 255} }}, - {{ {106, 54, -6}, 0, {-2646, -120}, {27, 95, 81, 255} }}, - {{ {76, 52, -3}, 0, {-1281, -120}, {4, 87, 92, 255} }}, - {{ {76, 52, -5}, 0, {-1281, -62}, {238, 87, 166, 255} }}, - {{ {109, 53, -9}, 0, {-1375, -276}, {75, 55, 170, 255} }}, - {{ {109, 53, -7}, 0, {-1491, -276}, {94, 55, 66, 255} }}, - {{ {109, 52, -7}, 0, {-1491, -254}, {82, 183, 64, 255} }}, - {{ {109, 52, -9}, 0, {-1375, -254}, {64, 183, 174, 255} }}, - {{ {76, 50, -5}, 0, {761, -62}, {250, 165, 168, 255} }}, - {{ {106, 52, -6}, 0, {2126, -120}, {13, 167, 90, 255} }}, - {{ {76, 50, -3}, 0, {761, -120}, {15, 165, 87, 255} }}, - {{ {106, 52, -9}, 0, {2126, -62}, {247, 167, 166, 255} }}, - {{ {109, 52, -9}, 0, {2265, -62}, {64, 183, 174, 255} }}, - {{ {109, 52, -7}, 0, {2265, -120}, {82, 183, 64, 255} }}, - {{ {76, 52, -3}, 0, {971, -307}, {130, 0, 15, 255} }}, - {{ {76, 50, -5}, 0, {855, -254}, {130, 0, 15, 255} }}, - {{ {76, 50, -3}, 0, {971, -254}, {130, 0, 15, 255} }}, - {{ {76, 52, -5}, 0, {855, -307}, {130, 0, 15, 255} }}, - {{ {106, 54, -6}, 0, {2126, -307}, {27, 95, 81, 255} }}, - {{ {76, 52, -3}, 0, {761, -307}, {4, 87, 92, 255} }}, - {{ {76, 50, -3}, 0, {761, -254}, {15, 165, 87, 255} }}, - {{ {106, 52, -6}, 0, {2126, -254}, {13, 167, 90, 255} }}, - {{ {109, 52, -7}, 0, {2265, -254}, {82, 183, 64, 255} }}, - {{ {109, 53, -7}, 0, {2265, -276}, {94, 55, 66, 255} }}, - {{ {76, 52, -3}, 0, {-1491, -254}, {57, 100, 54, 255} }}, - {{ {77, 49, -3}, 0, {-1491, -198}, {109, 214, 49, 255} }}, - {{ {77, 49, -8}, 0, {-1249, -198}, {83, 211, 171, 255} }}, - {{ {76, 52, -8}, 0, {-1249, -254}, {33, 93, 176, 255} }}, - {{ {71, 50, -7}, 0, {-1072, -3}, {242, 76, 155, 255} }}, - {{ {76, 52, -3}, 0, {-1281, -120}, {57, 100, 54, 255} }}, - {{ {76, 52, -8}, 0, {-1281, 1}, {33, 93, 176, 255} }}, - {{ {72, 50, -1}, 0, {-1072, -147}, {31, 88, 86, 255} }}, - {{ {65, 52, -6}, 0, {-816, -3}, {3, 87, 164, 255} }}, - {{ {66, 52, 0}, 0, {-815, -147}, {32, 103, 66, 255} }}, - {{ {66, 52, 0}, 0, {-815, -147}, {32, 103, 66, 255} }}, - {{ {65, 52, -6}, 0, {-816, -3}, {3, 87, 164, 255} }}, - {{ {60, 53, -4}, 0, {-570, -42}, {189, 95, 206, 255} }}, - {{ {61, 53, -1}, 0, {-570, -116}, {202, 106, 43, 255} }}, - {{ {72, 50, -1}, 0, {552, -220}, {31, 88, 86, 255} }}, - {{ {77, 49, -3}, 0, {806, -198}, {109, 214, 49, 255} }}, - {{ {76, 52, -3}, 0, {761, -254}, {57, 100, 54, 255} }}, - {{ {74, 48, -1}, 0, {649, -173}, {80, 208, 86, 255} }}, - {{ {68, 47, 1}, 0, {391, -153}, {216, 3, 120, 255} }}, - {{ {66, 52, 0}, 0, {294, -268}, {32, 103, 66, 255} }}, - {{ {64, 51, 1}, 0, {195, -236}, {213, 231, 117, 255} }}, - {{ {61, 53, -1}, 0, {50, -284}, {202, 106, 43, 255} }}, - {{ {60, 52, 0}, 0, {33, -258}, {163, 229, 83, 255} }}, - {{ {72, 45, 0}, 0, {544, -115}, {88, 225, 87, 255} }}, - {{ {67, 43, 1}, 0, {330, -66}, {171, 6, 94, 255} }}, - {{ {71, 43, 1}, 0, {497, -66}, {88, 250, 91, 255} }}, - {{ {68, 38, 1}, 0, {375, 44}, {182, 247, 103, 255} }}, - {{ {71, 43, 1}, 0, {497, -66}, {88, 250, 91, 255} }}, - {{ {67, 43, 1}, 0, {330, -66}, {171, 6, 94, 255} }}, - {{ {72, 40, 0}, 0, {542, 9}, {83, 40, 87, 255} }}, - {{ {68, 20, 1}, 0, {375, 453}, {194, 181, 81, 255} }}, - {{ {72, 21, 0}, 0, {544, 449}, {246, 193, 110, 255} }}, - {{ {76, 35, 0}, 0, {749, 125}, {15, 0, 126, 255} }}, - {{ {75, 21, 0}, 0, {714, 445}, {67, 200, 92, 255} }}, - {{ {73, 17, -2}, 0, {598, 534}, {177, 207, 87, 255} }}, - {{ {74, 17, -2}, 0, {677, 532}, {100, 236, 76, 255} }}, - {{ {74, 13, -2}, 0, {648, 618}, {185, 205, 92, 255} }}, - {{ {75, 14, -2}, 0, {719, 599}, {79, 44, 89, 255} }}, - {{ {78, 9, -2}, 0, {835, 703}, {229, 165, 85, 255} }}, - {{ {79, 11, -2}, 0, {870, 667}, {40, 72, 97, 255} }}, - {{ {85, 9, -3}, 0, {1151, 707}, {38, 163, 77, 255} }}, - {{ {84, 11, -3}, 0, {1124, 669}, {245, 75, 102, 255} }}, - {{ {84, 11, -3}, 0, {1124, 669}, {245, 75, 102, 255} }}, - {{ {85, 9, -3}, 0, {1151, 707}, {38, 163, 77, 255} }}, - {{ {88, 12, -4}, 0, {1311, 650}, {86, 197, 72, 255} }}, - {{ {87, 13, -3}, 0, {1252, 623}, {205, 48, 106, 255} }}, - {{ {90, 17, -4}, 0, {1408, 523}, {103, 239, 73, 255} }}, - {{ {89, 17, -4}, 0, {1329, 521}, {186, 15, 105, 255} }}, - {{ {90, 24, -4}, 0, {1408, 364}, {84, 71, 64, 255} }}, - {{ {89, 24, -4}, 0, {1329, 361}, {194, 76, 81, 255} }}, - {{ {78, 32, 0}, 0, {840, 192}, {15, 0, 126, 255} }}, - {{ {76, 35, 0}, 0, {749, 125}, {15, 0, 126, 255} }}, - {{ {75, 21, 0}, 0, {714, 445}, {67, 200, 92, 255} }}, - {{ {78, 23, 0}, 0, {840, 397}, {41, 181, 94, 255} }}, - {{ {102, 32, -3}, 0, {1919, 192}, {82, 73, 64, 255} }}, - {{ {102, 25, -3}, 0, {1919, 345}, {85, 187, 64, 255} }}, - {{ {77, 32, -8}, 0, {-1361, 192}, {241, 0, 130, 255} }}, - {{ {101, 32, -11}, 0, {-2439, 192}, {64, 73, 174, 255} }}, - {{ {101, 25, -11}, 0, {-2439, 345}, {67, 187, 173, 255} }}, - {{ {77, 23, -8}, 0, {-1361, 397}, {17, 181, 155, 255} }}, - {{ {75, 35, -7}, 0, {-1270, 125}, {241, 0, 130, 255} }}, - {{ {75, 21, -7}, 0, {-1234, 445}, {42, 200, 150, 255} }}, - {{ {71, 40, -7}, 0, {-1063, 9}, {60, 40, 152, 255} }}, - {{ {71, 21, -7}, 0, {-1065, 449}, {219, 193, 152, 255} }}, - {{ {74, 17, -5}, 0, {-1198, 532}, {79, 236, 158, 255} }}, - {{ {72, 17, -5}, 0, {-1118, 534}, {159, 207, 191, 255} }}, - {{ {75, 14, -5}, 0, {-1239, 599}, {56, 44, 150, 255} }}, - {{ {73, 13, -5}, 0, {-1169, 618}, {165, 205, 184, 255} }}, - {{ {78, 11, -6}, 0, {-1390, 667}, {16, 72, 152, 255} }}, - {{ {77, 9, -6}, 0, {-1355, 703}, {210, 165, 180, 255} }}, - {{ {84, 11, -7}, 0, {-1644, 669}, {220, 75, 160, 255} }}, - {{ {84, 9, -7}, 0, {-1671, 707}, {18, 163, 172, 255} }}, - {{ {84, 9, -7}, 0, {-1671, 707}, {18, 163, 172, 255} }}, - {{ {84, 11, -7}, 0, {-1644, 669}, {220, 75, 160, 255} }}, - {{ {87, 13, -7}, 0, {-1772, 623}, {181, 48, 166, 255} }}, - {{ {88, 12, -7}, 0, {-1831, 650}, {66, 197, 165, 255} }}, - {{ {88, 17, -7}, 0, {-1849, 521}, {162, 15, 172, 255} }}, - {{ {90, 17, -7}, 0, {-1929, 523}, {82, 239, 160, 255} }}, - {{ {88, 24, -7}, 0, {-1849, 361}, {176, 76, 192, 255} }}, - {{ {90, 24, -7}, 0, {-1929, 364}, {66, 71, 174, 255} }}, - {{ {67, 38, -6}, 0, {-895, 44}, {159, 247, 174, 255} }}, - {{ {71, 40, -7}, 0, {-1063, 9}, {60, 40, 152, 255} }}, - {{ {71, 21, -7}, 0, {-1065, 449}, {219, 193, 152, 255} }}, - {{ {66, 43, -6}, 0, {-850, -66}, {151, 6, 186, 255} }}, - {{ {70, 43, -7}, 0, {-1017, -66}, {63, 250, 146, 255} }}, - {{ {67, 47, -6}, 0, {-910, -153}, {179, 236, 157, 255} }}, - {{ {71, 45, -7}, 0, {-1065, -115}, {58, 206, 155, 255} }}, - {{ {71, 50, -7}, 0, {-1072, -220}, {242, 76, 155, 255} }}, - {{ {71, 50, -7}, 0, {-1072, -220}, {242, 76, 155, 255} }}, - {{ {67, 47, -6}, 0, {-910, -153}, {179, 236, 157, 255} }}, - {{ {63, 51, -6}, 0, {-712, -236}, {185, 201, 166, 255} }}, - {{ {65, 52, -6}, 0, {-816, -268}, {3, 87, 164, 255} }}, - {{ {60, 52, -4}, 0, {-553, -258}, {146, 211, 212, 255} }}, - {{ {60, 53, -4}, 0, {-570, -284}, {189, 95, 206, 255} }}, - {{ {71, 45, -7}, 0, {-1065, -115}, {58, 206, 155, 255} }}, - {{ {73, 48, -7}, 0, {-1169, -173}, {27, 185, 155, 255} }}, - {{ {76, 52, -8}, 0, {-1281, -254}, {33, 93, 176, 255} }}, - {{ {77, 49, -8}, 0, {-1326, -198}, {83, 211, 171, 255} }}, - {{ {67, 38, -6}, 0, {-895, 44}, {159, 247, 174, 255} }}, - {{ {71, 21, -7}, 0, {-1065, 449}, {219, 193, 152, 255} }}, - {{ {67, 20, -6}, 0, {-895, 453}, {176, 181, 192, 255} }}, - {{ {101, 32, -11}, 0, {-1266, 192}, {64, 73, 174, 255} }}, - {{ {102, 32, -3}, 0, {-1599, 192}, {82, 73, 64, 255} }}, - {{ {102, 25, -3}, 0, {-1599, 345}, {85, 187, 64, 255} }}, - {{ {101, 32, -11}, 0, {-1266, 192}, {64, 73, 174, 255} }}, - {{ {102, 25, -3}, 0, {-1599, 345}, {85, 187, 64, 255} }}, - {{ {101, 25, -11}, 0, {-1266, 345}, {67, 187, 173, 255} }}, - {{ {78, 32, 0}, 0, {-1361, -174}, {59, 112, 249, 255} }}, - {{ {102, 32, -3}, 0, {-2439, -174}, {82, 73, 64, 255} }}, - {{ {101, 32, -11}, 0, {-2439, -8}, {64, 73, 174, 255} }}, - {{ {77, 32, -8}, 0, {-1361, -8}, {59, 112, 249, 255} }}, - {{ {77, 23, -8}, 0, {840, -8}, {17, 181, 155, 255} }}, - {{ {101, 25, -11}, 0, {1919, -8}, {67, 187, 173, 255} }}, - {{ {102, 25, -3}, 0, {1919, -174}, {85, 187, 64, 255} }}, - {{ {78, 23, 0}, 0, {840, -174}, {41, 181, 94, 255} }}, - {{ {75, 21, -7}, 0, {714, -8}, {42, 200, 150, 255} }}, - {{ {75, 21, 0}, 0, {714, -174}, {67, 200, 92, 255} }}, - {{ {67, 38, -6}, 0, {746, 44}, {159, 247, 174, 255} }}, - {{ {68, 38, 1}, 0, {1079, 44}, {182, 247, 103, 255} }}, - {{ {67, 43, 1}, 0, {1079, -66}, {171, 6, 94, 255} }}, - {{ {67, 38, -6}, 0, {746, 44}, {159, 247, 174, 255} }}, - {{ {67, 43, 1}, 0, {1079, -66}, {171, 6, 94, 255} }}, - {{ {66, 43, -6}, 0, {746, -66}, {151, 6, 186, 255} }}, - {{ {68, 47, 1}, 0, {1079, -153}, {216, 3, 120, 255} }}, - {{ {67, 47, -6}, 0, {746, -153}, {179, 236, 157, 255} }}, - {{ {72, 21, 0}, 0, {1079, 449}, {246, 193, 110, 255} }}, - {{ {71, 21, -7}, 0, {746, 449}, {219, 193, 152, 255} }}, - {{ {72, 17, -5}, 0, {834, 534}, {159, 207, 191, 255} }}, - {{ {73, 17, -2}, 0, {991, 534}, {177, 207, 87, 255} }}, - {{ {73, 13, -5}, 0, {834, 618}, {165, 205, 184, 255} }}, - {{ {74, 13, -2}, 0, {991, 618}, {185, 205, 92, 255} }}, - {{ {67, 20, -6}, 0, {375, -8}, {176, 181, 192, 255} }}, - {{ {71, 21, -7}, 0, {544, -8}, {219, 193, 152, 255} }}, - {{ {72, 21, 0}, 0, {544, -174}, {246, 193, 110, 255} }}, - {{ {68, 20, 1}, 0, {375, -174}, {194, 181, 81, 255} }}, - {{ {76, 35, 0}, 0, {-1599, 125}, {100, 78, 244, 255} }}, - {{ {78, 32, 0}, 0, {-1599, 192}, {59, 112, 249, 255} }}, - {{ {77, 32, -8}, 0, {-1266, 192}, {59, 112, 249, 255} }}, - {{ {75, 35, -7}, 0, {-1266, 125}, {100, 78, 244, 255} }}, - {{ {72, 40, 0}, 0, {-1599, 9}, {83, 40, 87, 255} }}, - {{ {71, 40, -7}, 0, {-1266, 9}, {60, 40, 152, 255} }}, - {{ {70, 43, -7}, 0, {-1266, -66}, {63, 250, 146, 255} }}, - {{ {71, 43, 1}, 0, {-1599, -66}, {88, 250, 91, 255} }}, - {{ {71, 45, -7}, 0, {-1266, -115}, {58, 206, 155, 255} }}, - {{ {72, 45, 0}, 0, {-1599, -115}, {88, 225, 87, 255} }}, - {{ {73, 48, -7}, 0, {-1257, -173}, {27, 185, 155, 255} }}, - {{ {74, 48, -1}, 0, {-1545, -173}, {80, 208, 86, 255} }}, - {{ {75, 21, -7}, 0, {-1266, 445}, {42, 200, 150, 255} }}, - {{ {75, 21, 0}, 0, {-1599, 445}, {67, 200, 92, 255} }}, - {{ {74, 17, -2}, 0, {-1511, 532}, {100, 236, 76, 255} }}, - {{ {74, 17, -5}, 0, {-1354, 532}, {79, 236, 158, 255} }}, - {{ {74, 17, -5}, 0, {-1354, 532}, {79, 236, 158, 255} }}, - {{ {74, 17, -2}, 0, {-1511, 532}, {100, 236, 76, 255} }}, - {{ {75, 14, -2}, 0, {-1511, 599}, {79, 44, 89, 255} }}, - {{ {75, 14, -5}, 0, {-1354, 599}, {56, 44, 150, 255} }}, - {{ {74, 48, -1}, 0, {649, -147}, {80, 208, 86, 255} }}, - {{ {73, 48, -7}, 0, {649, -3}, {27, 185, 155, 255} }}, - {{ {77, 49, -8}, 0, {806, 1}, {83, 211, 171, 255} }}, - {{ {77, 49, -3}, 0, {806, -120}, {109, 214, 49, 255} }}, - {{ {67, 47, -6}, 0, {390, -8}, {179, 236, 157, 255} }}, - {{ {68, 47, 1}, 0, {391, -174}, {216, 3, 120, 255} }}, - {{ {64, 51, 1}, 0, {195, -174}, {213, 231, 117, 255} }}, - {{ {63, 51, -6}, 0, {192, -8}, {185, 201, 166, 255} }}, - {{ {60, 52, 0}, 0, {33, -130}, {163, 229, 83, 255} }}, - {{ {60, 52, -4}, 0, {33, -44}, {146, 211, 212, 255} }}, - {{ {60, 52, -4}, 0, {820, -258}, {146, 211, 212, 255} }}, - {{ {61, 53, -1}, 0, {963, -284}, {202, 106, 43, 255} }}, - {{ {60, 53, -4}, 0, {815, -284}, {189, 95, 206, 255} }}, - {{ {60, 52, 0}, 0, {990, -258}, {163, 229, 83, 255} }}, - {{ {74, 13, -2}, 0, {648, -130}, {185, 205, 92, 255} }}, - {{ {73, 13, -5}, 0, {648, -52}, {165, 205, 184, 255} }}, - {{ {77, 9, -6}, 0, {835, -52}, {210, 165, 180, 255} }}, - {{ {78, 9, -2}, 0, {835, -130}, {229, 165, 85, 255} }}, - {{ {84, 9, -7}, 0, {1151, -52}, {18, 163, 172, 255} }}, - {{ {85, 9, -3}, 0, {1151, -130}, {38, 163, 77, 255} }}, - {{ {88, 12, -7}, 0, {1311, -52}, {66, 197, 165, 255} }}, - {{ {88, 12, -4}, 0, {1311, -130}, {86, 197, 72, 255} }}, - {{ {75, 14, -5}, 0, {-1239, -52}, {56, 44, 150, 255} }}, - {{ {75, 14, -2}, 0, {-1239, -130}, {79, 44, 89, 255} }}, - {{ {79, 11, -2}, 0, {-1390, -130}, {40, 72, 97, 255} }}, - {{ {78, 11, -6}, 0, {-1390, -52}, {16, 72, 152, 255} }}, - {{ {78, 11, -6}, 0, {-1390, -52}, {16, 72, 152, 255} }}, - {{ {79, 11, -2}, 0, {-1390, -130}, {40, 72, 97, 255} }}, - {{ {84, 11, -3}, 0, {-1644, -130}, {245, 75, 102, 255} }}, - {{ {84, 11, -7}, 0, {-1644, -52}, {220, 75, 160, 255} }}, - {{ {87, 13, -3}, 0, {-1772, -130}, {205, 48, 106, 255} }}, - {{ {87, 13, -7}, 0, {-1772, -52}, {181, 48, 166, 255} }}, - {{ {88, 12, -4}, 0, {-1511, 650}, {86, 197, 72, 255} }}, - {{ {88, 12, -7}, 0, {-1354, 650}, {66, 197, 165, 255} }}, - {{ {90, 17, -7}, 0, {-1354, 523}, {82, 239, 160, 255} }}, - {{ {90, 17, -4}, 0, {-1511, 523}, {103, 239, 73, 255} }}, - {{ {90, 24, -7}, 0, {-1354, 364}, {66, 71, 174, 255} }}, - {{ {90, 24, -4}, 0, {-1511, 364}, {84, 71, 64, 255} }}, - {{ {87, 13, -7}, 0, {834, 623}, {181, 48, 166, 255} }}, - {{ {87, 13, -3}, 0, {991, 623}, {205, 48, 106, 255} }}, - {{ {89, 17, -4}, 0, {991, 521}, {186, 15, 105, 255} }}, - {{ {88, 17, -7}, 0, {834, 521}, {162, 15, 172, 255} }}, - {{ {88, 17, -7}, 0, {834, 521}, {162, 15, 172, 255} }}, - {{ {89, 17, -4}, 0, {991, 521}, {186, 15, 105, 255} }}, - {{ {89, 24, -4}, 0, {991, 361}, {194, 76, 81, 255} }}, - {{ {88, 24, -7}, 0, {834, 361}, {176, 76, 192, 255} }}, - {{ {90, 24, -7}, 0, {-1929, -52}, {66, 71, 174, 255} }}, - {{ {88, 24, -7}, 0, {-1849, -52}, {176, 76, 192, 255} }}, - {{ {89, 24, -4}, 0, {-1849, -130}, {194, 76, 81, 255} }}, - {{ {90, 24, -4}, 0, {-1929, -130}, {84, 71, 64, 255} }}, - {{ {78, 23, -2}, 0, {991, 387}, {183, 0, 104, 255} }}, - {{ {78, 23, -6}, 0, {834, 387}, {160, 0, 173, 255} }}, - {{ {78, 20, -6}, 0, {834, 460}, {155, 238, 181, 255} }}, - {{ {78, 20, -2}, 0, {991, 460}, {177, 238, 97, 255} }}, - {{ {79, 17, -6}, 0, {848, 522}, {165, 206, 183, 255} }}, - {{ {79, 17, -3}, 0, {977, 522}, {185, 206, 93, 255} }}, - {{ {81, 15, -6}, 0, {863, 586}, {179, 195, 176, 255} }}, - {{ {81, 15, -3}, 0, {962, 586}, {201, 195, 97, 255} }}, - {{ {80, 24, -3}, 0, {935, 380}, {104, 0, 72, 255} }}, - {{ {78, 23, -2}, 0, {856, 387}, {183, 0, 104, 255} }}, - {{ {78, 20, -2}, 0, {855, 460}, {177, 238, 97, 255} }}, - {{ {80, 20, -3}, 0, {934, 454}, {96, 3, 83, 255} }}, - {{ {79, 17, -3}, 0, {895, 522}, {185, 206, 93, 255} }}, - {{ {81, 18, -3}, 0, {960, 517}, {92, 21, 85, 255} }}, - {{ {81, 15, -3}, 0, {990, 586}, {201, 195, 97, 255} }}, - {{ {82, 15, -3}, 0, {1035, 574}, {93, 44, 74, 255} }}, - {{ {78, 23, -6}, 0, {-1376, 387}, {160, 0, 173, 255} }}, - {{ {80, 24, -6}, 0, {-1455, 380}, {84, 0, 161, 255} }}, - {{ {80, 20, -6}, 0, {-1454, 454}, {73, 3, 152, 255} }}, - {{ {78, 20, -6}, 0, {-1375, 460}, {155, 238, 181, 255} }}, - {{ {80, 18, -6}, 0, {-1480, 517}, {69, 21, 151, 255} }}, - {{ {79, 17, -6}, 0, {-1415, 522}, {165, 206, 183, 255} }}, - {{ {82, 15, -6}, 0, {-1555, 574}, {73, 44, 162, 255} }}, - {{ {81, 15, -6}, 0, {-1510, 586}, {179, 195, 176, 255} }}, - {{ {80, 24, -3}, 0, {991, 380}, {104, 0, 72, 255} }}, - {{ {80, 20, -6}, 0, {834, 454}, {73, 3, 152, 255} }}, - {{ {80, 24, -6}, 0, {834, 380}, {84, 0, 161, 255} }}, - {{ {80, 20, -3}, 0, {991, 454}, {96, 3, 83, 255} }}, - {{ {80, 18, -6}, 0, {848, 517}, {69, 21, 151, 255} }}, - {{ {81, 18, -3}, 0, {977, 517}, {92, 21, 85, 255} }}, - {{ {82, 15, -6}, 0, {863, 574}, {73, 44, 162, 255} }}, - {{ {82, 15, -3}, 0, {962, 574}, {93, 44, 74, 255} }}, - {{ {82, 15, -3}, 0, {1035, 574}, {59, 144, 249, 255} }}, - {{ {81, 15, -3}, 0, {990, 586}, {59, 144, 249, 255} }}, - {{ {81, 15, -6}, 0, {-1510, 586}, {59, 144, 249, 255} }}, - {{ {82, 15, -6}, 0, {-1555, 574}, {59, 144, 249, 255} }}, - {{ {65, 37, -6}, 0, {-781, 77}, {168, 60, 187, 255} }}, - {{ {67, 38, -7}, 0, {-897, 44}, {196, 92, 192, 255} }}, - {{ {67, 33, -7}, 0, {-897, 170}, {245, 166, 167, 255} }}, - {{ {64, 33, -6}, 0, {-737, 170}, {166, 191, 195, 255} }}, - {{ {66, 37, 1}, 0, {1086, 77}, {187, 60, 89, 255} }}, - {{ {65, 37, -6}, 0, {739, 77}, {168, 60, 187, 255} }}, - {{ {64, 33, -6}, 0, {739, 170}, {166, 191, 195, 255} }}, - {{ {65, 33, 1}, 0, {1086, 170}, {183, 191, 81, 255} }}, - {{ {66, 37, 1}, 0, {-781, -177}, {187, 60, 89, 255} }}, - {{ {67, 38, -7}, 0, {-897, -4}, {196, 92, 192, 255} }}, - {{ {65, 37, -6}, 0, {-781, -4}, {168, 60, 187, 255} }}, - {{ {68, 38, 1}, 0, {-897, -177}, {214, 92, 77, 255} }}, - {{ {68, 38, 1}, 0, {377, 44}, {214, 92, 77, 255} }}, - {{ {66, 37, 1}, 0, {260, 77}, {187, 60, 89, 255} }}, - {{ {65, 33, 1}, 0, {217, 170}, {183, 191, 81, 255} }}, - {{ {68, 33, 1}, 0, {377, 170}, {11, 166, 89, 255} }}, - {{ {75, 37, -9}, 0, {697, 70}, {160, 190, 206, 255} }}, - {{ {76, 35, -4}, 0, {913, 111}, {169, 164, 11, 255} }}, - {{ {73, 41, -3}, 0, {913, -4}, {149, 188, 13, 255} }}, - {{ {73, 41, -3}, 0, {951, -11}, {153, 207, 57, 255} }}, - {{ {76, 35, -4}, 0, {913, 111}, {169, 164, 11, 255} }}, - {{ {76, 37, 1}, 0, {1128, 70}, {175, 190, 72, 255} }}, - {{ {73, 41, -3}, 0, {951, -11}, {153, 207, 57, 255} }}, - {{ {73, 42, -2}, 0, {967, -28}, {154, 0, 76, 255} }}, - {{ {77, 42, 3}, 0, {1217, -28}, {177, 0, 99, 255} }}, - {{ {73, 42, -3}, 0, {951, -46}, {153, 49, 57, 255} }}, - {{ {76, 46, 1}, 0, {1128, -127}, {175, 66, 72, 255} }}, - {{ {73, 43, -3}, 0, {913, -53}, {149, 68, 13, 255} }}, - {{ {76, 48, -4}, 0, {913, -168}, {169, 92, 11, 255} }}, - {{ {73, 42, -4}, 0, {874, -46}, {143, 49, 226, 255} }}, - {{ {75, 46, -9}, 0, {697, -127}, {160, 66, 206, 255} }}, - {{ {73, 42, -5}, 0, {858, -28}, {139, 0, 207, 255} }}, - {{ {75, 42, -10}, 0, {608, -28}, {155, 0, 179, 255} }}, - {{ {73, 41, -4}, 0, {874, -11}, {143, 207, 226, 255} }}, - {{ {75, 37, -9}, 0, {697, 70}, {160, 190, 206, 255} }}, - {{ {73, 41, -3}, 0, {913, -4}, {149, 188, 13, 255} }}, - {{ {168, 48, -17}, 0, {-1344, -181}, {126, 0, 241, 255} }}, - {{ {168, 47, -20}, 0, {-1220, -140}, {126, 0, 241, 255} }}, - {{ {168, 50, -18}, 0, {-1286, -212}, {126, 0, 241, 255} }}, - {{ {168, 47, -18}, 0, {-1307, -140}, {126, 0, 241, 255} }}, - {{ {168, 43, -18}, 0, {-1286, -67}, {126, 0, 241, 255} }}, - {{ {168, 45, -17}, 0, {-1344, -98}, {126, 0, 241, 255} }}, - {{ {168, 42, -15}, 0, {-1445, -37}, {126, 0, 241, 255} }}, - {{ {168, 44, -15}, 0, {-1445, -79}, {126, 0, 241, 255} }}, - {{ {169, 43, -11}, 0, {-1604, -67}, {126, 0, 241, 255} }}, - {{ {169, 45, -13}, 0, {-1546, -98}, {126, 0, 241, 255} }}, - {{ {169, 47, -10}, 0, {-1670, -140}, {126, 0, 241, 255} }}, - {{ {169, 47, -12}, 0, {-1583, -140}, {126, 0, 241, 255} }}, - {{ {169, 50, -11}, 0, {-1604, -212}, {126, 0, 241, 255} }}, - {{ {169, 48, -13}, 0, {-1546, -181}, {126, 0, 241, 255} }}, - {{ {168, 51, -15}, 0, {-1445, -243}, {126, 0, 241, 255} }}, - {{ {168, 49, -15}, 0, {-1445, -200}, {126, 0, 241, 255} }}, -}; - -Gfx magnum_Arm_mesh_layer_1_tri_2[] = { - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(4, 3, 0, 0), - gsSP1Triangle(4, 5, 3, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(10, 6, 9, 0), - gsSP1Triangle(10, 9, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 15, 13, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 16, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(7, 6, 8, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(13, 10, 12, 0), - gsSP1Triangle(12, 14, 13, 0), - gsSP1Triangle(12, 15, 14, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 32, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 3, 4, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(5, 8, 6, 0), - gsSP1Triangle(9, 8, 5, 0), - gsSP1Triangle(9, 10, 8, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(11, 13, 14, 0), - gsSP1Triangle(15, 11, 14, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 48, 15, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(3, 5, 6, 0), - gsSP1Triangle(7, 3, 6, 0), - gsSP1Triangle(7, 6, 8, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(9, 11, 12, 0), - gsSP1Triangle(13, 9, 12, 0), - gsSP1Triangle(13, 12, 14, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 63, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(3, 5, 0, 0), - gsSP1Triangle(3, 6, 5, 0), - gsSP1Triangle(5, 7, 0, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(10, 12, 11, 0), - gsSP1Triangle(11, 13, 8, 0), - gsSP1Triangle(11, 14, 13, 0), - gsSP1Triangle(13, 15, 8, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 79, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 0, 3, 0), - gsSP1Triangle(4, 3, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 9, 7, 0), - gsSP1Triangle(9, 10, 7, 0), - gsSP1Triangle(9, 11, 10, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 95, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 7, 5, 0), - gsSP1Triangle(7, 8, 5, 0), - gsSP1Triangle(7, 9, 8, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 12, 13, 0), - gsSP1Triangle(14, 10, 13, 0), - gsSP1Triangle(14, 13, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 111, 15, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 0, 3, 0), - gsSP1Triangle(4, 3, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 9, 7, 0), - gsSP1Triangle(10, 9, 6, 0), - gsSP1Triangle(10, 11, 9, 0), - gsSP1Triangle(11, 12, 9, 0), - gsSP1Triangle(11, 13, 12, 0), - gsSP1Triangle(9, 12, 14, 0), - gsSP1Triangle(9, 14, 7, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 126, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(4, 3, 0, 0), - gsSP1Triangle(4, 5, 3, 0), - gsSP1Triangle(5, 6, 3, 0), - gsSP1Triangle(5, 7, 6, 0), - gsSP1Triangle(3, 6, 8, 0), - gsSP1Triangle(3, 8, 1, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(9, 12, 10, 0), - gsSP1Triangle(13, 12, 9, 0), - gsSP1Triangle(13, 14, 12, 0), - gsSP1Triangle(14, 15, 12, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 142, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(8, 10, 9, 0), - gsSP1Triangle(9, 11, 6, 0), - gsSP1Triangle(9, 12, 11, 0), - gsSP1Triangle(11, 13, 6, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 156, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 0, 2, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(2, 5, 4, 0), - gsSP1Triangle(4, 6, 3, 0), - gsSP1Triangle(3, 7, 0, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(10, 12, 11, 0), - gsSP1Triangle(11, 13, 8, 0), - gsSP1Triangle(11, 14, 13, 0), - gsSP1Triangle(13, 15, 8, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 172, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(4, 3, 0, 0), - gsSP1Triangle(4, 5, 3, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 9, 7, 0), - gsSP1Triangle(10, 9, 6, 0), - gsSP1Triangle(10, 11, 9, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 15, 13, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 188, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(7, 4, 6, 0), - gsSP1Triangle(6, 8, 7, 0), - gsSP1Triangle(6, 9, 8, 0), - gsSP1Triangle(8, 10, 7, 0), - gsSP1Triangle(7, 11, 4, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 204, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 7, 5, 0), - gsSP1Triangle(8, 7, 4, 0), - gsSP1Triangle(8, 4, 9, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 13, 11, 0), - gsSP1Triangle(14, 13, 10, 0), - gsSP1Triangle(14, 10, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 220, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 7, 5, 0), - gsSP1Triangle(5, 7, 8, 0), - gsSP1Triangle(5, 8, 9, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 13, 11, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 234, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(0, 3, 4, 0), - gsSP1Triangle(0, 4, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 13, 11, 0), - gsSP1Triangle(13, 10, 14, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 250, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 7, 5, 0), - gsSP1Triangle(8, 7, 4, 0), - gsSP1Triangle(8, 4, 9, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(10, 9, 11, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(8, 13, 7, 0), - gsSP1Triangle(14, 13, 8, 0), - gsSP1Triangle(14, 15, 13, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 266, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(3, 0, 4, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 3, 5, 0), - gsSP1Triangle(6, 5, 7, 0), - gsSP1Triangle(7, 5, 8, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(9, 8, 10, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(11, 10, 12, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(13, 12, 14, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 282, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(5, 4, 6, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 8, 11, 0), - gsSP1Triangle(12, 11, 13, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 296, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 0, 3, 0), - gsSP1Triangle(4, 3, 5, 0), - gsSP1Triangle(6, 4, 5, 0), - gsSP1Triangle(6, 5, 7, 0), - gsSP1Triangle(7, 5, 8, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(9, 8, 10, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(11, 10, 12, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(13, 12, 14, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 312, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(5, 4, 6, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(9, 8, 11, 0), - gsSP1Triangle(9, 11, 12, 0), - gsSP1Triangle(12, 11, 13, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(14, 13, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 328, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 0, 7, 0), - gsSP1Triangle(7, 0, 8, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 344, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(3, 5, 6, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(7, 9, 10, 0), - gsSP1Triangle(11, 7, 10, 0), - gsSP1Triangle(11, 10, 12, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 360, 15, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 1, 3, 0), - gsSP1Triangle(2, 3, 4, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(5, 7, 8, 0), - gsSP1Triangle(8, 7, 9, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(11, 13, 14, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 375, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 0, 3, 0), - gsSP1Triangle(4, 3, 5, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(7, 6, 8, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(9, 8, 10, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 391, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(11, 10, 12, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 405, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(7, 6, 8, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(9, 8, 10, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 421, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(9, 8, 10, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 437, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(11, 10, 12, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(13, 12, 14, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 453, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(5, 4, 6, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(11, 10, 12, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(13, 12, 14, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 469, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(3, 4, 1, 0), - gsSP1Triangle(3, 5, 4, 0), - gsSP1Triangle(5, 6, 4, 0), - gsSP1Triangle(5, 7, 6, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 485, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 7, 5, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(13, 15, 14, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 501, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(1, 3, 2, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(4, 5, 3, 0), - gsSP1Triangle(4, 6, 5, 0), - gsSP1Triangle(6, 7, 5, 0), - gsSP1Triangle(6, 8, 7, 0), - gsSP1Triangle(8, 9, 7, 0), - gsSP1Triangle(8, 10, 9, 0), - gsSP1Triangle(10, 11, 9, 0), - gsSP1Triangle(10, 12, 11, 0), - gsSP1Triangle(12, 13, 11, 0), - gsSP1Triangle(12, 14, 13, 0), - gsSP1Triangle(14, 15, 13, 0), - gsSPVertex(magnum_Arm_mesh_layer_1_vtx_2 + 517, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(3, 4, 1, 0), - gsSP1Triangle(3, 5, 4, 0), - gsSP1Triangle(5, 6, 4, 0), - gsSP1Triangle(5, 7, 6, 0), - gsSP1Triangle(7, 8, 6, 0), - gsSP1Triangle(7, 9, 8, 0), - gsSP1Triangle(9, 10, 8, 0), - gsSP1Triangle(9, 11, 10, 0), - gsSP1Triangle(11, 12, 10, 0), - gsSP1Triangle(11, 13, 12, 0), - gsSP1Triangle(13, 14, 12, 0), - gsSP1Triangle(13, 15, 14, 0), - gsSP1Triangle(15, 2, 14, 0), - gsSP1Triangle(15, 0, 2, 0), - gsSPEndDisplayList(), -}; - - -Gfx mat_magnum_darkergray[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPSetLights1(magnum_darkergray_lights), - gsDPSetTextureImage(G_IM_FMT_I, G_IM_SIZ_8b_LOAD_BLOCK, 1, magnum_noise_i8), - gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_8b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(7, 0, 0, 511, 512), - gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_8b, 4, 0, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0), - gsDPSetTileSize(0, 0, 0, 124, 124), - gsSPEndDisplayList(), -}; - -Gfx mat_magnum_black_layer1[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), - gsDPSetRenderMode(G_RM_ZB_OPA_SURF, G_RM_ZB_OPA_SURF2), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_magnum_black_layer1[] = { - gsDPPipeSync(), - gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2), - gsSPEndDisplayList(), -}; - -Gfx mat_magnum_metal[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT), - gsSPSetGeometryMode(G_TEXTURE_GEN), - gsSPTexture(4032, 1984, 0, 0, 1), - gsSPSetLights1(magnum_metal_lights), - gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 1, magnum_plat_rgba16), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(7, 0, 0, 2047, 128), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 6, 0), - gsDPSetTileSize(0, 0, 0, 252, 124), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_magnum_metal[] = { - gsDPPipeSync(), - gsSPClearGeometryMode(G_TEXTURE_GEN), - gsSPEndDisplayList(), -}; - -Gfx magnum_Arm_mesh_layer_1[] = { - gsSPDisplayList(mat_magnum_darkergray), - gsSPDisplayList(magnum_Arm_mesh_layer_1_tri_0), - gsSPDisplayList(mat_magnum_black_layer1), - gsSPDisplayList(magnum_Arm_mesh_layer_1_tri_1), - gsSPDisplayList(mat_revert_magnum_black_layer1), - gsSPDisplayList(mat_magnum_metal), - gsSPDisplayList(magnum_Arm_mesh_layer_1_tri_2), - gsSPDisplayList(mat_revert_magnum_metal), - gsSPEndDisplayList(), -}; - -Gfx magnum_material_revert_render_settings[] = { - gsDPPipeSync(), - gsSPSetGeometryMode(G_LIGHTING), - gsSPClearGeometryMode(G_TEXTURE_GEN), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 0), - gsDPSetEnvColor(255, 255, 255, 255), - gsDPSetAlphaCompare(G_AC_NONE), - gsSPEndDisplayList(), -}; - diff --git a/mods/gun-mod/actors/magnum/noise.i8.png b/mods/gun-mod/actors/magnum/noise.i8.png deleted file mode 100644 index 24b775e3..00000000 Binary files a/mods/gun-mod/actors/magnum/noise.i8.png and /dev/null differ diff --git a/mods/gun-mod/actors/magnum/plat.rgba16.png b/mods/gun-mod/actors/magnum/plat.rgba16.png deleted file mode 100644 index 2e58c569..00000000 Binary files a/mods/gun-mod/actors/magnum/plat.rgba16.png and /dev/null differ diff --git a/mods/gun-mod/actors/pistol/geo.inc.c b/mods/gun-mod/actors/pistol/geo.inc.c deleted file mode 100644 index d60616ee..00000000 --- a/mods/gun-mod/actors/pistol/geo.inc.c +++ /dev/null @@ -1,24 +0,0 @@ -#include "src/game/envfx_snow.h" - -const GeoLayout pistol_geo[] = { - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_SCALE(LAYER_FORCE, 65536), - GEO_OPEN_NODE(), - GEO_ASM(0, geo_mario_set_player_colors), - GEO_ASM(8, geo_mario_set_player_colors), - GEO_SWITCH_CASE(0, geo_switch_anim_state), - GEO_OPEN_NODE(), - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 0, -45, 0, NULL), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 25, 0, 0, pistol_Arm_mesh_layer_1), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_DISPLAY_LIST(LAYER_OPAQUE, pistol_material_revert_render_settings), - GEO_CLOSE_NODE(), - GEO_END(), -}; diff --git a/mods/gun-mod/actors/pistol/geo_header.h b/mods/gun-mod/actors/pistol/geo_header.h deleted file mode 100644 index 361dc3d0..00000000 --- a/mods/gun-mod/actors/pistol/geo_header.h +++ /dev/null @@ -1,16 +0,0 @@ -extern const GeoLayout pistol_geo[]; -extern Lights1 pistol_gray_lights; -extern Lights1 pistol_darkergray_lights; -extern u8 pistol_noise_i8[]; -extern Vtx pistol_Arm_mesh_layer_1_vtx_0[174]; -extern Gfx pistol_Arm_mesh_layer_1_tri_0[]; -extern Vtx pistol_Arm_mesh_layer_1_vtx_1[34]; -extern Gfx pistol_Arm_mesh_layer_1_tri_1[]; -extern Vtx pistol_Arm_mesh_layer_1_vtx_2[6]; -extern Gfx pistol_Arm_mesh_layer_1_tri_2[]; -extern Gfx mat_pistol_gray[]; -extern Gfx mat_pistol_darkergray[]; -extern Gfx mat_pistol_black_layer1[]; -extern Gfx mat_revert_pistol_black_layer1[]; -extern Gfx pistol_Arm_mesh_layer_1[]; -extern Gfx pistol_material_revert_render_settings[]; diff --git a/mods/gun-mod/actors/pistol/model.inc.c b/mods/gun-mod/actors/pistol/model.inc.c deleted file mode 100644 index 4a395245..00000000 --- a/mods/gun-mod/actors/pistol/model.inc.c +++ /dev/null @@ -1,575 +0,0 @@ -Lights1 pistol_gray_lights = gdSPDefLights1( - 0x53, 0x53, 0x53, - 0xAA, 0xAA, 0xAA, 0x28, 0x28, 0x28); - -Lights1 pistol_darkergray_lights = gdSPDefLights1( - 0xF, 0xF, 0xF, - 0x2A, 0x2A, 0x2A, 0x28, 0x28, 0x28); - -Gfx pistol_noise_i8_aligner[] = {gsSPEndDisplayList()}; -u8 pistol_noise_i8[] = { - 0xfa, 0xff, 0xf1, 0xf7, 0xf6, 0xf0, 0xff, 0xff, - 0xf7, 0xf7, 0xff, 0xff, 0xdb, 0xff, 0xcc, 0xfa, - 0xd1, 0xff, 0xff, 0xf5, 0xde, 0xf7, 0xe4, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xce, - 0xfc, 0xf7, 0xff, 0xff, 0xe9, 0xd7, 0xff, 0xff, - 0xff, 0xe3, 0xff, 0xff, 0xce, 0xff, 0xfe, 0xff, - 0xff, 0xf9, 0xe2, 0xf4, 0xde, 0xf6, 0xf8, 0xff, - 0xf6, 0xea, 0xf1, 0xff, 0xff, 0xf6, 0xf3, 0xdf, - 0xbe, 0xff, 0xff, 0xf4, 0xee, 0xf2, 0xff, 0xff, - 0xff, 0xff, 0xf9, 0xff, 0xde, 0xf7, 0xe6, 0xf9, - 0xff, 0xff, 0xfc, 0xf0, 0xff, 0xeb, 0xf1, 0xff, - 0xff, 0xfd, 0xea, 0xde, 0xdc, 0xec, 0xd3, 0xff, - 0xff, 0xff, 0xff, 0xcd, 0xff, 0xff, 0xff, 0xc9, - 0xd9, 0xf6, 0xff, 0xdc, 0xff, 0xff, 0xf7, 0xe0, - 0xff, 0xd9, 0xd4, 0xff, 0xed, 0xff, 0xff, 0xff, - 0xed, 0xd8, 0xff, 0xff, 0xef, 0xeb, 0xb6, 0xff, - 0xf9, 0xff, 0xff, 0xf1, 0xd6, 0xe7, 0xde, 0xe9, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xf5, 0xff, 0xff, - 0xd0, 0xff, 0xff, 0xff, 0xea, 0xff, 0xe3, 0xdf, - 0xff, 0xff, 0xff, 0xf6, 0xff, 0xe7, 0xff, 0xff, - 0xd1, 0xff, 0xeb, 0xef, 0xec, 0xfe, 0xff, 0xff, - 0xff, 0xd5, 0xde, 0xff, 0xeb, 0xff, 0xfe, 0xcf, - 0xff, 0xf4, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, - 0xff, 0xff, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xca, 0xfd, 0xff, 0xe7, 0xff, 0xff, 0xff, 0xda, - 0xff, 0xb3, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xf8, 0xf2, 0xf9, 0xe5, 0xde, 0xe0, 0xff, 0xcb, - 0xf1, 0xe5, 0xed, 0xe1, 0xcb, 0xc4, 0xef, 0xd9, - 0xff, 0xc1, 0xf3, 0xff, 0xf4, 0xef, 0xff, 0xff, - 0xff, 0xff, 0xf1, 0xff, 0xf8, 0xff, 0xfb, 0xff, - 0xff, 0xff, 0xfd, 0xff, 0xfc, 0xff, 0xf8, 0xff, - 0xfa, 0xe9, 0xff, 0xff, 0xfe, 0xce, 0xff, 0xe8, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xc6, - 0xed, 0xff, 0xff, 0xe9, 0xe4, 0xe2, 0xf3, 0xd5, - 0xff, 0xff, 0xff, 0xe4, 0xf0, 0xff, 0xff, 0xff, - 0xef, 0xf5, 0xf8, 0xff, 0xfa, 0xf0, 0xff, 0xc6, - 0xf2, 0xff, 0xfb, 0xff, 0xfd, 0xe4, 0xff, 0xed, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd7, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xea, 0xf6, 0xff, - 0xf7, 0xff, 0xe5, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xe2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xf4, 0xff, 0xf9, 0xf7, 0xff, 0xee, 0xf0, 0xf8, - 0xf9, 0xff, 0xff, 0xff, 0xe2, 0xff, 0xe0, 0xff, - 0xf0, 0xfc, 0xe8, 0xff, 0xff, 0xf4, 0xff, 0xe6, - 0xbc, 0xfa, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xff, - 0xf8, 0xd3, 0xff, 0xff, 0xe5, 0xd9, 0xf6, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf5, - 0xde, 0xff, 0xee, 0xff, 0xe6, 0xe6, 0xff, 0xc9, - 0xff, 0xff, 0xf2, 0xd0, 0xf4, 0xff, 0xfe, 0xe6, - 0xfe, 0xd4, 0xff, 0xe8, 0xff, 0xfb, 0xff, 0xff, - 0xff, 0xff, 0xd5, 0xff, 0xf9, 0xfc, 0xf3, 0xb9, - 0xf9, 0xf9, 0xf9, 0xea, 0xff, 0xff, 0xff, 0xff, - 0xeb, 0xf0, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xfd, - 0xff, 0xff, 0xfe, 0xfc, 0xf3, 0xfb, 0xfd, 0xff, - 0xff, 0xe9, 0xde, 0xff, 0xf2, 0xee, 0xff, 0xf4, - 0xff, 0xf9, 0xff, 0xf2, 0xff, 0xf2, 0xff, 0xd2, - 0xff, 0xe2, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf4, 0xd5, - 0xff, 0xff, 0xe5, 0xfd, 0xeb, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xe5, 0xff, 0xed, 0xff, 0xf6, 0xfb, - 0xff, 0xf4, 0xf1, 0xf9, 0xd5, 0xd8, 0xff, 0xff, - 0xff, 0xf5, 0xf5, 0xe2, 0xdf, 0xfd, 0xff, 0xea, - 0xee, 0xff, 0xd2, 0xff, 0xff, 0xff, 0xff, 0xed, - 0xff, 0xff, 0xfa, 0xe8, 0xf7, 0xcc, 0xf4, 0xef, - 0xf7, 0xff, 0xe8, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xe7, 0xff, 0xe9, 0xd5, 0xda, 0xff, 0xff, 0xf8, - 0xe6, 0xf9, 0xf2, 0xfc, 0xff, 0xff, 0xff, 0xed, - 0xff, 0xff, 0xf5, 0xff, 0xe0, 0xed, 0xff, 0xf4, - 0xff, 0xf5, 0xff, 0xfd, 0xfa, 0xf9, 0xd6, 0xee, - 0xe8, 0xff, 0xff, 0xe7, 0xed, 0xff, 0xf4, 0xfc, - 0xff, 0xff, 0xfd, 0xf7, 0xff, 0xfe, 0xff, 0xf0, - 0xff, 0xff, 0xef, 0xf4, 0xe3, 0xee, 0xff, 0xf5, - 0xfa, 0xff, 0xff, 0xff, 0xd3, 0xd6, 0xff, 0xd3, - 0xfa, 0xed, 0xf5, 0xe9, 0xff, 0xe7, 0xff, 0xa3, - 0xed, 0xff, 0xfe, 0xff, 0xea, 0xff, 0xfd, 0xff, - 0xf6, 0xff, 0xe6, 0xff, 0xff, 0xff, 0xff, 0xfa, - 0xd8, 0xff, 0xff, 0xf7, 0xff, 0xfe, 0xdf, 0xf6, - 0xff, 0xf0, 0xff, 0xff, 0xff, 0xdd, 0xff, 0xd6, - 0xff, 0xeb, 0xff, 0xf1, 0xfe, 0xff, 0xff, 0xff, - 0xff, 0xef, 0xe8, 0xfe, 0xfa, 0xdc, 0xff, 0xff, - 0xfc, 0xff, 0xfd, 0xff, 0xf2, 0xf0, 0xff, 0xd6, - 0xff, 0xf4, 0xff, 0xe3, 0xff, 0xe6, 0xff, 0xff, - 0xf7, 0xca, 0xde, 0xff, 0xf7, 0xd3, 0xff, 0xf2, - 0xea, 0xff, 0xff, 0xe7, 0xff, 0xff, 0xff, 0xff, - 0xf9, 0xff, 0xf6, 0xf1, 0xec, 0xff, 0xff, 0xff, - 0xf1, 0xfb, 0xff, 0xf8, 0xff, 0xe2, 0xff, 0xff, - 0xff, 0xe6, 0xfe, 0xff, 0xe9, 0xed, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xe9, - 0xe2, 0xec, 0xff, 0xff, 0xf3, 0xf9, 0xff, 0xff, - 0xfc, 0xff, 0xff, 0xc4, 0xfc, 0xe6, 0xff, 0xd1, - 0xff, 0xff, 0xff, 0xdd, 0xff, 0xff, 0xd0, 0xff, - 0xff, 0xff, 0xf9, 0xff, 0xff, 0xfe, 0xff, 0xf8, - 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, - 0xff, 0xff, 0xff, 0xf0, 0xf9, 0xff, 0xff, 0xff, - 0xbc, 0xff, 0xff, 0xcb, 0xff, 0xde, 0xff, 0xe7, - 0xff, 0xfc, 0xff, 0xf3, 0xff, 0xeb, 0xbf, 0xff, - 0xff, 0xef, 0xe7, 0xff, 0xf4, 0xff, 0xff, 0xff, - 0xeb, 0xf4, 0xff, 0xec, 0xff, 0xff, 0xff, 0xed, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xd8, 0xe2, 0xff, - 0xf4, 0xf0, 0xff, 0xf8, 0xff, 0xff, 0xf2, 0xff, - 0xff, 0xff, 0xdf, 0xff, 0xfb, 0xff, 0xff, 0xff, - 0xff, 0xea, 0xbf, 0xf7, 0xff, 0xff, 0xff, 0xde, - 0xf9, 0xb3, 0xf3, 0xf1, 0xe6, 0xe4, 0xdb, 0xff, - 0xf2, 0xff, 0xfd, 0xff, 0xff, 0xf3, 0xf6, 0xde, - 0xff, 0xf4, 0xfa, 0xea, 0xf2, 0xf1, 0xea, 0xff, - 0xea, 0xf5, 0xe8, 0xff, 0xef, 0xe8, 0xc9, 0xff, - 0xff, 0xff, 0xe0, 0xed, 0xff, 0xff, 0xe5, 0xff, - 0xff, 0xff, 0xf6, 0xf4, 0xe5, 0xc6, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xfc, 0xba, 0xea, 0xed, - 0xff, 0xfd, 0xff, 0xf9, 0xe9, 0xf8, 0xff, 0xff, - 0xff, 0xfb, 0xe9, 0xff, 0xff, 0xfe, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, - 0xda, 0xdd, 0xff, 0xff, 0xff, 0xda, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xdd, 0xf0, 0xc7, 0xe7, 0xff, - 0xf8, 0xde, 0xf9, 0xff, 0xff, 0xff, 0xf8, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xec, 0xff, - 0xd5, 0xfb, 0xfd, 0xff, 0xeb, 0xd9, 0xff, 0xbb, - 0xff, 0xff, 0xff, 0xff, 0xdd, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xfb, 0xfe, 0xec, 0xff, 0xea, 0xdd, - 0xff, 0xda, 0xff, 0xe6, 0xef, 0xff, 0xff, 0xff, - 0xff, 0xf8, 0xff, 0xe3, 0xff, 0xff, 0xe6, 0xff, - 0xbb, 0xed, 0xff, 0xfc, 0xec, 0xff, 0xf7, 0xfb, - 0xfe, 0xf5, 0xe5, 0xd5, 0xff, 0xff, 0xef, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xff, - 0xff, 0xdf, 0xff, 0xff, 0xff, 0xf2, 0xff, 0xff, - 0xff, 0xd2, 0xff, 0xff, 0xff, 0xe4, 0xfe, 0xff, - 0xff, 0xff, 0xff, 0xce, 0xff, 0xeb, 0xef, 0xfd, - 0xfc, 0xe5, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xf0, - -}; - -Vtx pistol_Arm_mesh_layer_1_vtx_0[174] = { - {{ {43, 30, -1}, 0, {-304, 922}, {0, 0, 129, 255} }}, - {{ {34, 42, -1}, 0, {181, 1299}, {0, 0, 129, 255} }}, - {{ {47, 39, -1}, 0, {63, 771}, {0, 0, 129, 255} }}, - {{ {43, 30, 4}, 0, {272, 922}, {0, 0, 127, 255} }}, - {{ {47, 39, 4}, 0, {-95, 771}, {0, 0, 127, 255} }}, - {{ {34, 42, 4}, 0, {-213, 1299}, {0, 0, 127, 255} }}, - {{ {74, 19, 0}, 0, {-306, 916}, {195, 187, 168, 255} }}, - {{ {77, 14, 1}, 0, {-492, 797}, {195, 187, 168, 255} }}, - {{ {72, 19, 1}, 0, {-306, 1008}, {195, 187, 168, 255} }}, - {{ {77, 14, 1}, 0, {-16, 1484}, {107, 68, 0, 255} }}, - {{ {74, 19, 0}, 0, {46, 1298}, {107, 68, 0, 255} }}, - {{ {74, 19, 3}, 0, {-78, 1298}, {107, 68, 0, 255} }}, - {{ {77, 14, 1}, 0, {460, 797}, {195, 187, 88, 255} }}, - {{ {74, 19, 3}, 0, {274, 916}, {195, 187, 88, 255} }}, - {{ {72, 19, 1}, 0, {274, 1008}, {195, 187, 88, 255} }}, - {{ {70, 13, 4}, 0, {-119, 331}, {237, 209, 117, 255} }}, - {{ {70, 13, -1}, 0, {87, 331}, {237, 209, 139, 255} }}, - {{ {82, 13, -1}, 0, {87, -181}, {23, 208, 141, 255} }}, - {{ {82, 13, 4}, 0, {-119, -181}, {23, 208, 115, 255} }}, - {{ {65, 18, 4}, 0, {87, 1267}, {218, 219, 115, 255} }}, - {{ {70, 13, -1}, 0, {-119, 1472}, {237, 209, 139, 255} }}, - {{ {70, 13, 4}, 0, {87, 1472}, {237, 209, 117, 255} }}, - {{ {65, 18, -1}, 0, {-119, 1267}, {218, 219, 141, 255} }}, - {{ {70, 14, 2}, 0, {-16, 314}, {49, 117, 0, 255} }}, - {{ {70, 13, 4}, 0, {87, 331}, {237, 209, 117, 255} }}, - {{ {82, 13, 4}, 0, {87, -181}, {23, 208, 115, 255} }}, - {{ {82, 14, 2}, 0, {-16, -162}, {201, 115, 0, 255} }}, - {{ {70, 13, -1}, 0, {-119, 331}, {237, 209, 139, 255} }}, - {{ {82, 13, -1}, 0, {-119, -181}, {23, 208, 141, 255} }}, - {{ {66, 18, 2}, 0, {-16, 1251}, {91, 89, 0, 255} }}, - {{ {65, 18, 4}, 0, {-119, 1267}, {218, 219, 115, 255} }}, - {{ {70, 13, 4}, 0, {-119, 1472}, {237, 209, 117, 255} }}, - {{ {70, 14, 2}, 0, {-16, 1432}, {49, 117, 0, 255} }}, - {{ {65, 18, -1}, 0, {87, 1267}, {218, 219, 141, 255} }}, - {{ {70, 13, -1}, 0, {87, 1472}, {237, 209, 139, 255} }}, - {{ {82, 14, 2}, 0, {-16, 1432}, {201, 115, 0, 255} }}, - {{ {82, 13, 4}, 0, {87, 1472}, {23, 208, 115, 255} }}, - {{ {86, 18, 4}, 0, {87, 1267}, {44, 241, 118, 255} }}, - {{ {86, 18, 2}, 0, {-16, 1253}, {136, 42, 0, 255} }}, - {{ {86, 27, 4}, 0, {87, 884}, {22, 0, 125, 255} }}, - {{ {86, 27, 2}, 0, {-16, 884}, {129, 0, 0, 255} }}, - {{ {86, 18, -1}, 0, {-119, 1267}, {44, 241, 138, 255} }}, - {{ {86, 27, -1}, 0, {-119, 884}, {22, 0, 131, 255} }}, - {{ {82, 13, -1}, 0, {-119, 1472}, {23, 208, 141, 255} }}, - {{ {82, 13, 4}, 0, {-119, 1472}, {23, 208, 115, 255} }}, - {{ {82, 13, -1}, 0, {87, 1472}, {23, 208, 141, 255} }}, - {{ {86, 18, -1}, 0, {87, 1267}, {44, 241, 138, 255} }}, - {{ {86, 18, 4}, 0, {-119, 1267}, {44, 241, 118, 255} }}, - {{ {86, 27, -1}, 0, {87, 884}, {22, 0, 131, 255} }}, - {{ {86, 27, 4}, 0, {-119, 884}, {22, 0, 125, 255} }}, - {{ {127, 28, -2}, 0, {127, 827}, {84, 236, 163, 255} }}, - {{ {127, 33, -4}, 0, {209, 647}, {71, 56, 167, 255} }}, - {{ {127, 33, 7}, 0, {-241, 647}, {71, 56, 89, 255} }}, - {{ {127, 28, 5}, 0, {-159, 827}, {84, 236, 93, 255} }}, - {{ {127, 24, -2}, 0, {127, 1008}, {73, 183, 183, 255} }}, - {{ {127, 24, 5}, 0, {-159, 1008}, {73, 183, 73, 255} }}, - {{ {108, 33, 7}, 0, {209, -1241}, {10, 77, 101, 255} }}, - {{ {127, 33, 7}, 0, {209, -2006}, {71, 56, 89, 255} }}, - {{ {127, 33, -4}, 0, {-241, -2006}, {71, 56, 167, 255} }}, - {{ {38, 33, -4}, 0, {-241, 1660}, {183, 73, 183, 255} }}, - {{ {38, 33, -4}, 0, {-241, 1660}, {183, 73, 183, 255} }}, - {{ {38, 33, 7}, 0, {209, 1660}, {183, 73, 73, 255} }}, - {{ {108, 33, 7}, 0, {209, -1241}, {10, 77, 101, 255} }}, - {{ {102, 24, -4}, 0, {-16, -982}, {12, 167, 166, 255} }}, - {{ {38, 24, -4}, 0, {-16, 1660}, {183, 183, 183, 255} }}, - {{ {38, 33, -4}, 0, {345, 1660}, {183, 73, 183, 255} }}, - {{ {108, 33, -4}, 0, {345, -1241}, {9, 232, 132, 255} }}, - {{ {127, 33, -4}, 0, {345, -2006}, {71, 56, 167, 255} }}, - {{ {108, 28, -2}, 0, {165, -1241}, {26, 229, 135, 255} }}, - {{ {127, 28, -2}, 0, {165, -2006}, {84, 236, 163, 255} }}, - {{ {108, 24, -2}, 0, {-16, -1241}, {19, 164, 170, 255} }}, - {{ {127, 24, -2}, 0, {-16, -2006}, {73, 183, 183, 255} }}, - {{ {38, 24, 7}, 0, {209, 1008}, {183, 183, 73, 255} }}, - {{ {38, 33, 7}, 0, {209, 647}, {183, 73, 73, 255} }}, - {{ {38, 33, -4}, 0, {-241, 647}, {183, 73, 183, 255} }}, - {{ {38, 24, -4}, 0, {-241, 1008}, {183, 183, 183, 255} }}, - {{ {108, 24, -2}, 0, {127, -1241}, {19, 164, 170, 255} }}, - {{ {127, 24, -2}, 0, {127, -2006}, {73, 183, 183, 255} }}, - {{ {127, 24, 5}, 0, {-159, -2006}, {73, 183, 73, 255} }}, - {{ {108, 24, 5}, 0, {-159, -1241}, {19, 164, 86, 255} }}, - {{ {38, 24, 7}, 0, {-241, 1660}, {183, 183, 73, 255} }}, - {{ {102, 24, 7}, 0, {-241, -982}, {12, 167, 90, 255} }}, - {{ {102, 24, -4}, 0, {209, -982}, {12, 167, 166, 255} }}, - {{ {38, 24, -4}, 0, {209, 1660}, {183, 183, 183, 255} }}, - {{ {102, 24, 7}, 0, {-16, -982}, {12, 167, 90, 255} }}, - {{ {38, 33, 7}, 0, {-377, 1660}, {183, 73, 73, 255} }}, - {{ {38, 24, 7}, 0, {-16, 1660}, {183, 183, 73, 255} }}, - {{ {108, 33, 7}, 0, {-377, -1241}, {10, 77, 101, 255} }}, - {{ {108, 24, 5}, 0, {-16, -1241}, {19, 164, 86, 255} }}, - {{ {108, 28, 5}, 0, {-197, -1241}, {26, 229, 121, 255} }}, - {{ {127, 24, 5}, 0, {-16, -2006}, {73, 183, 73, 255} }}, - {{ {127, 28, 5}, 0, {-197, -2006}, {84, 236, 93, 255} }}, - {{ {127, 28, 5}, 0, {-197, -2006}, {84, 236, 93, 255} }}, - {{ {127, 33, 7}, 0, {-377, -2006}, {71, 56, 89, 255} }}, - {{ {108, 33, 7}, 0, {-377, -1241}, {10, 77, 101, 255} }}, - {{ {86, 36, -3}, 0, {480, -347}, {179, 205, 169, 255} }}, - {{ {86, 40, -3}, 0, {664, -347}, {179, 51, 169, 255} }}, - {{ {130, 40, -3}, 0, {664, -2149}, {0, 64, 146, 255} }}, - {{ {130, 36, -3}, 0, {480, -2149}, {0, 192, 146, 255} }}, - {{ {86, 40, -3}, 0, {-176, -347}, {179, 51, 169, 255} }}, - {{ {130, 43, 2}, 0, {-16, -2149}, {0, 127, 0, 255} }}, - {{ {130, 40, -3}, 0, {-176, -2149}, {0, 64, 146, 255} }}, - {{ {86, 43, 2}, 0, {-16, -347}, {178, 101, 0, 255} }}, - {{ {130, 40, 6}, 0, {144, -2149}, {0, 64, 110, 255} }}, - {{ {86, 40, 6}, 0, {144, -347}, {179, 51, 87, 255} }}, - {{ {86, 34, 2}, 0, {-16, -347}, {178, 155, 0, 255} }}, - {{ {86, 36, -3}, 0, {144, -347}, {179, 205, 169, 255} }}, - {{ {130, 36, -3}, 0, {144, -2149}, {0, 192, 146, 255} }}, - {{ {86, 34, 2}, 0, {-16, -347}, {178, 155, 0, 255} }}, - {{ {130, 36, -3}, 0, {144, -2149}, {0, 192, 146, 255} }}, - {{ {130, 34, 2}, 0, {-16, -2149}, {0, 129, 0, 255} }}, - {{ {86, 36, 6}, 0, {-176, -347}, {179, 205, 87, 255} }}, - {{ {130, 36, 6}, 0, {-176, -2149}, {0, 192, 110, 255} }}, - {{ {86, 43, 2}, 0, {-16, 235}, {178, 101, 0, 255} }}, - {{ {86, 40, -3}, 0, {-176, 328}, {179, 51, 169, 255} }}, - {{ {86, 36, -3}, 0, {-176, 512}, {179, 205, 169, 255} }}, - {{ {86, 36, 6}, 0, {144, 512}, {179, 205, 87, 255} }}, - {{ {86, 34, 2}, 0, {-16, 604}, {178, 155, 0, 255} }}, - {{ {86, 40, 6}, 0, {144, 328}, {179, 51, 87, 255} }}, - {{ {86, 40, 6}, 0, {-696, -347}, {179, 51, 87, 255} }}, - {{ {86, 36, 6}, 0, {-512, -347}, {179, 205, 87, 255} }}, - {{ {130, 36, 6}, 0, {-512, -2149}, {0, 192, 110, 255} }}, - {{ {130, 40, 6}, 0, {-696, -2149}, {0, 64, 110, 255} }}, - {{ {38, 33, 7}, 0, {209, 2872}, {0, 127, 0, 255} }}, - {{ {127, 33, 7}, 0, {209, -794}, {0, 127, 0, 255} }}, - {{ {127, 33, -4}, 0, {-241, -794}, {0, 127, 0, 255} }}, - {{ {38, 33, -4}, 0, {-241, 2872}, {0, 127, 0, 255} }}, - {{ {38, 33, 7}, 0, {190, 2872}, {161, 26, 81, 255} }}, - {{ {127, 33, 7}, 0, {190, -794}, {90, 0, 90, 255} }}, - {{ {127, 42, 7}, 0, {-172, -794}, {77, 51, 87, 255} }}, - {{ {40, 42, 7}, 0, {-172, 2770}, {187, 66, 83, 255} }}, - {{ {127, 42, 7}, 0, {-241, 852}, {77, 51, 87, 255} }}, - {{ {127, 33, 7}, 0, {-241, 1214}, {90, 0, 90, 255} }}, - {{ {127, 33, -4}, 0, {209, 1214}, {90, 0, 166, 255} }}, - {{ {127, 42, -4}, 0, {209, 852}, {77, 51, 169, 255} }}, - {{ {127, 45, 2}, 0, {-16, 721}, {78, 101, 0, 255} }}, - {{ {127, 33, -4}, 0, {-222, -794}, {90, 0, 166, 255} }}, - {{ {38, 33, -4}, 0, {-222, 2872}, {161, 26, 175, 255} }}, - {{ {40, 42, -4}, 0, {140, 2770}, {187, 66, 173, 255} }}, - {{ {127, 33, -4}, 0, {-222, -794}, {90, 0, 166, 255} }}, - {{ {40, 42, -4}, 0, {140, 2770}, {187, 66, 173, 255} }}, - {{ {127, 42, -4}, 0, {140, -794}, {77, 51, 169, 255} }}, - {{ {40, 42, -4}, 0, {-241, 852}, {187, 66, 173, 255} }}, - {{ {38, 33, -4}, 0, {-241, 1214}, {161, 26, 175, 255} }}, - {{ {38, 33, 7}, 0, {209, 1214}, {161, 26, 81, 255} }}, - {{ {40, 42, 7}, 0, {209, 852}, {187, 66, 83, 255} }}, - {{ {127, 45, 2}, 0, {-16, -794}, {78, 101, 0, 255} }}, - {{ {127, 42, -4}, 0, {-241, -794}, {77, 51, 169, 255} }}, - {{ {40, 42, -4}, 0, {-241, 2770}, {187, 66, 173, 255} }}, - {{ {44, 45, 2}, 0, {-16, 2626}, {227, 124, 0, 255} }}, - {{ {40, 42, 7}, 0, {209, 2770}, {187, 66, 83, 255} }}, - {{ {127, 42, 7}, 0, {209, -794}, {77, 51, 87, 255} }}, - {{ {47, 39, -1}, 0, {-104, 771}, {27, 124, 0, 255} }}, - {{ {34, 42, -1}, 0, {-104, 1299}, {27, 124, 0, 255} }}, - {{ {34, 42, 4}, 0, {72, 1299}, {27, 124, 0, 255} }}, - {{ {47, 39, -1}, 0, {-104, 771}, {27, 124, 0, 255} }}, - {{ {34, 42, 4}, 0, {72, 1299}, {27, 124, 0, 255} }}, - {{ {47, 39, 4}, 0, {72, 771}, {27, 124, 0, 255} }}, - {{ {34, 42, -1}, 0, {-104, 811}, {155, 178, 0, 255} }}, - {{ {43, 30, -1}, 0, {-104, 1296}, {155, 178, 0, 255} }}, - {{ {43, 30, 4}, 0, {72, 1296}, {155, 178, 0, 255} }}, - {{ {34, 42, 4}, 0, {72, 811}, {155, 178, 0, 255} }}, - {{ {74, 26, 3}, 0, {-16, 916}, {183, 0, 104, 255} }}, - {{ {72, 26, 1}, 0, {-16, 1008}, {183, 0, 104, 255} }}, - {{ {72, 19, 1}, 0, {274, 1008}, {183, 0, 104, 255} }}, - {{ {74, 19, 3}, 0, {274, 916}, {183, 0, 104, 255} }}, - {{ {72, 26, 1}, 0, {-16, 1008}, {183, 0, 152, 255} }}, - {{ {74, 26, 0}, 0, {-16, 916}, {183, 0, 152, 255} }}, - {{ {74, 19, 0}, 0, {-306, 916}, {183, 0, 152, 255} }}, - {{ {72, 19, 1}, 0, {-306, 1008}, {183, 0, 152, 255} }}, - {{ {74, 19, 0}, 0, {46, 1298}, {127, 0, 0, 255} }}, - {{ {74, 26, 0}, 0, {46, 1008}, {127, 0, 0, 255} }}, - {{ {74, 26, 3}, 0, {-78, 1008}, {127, 0, 0, 255} }}, - {{ {74, 19, 3}, 0, {-78, 1298}, {127, 0, 0, 255} }}, -}; - -Gfx pistol_Arm_mesh_layer_1_tri_0[] = { - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 0, 15, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 15, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 7, 5, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 8, 11, 0), - gsSP1Triangle(12, 11, 13, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 29, 15, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 0, 3, 0), - gsSP1Triangle(4, 3, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(9, 8, 10, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(12, 9, 11, 0), - gsSP1Triangle(12, 11, 13, 0), - gsSP1Triangle(14, 9, 12, 0), - gsSP1Triangle(14, 6, 9, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 44, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(9, 10, 6, 0), - gsSP1Triangle(9, 11, 10, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 60, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(5, 6, 3, 0), - gsSP1Triangle(5, 7, 6, 0), - gsSP1Triangle(8, 6, 7, 0), - gsSP1Triangle(8, 7, 9, 0), - gsSP1Triangle(10, 8, 9, 0), - gsSP1Triangle(10, 9, 11, 0), - gsSP1Triangle(6, 8, 10, 0), - gsSP1Triangle(6, 10, 3, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 76, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(3, 4, 0, 0), - gsSP1Triangle(3, 5, 4, 0), - gsSP1Triangle(4, 6, 0, 0), - gsSP1Triangle(4, 7, 6, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 11, 9, 0), - gsSP1Triangle(12, 11, 8, 0), - gsSP1Triangle(12, 13, 11, 0), - gsSP1Triangle(14, 13, 12, 0), - gsSP1Triangle(14, 15, 13, 0), - gsSP1Triangle(15, 11, 13, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 92, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(3, 5, 6, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(7, 10, 8, 0), - gsSP1Triangle(10, 11, 8, 0), - gsSP1Triangle(10, 12, 11, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 108, 15, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 0, 2, 0), - gsSP1Triangle(3, 2, 4, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(5, 7, 8, 0), - gsSP1Triangle(7, 9, 8, 0), - gsSP1Triangle(8, 10, 5, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(11, 13, 14, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 123, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(11, 12, 8, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 139, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(3, 5, 6, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(7, 9, 10, 0), - gsSP1Triangle(10, 9, 11, 0), - gsSP1Triangle(12, 10, 11, 0), - gsSP1Triangle(12, 7, 10, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 155, 15, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(3, 5, 6, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(7, 9, 10, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(11, 13, 14, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_0 + 170, 4, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSPEndDisplayList(), -}; - -Vtx pistol_Arm_mesh_layer_1_vtx_1[34] = { - {{ {56, -22, -3}, 0, {168, 2906}, {127, 0, 0, 255} }}, - {{ {56, -14, -3}, 0, {168, 2582}, {127, 0, 0, 255} }}, - {{ {56, -14, 6}, 0, {-200, 2582}, {127, 0, 0, 255} }}, - {{ {56, -22, 6}, 0, {-200, 2906}, {127, 0, 0, 255} }}, - {{ {56, -14, -3}, 0, {-1590, 906}, {0, 0, 129, 255} }}, - {{ {56, -22, -3}, 0, {-1914, 906}, {0, 0, 129, 255} }}, - {{ {30, -14, -3}, 0, {-1590, 1971}, {0, 0, 129, 255} }}, - {{ {41, 20, -3}, 0, {-173, 1528}, {0, 0, 129, 255} }}, - {{ {68, 24, -3}, 0, {-16, 414}, {0, 0, 129, 255} }}, - {{ {39, 24, -3}, 0, {-16, 1602}, {0, 0, 129, 255} }}, - {{ {68, 24, 6}, 0, {-200, 1008}, {121, 218, 0, 255} }}, - {{ {56, -14, 6}, 0, {-200, 2582}, {121, 218, 0, 255} }}, - {{ {56, -14, -3}, 0, {168, 2582}, {121, 218, 0, 255} }}, - {{ {68, 24, -3}, 0, {168, 1008}, {121, 218, 0, 255} }}, - {{ {30, -14, 6}, 0, {-200, 1971}, {219, 134, 0, 255} }}, - {{ {30, -14, -3}, 0, {168, 1971}, {219, 134, 0, 255} }}, - {{ {56, -22, -3}, 0, {168, 906}, {219, 134, 0, 255} }}, - {{ {56, -22, 6}, 0, {-200, 906}, {219, 134, 0, 255} }}, - {{ {30, -14, 6}, 0, {168, 2582}, {135, 38, 0, 255} }}, - {{ {41, 20, -3}, 0, {-200, 1165}, {135, 38, 0, 255} }}, - {{ {30, -14, -3}, 0, {-200, 2582}, {135, 38, 0, 255} }}, - {{ {41, 20, 6}, 0, {168, 1165}, {135, 38, 0, 255} }}, - {{ {39, 24, -3}, 0, {-200, 1008}, {141, 202, 0, 255} }}, - {{ {41, 20, -3}, 0, {-200, 1165}, {141, 202, 0, 255} }}, - {{ {41, 20, 6}, 0, {168, 1165}, {141, 202, 0, 255} }}, - {{ {39, 24, 6}, 0, {168, 1008}, {141, 202, 0, 255} }}, - {{ {30, -14, 6}, 0, {1558, 1971}, {0, 0, 127, 255} }}, - {{ {56, -22, 6}, 0, {1882, 906}, {0, 0, 127, 255} }}, - {{ {56, -14, 6}, 0, {1558, 906}, {0, 0, 127, 255} }}, - {{ {41, 20, 6}, 0, {141, 1528}, {0, 0, 127, 255} }}, - {{ {56, -14, 6}, 0, {1558, 906}, {0, 0, 127, 255} }}, - {{ {68, 24, 6}, 0, {-16, 414}, {0, 0, 127, 255} }}, - {{ {41, 20, 6}, 0, {141, 1528}, {0, 0, 127, 255} }}, - {{ {39, 24, 6}, 0, {-16, 1602}, {0, 0, 127, 255} }}, -}; - -Gfx pistol_Arm_mesh_layer_1_tri_1[] = { - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_1 + 0, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 6, 7, 0), - gsSP1Triangle(4, 7, 8, 0), - gsSP1Triangle(7, 9, 8, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 12, 13, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_1 + 14, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 7, 5, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(15, 12, 14, 0), - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_1 + 30, 4, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(1, 3, 2, 0), - gsSPEndDisplayList(), -}; - -Vtx pistol_Arm_mesh_layer_1_vtx_2[6] = { - {{ {130, 36, -3}, 0, {144, 512}, {127, 0, 0, 255} }}, - {{ {130, 40, -3}, 0, {144, 328}, {127, 0, 0, 255} }}, - {{ {130, 43, 2}, 0, {-16, 235}, {127, 0, 0, 255} }}, - {{ {130, 36, 6}, 0, {-176, 512}, {127, 0, 0, 255} }}, - {{ {130, 40, 6}, 0, {-176, 328}, {127, 0, 0, 255} }}, - {{ {130, 34, 2}, 0, {-16, 604}, {127, 0, 0, 255} }}, -}; - -Gfx pistol_Arm_mesh_layer_1_tri_2[] = { - gsSPVertex(pistol_Arm_mesh_layer_1_vtx_2 + 0, 6, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 3, 0, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(3, 5, 0, 0), - gsSPEndDisplayList(), -}; - - -Gfx mat_pistol_gray[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPSetLights1(pistol_gray_lights), - gsSPEndDisplayList(), -}; - -Gfx mat_pistol_darkergray[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPSetLights1(pistol_darkergray_lights), - gsDPSetTextureImage(G_IM_FMT_I, G_IM_SIZ_8b_LOAD_BLOCK, 1, pistol_noise_i8), - gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_8b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(7, 0, 0, 511, 512), - gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_8b, 4, 0, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0), - gsDPSetTileSize(0, 0, 0, 124, 124), - gsSPEndDisplayList(), -}; - -Gfx mat_pistol_black_layer1[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), - gsDPSetRenderMode(G_RM_ZB_OPA_SURF, G_RM_ZB_OPA_SURF2), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_pistol_black_layer1[] = { - gsDPPipeSync(), - gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2), - gsSPEndDisplayList(), -}; - -Gfx pistol_Arm_mesh_layer_1[] = { - gsSPDisplayList(mat_pistol_gray), - gsSPDisplayList(pistol_Arm_mesh_layer_1_tri_0), - gsSPDisplayList(mat_pistol_darkergray), - gsSPDisplayList(pistol_Arm_mesh_layer_1_tri_1), - gsSPDisplayList(mat_pistol_black_layer1), - gsSPDisplayList(pistol_Arm_mesh_layer_1_tri_2), - gsSPDisplayList(mat_revert_pistol_black_layer1), - gsSPEndDisplayList(), -}; - -Gfx pistol_material_revert_render_settings[] = { - gsDPPipeSync(), - gsSPSetGeometryMode(G_LIGHTING), - gsSPClearGeometryMode(G_TEXTURE_GEN), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 0), - gsDPSetEnvColor(255, 255, 255, 255), - gsDPSetAlphaCompare(G_AC_NONE), - gsSPEndDisplayList(), -}; - diff --git a/mods/gun-mod/actors/shotgun/geo.inc.c b/mods/gun-mod/actors/shotgun/geo.inc.c deleted file mode 100644 index 0cac5f55..00000000 --- a/mods/gun-mod/actors/shotgun/geo.inc.c +++ /dev/null @@ -1,24 +0,0 @@ -#include "src/game/envfx_snow.h" - -const GeoLayout shotgun_geo[] = { - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_SCALE(LAYER_FORCE, 65536), - GEO_OPEN_NODE(), - GEO_ASM(0, geo_mario_set_player_colors), - GEO_ASM(8, geo_mario_set_player_colors), - GEO_SWITCH_CASE(0, geo_switch_anim_state), - GEO_OPEN_NODE(), - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 0, -45, 0, NULL), - GEO_OPEN_NODE(), - GEO_ANIMATED_PART(LAYER_OPAQUE, 25, 0, 0, shotgun_Arm_mesh_layer_1), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_CLOSE_NODE(), - GEO_DISPLAY_LIST(LAYER_OPAQUE, shotgun_material_revert_render_settings), - GEO_CLOSE_NODE(), - GEO_END(), -}; diff --git a/mods/gun-mod/actors/shotgun/geo_header.h b/mods/gun-mod/actors/shotgun/geo_header.h deleted file mode 100644 index 3e8ef1dd..00000000 --- a/mods/gun-mod/actors/shotgun/geo_header.h +++ /dev/null @@ -1,22 +0,0 @@ -extern const GeoLayout shotgun_geo[]; -extern Lights1 shotgun_wood_lights; -extern Lights1 shotgun_darkgray_lights; -extern Lights1 shotgun_metal_lights; -extern u8 shotgun_wood_rgba16[]; -extern u8 shotgun_plat_rgba16[]; -extern Vtx shotgun_Arm_mesh_layer_1_vtx_0[108]; -extern Gfx shotgun_Arm_mesh_layer_1_tri_0[]; -extern Vtx shotgun_Arm_mesh_layer_1_vtx_1[68]; -extern Gfx shotgun_Arm_mesh_layer_1_tri_1[]; -extern Vtx shotgun_Arm_mesh_layer_1_vtx_2[46]; -extern Gfx shotgun_Arm_mesh_layer_1_tri_2[]; -extern Vtx shotgun_Arm_mesh_layer_1_vtx_3[10]; -extern Gfx shotgun_Arm_mesh_layer_1_tri_3[]; -extern Gfx mat_shotgun_wood[]; -extern Gfx mat_shotgun_darkgray[]; -extern Gfx mat_shotgun_metal[]; -extern Gfx mat_revert_shotgun_metal[]; -extern Gfx mat_shotgun_black_layer1[]; -extern Gfx mat_revert_shotgun_black_layer1[]; -extern Gfx shotgun_Arm_mesh_layer_1[]; -extern Gfx shotgun_material_revert_render_settings[]; diff --git a/mods/gun-mod/actors/shotgun/model.inc.c b/mods/gun-mod/actors/shotgun/model.inc.c deleted file mode 100644 index 92628e9d..00000000 --- a/mods/gun-mod/actors/shotgun/model.inc.c +++ /dev/null @@ -1,528 +0,0 @@ -Lights1 shotgun_wood_lights = gdSPDefLights1( - 0x7F, 0x7F, 0x7F, - 0xFF, 0xFF, 0xFF, 0x28, 0x28, 0x28); - -Lights1 shotgun_darkgray_lights = gdSPDefLights1( - 0x3B, 0x3B, 0x3B, - 0x7C, 0x7C, 0x7C, 0x28, 0x28, 0x28); - -Lights1 shotgun_metal_lights = gdSPDefLights1( - 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0x28, 0x28, 0x28); - -Gfx shotgun_wood_rgba16_aligner[] = {gsSPEndDisplayList()}; -u8 shotgun_wood_rgba16[] = { - #include "actors/shotgun/wood.rgba16.inc.c" -}; - -Gfx shotgun_plat_rgba16_aligner[] = {gsSPEndDisplayList()}; -u8 shotgun_plat_rgba16[] = { - #include "actors/shotgun/plat.rgba16.inc.c" -}; - -Vtx shotgun_Arm_mesh_layer_1_vtx_0[108] = { - {{ {65, 23, 1}, 0, {-20, 1252}, {213, 137, 0, 255} }}, - {{ {79, 21, -2}, 0, {67, 827}, {238, 150, 188, 255} }}, - {{ {79, 21, 4}, 0, {-107, 827}, {239, 150, 68, 255} }}, - {{ {90, 21, 4}, 0, {-107, 498}, {0, 148, 66, 255} }}, - {{ {90, 21, -2}, 0, {67, 498}, {0, 148, 190, 255} }}, - {{ {45, 19, 5}, 0, {-116, 1841}, {38, 183, 97, 255} }}, - {{ {45, 19, -2}, 0, {75, 1841}, {38, 183, 159, 255} }}, - {{ {5, 0, -2}, 0, {75, 3047}, {202, 163, 189, 255} }}, - {{ {5, 0, 5}, 0, {-116, 3047}, {202, 163, 68, 255} }}, - {{ {5, 0, -2}, 0, {-717, 3047}, {202, 163, 189, 255} }}, - {{ {4, 26, -4}, 0, {68, 3097}, {182, 67, 178, 255} }}, - {{ {45, 19, -2}, 0, {-166, 1841}, {38, 183, 159, 255} }}, - {{ {45, 27, -1}, 0, {82, 1841}, {247, 88, 165, 255} }}, - {{ {65, 23, 1}, 0, {-29, 1252}, {213, 137, 0, 255} }}, - {{ {60, 33, -1}, 0, {279, 1404}, {208, 73, 164, 255} }}, - {{ {79, 21, -2}, 0, {-106, 827}, {238, 150, 188, 255} }}, - {{ {79, 21, -2}, 0, {-106, 827}, {238, 150, 188, 255} }}, - {{ {60, 33, -1}, 0, {279, 1404}, {208, 73, 164, 255} }}, - {{ {79, 26, -4}, 0, {64, 827}, {239, 224, 134, 255} }}, - {{ {79, 37, -4}, 0, {383, 827}, {71, 38, 158, 255} }}, - {{ {74, 40, -1}, 0, {473, 976}, {229, 112, 202, 255} }}, - {{ {79, 30, -4}, 0, {190, 827}, {25, 40, 138, 255} }}, - {{ {90, 26, -4}, 0, {64, 498}, {0, 226, 133, 255} }}, - {{ {90, 30, -4}, 0, {190, 498}, {0, 90, 166, 255} }}, - {{ {90, 21, -2}, 0, {-106, 498}, {0, 148, 190, 255} }}, - {{ {79, 37, -4}, 0, {-186, 827}, {71, 38, 158, 255} }}, - {{ {74, 40, -1}, 0, {-88, 976}, {229, 112, 202, 255} }}, - {{ {79, 40, -1}, 0, {-91, 827}, {82, 91, 220, 255} }}, - {{ {74, 40, 4}, 0, {64, 976}, {230, 112, 54, 255} }}, - {{ {60, 33, -1}, 0, {-80, 1404}, {208, 73, 164, 255} }}, - {{ {45, 27, 3}, 0, {48, 1841}, {248, 88, 91, 255} }}, - {{ {45, 27, -1}, 0, {-71, 1841}, {247, 88, 165, 255} }}, - {{ {45, 27, -1}, 0, {-71, 1841}, {247, 88, 165, 255} }}, - {{ {4, 26, 7}, 0, {162, 3097}, {183, 67, 79, 255} }}, - {{ {45, 27, 3}, 0, {48, 1841}, {248, 88, 91, 255} }}, - {{ {4, 26, -4}, 0, {-186, 3097}, {182, 67, 178, 255} }}, - {{ {60, 33, 4}, 0, {56, 1404}, {209, 73, 93, 255} }}, - {{ {74, 40, 4}, 0, {64, 976}, {230, 112, 54, 255} }}, - {{ {90, 26, -4}, 0, {-186, 928}, {129, 0, 0, 255} }}, - {{ {90, 21, -2}, 0, {-99, 1098}, {129, 0, 0, 255} }}, - {{ {90, 21, 4}, 0, {75, 1098}, {129, 0, 0, 255} }}, - {{ {90, 30, 7}, 0, {162, 802}, {129, 0, 0, 255} }}, - {{ {90, 26, 7}, 0, {162, 928}, {129, 0, 0, 255} }}, - {{ {90, 30, -4}, 0, {-186, 802}, {129, 0, 0, 255} }}, - {{ {5, 0, -2}, 0, {-107, 1709}, {202, 163, 189, 255} }}, - {{ {5, 0, 5}, 0, {84, 1709}, {202, 163, 68, 255} }}, - {{ {4, 26, 7}, 0, {162, 924}, {183, 67, 79, 255} }}, - {{ {4, 26, -4}, 0, {-186, 924}, {182, 67, 178, 255} }}, - {{ {5, 0, 5}, 0, {685, 3047}, {202, 163, 68, 255} }}, - {{ {45, 19, 5}, 0, {134, 1841}, {38, 183, 97, 255} }}, - {{ {4, 26, 7}, 0, {-100, 3097}, {183, 67, 79, 255} }}, - {{ {45, 27, 3}, 0, {-114, 1841}, {248, 88, 91, 255} }}, - {{ {65, 23, 1}, 0, {-3, 1252}, {213, 137, 0, 255} }}, - {{ {60, 33, 4}, 0, {-311, 1404}, {209, 73, 93, 255} }}, - {{ {79, 21, 4}, 0, {74, 827}, {239, 150, 68, 255} }}, - {{ {79, 26, 7}, 0, {-96, 827}, {239, 224, 122, 255} }}, - {{ {90, 21, 4}, 0, {74, 498}, {0, 148, 66, 255} }}, - {{ {90, 26, 7}, 0, {-96, 498}, {0, 226, 123, 255} }}, - {{ {90, 30, 7}, 0, {-222, 498}, {0, 90, 90, 255} }}, - {{ {79, 30, 7}, 0, {-222, 827}, {26, 40, 118, 255} }}, - {{ {79, 37, 7}, 0, {-415, 827}, {72, 38, 97, 255} }}, - {{ {74, 40, 4}, 0, {-505, 976}, {230, 112, 54, 255} }}, - {{ {79, 40, 4}, 0, {-99, 524}, {82, 91, 35, 255} }}, - {{ {79, 37, 7}, 0, {-194, 609}, {72, 38, 97, 255} }}, - {{ {79, 30, 7}, 0, {-194, 802}, {26, 40, 118, 255} }}, - {{ {79, 37, -4}, 0, {154, 609}, {71, 38, 158, 255} }}, - {{ {79, 30, -4}, 0, {154, 802}, {25, 40, 138, 255} }}, - {{ {79, 40, -1}, 0, {59, 524}, {82, 91, 220, 255} }}, - {{ {79, 40, 4}, 0, {67, 827}, {82, 91, 35, 255} }}, - {{ {74, 40, 4}, 0, {64, 976}, {230, 112, 54, 255} }}, - {{ {79, 37, 7}, 0, {162, 827}, {72, 38, 97, 255} }}, - {{ {79, 40, -1}, 0, {-91, 827}, {82, 91, 220, 255} }}, - {{ {79, 30, 7}, 0, {162, 827}, {26, 40, 118, 255} }}, - {{ {90, 30, 7}, 0, {162, 498}, {0, 90, 90, 255} }}, - {{ {90, 30, -4}, 0, {-186, 498}, {0, 90, 166, 255} }}, - {{ {79, 30, -4}, 0, {-186, 827}, {25, 40, 138, 255} }}, - {{ {90, 26, -4}, 0, {-186, 928}, {172, 234, 163, 255} }}, - {{ {90, 21, -2}, 0, {-99, 1098}, {179, 170, 204, 255} }}, - {{ {90, 21, 4}, 0, {75, 1098}, {179, 170, 53, 255} }}, - {{ {90, 30, 7}, 0, {162, 802}, {183, 73, 74, 255} }}, - {{ {90, 26, 7}, 0, {162, 928}, {173, 234, 93, 255} }}, - {{ {90, 30, -4}, 0, {-186, 802}, {182, 73, 183, 255} }}, - {{ {126, 30, -5}, 0, {-186, -580}, {73, 73, 182, 255} }}, - {{ {90, 30, -4}, 0, {-186, 498}, {182, 73, 183, 255} }}, - {{ {90, 30, 7}, 0, {162, 498}, {183, 73, 74, 255} }}, - {{ {126, 30, 7}, 0, {162, -580}, {74, 73, 73, 255} }}, - {{ {126, 26, -5}, 0, {64, -580}, {83, 231, 163, 255} }}, - {{ {90, 30, -4}, 0, {190, 498}, {182, 73, 183, 255} }}, - {{ {126, 30, -5}, 0, {190, -580}, {73, 73, 182, 255} }}, - {{ {90, 26, -4}, 0, {64, 498}, {172, 234, 163, 255} }}, - {{ {90, 21, -2}, 0, {-106, 498}, {179, 170, 204, 255} }}, - {{ {126, 21, -1}, 0, {-106, -580}, {78, 169, 206, 255} }}, - {{ {126, 26, 7}, 0, {-96, -580}, {83, 231, 92, 255} }}, - {{ {90, 21, 4}, 0, {74, 498}, {179, 170, 53, 255} }}, - {{ {126, 21, 4}, 0, {74, -580}, {78, 169, 50, 255} }}, - {{ {90, 26, 7}, 0, {-96, 498}, {173, 234, 93, 255} }}, - {{ {126, 30, 7}, 0, {-222, -580}, {74, 73, 73, 255} }}, - {{ {90, 30, 7}, 0, {-222, 498}, {183, 73, 74, 255} }}, - {{ {126, 21, 4}, 0, {-96, -580}, {78, 169, 50, 255} }}, - {{ {90, 21, 4}, 0, {-107, 498}, {179, 170, 53, 255} }}, - {{ {90, 21, -2}, 0, {67, 498}, {179, 170, 204, 255} }}, - {{ {126, 21, -1}, 0, {55, -580}, {78, 169, 206, 255} }}, - {{ {126, 26, -5}, 0, {154, 928}, {83, 231, 163, 255} }}, - {{ {126, 21, 4}, 0, {-96, 1098}, {78, 169, 50, 255} }}, - {{ {126, 21, -1}, 0, {55, 1098}, {78, 169, 206, 255} }}, - {{ {126, 26, 7}, 0, {-194, 928}, {83, 231, 92, 255} }}, - {{ {126, 30, -5}, 0, {154, 802}, {73, 73, 182, 255} }}, - {{ {126, 30, 7}, 0, {-194, 802}, {74, 73, 73, 255} }}, -}; - -Gfx shotgun_Arm_mesh_layer_1_tri_0[] = { - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_0 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(3, 1, 4, 0), - gsSP1Triangle(0, 5, 6, 0), - gsSP1Triangle(5, 7, 6, 0), - gsSP1Triangle(5, 8, 7, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(12, 11, 10, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(14, 13, 12, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_0 + 16, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 1, 3, 0), - gsSP1Triangle(4, 3, 1, 0), - gsSP1Triangle(2, 3, 5, 0), - gsSP1Triangle(6, 2, 5, 0), - gsSP1Triangle(6, 5, 7, 0), - gsSP1Triangle(8, 2, 6, 0), - gsSP1Triangle(8, 0, 2, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(11, 10, 12, 0), - gsSP1Triangle(12, 10, 13, 0), - gsSP1Triangle(14, 12, 13, 0), - gsSP1Triangle(13, 15, 14, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_0 + 32, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(2, 4, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(8, 9, 6, 0), - gsSP1Triangle(8, 10, 9, 0), - gsSP1Triangle(9, 11, 6, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_0 + 48, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 2, 1, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(5, 3, 4, 0), - gsSP1Triangle(4, 6, 5, 0), - gsSP1Triangle(6, 7, 5, 0), - gsSP1Triangle(8, 7, 6, 0), - gsSP1Triangle(8, 9, 7, 0), - gsSP1Triangle(7, 9, 10, 0), - gsSP1Triangle(7, 10, 11, 0), - gsSP1Triangle(7, 11, 5, 0), - gsSP1Triangle(11, 12, 5, 0), - gsSP1Triangle(5, 12, 13, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_0 + 62, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(3, 5, 0, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(9, 7, 6, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 12, 13, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_0 + 76, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 3, 0, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(3, 5, 0, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 13, 11, 0), - gsSP1Triangle(10, 14, 13, 0), - gsSP1Triangle(14, 10, 15, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_0 + 92, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(1, 0, 3, 0), - gsSP1Triangle(3, 0, 4, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 13, 11, 0), - gsSP1Triangle(13, 10, 14, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPEndDisplayList(), -}; - -Vtx shotgun_Arm_mesh_layer_1_vtx_1[68] = { - {{ {75, 18, 1}, 0, {-173, 958}, {211, 206, 148, 255} }}, - {{ {77, 15, 1}, 0, {-274, 894}, {211, 206, 148, 255} }}, - {{ {73, 18, 1}, 0, {-173, 1008}, {211, 206, 148, 255} }}, - {{ {77, 15, 1}, 0, {-16, 1266}, {107, 68, 0, 255} }}, - {{ {75, 18, 1}, 0, {4, 1165}, {107, 68, 0, 255} }}, - {{ {75, 18, 2}, 0, {-36, 1165}, {107, 68, 0, 255} }}, - {{ {77, 15, 1}, 0, {242, 894}, {212, 206, 108, 255} }}, - {{ {75, 18, 2}, 0, {141, 958}, {212, 206, 108, 255} }}, - {{ {73, 18, 1}, 0, {141, 1008}, {212, 206, 108, 255} }}, - {{ {71, 14, 2}, 0, {-54, 1056}, {233, 200, 111, 255} }}, - {{ {71, 14, 0}, 0, {14, 1056}, {232, 200, 145, 255} }}, - {{ {81, 14, 0}, 0, {14, 778}, {27, 198, 146, 255} }}, - {{ {81, 14, 2}, 0, {-54, 778}, {28, 198, 110, 255} }}, - {{ {68, 18, 3}, 0, {22, 1185}, {200, 233, 112, 255} }}, - {{ {71, 14, 0}, 0, {-46, 1296}, {232, 200, 145, 255} }}, - {{ {71, 14, 2}, 0, {22, 1296}, {233, 200, 111, 255} }}, - {{ {68, 18, 3}, 0, {22, 1185}, {200, 233, 112, 255} }}, - {{ {68, 18, 0}, 0, {-46, 1185}, {200, 233, 145, 255} }}, - {{ {71, 14, 0}, 0, {-46, 1296}, {232, 200, 145, 255} }}, - {{ {68, 25, 3}, 0, {22, 978}, {221, 0, 122, 255} }}, - {{ {68, 25, 0}, 0, {-46, 978}, {220, 0, 134, 255} }}, - {{ {71, 14, 0}, 0, {-46, 1056}, {232, 200, 145, 255} }}, - {{ {80, 15, 1}, 0, {-12, 789}, {201, 115, 0, 255} }}, - {{ {81, 14, 0}, 0, {-46, 778}, {27, 198, 146, 255} }}, - {{ {72, 15, 1}, 0, {-12, 1047}, {49, 117, 0, 255} }}, - {{ {81, 14, 2}, 0, {22, 778}, {28, 198, 110, 255} }}, - {{ {71, 14, 2}, 0, {22, 1056}, {233, 200, 111, 255} }}, - {{ {68, 18, 0}, 0, {14, 1185}, {200, 233, 145, 255} }}, - {{ {72, 15, 1}, 0, {-20, 1274}, {49, 117, 0, 255} }}, - {{ {71, 14, 0}, 0, {14, 1296}, {232, 200, 145, 255} }}, - {{ {68, 18, 1}, 0, {-20, 1176}, {118, 48, 0, 255} }}, - {{ {68, 25, 0}, 0, {14, 978}, {220, 0, 134, 255} }}, - {{ {68, 25, 0}, 0, {14, 978}, {220, 0, 134, 255} }}, - {{ {68, 25, 1}, 0, {-20, 978}, {127, 0, 0, 255} }}, - {{ {68, 18, 1}, 0, {-20, 1176}, {118, 48, 0, 255} }}, - {{ {68, 18, 3}, 0, {-54, 1185}, {200, 233, 112, 255} }}, - {{ {68, 25, 3}, 0, {-54, 978}, {221, 0, 122, 255} }}, - {{ {71, 14, 2}, 0, {-54, 1296}, {233, 200, 111, 255} }}, - {{ {72, 15, 1}, 0, {-20, 1274}, {49, 117, 0, 255} }}, - {{ {81, 14, 2}, 0, {-54, 1296}, {28, 198, 110, 255} }}, - {{ {81, 14, 0}, 0, {14, 1296}, {27, 198, 146, 255} }}, - {{ {84, 18, 0}, 0, {14, 1185}, {54, 237, 143, 255} }}, - {{ {84, 18, 2}, 0, {-54, 1185}, {55, 237, 113, 255} }}, - {{ {84, 25, 0}, 0, {14, 978}, {35, 0, 134, 255} }}, - {{ {84, 25, 2}, 0, {-54, 978}, {36, 0, 122, 255} }}, - {{ {80, 15, 1}, 0, {-12, 1274}, {201, 115, 0, 255} }}, - {{ {81, 14, 2}, 0, {22, 1296}, {28, 198, 110, 255} }}, - {{ {84, 18, 2}, 0, {22, 1185}, {55, 237, 113, 255} }}, - {{ {80, 15, 1}, 0, {-12, 1274}, {201, 115, 0, 255} }}, - {{ {84, 18, 2}, 0, {22, 1185}, {55, 237, 113, 255} }}, - {{ {83, 18, 1}, 0, {-12, 1177}, {136, 42, 0, 255} }}, - {{ {84, 25, 2}, 0, {22, 978}, {36, 0, 122, 255} }}, - {{ {83, 25, 1}, 0, {-12, 978}, {129, 0, 0, 255} }}, - {{ {84, 18, 0}, 0, {-46, 1185}, {54, 237, 143, 255} }}, - {{ {84, 25, 0}, 0, {-46, 978}, {35, 0, 134, 255} }}, - {{ {81, 14, 0}, 0, {-46, 1296}, {27, 198, 146, 255} }}, - {{ {75, 24, 2}, 0, {-16, 958}, {208, 0, 118, 255} }}, - {{ {73, 24, 1}, 0, {-16, 1008}, {208, 0, 118, 255} }}, - {{ {73, 18, 1}, 0, {141, 1008}, {208, 0, 118, 255} }}, - {{ {75, 18, 2}, 0, {141, 958}, {208, 0, 118, 255} }}, - {{ {73, 24, 1}, 0, {-16, 1008}, {208, 0, 139, 255} }}, - {{ {75, 24, 1}, 0, {-16, 958}, {208, 0, 139, 255} }}, - {{ {75, 18, 1}, 0, {-173, 958}, {208, 0, 139, 255} }}, - {{ {73, 18, 1}, 0, {-173, 1008}, {208, 0, 139, 255} }}, - {{ {75, 18, 1}, 0, {4, 1165}, {127, 0, 0, 255} }}, - {{ {75, 24, 1}, 0, {4, 1008}, {127, 0, 0, 255} }}, - {{ {75, 24, 2}, 0, {-36, 1008}, {127, 0, 0, 255} }}, - {{ {75, 18, 2}, 0, {-36, 1165}, {127, 0, 0, 255} }}, -}; - -Gfx shotgun_Arm_mesh_layer_1_tri_1[] = { - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_1 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 4, 5, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(9, 10, 11, 0), - gsSP1Triangle(9, 11, 12, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_1 + 16, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(3, 1, 0, 0), - gsSP1Triangle(3, 4, 1, 0), - gsSP1Triangle(5, 6, 7, 0), - gsSP1Triangle(5, 8, 6, 0), - gsSP1Triangle(8, 9, 6, 0), - gsSP1Triangle(8, 10, 9, 0), - gsSP1Triangle(11, 12, 13, 0), - gsSP1Triangle(11, 14, 12, 0), - gsSP1Triangle(15, 14, 11, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_1 + 32, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(1, 3, 2, 0), - gsSP1Triangle(1, 4, 3, 0), - gsSP1Triangle(2, 3, 5, 0), - gsSP1Triangle(2, 5, 6, 0), - gsSP1Triangle(7, 8, 9, 0), - gsSP1Triangle(7, 9, 10, 0), - gsSP1Triangle(10, 9, 11, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(13, 14, 15, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_1 + 48, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 1, 3, 0), - gsSP1Triangle(2, 3, 4, 0), - gsSP1Triangle(5, 2, 4, 0), - gsSP1Triangle(5, 4, 6, 0), - gsSP1Triangle(7, 2, 5, 0), - gsSP1Triangle(7, 0, 2, 0), - gsSP1Triangle(8, 9, 10, 0), - gsSP1Triangle(8, 10, 11, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_1 + 64, 4, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSPEndDisplayList(), -}; - -Vtx shotgun_Arm_mesh_layer_1_vtx_2[46] = { - {{ {196, 22, 3}, 0, {-160, -3197}, {0, 146, 63, 255} }}, - {{ {79, 26, 6}, 0, {-419, 315}, {179, 0, 101, 255} }}, - {{ {79, 22, 4}, 0, {-160, 315}, {179, 169, 51, 255} }}, - {{ {196, 26, 6}, 0, {-419, -3197}, {0, 0, 127, 255} }}, - {{ {79, 30, 4}, 0, {-678, 315}, {155, 38, 66, 255} }}, - {{ {196, 30, 3}, 0, {-678, -3197}, {0, 64, 110, 255} }}, - {{ {196, 22, -2}, 0, {-119, -3197}, {0, 146, 193, 255} }}, - {{ {196, 22, 3}, 0, {-418, -3197}, {0, 146, 63, 255} }}, - {{ {79, 22, 4}, 0, {-418, 315}, {179, 169, 51, 255} }}, - {{ {79, 22, -1}, 0, {-119, 315}, {178, 169, 206, 255} }}, - {{ {79, 22, 4}, 0, {-102, 546}, {179, 169, 51, 255} }}, - {{ {79, 26, 6}, 0, {48, 416}, {179, 0, 101, 255} }}, - {{ {79, 30, 4}, 0, {-102, 286}, {155, 38, 66, 255} }}, - {{ {79, 26, -4}, 0, {-551, 416}, {178, 0, 156, 255} }}, - {{ {79, 30, -1}, 0, {-401, 286}, {154, 38, 190, 255} }}, - {{ {79, 22, -1}, 0, {-401, 546}, {178, 169, 206, 255} }}, - {{ {196, 30, -2}, 0, {158, -3197}, {0, 63, 146, 255} }}, - {{ {79, 26, -4}, 0, {-101, 315}, {178, 0, 156, 255} }}, - {{ {79, 30, -1}, 0, {158, 315}, {154, 38, 190, 255} }}, - {{ {196, 26, -4}, 0, {-101, -3197}, {0, 0, 129, 255} }}, - {{ {79, 22, -1}, 0, {-360, 315}, {178, 169, 206, 255} }}, - {{ {196, 22, -2}, 0, {-360, -3197}, {0, 146, 193, 255} }}, - {{ {79, 30, -1}, 0, {-401, 286}, {154, 218, 190, 255} }}, - {{ {79, 30, 4}, 0, {-102, 286}, {155, 218, 66, 255} }}, - {{ {79, 35, 6}, 0, {48, 157}, {179, 0, 101, 255} }}, - {{ {79, 39, -1}, 0, {-401, 27}, {178, 87, 206, 255} }}, - {{ {79, 39, 4}, 0, {-102, 27}, {179, 87, 51, 255} }}, - {{ {79, 35, -4}, 0, {-551, 157}, {178, 0, 156, 255} }}, - {{ {79, 35, 6}, 0, {-938, 315}, {179, 0, 101, 255} }}, - {{ {79, 30, 4}, 0, {-678, 315}, {155, 218, 66, 255} }}, - {{ {196, 30, 3}, 0, {-678, -3197}, {0, 192, 110, 255} }}, - {{ {196, 35, 6}, 0, {-938, -3197}, {0, 0, 127, 255} }}, - {{ {79, 39, 4}, 0, {-1197, 315}, {179, 87, 51, 255} }}, - {{ {79, 35, 6}, 0, {-938, 315}, {179, 0, 101, 255} }}, - {{ {196, 35, 6}, 0, {-938, -3197}, {0, 0, 127, 255} }}, - {{ {196, 39, 3}, 0, {-1197, -3197}, {0, 110, 63, 255} }}, - {{ {79, 30, -1}, 0, {158, 315}, {154, 218, 190, 255} }}, - {{ {196, 35, -4}, 0, {418, -3197}, {0, 0, 129, 255} }}, - {{ {196, 30, -2}, 0, {158, -3197}, {0, 193, 146, 255} }}, - {{ {79, 35, -4}, 0, {418, 315}, {178, 0, 156, 255} }}, - {{ {196, 39, -2}, 0, {677, -3197}, {0, 110, 193, 255} }}, - {{ {79, 39, -1}, 0, {677, 315}, {178, 87, 206, 255} }}, - {{ {79, 39, -1}, 0, {-401, 315}, {178, 87, 206, 255} }}, - {{ {79, 39, 4}, 0, {-102, 315}, {179, 87, 51, 255} }}, - {{ {196, 39, 3}, 0, {-102, -3197}, {0, 110, 63, 255} }}, - {{ {196, 39, -2}, 0, {-401, -3197}, {0, 110, 193, 255} }}, -}; - -Gfx shotgun_Arm_mesh_layer_1_tri_2[] = { - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_2 + 0, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(3, 4, 1, 0), - gsSP1Triangle(3, 5, 4, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 12, 13, 0), - gsSP1Triangle(12, 14, 13, 0), - gsSP1Triangle(13, 15, 10, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_2 + 16, 16, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 3, 1, 0), - gsSP1Triangle(3, 4, 1, 0), - gsSP1Triangle(3, 5, 4, 0), - gsSP1Triangle(6, 7, 8, 0), - gsSP1Triangle(6, 8, 9, 0), - gsSP1Triangle(8, 10, 9, 0), - gsSP1Triangle(9, 11, 6, 0), - gsSP1Triangle(12, 13, 14, 0), - gsSP1Triangle(12, 14, 15, 0), - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_2 + 32, 14, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(0, 2, 3, 0), - gsSP1Triangle(4, 5, 6, 0), - gsSP1Triangle(4, 7, 5, 0), - gsSP1Triangle(7, 8, 5, 0), - gsSP1Triangle(7, 9, 8, 0), - gsSP1Triangle(10, 11, 12, 0), - gsSP1Triangle(10, 12, 13, 0), - gsSPEndDisplayList(), -}; - -Vtx shotgun_Arm_mesh_layer_1_vtx_3[10] = { - {{ {196, 30, 3}, 0, {-95, 799}, {127, 0, 0, 255} }}, - {{ {196, 26, 6}, 0, {-170, 928}, {127, 0, 0, 255} }}, - {{ {196, 22, 3}, 0, {-95, 1058}, {127, 0, 0, 255} }}, - {{ {196, 26, -4}, 0, {129, 928}, {127, 0, 0, 255} }}, - {{ {196, 22, -2}, 0, {55, 1058}, {127, 0, 0, 255} }}, - {{ {196, 30, -2}, 0, {55, 799}, {127, 0, 0, 255} }}, - {{ {196, 35, 6}, 0, {-170, 669}, {127, 0, 0, 255} }}, - {{ {196, 39, -2}, 0, {55, 540}, {127, 0, 0, 255} }}, - {{ {196, 35, -4}, 0, {129, 669}, {127, 0, 0, 255} }}, - {{ {196, 39, 3}, 0, {-95, 540}, {127, 0, 0, 255} }}, -}; - -Gfx shotgun_Arm_mesh_layer_1_tri_3[] = { - gsSPVertex(shotgun_Arm_mesh_layer_1_vtx_3 + 0, 10, 0), - gsSP1Triangle(0, 1, 2, 0), - gsSP1Triangle(2, 3, 0, 0), - gsSP1Triangle(2, 4, 3, 0), - gsSP1Triangle(3, 5, 0, 0), - gsSP1Triangle(6, 0, 5, 0), - gsSP1Triangle(5, 7, 6, 0), - gsSP1Triangle(5, 8, 7, 0), - gsSP1Triangle(7, 9, 6, 0), - gsSPEndDisplayList(), -}; - - -Gfx mat_shotgun_wood[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPSetLights1(shotgun_wood_lights), - gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 1, shotgun_wood_rgba16), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(7, 0, 0, 1023, 256), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0), - gsDPSetTileSize(0, 0, 0, 124, 124), - gsSPEndDisplayList(), -}; - -Gfx mat_shotgun_darkgray[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPSetLights1(shotgun_darkgray_lights), - gsSPEndDisplayList(), -}; - -Gfx mat_shotgun_metal[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT), - gsSPSetGeometryMode(G_TEXTURE_GEN), - gsSPTexture(4032, 1984, 0, 0, 1), - gsSPSetLights1(shotgun_metal_lights), - gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 1, shotgun_plat_rgba16), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 0, 0), - gsDPLoadBlock(7, 0, 0, 2047, 128), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 6, 0), - gsDPSetTileSize(0, 0, 0, 252, 124), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_shotgun_metal[] = { - gsDPPipeSync(), - gsSPClearGeometryMode(G_TEXTURE_GEN), - gsSPEndDisplayList(), -}; - -Gfx mat_shotgun_black_layer1[] = { - gsDPPipeSync(), - gsDPSetCombineLERP(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), - gsDPSetRenderMode(G_RM_ZB_OPA_SURF, G_RM_ZB_OPA_SURF2), - gsSPTexture(65535, 65535, 0, 0, 1), - gsSPEndDisplayList(), -}; - -Gfx mat_revert_shotgun_black_layer1[] = { - gsDPPipeSync(), - gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2), - gsSPEndDisplayList(), -}; - -Gfx shotgun_Arm_mesh_layer_1[] = { - gsSPDisplayList(mat_shotgun_wood), - gsSPDisplayList(shotgun_Arm_mesh_layer_1_tri_0), - gsSPDisplayList(mat_shotgun_darkgray), - gsSPDisplayList(shotgun_Arm_mesh_layer_1_tri_1), - gsSPDisplayList(mat_shotgun_metal), - gsSPDisplayList(shotgun_Arm_mesh_layer_1_tri_2), - gsSPDisplayList(mat_revert_shotgun_metal), - gsSPDisplayList(mat_shotgun_black_layer1), - gsSPDisplayList(shotgun_Arm_mesh_layer_1_tri_3), - gsSPDisplayList(mat_revert_shotgun_black_layer1), - gsSPEndDisplayList(), -}; - -Gfx shotgun_material_revert_render_settings[] = { - gsDPPipeSync(), - gsSPSetGeometryMode(G_LIGHTING), - gsSPClearGeometryMode(G_TEXTURE_GEN), - gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), - gsSPTexture(65535, 65535, 0, 0, 0), - gsDPSetEnvColor(255, 255, 255, 255), - gsDPSetAlphaCompare(G_AC_NONE), - gsSPEndDisplayList(), -}; - diff --git a/mods/gun-mod/actors/shotgun/plat.rgba16.png b/mods/gun-mod/actors/shotgun/plat.rgba16.png deleted file mode 100644 index 2e58c569..00000000 Binary files a/mods/gun-mod/actors/shotgun/plat.rgba16.png and /dev/null differ diff --git a/mods/gun-mod/actors/shotgun/wood.rgba16.png b/mods/gun-mod/actors/shotgun/wood.rgba16.png deleted file mode 100644 index a7d74c7e..00000000 Binary files a/mods/gun-mod/actors/shotgun/wood.rgba16.png and /dev/null differ diff --git a/mods/gun-mod/actors/troll_explosion/geo.inc.c b/mods/gun-mod/actors/troll_explosion/geo.inc.c deleted file mode 100644 index 798f30a5..00000000 --- a/mods/gun-mod/actors/troll_explosion/geo.inc.c +++ /dev/null @@ -1,7 +0,0 @@ -const GeoLayout troll_explosion_geo[] = { - GEO_NODE_START(), - GEO_OPEN_NODE(), - GEO_DISPLAY_LIST(LAYER_TRANSPARENT, troll_explosion), - GEO_CLOSE_NODE(), - GEO_END(), -}; diff --git a/mods/gun-mod/actors/troll_explosion/model.inc.c b/mods/gun-mod/actors/troll_explosion/model.inc.c deleted file mode 100644 index 9d187893..00000000 --- a/mods/gun-mod/actors/troll_explosion/model.inc.c +++ /dev/null @@ -1,38 +0,0 @@ -static const Vtx explosion_seg3_vertex_030009C8[] = { - {{{ -128, -128, 0}, 0, { 0, 992}, {0xff, 0xff, 0xff, 0xff}}}, - {{{ 128, -128, 0}, 0, { 992, 992}, {0xff, 0xff, 0xff, 0xff}}}, - {{{ 128, 128, 0}, 0, { 992, 0}, {0xff, 0xff, 0xff, 0xff}}}, - {{{ -128, 128, 0}, 0, { 0, 0}, {0xff, 0xff, 0xff, 0xff}}}, -}; - -// 0x03000A08 -ALIGNED8 const Texture troll_explosion_texture[] = { -#include "actors/troll_explosion/troll_explosion.rgba16.inc.c" -}; - -// 0x03004208 - 0x03004298 -const Gfx explosion_seg3_dl_03004208[] = { - gsDPSetCombineMode(G_CC_DECALFADEA, G_CC_DECALFADEA), - gsDPSetEnvColor(255, 255, 255, 150), - gsSPClearGeometryMode(G_LIGHTING), - gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD), - gsDPLoadSync(), - gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)), - gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD), - gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC), - gsSPVertex(explosion_seg3_vertex_030009C8, 4, 0), - gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0), - gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF), - gsDPPipeSync(), - gsSPSetGeometryMode(G_LIGHTING), - gsDPSetEnvColor(255, 255, 255, 255), - gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE), - gsSPEndDisplayList(), -}; - -const Gfx troll_explosion[] = { - gsDPPipeSync(), - gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, troll_explosion_texture), - gsSPBranchList(explosion_seg3_dl_03004208), -}; diff --git a/mods/gun-mod/actors/troll_explosion/troll_explosion.rgba16.png b/mods/gun-mod/actors/troll_explosion/troll_explosion.rgba16.png deleted file mode 100644 index 86f8d428..00000000 Binary files a/mods/gun-mod/actors/troll_explosion/troll_explosion.rgba16.png and /dev/null differ diff --git a/mods/gun-mod/b-bullet.lua b/mods/gun-mod/b-bullet.lua index 92493784..309b3f3d 100644 --- a/mods/gun-mod/b-bullet.lua +++ b/mods/gun-mod/b-bullet.lua @@ -256,6 +256,7 @@ end function hurt_mr_blizzard(obj) play_sound(SOUND_OBJ_SNOWMAN_EXPLODE, obj.header.gfx.cameraToObject) obj_mark_for_deletion(obj) + obj_spawn_loot_yellow_coins(obj, obj.oNumLootCoins, 20) network_send_object(obj, false) return true end @@ -294,6 +295,13 @@ function hurt_bully(obj, bulletObj) return true end +--- @param obj Object +function hurt_moneybag(obj) + obj.oInteractStatus = INT_STATUS_INTERACTED | INT_STATUS_WAS_ATTACKED | INT_ATTACK_NOT_FROM_BELOW + network_send_object(obj, false) + return true +end + --- @param obj Object --- @param bulletObj Object function hurt_king_bobomb(obj, bulletObj) @@ -324,8 +332,8 @@ end --- @param bulletObj Object function hurt_yoshi(_, bulletObj) - bulletObj.oAction = 2 bullet_ricochet(bulletObj) + bulletObj.oAction = 2 djui_chat_message_create("\\#a0ffa0\\Yoshi\\#dcdcdc\\: no lol") play_sound(SOUND_MENU_MESSAGE_APPEAR, gGlobalSoundSource) diff --git a/mods/gun-mod/c-viewmodel.lua b/mods/gun-mod/c-viewmodel.lua index d284a306..3bd74f6e 100644 --- a/mods/gun-mod/c-viewmodel.lua +++ b/mods/gun-mod/c-viewmodel.lua @@ -10,6 +10,7 @@ gFirstPersonViewmodels = { --- @param o Object local function bhv_viewmodel_init(o) o.oFlags = OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE + o.oGraphYOffset = 0 end --- @param o Object diff --git a/mods/gun-mod/main.lua b/mods/gun-mod/main.lua index 2026fe05..8c79b4e8 100644 --- a/mods/gun-mod/main.lua +++ b/mods/gun-mod/main.lua @@ -1,5 +1,5 @@ -- name: .Gun Mod DX --- description: Gun Mod DX v3.0\nBy \\#ec7731\\Agent X\\#dcdcdc\\\nSpecial thanks to \\#f296af\\PeachyPeach\\#dcdcdc\\\n\nThis is a rewritten & overhauled version of my original Gun Mod for sm64ex-coop. I thought this would make a good mod to bundle with sm64coopdx.\n\nPress [\\#3040ff\\Y\\#dcdcdc\\] to shoot\nPress [\\#3040ff\\X\\#dcdcdc\\] to reload\nRun \\#00ffff\\/gm help\\#dcdcdc\\ for help +-- description: Gun Mod DX v3.0.1\nBy \\#ec7731\\Agent X\\#dcdcdc\\\nSpecial thanks to \\#f296af\\PeachyPeach\\#dcdcdc\\\n\nThis is a rewritten & overhauled version of my original Gun Mod for sm64ex-coop. I thought this would make a good mod to bundle with sm64coopdx. If you have two pistols, you are able to dual wield them as well!\n\nPress [\\#3040ff\\Y\\#dcdcdc\\] to shoot\nPress [\\#3040ff\\X\\#dcdcdc\\] to reload\nRun \\#00ffff\\/gm help\\#dcdcdc\\ for help -- deluxe: true if SM64COOPDX_VERSION == nil then return end @@ -40,6 +40,7 @@ gShootableHitboxes = { [id_bhvBigBully] = hurt_bully, [id_bhvSmallChillBully] = hurt_bully, [id_bhvBigChillBully] = hurt_bully, + [id_bhvMoneybag] = hurt_moneybag, [id_bhvKingBobomb] = hurt_king_bobomb, [id_bhvBowser] = hurt_bowser, [id_bhvYoshi] = hurt_yoshi @@ -293,7 +294,7 @@ local function on_gm_command(msg) return on_give_command(args[2] or "") end - if msg:gsub("%s+", "") == "" then + if msg:gsub("%s+", "") == "" and (network_is_server() or network_is_moderator()) then gGlobalSyncTable.gunModEnabled = not gGlobalSyncTable.gunModEnabled djui_chat_message_create("[Gun Mod] Status: " .. on_or_off(gGlobalSyncTable.gunModEnabled)) else diff --git a/mods/gun-mod/sound/shotgun_shoot.mp3 b/mods/gun-mod/sound/shotgun_shoot.mp3 index 35473abb..95c590f7 100644 Binary files a/mods/gun-mod/sound/shotgun_shoot.mp3 and b/mods/gun-mod/sound/shotgun_shoot.mp3 differ diff --git a/mods/gun-mod/textures/gun_mod_crosshair.tex b/mods/gun-mod/textures/gun_mod_crosshair.tex index a032f28f..d4a4aca0 100644 Binary files a/mods/gun-mod/textures/gun_mod_crosshair.tex and b/mods/gun-mod/textures/gun_mod_crosshair.tex differ diff --git a/mods/mquake/_mquake_a_constants.lua b/mods/mquake/_mquake_a_constants.lua deleted file mode 100644 index b21c79ad..00000000 --- a/mods/mquake/_mquake_a_constants.lua +++ /dev/null @@ -1,432 +0,0 @@ --- _mquake_a_constants --- _mquake_b_actions_predefine --- _mquake_c_actions --- _mquake_d_physics --- _mquake_e_hooks --- localize functions to improve performance - _mquake_a_constants.lua -local clampf,allocate_mario_action,vec3f_copy,vec3f_add,set_mario_action,math_floor,obj_get_first,vec3f_dist,obj_get_next = clampf,allocate_mario_action,vec3f_copy,vec3f_add,set_mario_action,math.floor,obj_get_first,vec3f_dist,obj_get_next - - -sv_stopmovement = false -sv_playerheight = 160 -sv_crouchoffset = 60 -sv_playersubmergelevel = 100 -sv_camerayoffset = 8 -sv_waterfriction = 2.5 -sv_friction = 4.75 -sv_crouchfriction_scale = 2.0 -sv_stopspeed = 2 -sv_maxspeed = 200 -sv_maxvelocity = 1200 -sv_playerspeed = 120 -sv_playerspeed_water = 120 -sv_playerspeed_water_shell = 300 -sv_upspeed_water = 160 -sv_playerspeed_crouch = 60 -sv_playerclamp_air = 25 -sv_accelerate = 10 -sv_airaccelerate_value = 80 -sv_edgefriction = 2 -sv_tickrate = 1/30 -sv_scalerate = 0.25 -cl_grounddefacto = 1.0 / 0.60 -cl_localangles = {forward={x=0,y=0,z=0},right={x=0,y=0,z=0},rawForward={x=0,y=0,z=0}} -cl_speedbuffer = {x=0,y=0,z=0} --,w=0} -cl_upwarpfix_vel = {x=0,y=0,z=0} -cl_upwarpfix_pos = {x=0,y=0,z=0} -cl_bowserthrow = false -cl_bowserthrow_previousYaw = 0 -cl_interacttimer = 0 -cl_red = 0 -cl_footstepTimer = 0 --- cl_watershelltimer = 0 - --- Physics helpers -local SurfaceStandableMinimum = { - [SURFACE_CLASS_NOT_SLIPPERY] = 0.01, - [SURFACE_HARD_NOT_SLIPPERY] = 0.01, - [SURFACE_CLASS_SLIPPERY] = 0.7, - [SURFACE_HARD_SLIPPERY] = 0.7, - [SURFACE_NO_CAM_COL_SLIPPERY] = 0.7, - [SURFACE_NOISE_SLIPPERY] = 0.7, - [SURFACE_SLIPPERY] = 0.7, - [SURFACE_CLASS_VERY_SLIPPERY] = 0.85, - [SURFACE_HARD_VERY_SLIPPERY] = 0.85, - [SURFACE_NO_CAM_COL_VERY_SLIPPERY] = 0.85, - [SURFACE_VERY_SLIPPERY] = 0.85, - [SURFACE_NOISE_VERY_SLIPPERY] = 0.85, - [SURFACE_NOISE_VERY_SLIPPERY_73] = 0.85, - [SURFACE_NOISE_VERY_SLIPPERY_74] = 0.85 -} - - -local SurfaceFriction = { - [SURFACE_CLASS_NOT_SLIPPERY] = 1.0, - [SURFACE_HARD_NOT_SLIPPERY] = 1.0, - [SURFACE_CLASS_SLIPPERY] = 0.8, - [SURFACE_HARD_SLIPPERY] = 0.8, - [SURFACE_NO_CAM_COL_SLIPPERY] = 0.8, - [SURFACE_NOISE_SLIPPERY] = 0.8, - [SURFACE_SLIPPERY] = 0.8, - [SURFACE_CLASS_VERY_SLIPPERY] = 0.4, - [SURFACE_HARD_VERY_SLIPPERY] = 0.4, - [SURFACE_NO_CAM_COL_VERY_SLIPPERY] = 0.4, - [SURFACE_VERY_SLIPPERY] = 0.4, - [SURFACE_NOISE_VERY_SLIPPERY] = 0.4, - [SURFACE_NOISE_VERY_SLIPPERY_73] = 0.4, - [SURFACE_NOISE_VERY_SLIPPERY_74] = 0.4 -} - -local AreaTypeFriction = { - [TERRAIN_SLIDE] = 0.225, -- incase i wanna give other types different friction values - [TERRAIN_SNOW] = 0.90 -- incase i wanna give other types different friction values -} -local AreaTypeStandable = { - [TERRAIN_SLIDE] = 2.75, - [TERRAIN_SNOW] = 1.10 -} - -local function SV_GetAreaFriction(type) - if AreaTypeFriction[type] ~= nil then return AreaTypeFriction[type] end - return 1.0 -end -local function SV_GetAreaStandable(type) - if AreaTypeStandable[type] ~= nil then return AreaTypeStandable[type] end - return 1.0 -end - -function SV_GetSurfaceStandableMinimum(type,areaType) - areaFactor = SV_GetAreaStandable(areaType) - standableMinimum = 0.675 - if SurfaceStandableMinimum[type] ~= nil then standableMinimum = SurfaceStandableMinimum[type] end - return clampf(standableMinimum * areaFactor,0.01,0.999) -end - -function SV_GetSurfaceStandableFrictionMultiplier(type,areaType) - areaFactor = SV_GetAreaFriction(areaType) - standableMinimum = 1.0 - if SurfaceFriction[type] ~= nil then standableMinimum = SurfaceFriction[type] end - return clampf(standableMinimum * areaFactor,0.01,1.0) -end - -sv_gunmod_loaded = (_G.gunModApi ~= nil) - --- Actions -ACT_DM_GROUNDED_MOVEMENT = allocate_mario_action(ACT_FLAG_MOVING | ACT_FLAG_CUSTOM_ACTION) -ACT_DM_GROUNDED_IDLE = allocate_mario_action(ACT_FLAG_MOVING | ACT_FLAG_IDLE | ACT_FLAG_CUSTOM_ACTION) -- fix for reading signs while moving on accident -ACT_DM_AIR_MOVEMENT = allocate_mario_action(ACT_GROUP_AIRBORNE | ACT_FLAG_MOVING | ACT_FLAG_AIR | ACT_FLAG_CUSTOM_ACTION) -ACT_DM_GROUNDED_MOVEMENT_METAL = allocate_mario_action(ACT_GROUP_SUBMERGED | ACT_FLAG_MOVING | ACT_FLAG_WATER_OR_TEXT | ACT_FLAG_CUSTOM_ACTION) -ACT_DM_AIR_MOVEMENT_METAL = allocate_mario_action(ACT_GROUP_SUBMERGED | ACT_FLAG_MOVING | ACT_FLAG_WATER_OR_TEXT | ACT_FLAG_CUSTOM_ACTION) -ACT_DM_WATER_MOVEMENT = allocate_mario_action(ACT_GROUP_SUBMERGED | ACT_FLAG_MOVING | ACT_FLAG_WATER_OR_TEXT | ACT_FLAG_CUSTOM_ACTION) -ACT_DM_POLE_MOVEMENT = allocate_mario_action(ACT_GROUP_CUTSCENE | ACT_FLAG_MOVING | ACT_FLAG_CUSTOM_ACTION) - --- Predefine these for later calls -main_act_dm_grounded_movement = function() end -main_act_dm_air_movement = function() end -act_dm_water_movement_movement = function() end - --- Action helpers -DM_ACTIONS = { - [ACT_DM_GROUNDED_MOVEMENT] = 1, - [ACT_DM_GROUNDED_IDLE] = 1, - [ACT_DM_AIR_MOVEMENT] = 1, - [ACT_DM_GROUNDED_MOVEMENT_METAL] = 1, - [ACT_DM_AIR_MOVEMENT_METAL] = 1, - [ACT_DM_WATER_MOVEMENT] = 1, - [ACT_DM_POLE_MOVEMENT] = 1, - [ACT_ELECTROCUTION] = 1, - [ACT_QUICKSAND_DEATH] = 1, - [ACT_SHOCKED] = 1, - [ACT_GRABBED] = 1, - [ACT_UNINITIALIZED] = 1, - [ACT_PULLING_DOOR] = 1, - [ACT_PUSHING_DOOR] = 1, - [ACT_EMERGE_FROM_PIPE] = 1, - [ACT_ENTERING_STAR_DOOR] = 1, - [ACT_DEATH_EXIT] = 1, - [ACT_DEATH_EXIT_LAND] = 1, - [ACT_SQUISHED] = 1, - [ACT_DISAPPEARED] = 1, - [ACT_EXIT_AIRBORNE] = 1, - [ACT_EXIT_LAND_SAVE_DIALOG] = 1, - [ACT_HARD_BACKWARD_GROUND_KB] = 1, - [ACT_FALLING_DEATH_EXIT] = 1, - [ACT_FALLING_EXIT_AIRBORNE] = 1, - [ACT_DEATH_ON_BACK] = 1, - [ACT_DEATH_ON_STOMACH] = 1, - [ACT_DROWNING] = 1, - -- [ACT_WATER_IDLE] = 1, - -- [ACT_WATER_SHOCKED] = 1, - [ACT_SPECIAL_DEATH_EXIT] = 1, - [ACT_SPECIAL_EXIT_AIRBORNE] = 1, - [ACT_IN_CANNON] = 1, - [ACT_SHOT_FROM_CANNON] = 1, - [ACT_WAITING_FOR_DIALOG] = 1, - [ACT_READING_AUTOMATIC_DIALOG] = 1, - [ACT_READING_NPC_DIALOG] = 1, - [ACT_READING_SIGN] = 1, - [ACT_GRAB_POLE_FAST] = 1, - [ACT_GRAB_POLE_SLOW] = 1, - [ACT_CLIMBING_POLE] = 1, - [ACT_READING_SIGN] = 1, - [ACT_HOLDING_POLE] = 1, - [ACT_TOP_OF_POLE] = 1, - [ACT_TOP_OF_POLE_JUMP] = 1, - [ACT_WALL_KICK_AIR] = 1, - [ACT_TOP_OF_POLE_TRANSITION] = 1, - [ACT_GROUND_POUND] = 1, -- if marios y vel is low enough and you press crouch in the air while not holding jump, ground pound - [ACT_GROUND_POUND_LAND] = 1, -- manually added, if this is detected we can do a ground pound jump :3 - [ACT_STANDING_DEATH] = 1, - [ACT_INTRO_CUTSCENE] = 1, - [ACT_JUMBO_STAR_CUTSCENE] = 1, - [ACT_SPAWN_NO_SPIN_AIRBORNE] = 1, - [ACT_HOLDING_BOWSER] = 1, - [ACT_SPAWN_SPIN_AIRBORNE] = 1, - [ACT_CRAZY_BOX_BOUNCE] = 1, - [ACT_BBH_ENTER_JUMP] = 1, - [ACT_BBH_ENTER_SPIN] = 1, - [ACT_THROWN_FORWARD] = 1, - [ACT_THROWN_BACKWARD] = 1, - [ACT_GETTING_BLOWN] = 1, - [ACT_TELEPORT_FADE_IN] = 1, - [ACT_TELEPORT_FADE_OUT] = 1 -} - -DM_ACTIONS_CROUCHAIR = { - [ACT_DM_AIR_MOVEMENT] = 1, - [ACT_DM_AIR_MOVEMENT_METAL] = 1, - [ACT_GROUND_POUND] = 1 -} - -DM_ACTIONS_ALLOWGRAB = { - [ACT_DM_GROUNDED_MOVEMENT] = 1, - [ACT_DM_GROUNDED_IDLE] = 1, - [ACT_DM_AIR_MOVEMENT] = 1, - [ACT_DM_GROUNDED_MOVEMENT_METAL] = 1, - [ACT_DM_AIR_MOVEMENT_METAL] = 1, - [ACT_DM_WATER_MOVEMENT] = 1, - [ACT_DM_POLE_MOVEMENT] = 1, - [ACT_GROUND_POUND_LAND] = 1 -} - -DM_ACTION_QPHYS = { - [ACT_DM_GROUNDED_MOVEMENT] = 1, - [ACT_DM_GROUNDED_IDLE] = 1, - [ACT_DM_AIR_MOVEMENT] = 1, - [ACT_DM_GROUNDED_MOVEMENT_METAL] = 1, - [ACT_DM_AIR_MOVEMENT_METAL] = 1, - [ACT_DM_WATER_MOVEMENT] = 1, - [ACT_DM_POLE_MOVEMENT] = 1 -} - -DM_ACTION_FORCEANGLE = { - [ACT_GRAB_POLE_FAST] = 1, - [ACT_GRAB_POLE_SLOW] = 1, - [ACT_CLIMBING_POLE] = 1, - [ACT_HOLDING_POLE] = 1, - [ACT_TOP_OF_POLE] = 1 -} - -DM_ACTION_TRANSFERS = { - [ACT_TOP_OF_POLE_JUMP] = 1, - [ACT_WALL_KICK_AIR] = 1 -} - -DM_ACTION_PREFUNCS = { - [ACT_BURNING_JUMP] = function(m) - m.hurtCounter = 4 - m.invincTimer = 10 - if (m == gMarioStates[0]) then - gLakituState.roll = 1000 - gLakituState.oldRoll = gLakituState.roll - cl_red = 128 - end - return 1 - end -} - -DM_ACTION_PREFUNCS = { - [ACT_SHOCKED] = function(m) - m.vel.y = m.vel.y * 0.25 - end -} - -DM_ACTION_FUNCTIONS = { - [ACT_GROUND_POUND_LAND] = function(m) - if (m.controller.buttonDown & A_BUTTON) ~= 0 and m.health > 0xFF then - if m.floor ~= nil then - SV_HandleSpecialFloors(m,true) - local s = gPlayerSyncTable[m.playerIndex] - local direction = GetAngleVectors(m).forward - local yV = m.vel.y - vec3f_copy(m.vel,vec3_scale(direction,m.forwardVel*3.5)) - vec3f_add(m.vel,vec3_qscale(m.floor.normal,-0.3,85 * clampf((m.forwardVel+math.abs(yV*0.32)) / 96, 0.5, 1.0),-0.3)) - m.vel.y = m.vel.y + (250 * clampf((m.forwardVel+math.abs(yV*0.32)) / 96, 0.65, 1.0)) - set_mario_action(m, ACT_DM_AIR_MOVEMENT, 0) - play_character_sound(m,CHAR_SOUND_YAHOO) - return - end - end - end, - [ACT_HARD_BACKWARD_GROUND_KB] = function(m) - if (m.prevAction == ACT_SPECIAL_DEATH_EXIT) then m.healCounter = 32 end - set_mario_action(m, ACT_DM_GROUNDED_MOVEMENT, 0) - end, - [ACT_DEATH_EXIT_LAND] = function(m) - m.healCounter = 32 - set_mario_action(m, ACT_DM_GROUNDED_MOVEMENT, 0) - end, - [ACT_GETTING_BLOWN] = function(m) - vec3f_add(m.vel,{x=-coss(m.faceAngle.y)*75,y=50,z=-sins(m.faceAngle.y)*75}) - set_mario_action(m, ACT_DM_AIR_MOVEMENT, 0) - end, - [ACT_DM_WATER_MOVEMENT] = function(m) - if (m.prevAction ~= ACT_DM_AIR_MOVEMENT and m.prevAction == ACT_DM_GROUNDED_MOVEMENT and m.prevAction ~= ACT_DM_AIR_MOVEMENT_METAL and m.prevAction == ACT_DM_GROUNDED_MOVEMENT_METAL and m.prevAction == ACT_DM_GROUNDED_IDLE) then SV_PlayerMovement_Store(m,false) end - end -} - ---- General helper functions -function ifelse(a,b,c) - if (a) then return b else return c end -end - -function vec3_invert(a) - _x = a.x * -1.0 - _y = a.y * -1.0 - _z = a.z * -1.0 - return {x=_x,y=_y,z=_z} -end - -function vec3_qscale(a,b,c,d) - _x = a.x * b - _y = a.y * c - _z = a.z * d - return {x=_x,y=_y,z=_z} -end - -function vec3_scale(a,b) - _x = a.x * b - _y = a.y * b - _z = a.z * b - return {x=_x,y=_y,z=_z} -end - -function s16(num) - num = math.floor(num) & 0xFFFF - if num >= 32768 then return num - 65536 end - return num -end - -function mario_holding_underwater_shell(m) -- direction is true then we're checking a small range behind, otherwise we're checking the inverse of that range - if (m.heldObj == nil) then return false end - return get_id_from_behavior(m.heldObj.behavior) == id_bhvKoopaShellUnderwater -end - -function mario_is_within_object_angles(m, o, range, direction) -- direction is true then we're checking a small range behind, otherwise we're checking the inverse of that range - local dx = o.oPosX - m.pos.x - local dz = o.oPosZ - m.pos.z - - local dYaw = s16(o.oMoveAngleYaw - atan2s(dz, dx)) - - if (dYaw >= -range and dYaw <= range) then - return direction - else - return not direction - end -end - -function should_push_or_pull_door(m, o) - local dx = o.oPosX - m.pos.x - local dz = o.oPosZ - m.pos.z - - local dYaw = s16(o.oMoveAngleYaw - atan2s(dz, dx)) - - if (dYaw >= -0x4000 and dYaw <= 0x4000) then - return 0x00000001 - else - return 0x00000002 - end -end - -function get_object_closest_to_point(type,point) - local closestObj = nil - local obj = obj_get_first(type) - local minDist = 0x20000 - while obj ~= nil do - local objDist = vec3f_dist({x=obj.oPosX,y=obj.oPosY,z=obj.oPosZ}, point) - if objDist < minDist then - local rad = obj.hitboxRadius+16 - local hei = obj.hitboxHeight+16 - if (vec3f_dist({x=obj.oPosX,y=0,z=obj.oPosZ}, {x=point.x,y=0,z=point.z}) <= rad and point.y >= obj.oPosY and point.y <= obj.oPosY+hei) then - closestObj = obj - minDist = objDist - end - end - obj = obj_get_next(obj) - end - return closestObj -end - -ObjectLists = { - [0] = OBJ_LIST_PLAYER, - [1] = OBJ_LIST_DESTRUCTIVE, - [2] = OBJ_LIST_GENACTOR, - [3] = OBJ_LIST_PUSHABLE, - [4] = OBJ_LIST_LEVEL, - [5] = OBJ_LIST_DEFAULT, - [6] = OBJ_LIST_SURFACE, - [7] = OBJ_LIST_POLELIKE, - [8] = OBJ_LIST_SPAWNER, - [9] = OBJ_LIST_UNIMPORTANT -} -ObjectHeightAddon = { - [id_bhvPokey] = 30, - [id_bhvPokeyBodyPart] = 50, - [id_bhvGoomba] = 30, - [id_bhvSmallBully] = 30, - [id_bhvBobomb] = 30, - [id_bhvBigBully] = 50, - [id_bhvBigChillBully] = 50, - [id_bhvBobombBuddy] = 50, - [id_bhvMips] = 30, - [id_bhvBoo] = 30, - [id_bhvDoor] = 50, - [id_bhvDoorWarp] = 50, - [id_bhvStarDoor] = 50, - [id_bhvBowser] = 80, - [id_bhvKingBobomb] = 120, - [id_bhvChuckya] = 120, -} - -function get_any_object_closest_to_point(point) - local lastList = 0 - local closestObj = nil - local obj = obj_get_first(ObjectLists[lastList]) - local minDist = 0x20000 - while obj ~= nil do - if (obj_is_valid_for_interaction(obj)) then - local objDist = vec3f_dist({x=obj.oPosX,y=obj.oPosY,z=obj.oPosZ}, point) - if objDist < minDist then - local offset = ObjectHeightAddon[get_id_from_behavior(obj.behavior)] ; if offset == nil then offset = 0 end - local rad = obj.hitboxRadius+16 - local hei = obj.hitboxHeight+16+offset - if (vec3f_dist({x=obj.oPosX,y=0,z=obj.oPosZ}, {x=point.x,y=0,z=point.z}) <= rad and point.y >= obj.oPosY and point.y <= obj.oPosY+hei) then - closestObj = obj - minDist = objDist - end - end - end - - local nextObj = obj_get_next(obj) - - if (nextObj == nil) then - while nextObj == nil and lastList < 9 do - lastList = lastList + 1 - nextObj = obj_get_first(ObjectLists[lastList]) - end - end - - obj = nextObj - end - return closestObj -end diff --git a/mods/mquake/_mquake_a_constants_32.lua b/mods/mquake/_mquake_a_constants_32.lua new file mode 100644 index 00000000..71b6fecd Binary files /dev/null and b/mods/mquake/_mquake_a_constants_32.lua differ diff --git a/mods/mquake/_mquake_a_constants_64.lua b/mods/mquake/_mquake_a_constants_64.lua new file mode 100644 index 00000000..8e940697 Binary files /dev/null and b/mods/mquake/_mquake_a_constants_64.lua differ diff --git a/mods/mquake/_mquake_b_physics.lua b/mods/mquake/_mquake_b_physics.lua deleted file mode 100644 index 63b261aa..00000000 --- a/mods/mquake/_mquake_b_physics.lua +++ /dev/null @@ -1,373 +0,0 @@ --- _mquake_a_constants --- _mquake_b_actions_predefine --- _mquake_c_actions --- _mquake_d_physics --- _mquake_e_hooks --- localize functions to improve performance - _mquake_b_physics.lua -local collision_find_surface_on_ray,vec3f_dist,vec3f_sub,vec3f_dot,vec3f_project,vec3f_add,vec3f_copy,level_trigger_warp,vec3f_normalize,vec3f_length,rotate_in_xz,is_game_paused,vec3f_mul,clampf = collision_find_surface_on_ray,vec3f_dist,vec3f_sub,vec3f_dot,vec3f_project,vec3f_add,vec3f_copy,level_trigger_warp,vec3f_normalize,vec3f_length,rotate_in_xz,is_game_paused,vec3f_mul,clampf - - --- Helper functions - -local function SV_Trace(start,stop) -- only made for friction - local ray = collision_find_surface_on_ray(start.x,start.y,start.z,stop.x,stop.y,stop.z) - return (vec3f_dist(start,stop) - vec3f_dist(ray.hitPos,stop)) <= 0.05 -end --- initial version was bugged but x showed me how to properly use vec3f_project --- otherwise entirely written by yours truly :3 -function PHYS_CollideWithNormal(vel,norm,slamFactor,bounceFactor) - -- if (m.playerIndex ~= 0) then return end - -- First, define a temporary vel var - local _vel = {x=vel.x,y=vel.y,z=vel.z} - - if (bounceFactor > 0) then - -- Bounce off a bit if ye want to! - vec3f_sub(_vel,vec3_scale(vec3_scale(norm,2.0 * vec3f_dot(norm,_vel)),bounceFactor)) - end - - if (slamFactor < 0) then - -- SLAM the vel against the normal with the factor (usually -1) - local v = vec3f_project(_vel, norm) - vec3f_add(_vel,vec3_scale(vec3f_project(_vel, norm), slamFactor)) - end - - -- Return the new velocity - return _vel -end - -SV_PlayerMovement_Scale = function(m,prescaled) - -- if (m.playerIndex ~= 0) then return end - if (sv_stopmovement) then return end - - if (prescaled) then - m.vel.x = cl_speedbuffer.x - m.vel.y = cl_speedbuffer.y - m.vel.z = cl_speedbuffer.z - else - cl_speedbuffer.x = m.vel.x - cl_speedbuffer.y = m.vel.y - cl_speedbuffer.z = m.vel.z - m.vel.x = m.vel.x * sv_scalerate - m.vel.y = m.vel.y * sv_scalerate - m.vel.z = m.vel.z * sv_scalerate - end -end - -function SV_PlayerMovement_Store(m,store) - -- if (m.playerIndex ~= 0) then return end - if (m.playerIndex == 0) then - if (store) then - vec3f_copy(cl_upwarpfix_vel,m.vel) - vec3f_copy(cl_upwarpfix_pos,m.pos) - else - vec3f_copy(m.vel,cl_upwarpfix_vel) - vec3f_copy(m.pos,cl_upwarpfix_pos) - end - end -end - -function SV_PlayerMovement_Relative(m) - -- if (m.playerIndex ~= 0) then return end - local obj = m.marioObj.platform - if (obj ~= nil) then - m.vel.y = m.vel.y + (obj.oVelY*4) - end -end - -function SV_HandleSpecialFloors(m,bypassFloorCheck) - -- if (m.playerIndex ~= 0) then return end - if (m.floor ~= nil) then - local type = m.floor.type - if (type == SURFACE_VERTICAL_WIND and m.action ~= ACT_GROUND_POUND) then - m.vel.y = m.vel.y + 18 - if (m.vel.y < -24) then - m.vel.y = -24 - end - if (m.vel.y > 200) then - m.vel.y = 200 - end - return true - end - if (type == SURFACE_HORIZONTAL_WIND) then - local pushAngle = m.floor.force << 8; - - local amt = ifelse((m.action & ACT_FLAG_AIR) == 0,48,8) - - m.vel.x = m.vel.x + (amt * sins(pushAngle)) - m.vel.z = m.vel.z + (amt * coss(pushAngle)) - return true - end - if (type == SURFACE_DEATH_PLANE or type == SURFACE_VERTICAL_WIND) and (m.pos.y < m.floorHeight + 2048) then - if (level_trigger_warp(m, WARP_OP_WARP_FLOOR) == 20 and (m.flags & MARIO_UNKNOWN_18) ~= 0) then - return true - end - end - if (type == SURFACE_BURNING) and (m.invincTimer == 0) and ((m.flags & MARIO_METAL_CAP == 0) and (((m.action & ACT_FLAG_AIR) == 0 and (m.input & INPUT_OFF_FLOOR) == 0) or bypassFloorCheck)) then - m.hurtCounter = 8 - m.invincTimer = 15 - cl_red = 128 - end - if (type == SURFACE_INSTANT_QUICKSAND or type == SURFACE_INSTANT_MOVING_QUICKSAND) and (m.invincTimer == 0) and ((m.flags & MARIO_METAL_CAP == 0) and (((m.action & ACT_FLAG_AIR) == 0 and (m.input & INPUT_OFF_FLOOR) == 0) or bypassFloorCheck)) then - m.hurtCounter = 1 - m.invincTimer = 15 - cl_red = 128 - end - end - return false -end - --- Player angle system - -function GetAngleVectors(m) - local s = gPlayerSyncTable[m.playerIndex] - - local localForwardDirection = vec3f_normalize({x=(m.area.camera.focus.x - m.area.camera.pos.x),y=(m.area.camera.focus.y - m.area.camera.pos.y), z=(m.area.camera.focus.z - m.area.camera.pos.z)}) - - if (m.playerIndex == 0) then - s.playerStopFix = sv_stopfix - s.playerFacingX = localForwardDirection.x - s.playerFacingY = localForwardDirection.y - s.playerFacingZ = localForwardDirection.z - -- s.playerFacingYaw = (-(m.marioObj.header.gfx.angle.y - m.area.camera.yaw))+0x8000 - -- s.playerFacingPitch = -gLakituState.oldPitch - end - - local forwardDirection = ifelse(m.playerIndex == 0,{x=localForwardDirection.x,y=localForwardDirection.y,z=localForwardDirection.z},{x=s.playerFacingX,y=s.playerFacingY,z=s.playerFacingZ}) - local rightDirection = {x=0,y=0,z=0} - - if (not s.playerStopFix) then - local preRemovalLen = vec3f_length(forwardDirection) - forwardDirection.y = 0 - - local postRemovalLen = vec3f_length(forwardDirection) - forwardDirection.x = forwardDirection.x * (preRemovalLen/postRemovalLen) - forwardDirection.z = forwardDirection.z * (preRemovalLen/postRemovalLen) - end - - rotate_in_xz(rightDirection,forwardDirection,-0x4000) - - return { - rawForward=localForwardDirection, - forward=forwardDirection, - right=rightDirection - } -end - --- Important Functions - --- Acceleration / Friction -local function SV_UserFriction(m) - -- if (m.playerIndex ~= 0) then return end - local speed = vec3f_length(m.vel) - if (speed <= 0.00001) then return end - local start = {x=(m.pos.x + (m.vel.x / speed * 16)),y=(m.pos.y + (m.vel.y / speed * 16)),z=(m.pos.z + (m.vel.z / speed * 16))} - local stop = {x=start.x,y=start.y,z=start.z-24} - local friction = 0 - if (SV_Trace(start,stop)) then - friction = (sv_friction+ifelse(gPlayerSyncTable[m.playerIndex].playerCrouching,sv_crouchfriction_scale,0))*sv_edgefriction - else - friction = sv_friction+ifelse(gPlayerSyncTable[m.playerIndex].playerCrouching,sv_crouchfriction_scale,0) - end - friction = friction*SV_GetSurfaceStandableFrictionMultiplier(m.floor.type,m.area.terrainType) - local control = nil - - if (speed <= sv_stopspeed) then - control = sv_stopspeed - else - control = speed - end - - local newspeed = speed - sv_tickrate*control*friction - if (newspeed < 0) then newspeed = 0 end - if (newspeed > 0) then - newspeed = newspeed / speed - end - m.vel.x = m.vel.x * newspeed - m.vel.y = m.vel.y * newspeed - m.vel.z = m.vel.z * newspeed -end - -local function SV_Accelerate(m,wishVel,wishDir,wishspeed) - -- if (m.playerIndex ~= 0) then return end - local addspeed,accelspeed,currentspeed = 0,0,0 - currentspeed = vec3f_dot(m.vel,wishDir) - addspeed = wishspeed - currentspeed - if (addspeed <= 0) then return end - accelspeed = sv_accelerate * wishspeed * sv_tickrate - if (accelspeed > addspeed) then accelspeed = addspeed end - m.vel.x = m.vel.x + (accelspeed * wishDir.x) - m.vel.y = m.vel.y + (accelspeed * wishDir.y) - m.vel.z = m.vel.z + (accelspeed * wishDir.z) -end - - -local function SV_AirAccelerate(m,wishVel,wishDir,wishspeed) - -- if (m.playerIndex ~= 0) then return end - local addspeed,wishspd,accelspeed,currentspeed = 0,0,0,0 - wishspd = wishspeed - if (wishspd > sv_playerclamp_air) then wishspd = sv_playerclamp_air end - currentspeed = vec3f_dot(m.vel,wishDir) - addspeed = wishspd - currentspeed - if (addspeed <= 0) then return end - accelspeed = (sv_airaccelerate_value * wishspd) * sv_tickrate - if (accelspeed > addspeed) then accelspeed = addspeed end - m.vel.x = m.vel.x + (accelspeed * wishDir.x) - m.vel.y = m.vel.y + (accelspeed * wishDir.y) - m.vel.z = m.vel.z + (accelspeed * wishDir.z) -end - --- Main movement functions - -function SV_PlayerMovement(m) - -- if (m.playerIndex ~= 0) then return end - if (sv_stopmovement) then return end - - local isPrediction = m.playerIndex ~= 0 - - -- if (isPrediction) then return end - - - local playerSpeed = ifelse(gPlayerSyncTable[m.playerIndex].playerCrouching,sv_playerspeed_crouch,sv_playerspeed) - - local vecInput = {x=0,y=0,z=0} - if ((not is_game_paused()) and m.health > 0xFF and not cl_bowserthrow and not cl_bowserthrow) then - vecInput.x = m.controller.rawStickX - vecInput.y = m.controller.rawStickY - end - - -- if (not isPrediction) then - vec3f_normalize(vecInput) - vec3f_mul(vecInput,m.controller.stickMag) - -- end - - local fmove = (vecInput.y/32)*playerSpeed -- what are the maximums of these again? - local smove = (vecInput.x/32)*playerSpeed - -- local fmove = (vecInput.y/64)*playerSpeed -- what are the maximums of these again? - -- local smove = (vecInput.x/64)*playerSpeed - - local wishVel = {x=0,y=0,z=0} - local wishDir = {x=0,y=0,z=0} - - local AngledVectors = GetAngleVectors(m) - - wishVel.x = (AngledVectors.forward.x * fmove) + (AngledVectors.right.x * smove) - wishVel.y = (AngledVectors.forward.y * fmove) + (AngledVectors.right.y * smove) - wishVel.z = (AngledVectors.forward.z * fmove) + (AngledVectors.right.z * smove) - - - if (not isPrediction) then - if (m.action == ACT_DM_GROUNDED_MOVEMENT or m.action == ACT_DM_GROUNDED_MOVEMENT_METAL or m.action == ACT_DM_GROUNDED_IDLE) then - wishVel.y = 0 - if (m.floor ~= nil) then - local tempNormal = vec3_invert(m.floor.normal) - tempNormal.y = 0 ; vec3f_normalize(tempNormal) - local amount = (cl_grounddefacto * clampf(vec3f_dot(wishVel,tempNormal),0,1)) * m.floor.normal.y - vec3f_sub(wishVel,vec3_scale(vec3f_project(wishVel, m.floor.normal), amount)) - vec3f_add(wishVel,vec3_scale(m.floor.normal, amount*0.1)) - end - end - end - - local wishspeed = vec3f_length(wishVel) - vec3f_copy(wishDir, wishVel) - vec3f_normalize(wishDir) - if wishspeed > sv_maxspeed then - wishVel.x = wishVel.x * (sv_maxspeed / wishspeed) - wishVel.y = wishVel.y * (sv_maxspeed / wishspeed) - wishVel.z = wishVel.z * (sv_maxspeed / wishspeed) - wishspeed = sv_maxspeed - end - if (m.action == ACT_DM_GROUNDED_MOVEMENT or m.action == ACT_DM_GROUNDED_MOVEMENT_METAL or m.action == ACT_DM_GROUNDED_IDLE) then - SV_UserFriction(m,wishVel,wishDir,wishspeed) - SV_Accelerate(m,wishVel,wishDir,wishspeed) - elseif (m.action == ACT_DM_AIR_MOVEMENT or m.action == ACT_DM_AIR_MOVEMENT_METAL) then - SV_AirAccelerate(m,wishVel,wishDir,wishspeed) - end - - local finalVelLen = vec3f_length(m.vel) - if finalVelLen > sv_maxvelocity then - m.vel.x = m.vel.x * (sv_maxvelocity / finalVelLen) - m.vel.y = m.vel.y * (sv_maxvelocity / finalVelLen) - m.vel.z = m.vel.z * (sv_maxvelocity / finalVelLen) - end -end - -function SV_WaterMovement(m) - -- if (m.playerIndex ~= 0) then return end - if (sv_stopmovement) then return end - - local isPrediction = m.playerIndex ~= 0 - - local shellSpeed = mario_holding_underwater_shell(m) - - local playerSpeed = ifelse(shellSpeed,sv_playerspeed_water_shell,sv_playerspeed_water) - - local vecInput = {x=0,y=0,z=0} - if ((not is_game_paused()) and m.health > 0xFF) then - vecInput.x = m.controller.rawStickX - vecInput.y = m.controller.rawStickY - end - - if (not isPrediction) then - vec3f_normalize(vecInput) - vec3f_mul(vecInput,m.controller.stickMag) - end - - local fmove = (vecInput.y/32)*playerSpeed - local smove = (vecInput.x/32)*playerSpeed - local umove = 0 - if (m.controller.buttonDown & A_BUTTON ~= 0) then umove = 1 end - - local wishVel = {x=0,y=0,z=0} - - local AngledVectors = GetAngleVectors(m) - - wishVel.x = (AngledVectors.rawForward.x * fmove) + (AngledVectors.right.x * smove) - wishVel.y = (AngledVectors.rawForward.y * fmove) + (AngledVectors.right.y * smove) - wishVel.z = (AngledVectors.rawForward.z * fmove) + (AngledVectors.right.z * smove) - - if (fmove < 0.1 and smove < 0.1 and umove == 0) then - wishVel.y = wishVel.y - 30 - else - wishVel.y = wishVel.y + sv_upspeed_water * umove - end - - local wishspeed = vec3f_length(wishVel) - - local maxspeed = ifelse(shellSpeed,sv_playerspeed_water_shell,sv_maxspeed) - - if (wishspeed > maxspeed) then - vec3f_mul(wishVel,maxspeed/wishspeed) - wishspeed = maxspeed - end - wishspeed = wishspeed * 0.85 - -- - -- water friction - -- - local speed = vec3f_length(m.vel) - local newspeed = 0 - - if (speed > 0.00001) then - newspeed = speed - sv_tickrate * speed * sv_waterfriction - if (newspeed < 0) then newspeed = 0 end - vec3f_mul(m.vel,newspeed/speed) - end - - -- - -- water acceleration - -- - if (wishspeed < 0.00001) then return end - - local addspeed = wishspeed - newspeed - - if (addspeed <= 0) then return end - - vec3f_normalize(wishVel) - local accelspeed = (sv_accelerate * wishspeed) * sv_tickrate - if (accelspeed > addspeed) then accelspeed = addspeed end - - m.vel.x = m.vel.x + (accelspeed * wishVel.x) - m.vel.y = m.vel.y + (accelspeed * wishVel.y) - m.vel.z = m.vel.z + (accelspeed * wishVel.z) - -end diff --git a/mods/mquake/_mquake_b_physics_32.lua b/mods/mquake/_mquake_b_physics_32.lua new file mode 100644 index 00000000..b826a8bd Binary files /dev/null and b/mods/mquake/_mquake_b_physics_32.lua differ diff --git a/mods/mquake/_mquake_b_physics_64.lua b/mods/mquake/_mquake_b_physics_64.lua new file mode 100644 index 00000000..ae1ebbc9 Binary files /dev/null and b/mods/mquake/_mquake_b_physics_64.lua differ diff --git a/mods/mquake/_mquake_c_moveset_functions.lua b/mods/mquake/_mquake_c_moveset_functions.lua deleted file mode 100644 index 1b5aec36..00000000 --- a/mods/mquake/_mquake_c_moveset_functions.lua +++ /dev/null @@ -1,286 +0,0 @@ --- _mquake_a_constants --- _mquake_b_actions_predefine --- _mquake_c_actions --- _mquake_d_physics --- _mquake_e_hooks --- localize functions to improve performance - _mquake_c_moveset_functions.lua -local get_id_from_behavior,mario_grab_used_object,mario_throw_held_object,obj_is_grabbable,obj_is_attackable,obj_is_breakable_object,mario_drop_held_object,obj_get_nearest_object_with_behavior_id,vec3f_dot,vec3f_length,obj_check_hitbox_overlap,max,level_trigger_warp,absf_2 = get_id_from_behavior,mario_grab_used_object,mario_throw_held_object,obj_is_grabbable,obj_is_attackable,obj_is_breakable_object,mario_drop_held_object,obj_get_nearest_object_with_behavior_id,vec3f_dot,vec3f_length,obj_check_hitbox_overlap,max,level_trigger_warp,absf_2 -local vec3f_add = vec3f_add -local set_mario_action = set_mario_action - -function obj_activate_door(m,door,bhv) - if (m.action == ACT_DM_WATER_MOVEMENT) then return true end - - if door ~= nil then - local flags = save_file_get_flags() - -- local bhv = get_id_from_behavior(door) - if bhv == id_bhvDoor then - local doorStars = door.oBehParams >> 24 - if (doorStars <= save_file_get_total_star_count(get_current_save_file_num()-1,0,255)) then - door.oAction = 1 - door.header.gfx.animInfo.animFrame = max(door.header.gfx.animInfo.animFrame, 25) - end - return true - elseif bhv == id_bhvDoorWarp then - local wDoorID = door.oBehParams >> 24 - if (wDoorID == 1 and (flags & SAVE_FLAG_HAVE_KEY_2) == 0) then - return true - end - if (wDoorID == 2 and (flags & SAVE_FLAG_HAVE_KEY_1) == 0) then - return true - end - door.oAction = 2 - door.header.gfx.animInfo.animFrame = max(door.header.gfx.animInfo.animFrame, 10) - m.interactObj = door - m.usedObj = door - m.actionArg = should_push_or_pull_door(m, door) - level_trigger_warp(m, WARP_OP_WARP_DOOR) - return true - elseif bhv == id_bhvStarDoor and door.oAction == 0 then - local doorStars = door.oBehParams >> 24 - if (doorStars <= save_file_get_total_star_count(get_current_save_file_num()-1,0,255)) then - door.oInteractStatus = 0x00010000 - end - return true - end - end - return false -end - -function held_obj_update(m) - local obj = m.heldObj - local bhv = get_id_from_behavior(obj.behavior) - - if (bhv == id_bhvBobomb) then - if (obj.oBobombFuseTimer >= 151) then - mario_drop_held_object(m) - end - end - - if (bhv == id_bhvKoopaShellUnderwater) then - if (obj.oTimer >= 601 or m.action ~= ACT_DM_WATER_MOVEMENT) then - mario_drop_held_object(m) - end - obj.oTimer = obj.oTimer + 1 - end -end - -function mario_throw_object_ext(m,ang) - local obj = m.heldObj - local bhv = get_id_from_behavior(obj.behavior) - - if (bhv == id_bhvBowser and cl_bowserthrow) then - local curFaceAngle = m.faceAngle.y - m.faceAngle.y = m.area.camera.yaw + 0x8000 - mario_drop_held_object(m) - obj.oPosX = m.marioBodyState.heldObjLastPosition.x - obj.oPosY = m.marioBodyState.heldObjLastPosition.y - obj.oPosZ = m.marioBodyState.heldObjLastPosition.z - - -- Todo ; How do we fix this shit maintaining the velocity? - - m.marioObj.oAngleVelYaw = 0 - m.marioObj.oMoveAnglePitch = 0 - obj.oForwardVel = 0 - obj.oVelY = 0 - obj.oBowserHeldAngleVelYaw = clampf(absf_2(s16(cl_bowserthrow_previousYaw-curFaceAngle)),0x10,0x1000) - obj.oBowserHeldAnglePitch = clampf(-absf_2(s16(cl_bowserthrow_previousYaw-curFaceAngle)),-0x1000,-0x400) - - network_send_object(obj,true) - return true - end - - if (bhv == id_bhvJumpingBox) then - mario_drop_held_object(m) - - set_mario_action(m, ACT_DM_AIR_MOVEMENT, 0) - - vec3f_add(m.vel,vec3_scale(ang.forward,300)) - vec3f_add(m.vel,{x=0,y=500,z=0}) - - obj.oPosX = m.pos.x - obj.oPosY = m.pos.y - obj.oPosZ = m.pos.z - - return true - end - - return false -end - -function mario_drop_object_ext(m,ang) - local obj = m.heldObj - local bhv = get_id_from_behavior(obj.behavior) - - if (bhv == id_bhvJumpingBox) then - return mario_throw_object_ext(m,ang) - end - - return false -end - -function mario_grab_used_object_ext(m,ang) - local o = m.usedObj - local bhv = get_id_from_behavior(o.behavior) - - if (bhv == id_bhvBowser) then - if (not mario_is_within_object_angles(m, o, 0x2000, true)) then return false end - cl_bowserthrow = true - o.oForwardVel = 0 - o.oVelY = 0 - - o.oBowserHeldAngleVelYaw = 0 - o.oBowserHeldAnglePitch = 0 - o.oMoveAnglePitch = 0 - o.oMoveAngleYaw = 0 - o.oForwardVelS32 = 0 - o.oForwardVel = 0 - - m.marioObj.oAngleVelYaw = 0 - m.marioObj.oMoveAnglePitch = 0 - m.marioObj.oMoveAngleYaw = 0 - m.marioObj.oForwardVelS32 = 0 - m.marioObj.oForwardVel = 0 - end - - if (bhv == id_bhvKingBobomb) then - if (not mario_is_within_object_angles(m, o, 0x2000, true)) then return false end - - mario_grab_used_object(m) - - return false - end - - if (bhv == id_bhvChuckya) then - if (not mario_is_within_object_angles(m, o, 0x2000, true)) then return false end - - mario_grab_used_object(m) - - return false - end - - if (bhv == id_bhvKoopaShellUnderwater) then - if (m.action ~= ACT_DM_WATER_MOVEMENT) then return false end - o.oTimer = 0 -- ten seconds - end - - mario_grab_used_object(m) - return o == m.heldObj -end - -function mario_handle_grab_and_punch_custom(m) - if m.heldByObj ~= nil then return end - if m == nil then return end - - local pressedB = (m.controller.buttonPressed & B_BUTTON) ~= 0 - local pressedZ = (m.controller.buttonPressed & Z_TRIG) ~= 0 - - local ang = nil - - if m.heldObj ~= nil then - if (ang == nil) then ang = GetAngleVectors(m) end - local obj = m.heldObj - if (cl_bowserthrow) then - m.marioBodyState.heldObjLastPosition.x = m.area.camera.pos.x + (ang.forward.x * (160+(obj.hitboxRadius*0.5))) - m.marioBodyState.heldObjLastPosition.y = m.area.camera.pos.y + (ang.forward.y * (160+(obj.hitboxRadius*0.5))) - (obj.hitboxHeight*0.5) + 64 - m.marioBodyState.heldObjLastPosition.z = m.area.camera.pos.z + (ang.forward.z * (160+(obj.hitboxRadius*0.5))) - else - m.marioBodyState.heldObjLastPosition.x = m.area.camera.pos.x + (ang.rawForward.x * (160+(obj.hitboxRadius*0.5))) + (m.vel.x*0.25) - m.marioBodyState.heldObjLastPosition.y = m.area.camera.pos.y + ((ang.rawForward.y * (160+(obj.hitboxRadius*0.5))) + (m.vel.y*0.25)) - (obj.hitboxHeight*0.5) - m.marioBodyState.heldObjLastPosition.z = m.area.camera.pos.z + (ang.rawForward.z * (160+(obj.hitboxRadius*0.5))) + (m.vel.z*0.25) - end - end - - m.controller.buttonPressed = m.controller.buttonPressed & ~(B_BUTTON|Z_TRIG) - if (pressedB) then - if (ang == nil) then ang = GetAngleVectors(m) end - if m.heldObj ~= nil then - if not mario_throw_object_ext(m,ang) then - local curFaceAngle = m.faceAngle.y - local obj = m.heldObj - m.faceAngle.y = m.area.camera.yaw + 0x8000 - mario_throw_held_object(m) - obj.oPosX = m.marioBodyState.heldObjLastPosition.x - obj.oPosY = m.marioBodyState.heldObjLastPosition.y - obj.oPosZ = m.marioBodyState.heldObjLastPosition.z - obj.oVelX = (ang.rawForward.x * 160) + (m.vel.x*0.25) - obj.oVelY = (ang.rawForward.y * 160) + (m.vel.x*0.25) - obj.oVelZ = (ang.rawForward.z * 160) + (m.vel.x*0.25) - obj.oMoveAnglePitch = gLakituState.oldPitch - obj.oMoveAngleYaw = m.faceAngle.y - obj.oMoveAngleRoll = 0 - obj.oFaceAnglePitch = 0 - obj.oFaceAngleYaw = m.faceAngle.y - obj.oFaceAngleRoll = 0 - m.faceAngle.y = curFaceAngle - end - elseif (cl_interacttimer == 0) then - -- play_character_sound(m,CHAR_SOUND_PUNCH_HOO) - cl_interacttimer = 15 - m.marioBodyState.heldObjLastPosition.x = m.area.camera.pos.x + (ang.rawForward.x * 160) - m.marioBodyState.heldObjLastPosition.y = m.area.camera.pos.y + (ang.rawForward.y * 160) - m.marioBodyState.heldObjLastPosition.z = m.area.camera.pos.z + (ang.rawForward.z * 160) - local target = get_any_object_closest_to_point(m.marioBodyState.heldObjLastPosition) - if (target ~= nil) then - local bhv = get_id_from_behavior(target.behavior) - if (not obj_activate_door(m,target,bhv)) then - if (obj_is_grabbable(target)) then - m.interactObj = target - m.usedObj = target - if (not mario_grab_used_object_ext(m,ang)) then - m.interactObj = nil - m.usedObj = nil - end - elseif (obj_is_attackable(target) or obj_is_exclamation_box(target) or obj_is_bully(target) or obj_is_breakable_object(target)) then - m.interactObj = target - m.usedObj = target - target.oInteractStatus = INT_STATUS_INTERACTED | INT_STATUS_WAS_ATTACKED | ATTACK_PUNCH - -- elseif (bhv == id_bhvMario) then - - end - end - else - play_sound(CAM_SOUND_UNUSED_SELECT_FIXED, m.marioObj.header.gfx.cameraToObject) - end - end - end - if (pressedZ) then - if m.heldObj ~= nil then - if (not mario_drop_object_ext(m,ang)) then - local curFaceAngle = m.faceAngle.y - local obj = m.heldObj - m.faceAngle.y = m.area.camera.yaw + 0x8000 - mario_drop_held_object(m) - obj.oPosX = m.marioBodyState.heldObjLastPosition.x - obj.oPosY = m.marioBodyState.heldObjLastPosition.y - obj.oPosZ = m.marioBodyState.heldObjLastPosition.z - obj.oMoveAnglePitch = gLakituState.oldPitch - obj.oMoveAngleYaw = m.faceAngle.y - obj.oMoveAngleRoll = 0 - obj.oFaceAnglePitch = 0 - obj.oFaceAngleYaw = m.faceAngle.y - obj.oFaceAngleRoll = 0 - m.faceAngle.y = curFaceAngle - end - end - end -end - --- function obj_affect_nearest_door(m,bhv) - -- local door = obj_get_nearest_object_with_behavior_id(m.marioObj, bhv) - -- if door ~= nil and obj_check_hitbox_overlap(m.marioObj, door) and vec3f_dot(m.vel,{x=m.pos.x-door.oPosX,y=0,z=m.pos.z-door.oPosZ}) <= -0.1 and vec3f_length(m.vel) > 20 then - -- if bhv == id_bhvDoor then - -- door.oAction = 1 - -- door.header.gfx.animInfo.animFrame = max(door.header.gfx.animInfo.animFrame, 20) - -- elseif bhv == id_bhvDoorWarp then - -- door.oAction = 2 - -- door.header.gfx.animInfo.animFrame = max(door.header.gfx.animInfo.animFrame, 10) - -- m.interactObj = door - -- m.usedObj = door - -- m.actionArg = should_push_or_pull_door(m, door) - -- level_trigger_warp(m, WARP_OP_WARP_DOOR) - -- elseif bhv == id_bhvStarDoor and door.oAction == 0 then - -- door.oInteractStatus = 0x00010000 - -- end - -- end --- end \ No newline at end of file diff --git a/mods/mquake/_mquake_c_moveset_functions_32.lua b/mods/mquake/_mquake_c_moveset_functions_32.lua new file mode 100644 index 00000000..7ce40be5 Binary files /dev/null and b/mods/mquake/_mquake_c_moveset_functions_32.lua differ diff --git a/mods/mquake/_mquake_c_moveset_functions_64.lua b/mods/mquake/_mquake_c_moveset_functions_64.lua new file mode 100644 index 00000000..2364d604 Binary files /dev/null and b/mods/mquake/_mquake_c_moveset_functions_64.lua differ diff --git a/mods/mquake/_mquake_d_actions.lua b/mods/mquake/_mquake_d_actions.lua deleted file mode 100644 index 42f8e79c..00000000 --- a/mods/mquake/_mquake_d_actions.lua +++ /dev/null @@ -1,270 +0,0 @@ --- _mquake_a_constants --- _mquake_b_actions_predefine --- _mquake_c_actions --- _mquake_d_physics --- _mquake_e_hooks --- localize functions to improve performance - _mquake_d_actions.lua -local set_mario_action,vec3f_add,vec3f_length,perform_ground_step,vec3f_copy,perform_air_step = set_mario_action,vec3f_add,vec3f_length,perform_ground_step,vec3f_copy,perform_air_step - - -local function play_local_footstep_sounds(m,rate,max) - cl_footstepTimer = cl_footstepTimer + rate - if (cl_footstepTimer >= max) then - m.marioObj.header.gfx.animInfo.animFrame = 0 - play_step_sound(m, 0, 1) - cl_footstepTimer = 0 - end -end - ---- @param m MarioState -act_dm_grounded_movement = function(m) - -- AngleVectors(m) - local metal_underwater = (m.flags & MARIO_METAL_CAP) ~= 0 and m.pos.y <= m.waterLevel-sv_playersubmergelevel - local crouch = gPlayerSyncTable[m.playerIndex].playerCrouching - - if (metal_underwater and m.action ~= ACT_DM_GROUNDED_MOVEMENT_METAL) then - SV_PlayerMovement_Store(m,true) - set_mario_action(m, ACT_DM_GROUNDED_MOVEMENT_METAL, 0) - m.action = ACT_DM_GROUNDED_MOVEMENT_METAL - SV_PlayerMovement_Store(m,false) - -- return - elseif (m.action == ACT_DM_GROUNDED_MOVEMENT_METAL and not metal_underwater) then - set_mario_action(m, ACT_DM_GROUNDED_MOVEMENT, 0) - m.action = ACT_DM_GROUNDED_MOVEMENT - -- return - end - - if (m.floor ~= nil) then - if (m.floor.normal.y <= SV_GetSurfaceStandableMinimum(m.floor.type,m.area.terrainType)) then - SV_PlayerMovement_Relative(m) - set_mario_action(m, ACT_DM_AIR_MOVEMENT, 0) - act_dm_air_movement(m) - return - end - end - - if (m.controller.buttonDown & A_BUTTON) ~= 0 and m.floor ~= nil then - set_character_animation(m, CHAR_ANIM_IDLE_HEAD_CENTER) - if (m.vel.y < 0) then m.vel.y = m.vel.y * 0.25 end - - if (metal_underwater) then - vec3f_add(m.vel,vec3_qscale(m.floor.normal,-0.4,20,40,-0.4)) - m.vel.y = m.vel.y + 100 - else - vec3f_add(m.vel,vec3_qscale(m.floor.normal,-0.4,40,-0.4)) - m.vel.y = m.vel.y + 110 - end - - if (m.vel.y > 320) then m.vel.y = 320 end - - play_character_sound(m,CHAR_SOUND_YAH_WAH_HOO) - - play_step_sound(m, 0, 1) - - - SV_PlayerMovement_Relative(m) - - -- SV_PlayerMovement_Store(m,true) - - set_mario_action(m, ACT_DM_AIR_MOVEMENT, 0) - act_dm_air_movement(m) - return - end - - SV_PlayerMovement(m) - - if (m.playerIndex == 0) then - set_character_animation(m, CHAR_ANIM_A_POSE) - if (not cl_bowserthrow) then - local len = vec3f_length(vec3_qscale(m.vel,1,0,1)) - if (len < 1) then - m.faceAngle.y = m.area.camera.yaw + 0x8000 - if (m.action == ACT_DM_GROUNDED_MOVEMENT) then m.action = ACT_DM_GROUNDED_IDLE end - else - play_local_footstep_sounds(m,len * 0.0625,60) - m.faceAngle.y = atan2s(m.vel.z, m.vel.x) - if (m.action == ACT_DM_GROUNDED_IDLE) then m.action = ACT_DM_GROUNDED_MOVEMENT end - end - end - else - local scale = m.forwardVel - if (scale < 5) then - set_character_animation(m, ifelse(crouch,CHAR_ANIM_CROUCHING,CHAR_ANIM_FIRST_PERSON)) - else - play_step_sound(m, ifelse(crouch,26,9), ifelse(crouch,79,45)) - set_character_anim_with_accel(m, ifelse(crouch,CHAR_ANIM_CRAWLING,CHAR_ANIM_RUNNING), scale*ifelse(crouch,0x4000,0x2400)) - end - end - m.forwardVel = vec3f_length(vec3_qscale(m.vel,sv_scalerate,0,sv_scalerate)) - - SV_PlayerMovement_Scale(m,false) - local stepResult = perform_ground_step(m) - SV_PlayerMovement_Scale(m,true) - - if (stepResult == GROUND_STEP_LEFT_GROUND) then - SV_PlayerMovement_Relative(m) - if (m.action == ACT_DM_GROUNDED_MOVEMENT_METAL) then - set_mario_action(m, ACT_DM_AIR_MOVEMENT_METAL, 0) - else - set_mario_action(m, ACT_DM_AIR_MOVEMENT, 0) - end - end - if m.wall ~= nil and (stepResult == GROUND_STEP_HIT_WALL) then --or (stepResult == GROUND_STEP_HIT_WALL_CONTINUE_QSTEPS) or (stepResult == GROUND_STEP_HIT_WALL_STOP_QSTEPS)) then - vec3f_copy(m.vel, PHYS_CollideWithNormal(m.vel,m.wall.normal,-1.0,0.0)) - end - - if (m.pos.y <= m.waterLevel-sv_playersubmergelevel and m.waterLevel > m.floorHeight + sv_playersubmergelevel) and (m.flags & MARIO_METAL_CAP) == 0 then - if (m.action == ACT_DM_GROUNDED_MOVEMENT_METAL) then - set_mario_action(m, ACT_DM_AIR_MOVEMENT_METAL, 0) - else - set_mario_action(m, ACT_DM_WATER_MOVEMENT, 0) - end - end - - -- SV_PlayerMovement_Store(m,true) -end - ---- @param m MarioState -act_dm_air_movement = function(m) - -- AngleVectors(m) - local metal_underwater = (m.flags & MARIO_METAL_CAP) ~= 0 and m.pos.y <= m.waterLevel-sv_playersubmergelevel - local act = m.action - local crouch = gPlayerSyncTable[m.playerIndex].playerCrouching - - if (metal_underwater and act ~= ACT_DM_AIR_MOVEMENT_METAL) then - SV_PlayerMovement_Store(m,true) - set_mario_action(m, ACT_DM_AIR_MOVEMENT_METAL, 0) - m.action = ACT_DM_AIR_MOVEMENT_METAL - SV_PlayerMovement_Store(m,false) - -- return - elseif (act == ACT_DM_AIR_MOVEMENT_METAL and not metal_underwater) then - set_mario_action(m, ACT_DM_AIR_MOVEMENT, 0) - m.action = ACT_DM_AIR_MOVEMENT - -- return - end - - if (m.controller.buttonPressed & Z_TRIG) ~= 0 and (m.controller.buttonDown & A_BUTTON) == 0 and m.heldObj == nil and m.prevAction ~= ACT_DM_WATER_MOVEMENT then - if ((m.flags & MARIO_METAL_CAP) == 0) then - set_mario_action(m, ACT_GROUND_POUND, 2) - m.vel.x = m.vel.x * sv_scalerate - m.vel.z = m.vel.z * sv_scalerate - m.vel.y = -20 * sv_scalerate - m.forwardVel = vec3f_length(vec3_qscale(m.vel,1,0,1)) - m.actionState = 2 - return - else - m.vel.y = -200 - end - end - - SV_PlayerMovement(m) - - if (m.playerIndex == 0) then - if (vec3f_length(vec3_qscale(m.vel,1,0,1)) < 1) then - m.faceAngle.y = m.area.camera.yaw + 0x8000 - else - m.faceAngle.y = atan2s(m.vel.z, m.vel.x) - end - set_character_animation(m, CHAR_ANIM_A_POSE) - else - set_character_animation(m, ifelse(crouch,CHAR_ANIM_FAST_LONGJUMP,ifelse(m.vel.y < 0,CHAR_ANIM_DOUBLE_JUMP_FALL,CHAR_ANIM_DOUBLE_JUMP_RISE))) - end - - if (metal_underwater) then - m.vel.y = m.vel.y - 6 ; if (m.vel.y < -400) then m.vel.y = -400 end - else - m.vel.y = m.vel.y - 12 ; if (m.vel.y < -600) then m.vel.y = -600 end - end - - if ((m.flags & MARIO_WING_CAP) ~= 0 and (m.controller.buttonDown & A_BUTTON) ~= 0 and m.vel.y < 60) then m.vel.y = 60 end - - local preStepYVel = m.vel.y - - m.forwardVel = vec3f_length(vec3_qscale(m.vel,sv_scalerate,0,sv_scalerate)) - SV_PlayerMovement_Scale(m,false) - local stepResult = perform_air_step(m,0) - SV_PlayerMovement_Scale(m,true) - - if (stepResult == AIR_STEP_LANDED) then - if (m.floor ~= nil) then - if (m.floor.normal.y > SV_GetSurfaceStandableMinimum(m.floor.type,m.area.terrainType)) then - vec3f_copy(m.vel, PHYS_CollideWithNormal(m.vel,m.floor.normal,-1.0,0.1)) - -- SV_PlayerMovement_Store(m,true) - if (m.playerIndex == 0) then - gLakituState.roll = gLakituState.roll + clampf(-0.75*preStepYVel,0,1000) - gLakituState.oldRoll = gLakituState.roll - end - - if (m.action == ACT_DM_AIR_MOVEMENT_METAL) then - set_mario_action(m, ACT_DM_GROUNDED_MOVEMENT_METAL, 0) - else - set_mario_action(m, ACT_DM_GROUNDED_MOVEMENT, 0) - end - return - else - vec3f_copy(m.vel, PHYS_CollideWithNormal(m.vel,m.floor.normal,-0.5,0.75)) - m.pos.y = m.pos.y + 2 - vec3f_add(m.pos,vec3_scale(m.floor.normal,4)) - vec3f_add(m.vel,vec3_scale(m.floor.normal,4)) - return - end - end - end - if (stepResult == AIR_STEP_HIT_WALL) and m.wall ~= nil then - vec3f_copy(m.vel, PHYS_CollideWithNormal(m.vel,m.wall.normal,-1.0,0.05)) - end - - if (m.pos.y <= m.waterLevel-sv_playersubmergelevel and m.waterLevel > m.floorHeight + sv_playersubmergelevel) and (m.flags & MARIO_METAL_CAP) == 0 then - if (m.action ~= ACT_DM_AIR_MOVEMENT_METAL) then - set_mario_action(m, ACT_DM_WATER_MOVEMENT, 0) - end - end - - -- SV_PlayerMovement_Store(m,true) -end - -act_dm_water_movement = function(m) - -- AngleVectors(m) - SV_WaterMovement(m) - - SV_PlayerMovement_Store(m,true) - - if (m.playerIndex == 0) then - if (vec3f_length(vec3_qscale(m.vel,1,0,1)) < 1) then - m.faceAngle.y = m.area.camera.yaw + 0x8000 - else - m.faceAngle.y = atan2s(m.vel.z, m.vel.x) - end - set_character_animation(m, CHAR_ANIM_A_POSE) - else - local scale = m.forwardVel - if (scale < 10) then - set_character_animation(m, CHAR_ANIM_WATER_IDLE) - else - set_character_anim_with_accel(m, CHAR_ANIM_FLUTTERKICK, scale*0x800) - end - end - - m.forwardVel = vec3f_length(vec3_qscale(m.vel,sv_scalerate,0,sv_scalerate)) - - SV_PlayerMovement_Scale(m,false) - local stepResult = perform_air_step(m,0) - SV_PlayerMovement_Scale(m,true) - - if (stepResult == AIR_STEP_HIT_WALL) and m.wall ~= nil then - vec3f_copy(m.vel, PHYS_CollideWithNormal(m.vel,m.wall.normal,-1.0,0.05)) - end - - local isSnowy = ((m.area.terrainType & TERRAIN_MASK) == TERRAIN_SNOW) - - if (m.area.camera.pos.y >= m.waterLevel - 10 and not isSnowy) or mario_holding_underwater_shell(m) then - m.healCounter = 1 - elseif (not mario_holding_underwater_shell(m)) then - m.health = m.health - ifelse(isSnowy,3,1) - end - - if (m.pos.y > m.waterLevel-sv_playersubmergelevel) then - set_mario_action(m, ACT_DM_AIR_MOVEMENT, 0) - return - end -end diff --git a/mods/mquake/_mquake_d_actions_32.lua b/mods/mquake/_mquake_d_actions_32.lua new file mode 100644 index 00000000..1ee4b6c7 Binary files /dev/null and b/mods/mquake/_mquake_d_actions_32.lua differ diff --git a/mods/mquake/_mquake_d_actions_64.lua b/mods/mquake/_mquake_d_actions_64.lua new file mode 100644 index 00000000..450b6d4d Binary files /dev/null and b/mods/mquake/_mquake_d_actions_64.lua differ diff --git a/mods/mquake/_mquake_e_hook_functions.lua b/mods/mquake/_mquake_e_hook_functions.lua deleted file mode 100644 index cc99e8dd..00000000 --- a/mods/mquake/_mquake_e_hook_functions.lua +++ /dev/null @@ -1,376 +0,0 @@ --- _mquake_a_constants --- _mquake_b_actions_predefine --- _mquake_c_actions --- _mquake_d_physics --- _mquake_e_hooks --- localize functions to improve performance - _mquake_e_hook_functions.lua -local sins,coss,vec3f_copy,set_mario_action,perform_air_step,vec3f_dot,get_id_from_behavior,obj_get_first,obj_get_next,obj_get_nearest_object_with_behavior_id,vec3f_length,obj_check_hitbox_overlap = sins,coss,vec3f_copy,set_mario_action,perform_air_step,vec3f_dot,get_id_from_behavior,obj_get_first,obj_get_next,obj_get_nearest_object_with_behavior_id,vec3f_length,obj_check_hitbox_overlap - ---- @param m MarioState -function active_player(m) - local np = gNetworkPlayers[m.playerIndex] - if m.playerIndex == 0 then - return 1 - end - if not np.connected then - return 0 - end - if np.currCourseNum ~= gNetworkPlayers[0].currCourseNum then - return 0 - end - if np.currActNum ~= gNetworkPlayers[0].currActNum then - return 0 - end - if np.currLevelNum ~= gNetworkPlayers[0].currLevelNum then - return 0 - end - if np.currAreaIndex ~= gNetworkPlayers[0].currAreaIndex then - return 0 - end - return is_player_active(m) -end - -function on_set_mario_action(m) - if (m.playerIndex == 0) then - if (DM_ACTION_TRANSFERS[m.action] == 1) then - local yVel = m.vel.y * 4 - local fVel = m.forwardVel * 4 - local s = gPlayerSyncTable[m.playerIndex] - local direction = GetAngleVectors(m).forward - vec3f_copy(m.vel,vec3_scale(direction,m.forwardVel*4)) - m.vel.y = yVel - local is_underwater = m.pos.y <= m.waterLevel-sv_playersubmergelevel - local metal_underwater = (m.flags & MARIO_METAL_CAP) ~= 0 - if ((m.action & ACT_FLAG_AIR) ~= 0) then - set_mario_action(m, ACT_DM_AIR_MOVEMENT, 0) - return 1 - elseif ((m.action & ACT_GROUP_SUBMERGED) ~= 0) then - if (not metal_underwater) and (is_underwater) then - set_mario_action(m, ACT_DM_WATER_MOVEMENT, 0) - return 1 - end - if (metal_underwater) and (is_underwater) then - set_mario_action(m, ACT_DM_AIR_MOVEMENT_METAL, 0) - return 1 - end - end - set_mario_action(m, ACT_DM_GROUNDED_MOVEMENT, 0) - return 1 - end - if (DM_ACTION_FUNCTIONS[m.action] ~= nil) then - DM_ACTION_FUNCTIONS[m.action](m) - return 1 - end - end -end - -function allow_voice(m,s) - if (s == CHAR_SOUND_ON_FIRE or s == CHAR_SOUND_ATTACKED or s == CHAR_SOUND_EEUH) then - return 0 - end -end - -function override_defacto(m) - if m.action == ACT_DM_AIR_MOVEMENT or m.action == ACT_DM_GROUNDED_MOVEMENT or - m.action == ACT_DM_AIR_MOVEMENT_METAL or m.action == ACT_DM_GROUNDED_MOVEMENT_METAL or m.action == ACT_DM_GROUNDED_IDLE then - return 1 - end -end - -function on_player_connected(m) - gPlayerSyncTable[m.playerIndex].playerCrouching = false - gPlayerSyncTable[m.playerIndex].playerFacingX = 1 - gPlayerSyncTable[m.playerIndex].playerFacingY = 0 - gPlayerSyncTable[m.playerIndex].playerFacingZ = 0 -end - -function before_set_mario_action(m,incoming) - if (m.playerIndex == 0) then - if (DM_ACTION_PREFUNCS[incoming] ~= nil) then - return DM_ACTION_PREFUNCS[incoming](m) - elseif (DM_ACTIONS[incoming] ~= 1) then - m.controller.buttonPressed = 0 - local is_underwater = m.pos.y <= m.waterLevel-sv_playersubmergelevel - local metal_underwater = (m.flags & MARIO_METAL_CAP) ~= 0 - if ((incoming & ACT_FLAG_AIR) ~= 0) then - set_mario_action(m, ACT_DM_AIR_MOVEMENT, 0) - return 1 - elseif ((incoming & ACT_FLAG_SWIMMING) ~= 0) or ((incoming & ACT_GROUP_SUBMERGED) ~= 0) then - if (not metal_underwater) and (is_underwater) then - set_mario_action(m, ACT_DM_WATER_MOVEMENT, 0) - return 1 - end - if (metal_underwater) and (is_underwater) then - set_mario_action(m, ACT_DM_AIR_MOVEMENT_METAL, 0) - return 1 - end - end - set_mario_action(m, ACT_DM_GROUNDED_MOVEMENT, 0) - return 1 - end - end -end - -function before_phys_step(m) - local act = m.action - if (DM_ACTIONS[act] ~= 1) then return 0 end - if ((act == ACT_DM_AIR_MOVEMENT or act == ACT_DM_AIR_MOVEMENT_METAL or act == ACT_DM_WATER_MOVEMENT) and m.playerIndex == 0 and m.ceil ~= nil) then - local h = m.marioObj.hitboxHeight - if (m.ceilHeight <= m.pos.y+(h*0.5)) then - m.pos.y = m.ceilHeight - h - return 0 - end - - if (m.pos.y + h + 4 + sv_camerayoffset > m.ceilHeight and m.ceilHeight > m.pos.y + 16) then - SV_PlayerMovement_Scale(m,true) - vec3f_copy(m.vel, PHYS_CollideWithNormal(m.vel,m.ceil.normal,-1.0,0.05)) - SV_PlayerMovement_Scale(m,false) - m.pos.y = m.pos.y - 1 - return perform_air_step(m,0) - end - end -end - -function on_interact(m,o,i,b) - if DM_ACTION_QPHYS[m.action] == 1 then - if (i == INTERACT_BOUNCE_TOP or i == INTERACT_BOUNCE_TOP2) then - if (o.oInteractStatus & INT_STATUS_WAS_ATTACKED) ~= 0 then - m.vel.y = 160 - end - end - if (o.oInteractStatus & INT_STATUS_ATTACKED_MARIO) ~= 0 and m.health > 0xFF then - m.invincTimer = 30 - gLakituState.roll = 2730*(m.hurtCounter*0.25) - gLakituState.oldRoll = gLakituState.roll - cl_red = 128 - end - end -end - -function allow_interact(m,o,i) - if DM_ACTION_QPHYS[m.action] == 1 then - if (i == INTERACT_POLE) then - if (vec3f_dot({x=o.oPosX-m.pos.x,y=0,z=o.oPosZ-m.pos.z},{x=m.vel.x,y=0,z=m.vel.z}) <= 0) then - return false - end - end - if (i == INTERACT_IGLOO_BARRIER) then - if (m.controller.buttonDown & Z_TRIG ~= 0) then - return false - end - end - end -end - -function on_pvp(m,v) - if DM_ACTION_QPHYS[v.action] == 1 then - v.invincTimer = 30 - if (v == gMarioStates[0]) then - gLakituState.roll = 2730*(v.hurtCounter*0.25) - gLakituState.oldRoll = gLakituState.roll - cl_red = 128 - end - end -end - -local function render_speed(w2,h2,textWidth,h_offset,hspeed_text,scale,height) - local scale1 = scale*0.5 - djui_hud_set_color(0,0,0,100) - djui_hud_render_rect((w2*0.5) - (textWidth*scale1) - 1,(h2*h_offset),textWidth*scale + 2,height) - djui_hud_set_color(255,255,255,255) - djui_hud_print_text(hspeed_text, (w2*0.5) - (textWidth*scale1),(h2*h_offset),scale) -end - -function render_hud_effects() - local m = gMarioStates[0] - if (m ~= nil) then - - djui_hud_set_resolution(RESOLUTION_DJUI) - local w = djui_hud_get_screen_width() - local h = djui_hud_get_screen_height() - if (cl_red > 0) then - djui_hud_set_color(255,0,0,cl_red) - djui_hud_render_rect(0,0,w,h) - end - local c = m.area.camera - if (c ~= nil) then - if (c.pos.y < m.waterLevel) then - djui_hud_set_color(38,139,255,100) - djui_hud_render_rect(0,0,w,h) - end - end - - if (m.health <= 0xFF or m.action == ACT_UNINITIALIZED or m.action == ACT_DISAPPEARED) then return end - - djui_hud_set_resolution(RESOLUTION_N64) - djui_hud_set_font(FONT_NORMAL) - - local w2 = djui_hud_get_screen_width() - local h2 = djui_hud_get_screen_height() - - local hspeed = m.forwardVel*4 ; if (DM_ACTION_QPHYS[m.action] == 1) then hspeed = vec3f_length({x=m.vel.x,y=0,z=m.vel.z}) end - local hspeed_text = tostring(math.floor(hspeed)) - local textWidth = djui_hud_measure_text(hspeed_text) - render_speed(w2,h2,textWidth,0.8,hspeed_text,0.5,15) - - local vspeed = m.vel.y ; if (DM_ACTION_QPHYS[m.action] ~= 1) then vspeed = vspeed*4 end - local vspeed_text = tostring(math.floor(vspeed)) - local vTextWidth = djui_hud_measure_text(vspeed_text) - render_speed(w2,h2,vTextWidth,0.75,vspeed_text,0.25,7.5) - - if (m.capTimer > 0) then - local capTimer_Seconds = math.floor(m.capTimer * 0.03333333333333333) - local capText = "Cap Timer: " .. tostring(capTimer_Seconds) - local capWidth = djui_hud_measure_text(capText) - render_speed(w2,h2,capWidth,0.875,capText,0.5,15) - end - - if (not sv_gunmod_loaded) then -- crosshair - -- djui_hud_set_color(0,0,0,255) - -- djui_hud_render_rect((w2*0.5) - 6,(h2*0.5) - 1,11,3) - -- djui_hud_render_rect((w2*0.5) - 2,(h2*0.5) - 5,3,11) - - djui_hud_set_color(255,255,255,255) - djui_hud_render_rect((w2*0.5) - 5,(h2*0.5),9,1) - djui_hud_render_rect((w2*0.5) - 1,(h2*0.5) - 4,1,9) - end - end -end - -function allow_pvp(m,v) - if (m.action == ACT_DM_AIR_MOVEMENT or m.action == ACT_DM_AIR_MOVEMENT_METAL or m.action == ACT_DM_WATER_MOVEMENT) then - return false - end -end - -function on_object_render(o) - if (get_id_from_behavior(o.behavior) == id_bhvMario) then - local m = gMarioStates[0] - if (o == m.marioObj) then - o.header.gfx.shadowInvisible = true - o.header.gfx.disableAutomaticShadowPos = true - - if (m.heldObj ~= nil) then - local cYaw = m.area.camera.yaw + 0x8000 - local fA = m.faceAngle.y + 0x4000 - - local offsetX_FaceAngle = 40 * sins(fA) - local offsetZ_FaceAngle = 40 * coss(fA) - - local factorY_CameraAngle = sins(gLakituState.oldPitch) - - local offsetX_CameraAngle_Fixup = (sins(cYaw)) * factorY_CameraAngle - local offsetZ_CameraAngle_Fixup = (coss(cYaw)) * factorY_CameraAngle - - local finalOffsetX = offsetX_FaceAngle + offsetX_CameraAngle_Fixup - local finalOffsetY = -60 - local finalOffsetZ = offsetZ_FaceAngle + offsetZ_CameraAngle_Fixup - - - m.marioObj.header.gfx.pos.x = m.marioBodyState.heldObjLastPosition.x + finalOffsetX - m.marioObj.header.gfx.pos.y = m.marioBodyState.heldObjLastPosition.y + finalOffsetY - m.marioObj.header.gfx.pos.z = m.marioBodyState.heldObjLastPosition.z + finalOffsetZ - end - end - end -end -function on_level_init() - gLakituState.roll = 0 -- fix death angles through paintings - local lastList = 0 - local obj = obj_get_first(ObjectLists[lastList]) - while obj ~= nil do - obj.header.gfx.skipInViewCheck = true - local nextObj = obj_get_next(obj) - if (nextObj == nil) then - while nextObj == nil and lastList < 9 do - lastList = lastList + 1 - nextObj = obj_get_first(ObjectLists[lastList]) - end - end - obj = nextObj - end -end - -function local_update() - local m = gMarioStates[0] - if (m == nil) then return end - - if (cl_interacttimer > 0) then cl_interacttimer = cl_interacttimer - 1 end - if (cl_red > 0) then cl_red = cl_red - 32 end - - -- set_override_fov(90) - - m.marioObj.hookRender = 1 - m.peakHeight = m.pos.y - - set_first_person_enabled(true) - gFirstPersonCamera.fov = 90 - - if (m.heldObj ~= nil) then - held_obj_update(m) - end - - if (DM_ACTION_QPHYS[m.action] == 1) then - if (m.controller.buttonDown & B_BUTTON) ~= 0 and (m.flags & MARIO_UNKNOWN_31) == 0 then - m.flags = m.flags | MARIO_UNKNOWN_31 - elseif (m.flags & MARIO_UNKNOWN_31) ~= 0 then - m.flags = m.flags & ~MARIO_UNKNOWN_31 - end - end - - if ((m.flags & MARIO_CAP_IN_HAND) ~= 0) then - m.flags = (m.flags | MARIO_CAP_ON_HEAD) & ~MARIO_CAP_IN_HAND - end - - if (cl_bowserthrow) then - cl_bowserthrow_previousYaw = m.faceAngle.y - cl_bowserthrow = m.heldObj ~= nil - m.faceAngle.y = m.area.camera.yaw + 0x8000 - end - - SV_HandleSpecialFloors(m,false) - - local shouldCrouch = ((m.controller.buttonDown & Z_TRIG) ~= 0 and m.health > 0xFF) or m.action == ACT_GROUND_POUND - if (DM_ACTION_FORCEANGLE[m.action] ~= nil and not cl_bowserthrow) then - m.faceAngle.y = m.area.camera.yaw + (0x8000*DM_ACTION_FORCEANGLE[m.action]) - end - - if (DM_ACTIONS_CROUCHAIR[m.action] == 1) then - if (shouldCrouch ~= gPlayerSyncTable[m.playerIndex].playerCrouching) then - if (shouldCrouch) then - m.pos.y = m.pos.y + sv_crouchoffset - else - if (m.pos.y - sv_crouchoffset < m.floorHeight) then - m.pos.y = m.floorHeight - else - m.pos.y = m.pos.y - sv_crouchoffset - end - end - end - end - - gPlayerSyncTable[m.playerIndex].playerCrouching = shouldCrouch - - gFirstPersonCamera.offset.y = ifelse(shouldCrouch, sv_camerayoffset-sv_crouchoffset, sv_camerayoffset) - - if (m.health <= 0xFF) then - gFirstPersonCamera.offset.y = -110 - gLakituState.roll = 0 - m.invincTimer = 0 - cl_red = 192 - else - gLakituState.roll = gLakituState.roll * 0.75 - if (DM_ACTIONS_ALLOWGRAB[m.action] == 1) then - mario_handle_grab_and_punch_custom(m) - end - end - - m.marioObj.hitboxHeight = ifelse(shouldCrouch, sv_playerheight-sv_crouchoffset, sv_playerheight) - - local warp = obj_get_nearest_object_with_behavior_id(m.marioObj, id_bhvFadingWarp) - if warp ~= nil and m.heldObj == nil and m.action ~= ACT_TELEPORT_FADE_OUT and m.action ~= ACT_TELEPORT_FADE_IN and obj_check_hitbox_overlap(m.marioObj, warp) and vec3f_length(m.vel) < 1 and gPlayerSyncTable[m.playerIndex].playerCrouching then - m.interactObj = warp - m.usedObj = warp - set_mario_action(m, ACT_TELEPORT_FADE_OUT, 0) - end -end \ No newline at end of file diff --git a/mods/mquake/_mquake_e_hook_functions_32.lua b/mods/mquake/_mquake_e_hook_functions_32.lua new file mode 100644 index 00000000..2fafd854 Binary files /dev/null and b/mods/mquake/_mquake_e_hook_functions_32.lua differ diff --git a/mods/mquake/_mquake_e_hook_functions_64.lua b/mods/mquake/_mquake_e_hook_functions_64.lua new file mode 100644 index 00000000..2560705d Binary files /dev/null and b/mods/mquake/_mquake_e_hook_functions_64.lua differ diff --git a/mods/mquake/_mquake_f_hooks.lua b/mods/mquake/_mquake_f_hooks.lua deleted file mode 100644 index fa9098f8..00000000 --- a/mods/mquake/_mquake_f_hooks.lua +++ /dev/null @@ -1,27 +0,0 @@ --- _mquake_a_constants --- _mquake_b_actions_predefine --- _mquake_c_actions --- _mquake_d_physics --- _mquake_e_hooks - -hook_mario_action(ACT_DM_GROUNDED_MOVEMENT, act_dm_grounded_movement) -hook_mario_action(ACT_DM_GROUNDED_IDLE, act_dm_grounded_movement) -hook_mario_action(ACT_DM_AIR_MOVEMENT, act_dm_air_movement) -hook_mario_action(ACT_DM_GROUNDED_MOVEMENT_METAL, act_dm_grounded_movement) -hook_mario_action(ACT_DM_AIR_MOVEMENT_METAL, act_dm_air_movement) -hook_mario_action(ACT_DM_WATER_MOVEMENT, act_dm_water_movement) -hook_event(HOOK_UPDATE, local_update) -hook_event(HOOK_ON_PLAYER_CONNECTED, on_player_connected) -hook_event(HOOK_OVERRIDE_PHYS_STEP_DEFACTO_SPEED, override_defacto) -hook_event(HOOK_CHARACTER_SOUND, allow_voice) -hook_event(HOOK_BEFORE_SET_MARIO_ACTION, before_set_mario_action) -hook_event(HOOK_ON_SET_MARIO_ACTION, on_set_mario_action) -hook_event(HOOK_ON_LEVEL_INIT, on_level_init) -hook_event(HOOK_BEFORE_PHYS_STEP, before_phys_step) -hook_event(HOOK_ALLOW_HAZARD_SURFACE, function(m) return false end) -hook_event(HOOK_ON_INTERACT, on_interact) -hook_event(HOOK_ALLOW_INTERACT, allow_interact) -hook_event(HOOK_ON_PVP_ATTACK, on_pvp) -hook_event(HOOK_ALLOW_PVP_ATTACK, allow_pvp) -hook_event(HOOK_ON_OBJECT_RENDER, on_object_render) -hook_event(HOOK_ON_HUD_RENDER_BEHIND, render_hud_effects) \ No newline at end of file diff --git a/mods/mquake/_mquake_f_hooks_32.lua b/mods/mquake/_mquake_f_hooks_32.lua new file mode 100644 index 00000000..65e235fe Binary files /dev/null and b/mods/mquake/_mquake_f_hooks_32.lua differ diff --git a/mods/mquake/_mquake_f_hooks_64.lua b/mods/mquake/_mquake_f_hooks_64.lua new file mode 100644 index 00000000..489b2f56 Binary files /dev/null and b/mods/mquake/_mquake_f_hooks_64.lua differ diff --git a/mods/mquake/main.lua b/mods/mquake/main.lua index b37e8888..f3b639c2 100644 --- a/mods/mquake/main.lua +++ b/mods/mquake/main.lua @@ -1,4 +1,6 @@ --- name: mQuake [Alpha] +-- name: mQuake [Beta] -- incompatible: moveset -- description: Quake style physics.\nCreated by 0x2480 with help from Agent X +-- deluxe: true +-- mQuake uncompiled is no longer available publicly. If you wish to get the code, message me. \ No newline at end of file diff --git a/src/game/mario.c b/src/game/mario.c index a9e05563..afc1a2c1 100644 --- a/src/game/mario.c +++ b/src/game/mario.c @@ -2295,6 +2295,8 @@ void init_single_mario(struct MarioState* m) { m->area = gCurrentArea; m->marioObj = gMarioObjects[m->playerIndex]; if (m->marioObj == NULL) { return; } + m->marioObj->header.gfx.shadowInvisible = false; + m->marioObj->header.gfx.disableAutomaticShadowPos = false; m->marioObj->header.gfx.animInfo.animID = -1; vec3s_copy(m->faceAngle, spawnInfo->startAngle); vec3s_set(m->angleVel, 0, 0, 0); diff --git a/src/pc/djui/djui_panel_changelog.c b/src/pc/djui/djui_panel_changelog.c index e29a073d..07f5eef1 100644 --- a/src/pc/djui/djui_panel_changelog.c +++ b/src/pc/djui/djui_panel_changelog.c @@ -9,22 +9,21 @@ void djui_panel_changelog_create(struct DjuiBase* caller) { struct DjuiBase* body = djui_three_panel_get_body(panel); { - snprintf(sChangelog, 1024, "Welcome back!\n\ -v0.1.2:\n\ + snprintf(sChangelog, 1024, "Welcome back! - v0.1.2:\n\ Changes:\n\ Disable sm64ex-coop Compatibility by default\n\ Restored Luigi's original color palette\n\ Made mario step code use his hitbox height instead of a constant number for his height\n\ Hid Mario's shadow in First Person\n\ Cancelled First Person if Mario is flying\n\ -\n\ +Updated language files\n\ +Add --console launch parameter\n\ Fixes:\n\ Reverted dialog cutscene changes to prevent softlocks\n\ Fixed DynOS related crashes\n\ Fixed Mario's shadow not resetting\n\ -\n\ -Mods:\n\ -Updated Gun Mod DX and Character Select\n\ +Mod Changes:\n\ +Updated Gun Mod DX, Day Night Cycle, Character Select and mQuake\n\ Updated SiM description\n\ Removed Flood and Cheats due to future plans with them" ); diff --git a/src/pc/network/network.c b/src/pc/network/network.c index 3f91e38e..586cf8a9 100644 --- a/src/pc/network/network.c +++ b/src/pc/network/network.c @@ -707,10 +707,6 @@ void network_shutdown(bool sendLeaving, bool exiting, bool popup, bool reconnect cnt->extStickX = 0; cnt->extStickY = 0; - // reset shadow - gMarioStates[0].marioObj->header.gfx.shadowInvisible = false; - gMarioStates[0].marioObj->header.gfx.disableAutomaticShadowPos = false; - gFirstPersonCamera.enabled = false; gFirstPersonCamera.fov = FIRST_PERSON_DEFAULT_FOV; first_person_reset(); diff --git a/tools/copy_mario_sounds.py b/tools/copy_mario_sounds.py deleted file mode 100644 index 6ee108ea..00000000 --- a/tools/copy_mario_sounds.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python3 -import os - -copy_directories = { - 'sound/samples/sfx_mario/': [ - 'sound/samples/sfx_custom_luigi/', - 'sound/samples/sfx_custom_wario/', - 'sound/samples/sfx_custom_toad', - ], - 'sound/samples/sfx_mario_peach/': [ - 'sound/samples/sfx_custom_luigi_peach/', - 'sound/samples/sfx_custom_wario_peach/', - 'sound/samples/sfx_custom_toad_peach', - ], -} - -def copy_dir(source, destinations): - for filename in os.listdir(source): - if not filename.endswith('.aiff'): - continue - src = source + filename - - shortened_name = filename.split('_')[0] + '.aiff' - for destination in destinations: - dst = destination + shortened_name - if os.path.exists(dst): - continue - print('Copying mario sounds to character sounds: ' + src + ' -> ' + dst) - os.system('cp ' + src + ' ' + dst) - -def main(): - for source in copy_directories: - copy_dir(source, copy_directories[source]) - -if __name__ == "__main__": - main()