Super Mario 64s source code (from a leak on 4chan so be careful)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1727 lines
75 KiB

6 years ago
  1. # Normal Mario Geo
  2. glabel mario_geo_face_and_wings # 0x170002E0
  3. geo_asm 0, Geo18_802773A4
  4. geo_rotation_node 0x00, 0, 0, 0
  5. geo_open_node
  6. geo_switch_case 0, geo_switch_mario_cap_on_off
  7. geo_open_node
  8. geo_switch_case 0, geo_switch_mario_eyes
  9. geo_open_node
  10. geo_display_list LAYER_OPAQUE, mario_cap_on_eyes_front
  11. geo_display_list LAYER_OPAQUE, mario_cap_on_eyes_half_closed
  12. geo_display_list LAYER_OPAQUE, mario_cap_on_eyes_closed
  13. geo_display_list LAYER_OPAQUE, mario_cap_on_eyes_right # unused
  14. geo_display_list LAYER_OPAQUE, mario_cap_on_eyes_left # unused
  15. geo_display_list LAYER_OPAQUE, mario_cap_on_eyes_up # unused
  16. geo_display_list LAYER_OPAQUE, mario_cap_on_eyes_down # unused
  17. geo_display_list LAYER_OPAQUE, mario_cap_on_eyes_dead
  18. geo_close_node
  19. geo_switch_case 0, geo_switch_mario_eyes
  20. geo_open_node
  21. geo_display_list LAYER_OPAQUE, mario_cap_off_eyes_front
  22. geo_display_list LAYER_OPAQUE, mario_cap_off_eyes_half_closed
  23. geo_display_list LAYER_OPAQUE, mario_cap_off_eyes_closed
  24. geo_display_list LAYER_OPAQUE, mario_cap_off_eyes_right # unused
  25. geo_display_list LAYER_OPAQUE, mario_cap_off_eyes_left # unused
  26. geo_display_list LAYER_OPAQUE, mario_cap_off_eyes_up # unused
  27. geo_display_list LAYER_OPAQUE, mario_cap_off_eyes_down # unused
  28. geo_display_list LAYER_OPAQUE, mario_cap_off_eyes_dead
  29. geo_close_node
  30. geo_close_node
  31. geo_translate_rotate 0, 142, -51, -126, 22, -40, -135
  32. geo_open_node
  33. geo_asm 0, Geo18_80277824
  34. geo_rotation_node 0x00, 0, 0, 0
  35. geo_open_node
  36. geo_display_list LAYER_ALPHA, mario_cap_wings # left
  37. geo_close_node
  38. geo_close_node
  39. geo_translate_rotate 0, 142, -51, 126, -22, 40, -135
  40. geo_open_node
  41. geo_asm 1, Geo18_80277824
  42. geo_rotation_node 0x00, 0, 0, 0
  43. geo_open_node
  44. geo_display_list LAYER_ALPHA, mario_cap_wings # right
  45. geo_close_node
  46. geo_close_node
  47. geo_close_node
  48. geo_return
  49. glabel mario_geo_left_hand # 0x1700041C
  50. geo_switch_case 1, geo_switch_mario_hand
  51. geo_open_node
  52. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  53. geo_open_node
  54. geo_asm 1, Geo18_802775CC
  55. geo_scale 0x00, 65536
  56. geo_open_node
  57. geo_display_list LAYER_OPAQUE, mario_left_hand_closed
  58. geo_close_node
  59. geo_close_node
  60. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_open
  61. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_closed
  62. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_closed
  63. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_closed
  64. geo_close_node
  65. geo_return
  66. glabel mario_geo_right_hand # 0x17000494
  67. geo_switch_case 0, geo_switch_mario_hand
  68. geo_open_node
  69. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  70. geo_open_node
  71. geo_asm 0, Geo18_802775CC
  72. geo_scale 0x00, 65536
  73. geo_open_node
  74. geo_display_list LAYER_OPAQUE, mario_right_hand_closed
  75. geo_close_node
  76. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  77. geo_close_node
  78. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_open
  79. geo_open_node
  80. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  81. geo_close_node
  82. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_peace # here we go hand
  83. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_cap
  84. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_cap
  85. geo_open_node
  86. geo_display_list LAYER_ALPHA, mario_right_hand_cap_wings
  87. geo_close_node
  88. geo_close_node
  89. geo_return
  90. # The body loads all the parts with some shared dls to apply the solid color of the dl that has it, the same rule applies to the medium and low poly geos
  91. glabel mario_geo_body # 0x1700053C
  92. geo_dl_translated LAYER_OPAQUE, 0, 0, 0
  93. geo_open_node
  94. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_butt # starts sharing solid color with mario_torso (blue)
  95. geo_open_node
  96. geo_asm 0, Geo18_802B1BB0
  97. geo_asm 0, Geo18_80277294
  98. geo_rotation_node 0x00, 0, 0, 0
  99. geo_open_node
  100. geo_dl_translated LAYER_OPAQUE, 68, 0, 0, mario_torso
  101. geo_open_node
  102. geo_dl_translated LAYER_OPAQUE, 87, 0, 0
  103. geo_open_node
  104. geo_branch 1, mario_geo_face_and_wings # stops sharing because faces has its own dl
  105. geo_close_node
  106. geo_dl_translated LAYER_OPAQUE, 67, -10, 79
  107. geo_open_node
  108. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_left_arm # starts sharing solid color with mario_left_forearm (red)
  109. geo_open_node
  110. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_left_forearm_shared_dl
  111. geo_open_node
  112. geo_branch 1, mario_geo_left_hand # stops sharing because hand has its solid color (white)
  113. geo_close_node
  114. geo_close_node
  115. geo_close_node
  116. geo_dl_translated LAYER_OPAQUE, 68, -10, -79
  117. geo_open_node
  118. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_right_arm # starts sharing solid color of his dl with mario_right_forearm (red)
  119. geo_open_node
  120. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_right_forearm_shared_dl
  121. geo_open_node
  122. geo_branch 1, mario_geo_right_hand # stops sharing because hand has its solid color (white)
  123. geo_close_node
  124. geo_close_node
  125. geo_close_node
  126. geo_close_node
  127. geo_close_node
  128. geo_dl_translated LAYER_OPAQUE, 13, -8, 42
  129. geo_open_node
  130. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_left_thigh # starts sharing solid color of his dl with mario_left_leg (blue)
  131. geo_open_node
  132. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_left_leg_shared_dl
  133. geo_open_node
  134. geo_dl_translated LAYER_OPAQUE, 67, 0, 0, mario_left_foot # stops sharing because foot has its solid color (brown)
  135. geo_close_node
  136. geo_close_node
  137. geo_close_node
  138. geo_dl_translated LAYER_OPAQUE, 13, -8, -42
  139. geo_open_node
  140. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_right_thigh # starts sharing solid color of his dl with mario_left_leg (blue)
  141. geo_open_node
  142. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_right_leg_shared_dl
  143. geo_open_node
  144. geo_dl_translated LAYER_OPAQUE, 67, 0, 0
  145. geo_open_node
  146. geo_asm 2, Geo18_802775CC
  147. geo_scale 0x00, 65536
  148. geo_open_node
  149. geo_display_list LAYER_OPAQUE, mario_right_foot # stops sharing because foot has its solid color (brown)
  150. geo_close_node
  151. geo_close_node
  152. geo_close_node
  153. geo_close_node
  154. geo_close_node
  155. geo_close_node
  156. geo_close_node
  157. geo_return
  158. glabel mario_geo_medium_poly_left_hand # 0x170006F8
  159. geo_switch_case 1, geo_switch_mario_hand
  160. geo_open_node
  161. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  162. geo_open_node
  163. geo_asm 1, Geo18_802775CC
  164. geo_scale 0x00, 65536
  165. geo_open_node
  166. geo_display_list LAYER_OPAQUE, mario_medium_poly_left_hand_closed
  167. geo_close_node
  168. geo_close_node
  169. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_open
  170. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_medium_poly_left_hand_closed
  171. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_medium_poly_left_hand_closed
  172. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_medium_poly_left_hand_closed
  173. geo_close_node
  174. geo_return
  175. glabel mario_geo_medium_poly_right_hand # 0x17000770
  176. geo_switch_case 0, geo_switch_mario_hand
  177. geo_open_node
  178. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  179. geo_open_node
  180. geo_asm 0, Geo18_802775CC
  181. geo_scale 0x00, 65536
  182. geo_open_node
  183. geo_display_list LAYER_OPAQUE, mario_medium_poly_right_hand_closed
  184. geo_close_node
  185. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  186. geo_close_node
  187. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_open
  188. geo_open_node
  189. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  190. geo_close_node
  191. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_peace # here we go hand
  192. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_cap
  193. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_cap
  194. geo_open_node
  195. geo_display_list LAYER_ALPHA, mario_right_hand_cap_wings
  196. geo_close_node
  197. geo_close_node
  198. geo_return
  199. glabel mario_geo_medium_poly_body # 0x17000818
  200. geo_dl_translated LAYER_OPAQUE, 0, 0, 0
  201. geo_open_node
  202. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_medium_poly_butt # starts sharing solid color with mario_torso (blue)
  203. geo_open_node
  204. geo_asm 0, Geo18_802B1BB0
  205. geo_asm 0, Geo18_80277294
  206. geo_rotation_node 0x00, 0, 0, 0
  207. geo_open_node
  208. geo_dl_translated LAYER_OPAQUE, 68, 0, 0, mario_medium_poly_torso
  209. geo_open_node
  210. geo_dl_translated LAYER_OPAQUE, 87, 0, 0
  211. geo_open_node
  212. geo_branch 1, mario_geo_face_and_wings # stops sharing because faces has its own dl - medium poly mario uses high poly face
  213. geo_close_node
  214. geo_dl_translated LAYER_OPAQUE, 67, -10, 79
  215. geo_open_node
  216. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_medium_poly_left_arm # starts sharing solid color with mario_left_forearm (red)
  217. geo_open_node
  218. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_medium_poly_left_forearm_shared_dl
  219. geo_open_node
  220. geo_branch 1, mario_geo_medium_poly_left_hand # stops sharing because hand has its solid color (white)
  221. geo_close_node
  222. geo_close_node
  223. geo_close_node
  224. geo_dl_translated LAYER_OPAQUE, 68, -10, -79
  225. geo_open_node
  226. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_medium_poly_right_arm # starts sharing solid color of his dl with mario_right_forearm (red)
  227. geo_open_node
  228. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_medium_poly_right_forearm_shared_dl
  229. geo_open_node
  230. geo_branch 1, mario_geo_medium_poly_right_hand # stops sharing because hand has its solid color (white)
  231. geo_close_node
  232. geo_close_node
  233. geo_close_node
  234. geo_close_node
  235. geo_close_node
  236. geo_dl_translated LAYER_OPAQUE, 13, -8, 42
  237. geo_open_node
  238. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_medium_poly_left_thigh # starts sharing solid color of his dl with mario_left_leg (blue)
  239. geo_open_node
  240. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_medium_poly_left_leg_shared_dl
  241. geo_open_node
  242. geo_dl_translated LAYER_OPAQUE, 67, 0, 0, mario_medium_poly_left_foot # stops sharing because foot has its solid color (brown)
  243. geo_close_node
  244. geo_close_node
  245. geo_close_node
  246. geo_dl_translated LAYER_OPAQUE, 13, -8, -42
  247. geo_open_node
  248. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_medium_poly_right_thigh # starts sharing solid color of his dl with mario_left_leg (blue)
  249. geo_open_node
  250. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_medium_poly_right_leg_shared_dl
  251. geo_open_node
  252. geo_dl_translated LAYER_OPAQUE, 67, 0, 0
  253. geo_open_node
  254. geo_asm 2, Geo18_802775CC
  255. geo_scale 0x00, 65536
  256. geo_open_node
  257. geo_display_list LAYER_OPAQUE, mario_medium_poly_right_foot # stops sharing because foot has its solid color (brown)
  258. geo_close_node
  259. geo_close_node
  260. geo_close_node
  261. geo_close_node
  262. geo_close_node
  263. geo_close_node
  264. geo_close_node
  265. geo_return
  266. glabel mario_geo_low_poly_face_and_wings # 0x170009D4
  267. geo_asm 0, Geo18_802773A4
  268. geo_rotation_node 0x00, 0, 0, 0
  269. geo_open_node
  270. geo_switch_case 0, geo_switch_mario_cap_on_off
  271. geo_open_node
  272. geo_switch_case 0, geo_switch_mario_eyes
  273. geo_open_node
  274. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_on_eyes_front
  275. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_on_eyes_half_closed
  276. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_on_eyes_closed
  277. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_on_eyes_right # unused
  278. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_on_eyes_left # unused
  279. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_on_eyes_up # unused
  280. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_on_eyes_down # unused
  281. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_on_eyes_dead
  282. geo_close_node
  283. geo_switch_case 0, geo_switch_mario_eyes
  284. geo_open_node
  285. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_off_eyes_front
  286. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_off_eyes_half_closed
  287. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_off_eyes_closed
  288. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_off_eyes_right # unused
  289. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_off_eyes_left # unused
  290. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_off_eyes_up # unused
  291. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_off_eyes_down # unused
  292. geo_display_list LAYER_OPAQUE, mario_low_poly_cap_off_eyes_dead
  293. geo_close_node
  294. geo_close_node
  295. geo_translate_rotate 0, 142, -51, -126, 22, -40, -135
  296. geo_open_node
  297. geo_asm 0, Geo18_80277824
  298. geo_rotation_node 0x00, 0, 0, 0
  299. geo_open_node
  300. geo_display_list LAYER_ALPHA, mario_cap_wings # left
  301. geo_close_node
  302. geo_close_node
  303. geo_translate_rotate 0, 142, -51, 126, -22, 40, -135
  304. geo_open_node
  305. geo_asm 1, Geo18_80277824
  306. geo_rotation_node 0x00, 0, 0, 0
  307. geo_open_node
  308. geo_display_list LAYER_ALPHA, mario_cap_wings # right
  309. geo_close_node
  310. geo_close_node
  311. geo_close_node
  312. geo_return
  313. glabel mario_geo_low_poly_left_hand # 0x17000B10
  314. geo_switch_case 1, geo_switch_mario_hand
  315. geo_open_node
  316. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  317. geo_open_node
  318. geo_asm 1, Geo18_802775CC
  319. geo_scale 0x00, 65536
  320. geo_open_node
  321. geo_display_list LAYER_OPAQUE, mario_low_poly_left_hand_closed
  322. geo_close_node
  323. geo_close_node
  324. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_open
  325. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_low_poly_left_hand_closed
  326. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_low_poly_left_hand_closed
  327. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_low_poly_left_hand_closed
  328. geo_close_node
  329. geo_return
  330. glabel mario_geo_low_poly_right_hand # 0x17000B88
  331. geo_switch_case 0, geo_switch_mario_hand
  332. geo_open_node
  333. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  334. geo_open_node
  335. geo_asm 0, Geo18_802775CC
  336. geo_scale 0x00, 65536
  337. geo_open_node
  338. geo_display_list LAYER_OPAQUE, mario_low_poly_right_hand_closed
  339. geo_close_node
  340. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  341. geo_close_node
  342. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_open
  343. geo_open_node
  344. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  345. geo_close_node
  346. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_peace # here we go hand
  347. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_cap
  348. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_cap
  349. geo_open_node
  350. geo_display_list LAYER_ALPHA, mario_right_hand_cap_wings
  351. geo_close_node
  352. geo_close_node
  353. geo_return
  354. glabel mario_geo_low_poly_body # 0x17000C30
  355. geo_dl_translated LAYER_OPAQUE, 0, 0, 0
  356. geo_open_node
  357. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_low_poly_butt # starts sharing solid color with mario_torso (blue)
  358. geo_open_node
  359. geo_asm 0, Geo18_802B1BB0
  360. geo_asm 0, Geo18_80277294
  361. geo_rotation_node 0x00, 0, 0, 0
  362. geo_open_node
  363. geo_dl_translated LAYER_OPAQUE, 68, 0, 0, mario_low_poly_torso
  364. geo_open_node
  365. geo_dl_translated LAYER_OPAQUE, 87, 0, 0
  366. geo_open_node
  367. geo_branch 1, mario_geo_low_poly_face_and_wings # stops sharing because faces has its own dl
  368. geo_close_node
  369. geo_dl_translated LAYER_OPAQUE, 67, -10, 79
  370. geo_open_node
  371. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_low_poly_left_arm # starts sharing solid color with mario_left_forearm (red)
  372. geo_open_node
  373. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_low_poly_left_forearm_shared_dl
  374. geo_open_node
  375. geo_branch 1, mario_geo_low_poly_left_hand # stops sharing because hand has its solid color (white)
  376. geo_close_node
  377. geo_close_node
  378. geo_close_node
  379. geo_dl_translated LAYER_OPAQUE, 68, -10, -79
  380. geo_open_node
  381. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_low_poly_right_arm # starts sharing solid color of his dl with mario_right_forearm (red)
  382. geo_open_node
  383. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_low_poly_right_forearm_shared_dl
  384. geo_open_node
  385. geo_branch 1, mario_geo_low_poly_right_hand # stops sharing because hand has its solid color (white)
  386. geo_close_node
  387. geo_close_node
  388. geo_close_node
  389. geo_close_node
  390. geo_close_node
  391. geo_dl_translated LAYER_OPAQUE, 13, -8, 42
  392. geo_open_node
  393. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_low_poly_left_thigh # starts sharing solid color of his dl with mario_left_leg (blue)
  394. geo_open_node
  395. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_low_poly_left_leg_shared_dl
  396. geo_open_node
  397. geo_dl_translated LAYER_OPAQUE, 67, 0, 0, mario_low_poly_left_foot # stops sharing because foot has its solid color (brown)
  398. geo_close_node
  399. geo_close_node
  400. geo_close_node
  401. geo_dl_translated LAYER_OPAQUE, 13, -8, -42
  402. geo_open_node
  403. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_low_poly_right_thigh # starts sharing solid color of his dl with mario_left_leg (blue)
  404. geo_open_node
  405. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_low_poly_right_leg_shared_dl
  406. geo_open_node
  407. geo_dl_translated LAYER_OPAQUE, 67, 0, 0
  408. geo_open_node
  409. geo_asm 2, Geo18_802775CC
  410. geo_scale 0x00, 65536
  411. geo_open_node
  412. geo_display_list LAYER_OPAQUE, mario_low_poly_right_foot # stops sharing because foot has its solid color (brown)
  413. geo_close_node
  414. geo_close_node
  415. geo_close_node
  416. geo_close_node
  417. geo_close_node
  418. geo_close_node
  419. geo_close_node
  420. geo_return
  421. # Vanish Mario Geo
  422. glabel mario_vanish_geo_face_and_wings # 0x17000DEC
  423. geo_asm 0, Geo18_802773A4
  424. geo_rotation_node 0x00, 0, 0, 0
  425. geo_open_node
  426. geo_switch_case 0, geo_switch_mario_cap_on_off
  427. geo_open_node
  428. geo_switch_case 0, geo_switch_mario_eyes
  429. geo_open_node
  430. geo_display_list LAYER_TRANSPARENT, mario_cap_on_eyes_front
  431. geo_display_list LAYER_TRANSPARENT, mario_cap_on_eyes_half_closed
  432. geo_display_list LAYER_TRANSPARENT, mario_cap_on_eyes_closed
  433. geo_display_list LAYER_TRANSPARENT, mario_cap_on_eyes_right # unused
  434. geo_display_list LAYER_TRANSPARENT, mario_cap_on_eyes_left # unused
  435. geo_display_list LAYER_TRANSPARENT, mario_cap_on_eyes_up # unused
  436. geo_display_list LAYER_TRANSPARENT, mario_cap_on_eyes_down # unused
  437. geo_display_list LAYER_TRANSPARENT, mario_cap_on_eyes_dead
  438. geo_close_node
  439. geo_switch_case 0, geo_switch_mario_eyes
  440. geo_open_node
  441. geo_display_list LAYER_TRANSPARENT, mario_cap_off_eyes_front
  442. geo_display_list LAYER_TRANSPARENT, mario_cap_off_eyes_half_closed
  443. geo_display_list LAYER_TRANSPARENT, mario_cap_off_eyes_closed
  444. geo_display_list LAYER_TRANSPARENT, mario_cap_off_eyes_right # unused
  445. geo_display_list LAYER_TRANSPARENT, mario_cap_off_eyes_left # unused
  446. geo_display_list LAYER_TRANSPARENT, mario_cap_off_eyes_up # unused
  447. geo_display_list LAYER_TRANSPARENT, mario_cap_off_eyes_down # unused
  448. geo_display_list LAYER_TRANSPARENT, mario_cap_off_eyes_dead
  449. geo_close_node
  450. geo_close_node
  451. geo_translate_rotate 0, 142, -51, -126, 22, -40, -135
  452. geo_open_node
  453. geo_asm 0, Geo18_80277824
  454. geo_rotation_node 0x00, 0, 0, 0
  455. geo_open_node
  456. geo_display_list LAYER_TRANSPARENT, mario_cap_wings_transparent
  457. geo_close_node
  458. geo_close_node
  459. geo_translate_rotate 0, 142, -51, 126, -22, 40, -135
  460. geo_open_node
  461. geo_asm 1, Geo18_80277824
  462. geo_rotation_node 0x00, 0, 0, 0
  463. geo_open_node
  464. geo_display_list LAYER_TRANSPARENT, mario_cap_wings_transparent
  465. geo_close_node
  466. geo_close_node
  467. geo_close_node
  468. geo_return
  469. glabel mario_vanish_geo_left_hand # 0x17000F28
  470. geo_switch_case 1, geo_switch_mario_hand
  471. geo_open_node
  472. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  473. geo_open_node
  474. geo_asm 1, Geo18_802775CC
  475. geo_scale 0x00, 65536
  476. geo_open_node
  477. geo_display_list LAYER_TRANSPARENT, mario_left_hand_closed
  478. geo_close_node
  479. geo_close_node
  480. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_open
  481. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_closed
  482. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_closed
  483. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_closed
  484. geo_close_node
  485. geo_return
  486. glabel mario_vanish_geo_right_hand # 0x17000FA0
  487. geo_switch_case 0, geo_switch_mario_hand
  488. geo_open_node
  489. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  490. geo_open_node
  491. geo_asm 0, Geo18_802775CC
  492. geo_scale 0x00, 65536
  493. geo_open_node
  494. geo_display_list LAYER_TRANSPARENT, mario_right_hand_closed
  495. geo_close_node
  496. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  497. geo_close_node
  498. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_open
  499. geo_open_node
  500. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  501. geo_close_node
  502. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_peace # here we go hand
  503. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_cap
  504. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_cap
  505. geo_open_node
  506. geo_display_list LAYER_ALPHA, mario_right_hand_cap_wings
  507. geo_close_node
  508. geo_close_node
  509. geo_return
  510. # Same rule body as Normal Mario
  511. glabel mario_vanish_geo_body # 0x17001048
  512. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0
  513. geo_open_node
  514. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_butt
  515. geo_open_node
  516. geo_asm 0, Geo18_802B1BB0
  517. geo_asm 0, Geo18_80277294
  518. geo_rotation_node 0x00, 0, 0, 0
  519. geo_open_node
  520. geo_dl_translated LAYER_TRANSPARENT, 68, 0, 0, mario_torso
  521. geo_open_node
  522. geo_dl_translated LAYER_TRANSPARENT, 87, 0, 0
  523. geo_open_node
  524. geo_branch 1, mario_vanish_geo_face_and_wings
  525. geo_close_node
  526. geo_dl_translated LAYER_TRANSPARENT, 67, -10, 79
  527. geo_open_node
  528. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_left_arm
  529. geo_open_node
  530. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_left_forearm_shared_dl
  531. geo_open_node
  532. geo_branch 1, mario_vanish_geo_left_hand
  533. geo_close_node
  534. geo_close_node
  535. geo_close_node
  536. geo_dl_translated LAYER_TRANSPARENT, 68, -10, -79
  537. geo_open_node
  538. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_right_arm
  539. geo_open_node
  540. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_right_forearm_shared_dl
  541. geo_open_node
  542. geo_branch 1, mario_vanish_geo_right_hand
  543. geo_close_node
  544. geo_close_node
  545. geo_close_node
  546. geo_close_node
  547. geo_close_node
  548. geo_dl_translated LAYER_TRANSPARENT, 13, -8, 42
  549. geo_open_node
  550. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_left_thigh
  551. geo_open_node
  552. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_left_leg_shared_dl
  553. geo_open_node
  554. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0, mario_left_foot
  555. geo_close_node
  556. geo_close_node
  557. geo_close_node
  558. geo_dl_translated LAYER_TRANSPARENT, 13, -8, -42
  559. geo_open_node
  560. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_right_thigh
  561. geo_open_node
  562. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_right_leg_shared_dl
  563. geo_open_node
  564. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0
  565. geo_open_node
  566. geo_asm 2, Geo18_802775CC
  567. geo_scale 0x00, 65536
  568. geo_open_node
  569. geo_display_list LAYER_TRANSPARENT, mario_right_foot
  570. geo_close_node
  571. geo_close_node
  572. geo_close_node
  573. geo_close_node
  574. geo_close_node
  575. geo_close_node
  576. geo_close_node
  577. geo_return
  578. glabel mario_vanish_geo_medium_poly_left_hand # 0x17001204
  579. geo_switch_case 1, geo_switch_mario_hand
  580. geo_open_node
  581. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  582. geo_open_node
  583. geo_asm 1, Geo18_802775CC
  584. geo_scale 0x00, 65536
  585. geo_open_node
  586. geo_display_list LAYER_TRANSPARENT, mario_medium_poly_left_hand_closed
  587. geo_close_node
  588. geo_close_node
  589. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_open
  590. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_medium_poly_left_hand_closed
  591. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_medium_poly_left_hand_closed
  592. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_medium_poly_left_hand_closed
  593. geo_close_node
  594. geo_return
  595. glabel mario_vanish_geo_medium_poly_right_hand # 0x1700127C
  596. geo_switch_case 0, geo_switch_mario_hand
  597. geo_open_node
  598. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  599. geo_open_node
  600. geo_asm 0, Geo18_802775CC
  601. geo_scale 0x00, 65536
  602. geo_open_node
  603. geo_display_list LAYER_TRANSPARENT, mario_medium_poly_right_hand_closed
  604. geo_close_node
  605. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  606. geo_close_node
  607. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_open
  608. geo_open_node
  609. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  610. geo_close_node
  611. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_peace # here we go hand
  612. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_cap
  613. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_cap
  614. geo_open_node
  615. geo_display_list LAYER_ALPHA, mario_right_hand_cap_wings
  616. geo_close_node
  617. geo_close_node
  618. geo_return
  619. glabel mario_vanish_geo_medium_poly_body # 0x17001324
  620. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0
  621. geo_open_node
  622. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_medium_poly_butt
  623. geo_open_node
  624. geo_asm 0, Geo18_802B1BB0
  625. geo_asm 0, Geo18_80277294
  626. geo_rotation_node 0x00, 0, 0, 0
  627. geo_open_node
  628. geo_dl_translated LAYER_TRANSPARENT, 68, 0, 0, mario_medium_poly_torso
  629. geo_open_node
  630. geo_dl_translated LAYER_TRANSPARENT, 87, 0, 0
  631. geo_open_node
  632. geo_branch 1, mario_vanish_geo_face_and_wings
  633. geo_close_node
  634. geo_dl_translated LAYER_TRANSPARENT, 67, -10, 79
  635. geo_open_node
  636. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_medium_poly_left_arm
  637. geo_open_node
  638. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_medium_poly_left_forearm_shared_dl
  639. geo_open_node
  640. geo_branch 1, mario_vanish_geo_medium_poly_left_hand
  641. geo_close_node
  642. geo_close_node
  643. geo_close_node
  644. geo_dl_translated LAYER_TRANSPARENT, 68, -10, -79
  645. geo_open_node
  646. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_medium_poly_right_arm
  647. geo_open_node
  648. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_medium_poly_right_forearm_shared_dl
  649. geo_open_node
  650. geo_branch 1, mario_vanish_geo_medium_poly_right_hand
  651. geo_close_node
  652. geo_close_node
  653. geo_close_node
  654. geo_close_node
  655. geo_close_node
  656. geo_dl_translated LAYER_TRANSPARENT, 13, -8, 42
  657. geo_open_node
  658. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_medium_poly_left_thigh
  659. geo_open_node
  660. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_medium_poly_left_leg_shared_dl
  661. geo_open_node
  662. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0, mario_medium_poly_left_foot
  663. geo_close_node
  664. geo_close_node
  665. geo_close_node
  666. geo_dl_translated LAYER_TRANSPARENT, 13, -8, -42
  667. geo_open_node
  668. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_medium_poly_right_thigh
  669. geo_open_node
  670. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_medium_poly_right_leg_shared_dl
  671. geo_open_node
  672. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0
  673. geo_open_node
  674. geo_asm 2, Geo18_802775CC
  675. geo_scale 0x00, 65536
  676. geo_open_node
  677. geo_display_list LAYER_TRANSPARENT, mario_medium_poly_right_foot
  678. geo_close_node
  679. geo_close_node
  680. geo_close_node
  681. geo_close_node
  682. geo_close_node
  683. geo_close_node
  684. geo_close_node
  685. geo_return
  686. glabel mario_vanish_geo_low_poly_face_and_wings # 0x170014E0
  687. geo_asm 0, Geo18_802773A4
  688. geo_rotation_node 0x00, 0, 0, 0
  689. geo_open_node
  690. geo_switch_case 0, geo_switch_mario_cap_on_off
  691. geo_open_node
  692. geo_switch_case 0, geo_switch_mario_eyes
  693. geo_open_node
  694. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_on_eyes_front
  695. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_on_eyes_half_closed
  696. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_on_eyes_closed
  697. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_on_eyes_right
  698. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_on_eyes_left
  699. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_on_eyes_up
  700. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_on_eyes_down
  701. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_on_eyes_dead
  702. geo_close_node
  703. geo_switch_case 0, geo_switch_mario_eyes
  704. geo_open_node
  705. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_off_eyes_front
  706. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_off_eyes_half_closed
  707. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_off_eyes_closed
  708. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_off_eyes_right
  709. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_off_eyes_left
  710. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_off_eyes_up
  711. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_off_eyes_down
  712. geo_display_list LAYER_TRANSPARENT, mario_low_poly_cap_off_eyes_dead
  713. geo_close_node
  714. geo_close_node
  715. geo_translate_rotate 0, 142, -51, -126, 22, -40, -135
  716. geo_open_node
  717. geo_asm 0, Geo18_80277824
  718. geo_rotation_node 0x00, 0, 0, 0
  719. geo_open_node
  720. geo_display_list LAYER_TRANSPARENT, mario_cap_wings_transparent
  721. geo_close_node
  722. geo_close_node
  723. geo_translate_rotate 0, 142, -51, 126, -22, 40, -135
  724. geo_open_node
  725. geo_asm 1, Geo18_80277824
  726. geo_rotation_node 0x00, 0, 0, 0
  727. geo_open_node
  728. geo_display_list LAYER_TRANSPARENT, mario_cap_wings_transparent
  729. geo_close_node
  730. geo_close_node
  731. geo_close_node
  732. geo_return
  733. glabel mario_vanish_geo_low_poly_left_hand # 0x1700161C
  734. geo_switch_case 1, geo_switch_mario_hand
  735. geo_open_node
  736. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  737. geo_open_node
  738. geo_asm 1, Geo18_802775CC
  739. geo_scale 0x00, 65536
  740. geo_open_node
  741. geo_display_list LAYER_TRANSPARENT, mario_low_poly_left_hand_closed
  742. geo_close_node
  743. geo_close_node
  744. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_open
  745. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_low_poly_left_hand_closed
  746. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_low_poly_left_hand_closed
  747. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_low_poly_left_hand_closed
  748. geo_close_node
  749. geo_return
  750. glabel mario_vanish_geo_low_poly_right_hand # 0x17001694
  751. geo_switch_case 0, geo_switch_mario_hand
  752. geo_open_node
  753. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  754. geo_open_node
  755. geo_asm 0, Geo18_802775CC
  756. geo_scale 0x00, 65536
  757. geo_open_node
  758. geo_display_list LAYER_TRANSPARENT, mario_low_poly_right_hand_closed
  759. geo_close_node
  760. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  761. geo_close_node
  762. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_open
  763. geo_open_node
  764. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  765. geo_close_node
  766. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_peace # here we go hand
  767. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_cap
  768. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_cap
  769. geo_open_node
  770. geo_display_list LAYER_ALPHA, mario_right_hand_cap_wings
  771. geo_close_node
  772. geo_close_node
  773. geo_return
  774. glabel mario_vanish_geo_low_poly_body # 0x1700173C
  775. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0
  776. geo_open_node
  777. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_low_poly_butt
  778. geo_open_node
  779. geo_asm 0, Geo18_802B1BB0
  780. geo_asm 0, Geo18_80277294
  781. geo_rotation_node 0x00, 0, 0, 0
  782. geo_open_node
  783. geo_dl_translated LAYER_TRANSPARENT, 68, 0, 0, mario_low_poly_torso
  784. geo_open_node
  785. geo_dl_translated LAYER_TRANSPARENT, 87, 0, 0
  786. geo_open_node
  787. geo_branch 1, mario_vanish_geo_low_poly_face_and_wings
  788. geo_close_node
  789. geo_dl_translated LAYER_TRANSPARENT, 67, -10, 79
  790. geo_open_node
  791. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_low_poly_left_arm
  792. geo_open_node
  793. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_low_poly_left_forearm_shared_dl
  794. geo_open_node
  795. geo_branch 1, mario_vanish_geo_low_poly_left_hand
  796. geo_close_node
  797. geo_close_node
  798. geo_close_node
  799. geo_dl_translated LAYER_TRANSPARENT, 68, -10, -79
  800. geo_open_node
  801. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_low_poly_right_arm
  802. geo_open_node
  803. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_low_poly_right_forearm_shared_dl
  804. geo_open_node
  805. geo_branch 1, mario_vanish_geo_low_poly_right_hand
  806. geo_close_node
  807. geo_close_node
  808. geo_close_node
  809. geo_close_node
  810. geo_close_node
  811. geo_dl_translated LAYER_TRANSPARENT, 13, -8, 42
  812. geo_open_node
  813. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_low_poly_left_thigh
  814. geo_open_node
  815. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_low_poly_left_leg_shared_dl
  816. geo_open_node
  817. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0, mario_low_poly_left_foot
  818. geo_close_node
  819. geo_close_node
  820. geo_close_node
  821. geo_dl_translated LAYER_TRANSPARENT, 13, -8, -42
  822. geo_open_node
  823. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_low_poly_right_thigh
  824. geo_open_node
  825. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_low_poly_right_leg_shared_dl
  826. geo_open_node
  827. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0
  828. geo_open_node
  829. geo_asm 2, Geo18_802775CC
  830. geo_scale 0x00, 65536
  831. geo_open_node
  832. geo_display_list LAYER_TRANSPARENT, mario_low_poly_right_foot
  833. geo_close_node
  834. geo_close_node
  835. geo_close_node
  836. geo_close_node
  837. geo_close_node
  838. geo_close_node
  839. geo_close_node
  840. geo_return
  841. # Metal Mario Geo
  842. glabel mario_metal_geo_face_and_wings # 0x170018F8
  843. geo_asm 0, Geo18_802773A4
  844. geo_rotation_node 0x00, 0, 0, 0
  845. geo_open_node
  846. geo_switch_case 0, geo_switch_mario_cap_on_off
  847. geo_open_node
  848. geo_display_list LAYER_OPAQUE, mario_metal_cap_on_shared_dl
  849. geo_display_list LAYER_OPAQUE, mario_metal_cap_off_shared_dl
  850. geo_close_node
  851. geo_translate_rotate 0, 142, -51, -126, 22, -40, -135
  852. geo_open_node
  853. geo_asm 0, Geo18_80277824
  854. geo_rotation_node 0x00, 0, 0, 0
  855. geo_open_node
  856. geo_display_list LAYER_ALPHA, mario_metal_cap_wings # left
  857. geo_close_node
  858. geo_close_node
  859. geo_translate_rotate 0, 142, -51, 126, -22, 40, -135
  860. geo_open_node
  861. geo_asm 1, Geo18_80277824
  862. geo_rotation_node 0x00, 0, 0, 0
  863. geo_open_node
  864. geo_display_list LAYER_ALPHA, mario_metal_cap_wings # right
  865. geo_close_node
  866. geo_close_node
  867. geo_close_node
  868. geo_return
  869. glabel mario_metal_geo_left_hand # 0x170019A4
  870. geo_switch_case 1, geo_switch_mario_hand
  871. geo_open_node
  872. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  873. geo_open_node
  874. geo_asm 1, Geo18_802775CC
  875. geo_scale 0x00, 65536
  876. geo_open_node
  877. geo_display_list LAYER_OPAQUE, mario_left_hand_closed_shared_dl
  878. geo_close_node
  879. geo_close_node
  880. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_open_shared_dl
  881. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_closed_shared_dl
  882. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_closed_shared_dl
  883. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_closed_shared_dl
  884. geo_close_node
  885. geo_return
  886. glabel mario_metal_geo_right_hand # 0x17001A1C
  887. geo_switch_case 0, geo_switch_mario_hand
  888. geo_open_node
  889. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  890. geo_open_node
  891. geo_asm 0, Geo18_802775CC
  892. geo_scale 0x00, 65536
  893. geo_open_node
  894. geo_display_list LAYER_OPAQUE, mario_metal_right_hand_closed
  895. geo_close_node
  896. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  897. geo_close_node
  898. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_metal_right_hand_open
  899. geo_open_node
  900. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  901. geo_close_node
  902. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_peace_shared_dl # here we go hand
  903. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  904. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  905. geo_open_node
  906. geo_display_list LAYER_ALPHA, mario_metal_right_hand_cap_shared_dl_wings
  907. geo_close_node
  908. geo_close_node
  909. geo_return
  910. # A difference from Normal Mario is that the dls after the butt and left thigh shares the metal texture of it, same rule applies to the medium and low poly geos
  911. glabel mario_metal_geo_body # 0x17001AC4
  912. geo_dl_translated LAYER_OPAQUE, 0, 0, 0
  913. geo_open_node
  914. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_metal_butt # starts sharing metal texture with the dls below
  915. geo_open_node
  916. geo_asm 0, Geo18_802B1BB0
  917. geo_asm 0, Geo18_80277294
  918. geo_rotation_node 0x00, 0, 0, 0
  919. geo_open_node
  920. geo_dl_translated LAYER_OPAQUE, 68, 0, 0, mario_metal_torso_shared_dl
  921. geo_open_node
  922. geo_dl_translated LAYER_OPAQUE, 87, 0, 0
  923. geo_open_node
  924. geo_branch 1, mario_metal_geo_face_and_wings # unlike normal mario geo, these dls still share the metal texture
  925. geo_close_node
  926. geo_dl_translated LAYER_OPAQUE, 67, -10, 79
  927. geo_open_node
  928. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_left_arm_shared_dl
  929. geo_open_node
  930. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_left_forearm_shared_dl
  931. geo_open_node
  932. geo_branch 1, mario_metal_geo_left_hand
  933. geo_close_node
  934. geo_close_node
  935. geo_close_node
  936. geo_dl_translated LAYER_OPAQUE, 68, -10, -79
  937. geo_open_node
  938. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_right_arm_shared_dl
  939. geo_open_node
  940. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_right_forearm_shared_dl
  941. geo_open_node
  942. geo_branch 1, mario_metal_geo_right_hand # stop sharing because the wing metal cap of it
  943. geo_close_node
  944. geo_close_node
  945. geo_close_node
  946. geo_close_node
  947. geo_close_node
  948. geo_dl_translated LAYER_OPAQUE, 13, -8, 42
  949. geo_open_node
  950. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_metal_left_thigh # starts sharing metal texture with the dls below
  951. geo_open_node
  952. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_left_leg_shared_dl
  953. geo_open_node
  954. geo_dl_translated LAYER_OPAQUE, 67, 0, 0, mario_left_foot_shared_dl
  955. geo_close_node
  956. geo_close_node
  957. geo_close_node
  958. geo_dl_translated LAYER_OPAQUE, 13, -8, -42
  959. geo_open_node
  960. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_right_thigh_shared_dl
  961. geo_open_node
  962. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_right_leg_shared_dl
  963. geo_open_node
  964. geo_dl_translated LAYER_OPAQUE, 67, 0, 0
  965. geo_open_node
  966. geo_asm 2, Geo18_802775CC
  967. geo_scale 0x00, 65536
  968. geo_open_node
  969. geo_display_list LAYER_OPAQUE, mario_metal_right_foot
  970. geo_close_node
  971. geo_close_node
  972. geo_close_node
  973. geo_close_node
  974. geo_close_node
  975. geo_close_node
  976. geo_close_node
  977. geo_return
  978. glabel mario_metal_geo_medium_poly_left_hand # 0x17001C80
  979. geo_switch_case 1, geo_switch_mario_hand
  980. geo_open_node
  981. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  982. geo_open_node
  983. geo_asm 1, Geo18_802775CC
  984. geo_scale 0x00, 65536
  985. geo_open_node
  986. geo_display_list LAYER_OPAQUE, mario_medium_poly_left_hand_closed_shared_dl
  987. geo_close_node
  988. geo_close_node
  989. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_open_shared_dl
  990. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_medium_poly_left_hand_closed_shared_dl
  991. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_medium_poly_left_hand_closed_shared_dl
  992. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_medium_poly_left_hand_closed_shared_dl
  993. geo_close_node
  994. geo_return
  995. glabel mario_metal_geo_medium_poly_right_hand # 0x17001CF8
  996. geo_switch_case 0, geo_switch_mario_hand
  997. geo_open_node
  998. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  999. geo_open_node
  1000. geo_asm 0, Geo18_802775CC
  1001. geo_scale 0x00, 65536
  1002. geo_open_node
  1003. geo_display_list LAYER_OPAQUE, mario_metal_medium_poly_right_hand_closed
  1004. geo_close_node
  1005. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  1006. geo_close_node
  1007. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_metal_right_hand_open
  1008. geo_open_node
  1009. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  1010. geo_close_node
  1011. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_peace_shared_dl # here we go hand
  1012. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  1013. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  1014. geo_open_node
  1015. geo_display_list LAYER_ALPHA, mario_metal_right_hand_cap_shared_dl_wings
  1016. geo_close_node
  1017. geo_close_node
  1018. geo_return
  1019. glabel mario_metal_geo_medium_poly_body # 0x17001DA0
  1020. geo_dl_translated LAYER_OPAQUE, 0, 0, 0
  1021. geo_open_node
  1022. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_metal_medium_poly_butt
  1023. geo_open_node
  1024. geo_asm 0, Geo18_802B1BB0
  1025. geo_asm 0, Geo18_80277294
  1026. geo_rotation_node 0x00, 0, 0, 0
  1027. geo_open_node
  1028. geo_dl_translated LAYER_OPAQUE, 68, 0, 0, mario_metal_medium_poly_torso
  1029. geo_open_node
  1030. geo_dl_translated LAYER_OPAQUE, 87, 0, 0
  1031. geo_open_node
  1032. geo_branch 1, mario_metal_geo_face_and_wings
  1033. geo_close_node
  1034. geo_dl_translated LAYER_OPAQUE, 67, -10, 79
  1035. geo_open_node
  1036. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_medium_poly_left_arm_shared_dl
  1037. geo_open_node
  1038. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_medium_poly_left_forearm_shared_dl
  1039. geo_open_node
  1040. geo_branch 1, mario_metal_geo_medium_poly_left_hand
  1041. geo_close_node
  1042. geo_close_node
  1043. geo_close_node
  1044. geo_dl_translated LAYER_OPAQUE, 68, -10, -79
  1045. geo_open_node
  1046. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_medium_poly_right_arm_shared_dl
  1047. geo_open_node
  1048. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_medium_poly_right_forearm_shared_dl
  1049. geo_open_node
  1050. geo_branch 1, mario_metal_geo_medium_poly_right_hand
  1051. geo_close_node
  1052. geo_close_node
  1053. geo_close_node
  1054. geo_close_node
  1055. geo_close_node
  1056. geo_dl_translated LAYER_OPAQUE, 13, -8, 42
  1057. geo_open_node
  1058. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_metal_medium_poly_left_thigh
  1059. geo_open_node
  1060. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_medium_poly_left_leg_shared_dl
  1061. geo_open_node
  1062. geo_dl_translated LAYER_OPAQUE, 67, 0, 0, mario_medium_poly_left_foot_shared_dl
  1063. geo_close_node
  1064. geo_close_node
  1065. geo_close_node
  1066. geo_dl_translated LAYER_OPAQUE, 13, -8, -42
  1067. geo_open_node
  1068. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_medium_poly_right_thigh_shared_dl
  1069. geo_open_node
  1070. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_medium_poly_right_leg_shared_dl
  1071. geo_open_node
  1072. geo_dl_translated LAYER_OPAQUE, 67, 0, 0
  1073. geo_open_node
  1074. geo_asm 2, Geo18_802775CC
  1075. geo_scale 0x00, 65536
  1076. geo_open_node
  1077. geo_display_list LAYER_OPAQUE, mario_metal_medium_poly_right_foot
  1078. geo_close_node
  1079. geo_close_node
  1080. geo_close_node
  1081. geo_close_node
  1082. geo_close_node
  1083. geo_close_node
  1084. geo_close_node
  1085. geo_return
  1086. glabel mario_metal_geo_low_poly_face_and_wings # 0x17001F5C
  1087. geo_asm 0, Geo18_802773A4
  1088. geo_rotation_node 0x00, 0, 0, 0
  1089. geo_open_node
  1090. geo_switch_case 0, geo_switch_mario_cap_on_off
  1091. geo_open_node
  1092. geo_display_list LAYER_OPAQUE, mario_metal_low_poly_cap_on
  1093. geo_display_list LAYER_OPAQUE, mario_metal_low_poly_cap_off
  1094. geo_close_node
  1095. geo_translate_rotate 0, 142, -51, -126, 22, -40, -135
  1096. geo_open_node
  1097. geo_asm 0, Geo18_80277824
  1098. geo_rotation_node 0x00, 0, 0, 0
  1099. geo_open_node
  1100. geo_display_list LAYER_ALPHA, mario_metal_cap_wings
  1101. geo_close_node
  1102. geo_close_node
  1103. geo_translate_rotate 0, 142, -51, 126, -22, 40, -135
  1104. geo_open_node
  1105. geo_asm 1, Geo18_80277824
  1106. geo_rotation_node 0x00, 0, 0, 0
  1107. geo_open_node
  1108. geo_display_list LAYER_ALPHA, mario_metal_cap_wings
  1109. geo_close_node
  1110. geo_close_node
  1111. geo_close_node
  1112. geo_return
  1113. glabel mario_metal_geo_low_poly_left_hand # 0x17002008
  1114. geo_switch_case 1, geo_switch_mario_hand
  1115. geo_open_node
  1116. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  1117. geo_open_node
  1118. geo_asm 1, Geo18_802775CC
  1119. geo_scale 0x00, 65536
  1120. geo_open_node
  1121. geo_display_list LAYER_OPAQUE, mario_low_poly_left_hand_closed_shared_dl
  1122. geo_close_node
  1123. geo_close_node
  1124. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_left_hand_open_shared_dl
  1125. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_low_poly_left_hand_closed_shared_dl
  1126. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_low_poly_left_hand_closed_shared_dl
  1127. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_low_poly_left_hand_closed_shared_dl
  1128. geo_close_node
  1129. geo_return
  1130. glabel mario_metal_geo_low_poly_right_hand # 0x17002080
  1131. geo_switch_case 0, geo_switch_mario_hand
  1132. geo_open_node
  1133. geo_dl_translated LAYER_OPAQUE, 60, 0, 0
  1134. geo_open_node
  1135. geo_asm 0, Geo18_802775CC
  1136. geo_scale 0x00, 65536
  1137. geo_open_node
  1138. geo_display_list LAYER_OPAQUE, mario_metal_low_poly_right_hand_closed
  1139. geo_close_node
  1140. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  1141. geo_close_node
  1142. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_metal_right_hand_open
  1143. geo_open_node
  1144. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  1145. geo_close_node
  1146. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_right_hand_peace_shared_dl # here we go hand
  1147. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  1148. geo_dl_translated LAYER_OPAQUE, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  1149. geo_open_node
  1150. geo_display_list LAYER_ALPHA, mario_metal_right_hand_cap_shared_dl_wings
  1151. geo_close_node
  1152. geo_close_node
  1153. geo_return
  1154. glabel mario_metal_geo_low_poly_body # 0x17002128
  1155. geo_dl_translated LAYER_OPAQUE, 0, 0, 0
  1156. geo_open_node
  1157. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_metal_low_poly_butt
  1158. geo_open_node
  1159. geo_asm 0, Geo18_802B1BB0
  1160. geo_asm 0, Geo18_80277294
  1161. geo_rotation_node 0x00, 0, 0, 0
  1162. geo_open_node
  1163. geo_dl_translated LAYER_OPAQUE, 68, 0, 0, mario_metal_low_poly_torso
  1164. geo_open_node
  1165. geo_dl_translated LAYER_OPAQUE, 87, 0, 0
  1166. geo_open_node
  1167. geo_branch 1, mario_metal_geo_low_poly_face_and_wings
  1168. geo_close_node
  1169. geo_dl_translated LAYER_OPAQUE, 67, -10, 79
  1170. geo_open_node
  1171. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_low_poly_left_arm_shared_dl
  1172. geo_open_node
  1173. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_low_poly_left_forearm_shared_dl
  1174. geo_open_node
  1175. geo_branch 1, mario_metal_geo_low_poly_left_hand
  1176. geo_close_node
  1177. geo_close_node
  1178. geo_close_node
  1179. geo_dl_translated LAYER_OPAQUE, 68, -10, -79
  1180. geo_open_node
  1181. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_low_poly_right_arm_shared_dl
  1182. geo_open_node
  1183. geo_dl_translated LAYER_OPAQUE, 65, 0, 0, mario_low_poly_right_forearm_shared_dl
  1184. geo_open_node
  1185. geo_branch 1, mario_metal_geo_low_poly_right_hand
  1186. geo_close_node
  1187. geo_close_node
  1188. geo_close_node
  1189. geo_close_node
  1190. geo_close_node
  1191. geo_dl_translated LAYER_OPAQUE, 13, -8, 42
  1192. geo_open_node
  1193. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_metal_low_poly_left_thigh
  1194. geo_open_node
  1195. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_low_poly_left_leg_shared_dl
  1196. geo_open_node
  1197. geo_dl_translated LAYER_OPAQUE, 67, 0, 0, mario_low_poly_left_foot_shared_dl
  1198. geo_close_node
  1199. geo_close_node
  1200. geo_close_node
  1201. geo_dl_translated LAYER_OPAQUE, 13, -8, -42
  1202. geo_open_node
  1203. geo_dl_translated LAYER_OPAQUE, 0, 0, 0, mario_low_poly_right_thigh_shared_dl
  1204. geo_open_node
  1205. geo_dl_translated LAYER_OPAQUE, 89, 0, 0, mario_low_poly_right_leg_shared_dl
  1206. geo_open_node
  1207. geo_dl_translated LAYER_OPAQUE, 67, 0, 0
  1208. geo_open_node
  1209. geo_asm 2, Geo18_802775CC
  1210. geo_scale 0x00, 65536
  1211. geo_open_node
  1212. geo_display_list LAYER_OPAQUE, mario_metal_low_poly_right_foot
  1213. geo_close_node
  1214. geo_close_node
  1215. geo_close_node
  1216. geo_close_node
  1217. geo_close_node
  1218. geo_close_node
  1219. geo_close_node
  1220. geo_return
  1221. # Metal Vanish Mario Geo
  1222. glabel mario_metal_vanish_geo_face_and_wings # 0x170022E4
  1223. geo_asm 0, Geo18_802773A4
  1224. geo_rotation_node 0x00, 0, 0, 0
  1225. geo_open_node
  1226. geo_switch_case 0, geo_switch_mario_cap_on_off
  1227. geo_open_node
  1228. geo_display_list LAYER_TRANSPARENT, mario_metal_cap_on_shared_dl
  1229. geo_display_list LAYER_TRANSPARENT, mario_metal_cap_off_shared_dl
  1230. geo_close_node
  1231. geo_translate_rotate 0, 142, -51, -126, 22, -40, -135
  1232. geo_open_node
  1233. geo_asm 0, Geo18_80277824
  1234. geo_rotation_node 0x00, 0, 0, 0
  1235. geo_open_node
  1236. geo_display_list LAYER_TRANSPARENT, mario_metal_cap_wings_transparent
  1237. geo_close_node
  1238. geo_close_node
  1239. geo_translate_rotate 0, 142, -51, 126, -22, 40, -135
  1240. geo_open_node
  1241. geo_asm 1, Geo18_80277824
  1242. geo_rotation_node 0x00, 0, 0, 0
  1243. geo_open_node
  1244. geo_display_list LAYER_TRANSPARENT, mario_metal_cap_wings_transparent
  1245. geo_close_node
  1246. geo_close_node
  1247. geo_close_node
  1248. geo_return
  1249. glabel mario_metal_vanish_geo_left_hand # 0x17002390
  1250. geo_switch_case 0, geo_switch_mario_hand
  1251. geo_open_node
  1252. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  1253. geo_open_node
  1254. geo_asm 1, Geo18_802775CC
  1255. geo_scale 0x00, 65536
  1256. geo_open_node
  1257. geo_display_list LAYER_TRANSPARENT, mario_left_hand_closed_shared_dl
  1258. geo_close_node
  1259. geo_close_node
  1260. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_open_shared_dl
  1261. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_closed_shared_dl
  1262. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_closed_shared_dl
  1263. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_closed_shared_dl
  1264. geo_close_node
  1265. geo_return
  1266. glabel mario_metal_vanish_geo_right_hand # 0x17002408
  1267. geo_switch_case 0, geo_switch_mario_hand
  1268. geo_open_node
  1269. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  1270. geo_open_node
  1271. geo_asm 0, Geo18_802775CC
  1272. geo_scale 0x00, 65536
  1273. geo_open_node
  1274. geo_display_list LAYER_TRANSPARENT, mario_metal_right_hand_closed
  1275. geo_close_node
  1276. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  1277. geo_close_node
  1278. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_metal_right_hand_open
  1279. geo_open_node
  1280. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  1281. geo_close_node
  1282. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_peace_shared_dl # here we go hand
  1283. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  1284. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  1285. geo_open_node
  1286. geo_display_list LAYER_ALPHA, mario_metal_right_hand_cap_shared_dl_wings
  1287. geo_close_node
  1288. geo_close_node
  1289. geo_return
  1290. # Same rules as Metal Mario
  1291. glabel mario_metal_vanish_geo_body # 0x170024B0
  1292. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0
  1293. geo_open_node
  1294. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_metal_butt
  1295. geo_open_node
  1296. geo_asm 0, Geo18_802B1BB0
  1297. geo_asm 0, Geo18_80277294
  1298. geo_rotation_node 0x00, 0, 0, 0
  1299. geo_open_node
  1300. geo_dl_translated LAYER_TRANSPARENT, 68, 0, 0, mario_metal_torso_shared_dl
  1301. geo_open_node
  1302. geo_dl_translated LAYER_TRANSPARENT, 87, 0, 0
  1303. geo_open_node
  1304. geo_branch 1, mario_metal_vanish_geo_face_and_wings
  1305. geo_close_node
  1306. geo_dl_translated LAYER_TRANSPARENT, 67, -10, 79
  1307. geo_open_node
  1308. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_left_arm_shared_dl
  1309. geo_open_node
  1310. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_left_forearm_shared_dl
  1311. geo_open_node
  1312. geo_branch 1, mario_metal_vanish_geo_left_hand
  1313. geo_close_node
  1314. geo_close_node
  1315. geo_close_node
  1316. geo_dl_translated LAYER_TRANSPARENT, 68, -10, -79
  1317. geo_open_node
  1318. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_right_arm_shared_dl
  1319. geo_open_node
  1320. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_right_forearm_shared_dl
  1321. geo_open_node
  1322. geo_branch 1, mario_metal_vanish_geo_right_hand
  1323. geo_close_node
  1324. geo_close_node
  1325. geo_close_node
  1326. geo_close_node
  1327. geo_close_node
  1328. geo_dl_translated LAYER_TRANSPARENT, 13, -8, 42
  1329. geo_open_node
  1330. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_metal_left_thigh
  1331. geo_open_node
  1332. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_left_leg_shared_dl
  1333. geo_open_node
  1334. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0, mario_left_foot_shared_dl
  1335. geo_close_node
  1336. geo_close_node
  1337. geo_close_node
  1338. geo_dl_translated LAYER_TRANSPARENT, 13, -8, -42
  1339. geo_open_node
  1340. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_right_thigh_shared_dl
  1341. geo_open_node
  1342. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_right_leg_shared_dl
  1343. geo_open_node
  1344. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0
  1345. geo_open_node
  1346. geo_asm 2, Geo18_802775CC
  1347. geo_scale 0x00, 65536
  1348. geo_open_node
  1349. geo_display_list LAYER_TRANSPARENT, mario_metal_right_foot
  1350. geo_close_node
  1351. geo_close_node
  1352. geo_close_node
  1353. geo_close_node
  1354. geo_close_node
  1355. geo_close_node
  1356. geo_close_node
  1357. geo_return
  1358. glabel mario_metal_vanish_geo_medium_poly_left_hand # 0x1700266C
  1359. geo_switch_case 0, geo_switch_mario_hand
  1360. geo_open_node
  1361. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  1362. geo_open_node
  1363. geo_asm 1, Geo18_802775CC
  1364. geo_scale 0x00, 65536
  1365. geo_open_node
  1366. geo_display_list LAYER_TRANSPARENT, mario_medium_poly_left_hand_closed_shared_dl
  1367. geo_close_node
  1368. geo_close_node
  1369. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_open_shared_dl
  1370. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_medium_poly_left_hand_closed_shared_dl
  1371. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_medium_poly_left_hand_closed_shared_dl
  1372. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_medium_poly_left_hand_closed_shared_dl
  1373. geo_close_node
  1374. geo_return
  1375. glabel mario_metal_vanish_geo_medium_poly_right_hand # 0x170026E4
  1376. geo_switch_case 0, geo_switch_mario_hand
  1377. geo_open_node
  1378. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  1379. geo_open_node
  1380. geo_asm 0, Geo18_802775CC
  1381. geo_scale 0x00, 65536
  1382. geo_open_node
  1383. geo_display_list LAYER_TRANSPARENT, mario_metal_medium_poly_right_hand_closed
  1384. geo_close_node
  1385. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  1386. geo_close_node
  1387. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_metal_right_hand_open
  1388. geo_open_node
  1389. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  1390. geo_close_node
  1391. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_peace_shared_dl # here we go hand
  1392. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  1393. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  1394. geo_open_node
  1395. geo_display_list LAYER_ALPHA, mario_metal_right_hand_cap_shared_dl_wings
  1396. geo_close_node
  1397. geo_close_node
  1398. geo_return
  1399. glabel mario_metal_vanish_geo_medium_poly_body # 0x1700278C
  1400. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0
  1401. geo_open_node
  1402. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_metal_medium_poly_butt
  1403. geo_open_node
  1404. geo_asm 0, Geo18_802B1BB0
  1405. geo_asm 0, Geo18_80277294
  1406. geo_rotation_node 0x00, 0, 0, 0
  1407. geo_open_node
  1408. geo_dl_translated LAYER_TRANSPARENT, 68, 0, 0, mario_metal_medium_poly_torso
  1409. geo_open_node
  1410. geo_dl_translated LAYER_TRANSPARENT, 87, 0, 0
  1411. geo_open_node
  1412. geo_branch 1, mario_metal_vanish_geo_face_and_wings
  1413. geo_close_node
  1414. geo_dl_translated LAYER_TRANSPARENT, 67, -10, 79
  1415. geo_open_node
  1416. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_medium_poly_left_arm_shared_dl
  1417. geo_open_node
  1418. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_medium_poly_left_forearm_shared_dl
  1419. geo_open_node
  1420. geo_branch 1, mario_metal_vanish_geo_medium_poly_left_hand
  1421. geo_close_node
  1422. geo_close_node
  1423. geo_close_node
  1424. geo_dl_translated LAYER_TRANSPARENT, 68, -10, -79
  1425. geo_open_node
  1426. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_medium_poly_right_arm_shared_dl
  1427. geo_open_node
  1428. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_medium_poly_right_forearm_shared_dl
  1429. geo_open_node
  1430. geo_switch_case 0, geo_switch_mario_hand
  1431. geo_open_node
  1432. geo_branch 1, mario_metal_vanish_geo_medium_poly_right_hand
  1433. geo_close_node
  1434. geo_close_node
  1435. geo_close_node
  1436. geo_close_node
  1437. geo_close_node
  1438. geo_close_node
  1439. geo_dl_translated LAYER_TRANSPARENT, 13, -8, 42
  1440. geo_open_node
  1441. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_metal_medium_poly_left_thigh
  1442. geo_open_node
  1443. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_medium_poly_left_leg_shared_dl
  1444. geo_open_node
  1445. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0, mario_medium_poly_left_foot_shared_dl
  1446. geo_close_node
  1447. geo_close_node
  1448. geo_close_node
  1449. geo_dl_translated LAYER_TRANSPARENT, 13, -8, -42
  1450. geo_open_node
  1451. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_medium_poly_right_thigh_shared_dl
  1452. geo_open_node
  1453. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_medium_poly_right_leg_shared_dl
  1454. geo_open_node
  1455. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0
  1456. geo_open_node
  1457. geo_asm 2, Geo18_802775CC
  1458. geo_scale 0x00, 65536
  1459. geo_open_node
  1460. geo_display_list LAYER_TRANSPARENT, mario_metal_medium_poly_right_foot
  1461. geo_close_node
  1462. geo_close_node
  1463. geo_close_node
  1464. geo_close_node
  1465. geo_close_node
  1466. geo_close_node
  1467. geo_close_node
  1468. geo_return
  1469. glabel mario_metal_vanish_geo_low_poly_face_and_wings # 0x17002958
  1470. geo_asm 0, Geo18_802773A4
  1471. geo_rotation_node 0x00, 0, 0, 0
  1472. geo_open_node
  1473. geo_switch_case 0, geo_switch_mario_cap_on_off
  1474. geo_open_node
  1475. geo_display_list LAYER_TRANSPARENT, mario_metal_low_poly_cap_on
  1476. geo_display_list LAYER_TRANSPARENT, mario_metal_low_poly_cap_off
  1477. geo_close_node
  1478. geo_translate_rotate 0, 142, -51, -126, 22, -40, -135
  1479. geo_open_node
  1480. geo_asm 0, Geo18_80277824
  1481. geo_rotation_node 0x00, 0, 0, 0
  1482. geo_open_node
  1483. geo_display_list LAYER_TRANSPARENT, mario_metal_cap_wings_transparent
  1484. geo_close_node
  1485. geo_close_node
  1486. geo_translate_rotate 0, 142, -51, 126, -22, 40, -135
  1487. geo_open_node
  1488. geo_asm 1, Geo18_80277824
  1489. geo_rotation_node 0x00, 0, 0, 0
  1490. geo_open_node
  1491. geo_display_list LAYER_TRANSPARENT, mario_metal_cap_wings_transparent
  1492. geo_close_node
  1493. geo_close_node
  1494. geo_close_node
  1495. geo_return
  1496. glabel mario_metal_vanish_geo_low_poly_left_hand # 0x17002A04
  1497. geo_switch_case 0, geo_switch_mario_hand
  1498. geo_open_node
  1499. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  1500. geo_open_node
  1501. geo_asm 1, Geo18_802775CC
  1502. geo_scale 0x00, 65536
  1503. geo_open_node
  1504. geo_display_list LAYER_TRANSPARENT, mario_low_poly_left_hand_closed_shared_dl
  1505. geo_close_node
  1506. geo_close_node
  1507. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_left_hand_open_shared_dl
  1508. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_low_poly_left_hand_closed_shared_dl
  1509. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_low_poly_left_hand_closed_shared_dl
  1510. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_low_poly_left_hand_closed_shared_dl
  1511. geo_close_node
  1512. geo_return
  1513. glabel mario_metal_vanish_geo_low_poly_right_hand # 0x17002A7C
  1514. geo_switch_case 0, geo_switch_mario_hand
  1515. geo_open_node
  1516. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0
  1517. geo_open_node
  1518. geo_asm 0, Geo18_802775CC
  1519. geo_scale 0x00, 65536
  1520. geo_open_node
  1521. geo_display_list LAYER_TRANSPARENT, mario_metal_low_poly_right_hand_closed
  1522. geo_close_node
  1523. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  1524. geo_close_node
  1525. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_metal_right_hand_open
  1526. geo_open_node
  1527. geo_todo_1C 0x00, 0, 0, 0, Geo1C_8027795C
  1528. geo_close_node
  1529. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_right_hand_peace_shared_dl # here we go hand
  1530. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  1531. geo_dl_translated LAYER_TRANSPARENT, 60, 0, 0, mario_metal_right_hand_cap_shared_dl
  1532. geo_open_node
  1533. geo_display_list LAYER_ALPHA, mario_metal_right_hand_cap_shared_dl_wings
  1534. geo_close_node
  1535. geo_close_node
  1536. geo_return
  1537. glabel mario_metal_vanish_geo_low_poly_body # 0x17002B24
  1538. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0
  1539. geo_open_node
  1540. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_metal_low_poly_butt
  1541. geo_open_node
  1542. geo_asm 0, Geo18_802B1BB0
  1543. geo_asm 0, Geo18_80277294
  1544. geo_rotation_node 0x00, 0, 0, 0
  1545. geo_open_node
  1546. geo_dl_translated LAYER_TRANSPARENT, 68, 0, 0, mario_metal_low_poly_torso
  1547. geo_open_node
  1548. geo_dl_translated LAYER_TRANSPARENT, 87, 0, 0
  1549. geo_open_node
  1550. geo_branch 1, mario_metal_vanish_geo_low_poly_face_and_wings
  1551. geo_close_node
  1552. geo_dl_translated LAYER_TRANSPARENT, 67, -10, 79
  1553. geo_open_node
  1554. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_low_poly_left_arm_shared_dl
  1555. geo_open_node
  1556. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_low_poly_left_forearm_shared_dl
  1557. geo_open_node
  1558. geo_branch 1, mario_metal_vanish_geo_low_poly_left_hand
  1559. geo_close_node
  1560. geo_close_node
  1561. geo_close_node
  1562. geo_dl_translated LAYER_TRANSPARENT, 68, -10, -79
  1563. geo_open_node
  1564. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_low_poly_right_arm_shared_dl
  1565. geo_open_node
  1566. geo_dl_translated LAYER_TRANSPARENT, 65, 0, 0, mario_low_poly_right_forearm_shared_dl
  1567. geo_open_node
  1568. geo_branch 1, mario_metal_vanish_geo_low_poly_right_hand
  1569. geo_close_node
  1570. geo_close_node
  1571. geo_close_node
  1572. geo_close_node
  1573. geo_close_node
  1574. geo_dl_translated LAYER_TRANSPARENT, 13, -8, 42
  1575. geo_open_node
  1576. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_metal_low_poly_left_thigh
  1577. geo_open_node
  1578. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_low_poly_left_leg_shared_dl
  1579. geo_open_node
  1580. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0, mario_low_poly_left_foot_shared_dl
  1581. geo_close_node
  1582. geo_close_node
  1583. geo_close_node
  1584. geo_dl_translated LAYER_TRANSPARENT, 13, -8, -42
  1585. geo_open_node
  1586. geo_dl_translated LAYER_TRANSPARENT, 0, 0, 0, mario_low_poly_right_thigh_shared_dl
  1587. geo_open_node
  1588. geo_dl_translated LAYER_TRANSPARENT, 89, 0, 0, mario_low_poly_right_leg_shared_dl
  1589. geo_open_node
  1590. geo_dl_translated LAYER_TRANSPARENT, 67, 0, 0
  1591. geo_open_node
  1592. geo_asm 2, Geo18_802775CC
  1593. geo_scale 0x00, 65536
  1594. geo_open_node
  1595. geo_display_list LAYER_TRANSPARENT, mario_metal_low_poly_right_foot
  1596. geo_close_node
  1597. geo_close_node
  1598. geo_close_node
  1599. geo_close_node
  1600. geo_close_node
  1601. geo_close_node
  1602. geo_close_node
  1603. geo_return
  1604. # High Poly
  1605. glabel mario_geo_load_body # 0x17002CE0
  1606. geo_switch_case 0, geo_switch_mario_cap_effect
  1607. geo_open_node
  1608. geo_branch 1, mario_geo_body
  1609. geo_branch 1, mario_vanish_geo_body
  1610. geo_branch 1, mario_metal_geo_body
  1611. geo_branch 1, mario_metal_vanish_geo_body
  1612. geo_close_node
  1613. geo_return
  1614. # Medium Poly
  1615. glabel mario_geo_load_medium_poly_body # 0x17002D14
  1616. geo_switch_case 0, geo_switch_mario_cap_effect
  1617. geo_open_node
  1618. geo_branch 1, mario_geo_medium_poly_body
  1619. geo_branch 1, mario_vanish_geo_medium_poly_body
  1620. geo_branch 1, mario_metal_geo_medium_poly_body
  1621. geo_branch 1, mario_metal_vanish_geo_medium_poly_body
  1622. geo_close_node
  1623. geo_return
  1624. # Low Poly
  1625. glabel mario_geo_load_low_poly_body # 0x17002D48
  1626. geo_switch_case 0, geo_switch_mario_cap_effect
  1627. geo_open_node
  1628. geo_branch 1, mario_geo_low_poly_body
  1629. geo_branch 1, mario_vanish_geo_low_poly_body
  1630. geo_branch 1, mario_metal_geo_low_poly_body
  1631. geo_branch 1, mario_metal_vanish_geo_low_poly_body
  1632. geo_close_node
  1633. geo_return
  1634. glabel mario_geo_render_body # 0x17002D7C
  1635. geo_node_start
  1636. geo_open_node
  1637. geo_render_range -2048, 600
  1638. geo_open_node
  1639. geo_branch 1, mario_geo_load_body
  1640. geo_close_node
  1641. geo_render_range 600, 1600
  1642. geo_open_node
  1643. geo_branch 1, mario_geo_load_medium_poly_body
  1644. geo_close_node
  1645. geo_render_range 1600, 32767
  1646. geo_open_node
  1647. geo_branch 1, mario_geo_load_low_poly_body
  1648. geo_close_node
  1649. geo_close_node
  1650. geo_return
  1651. # This last geo is used to load all of Mario Geo in the Level Scripts
  1652. glabel mario_geo # 0x17002DD4
  1653. geo_shadow SHADOW_CIRCLE_PLAYER, 0xB4, 100
  1654. geo_open_node
  1655. geo_scale 0x00, 16384
  1656. geo_open_node
  1657. geo_asm 0, Geo18_80277D6C
  1658. geo_asm 0, Geo18_802770A4
  1659. geo_switch_case 0, geo_switch_mario_stand_run
  1660. geo_open_node
  1661. geo_branch 1, mario_geo_load_body
  1662. geo_branch 1, mario_geo_render_body
  1663. geo_close_node
  1664. geo_asm 1, Geo18_80277D6C
  1665. geo_close_node
  1666. geo_close_node
  1667. geo_end