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.

100 lines
8.6 KiB

6 years ago
  1. script_func_local_1:
  2. object /*model*/ MODEL_RED_FLAME, /*pos*/ 4936, -357, -4146, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  3. object /*model*/ MODEL_RED_FLAME, /*pos*/ 5018, -460, -5559, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  4. object /*model*/ MODEL_RED_FLAME, /*pos*/ 1997, 666, -235, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  5. object /*model*/ MODEL_RED_FLAME, /*pos*/ 1762, -460, -2610, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  6. object /*model*/ MODEL_RED_FLAME, /*pos*/ 4178, -255, -3737, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  7. object /*model*/ MODEL_RED_FLAME, /*pos*/ 2233, -460, 256, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  8. object /*model*/ MODEL_RED_FLAME, /*pos*/ 5510, -255, -3429, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  9. object /*model*/ MODEL_RED_FLAME, /*pos*/ 4690, -357, -767, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  10. object /*model*/ MODEL_RED_FLAME, /*pos*/ 3462, -255, -1125, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  11. object /*model*/ MODEL_RED_FLAME, /*pos*/ 1762, 666, 0, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  12. object /*model*/ MODEL_RED_FLAME, /*pos*/ 1762, -460, 256, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  13. object /*model*/ MODEL_RED_FLAME, /*pos*/ 6482, 461, 3226, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  14. object /*model*/ MODEL_RED_FLAME, /*pos*/ 1075, 461, 6543, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  15. object /*model*/ MODEL_RED_FLAME, /*pos*/ 6912, 461, 6543, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  16. object /*model*/ MODEL_RED_FLAME, /*pos*/ 6912, 461, 3697, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  17. object /*model*/ MODEL_RED_FLAME, /*pos*/ 6482, 461, 7014, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  18. object /*model*/ MODEL_RED_FLAME, /*pos*/ 3817, 717, 1034, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFlame
  19. object /*model*/ MODEL_NONE, /*pos*/ 799, 1024, 4434, /*angle*/ 0, 0, 0, /*behParam*/ 0x00B80000, /*beh*/ bhvPoleGrabbing
  20. object /*model*/ MODEL_NONE, /*pos*/ 889, 1024, 3277, /*angle*/ 0, 0, 0, /*behParam*/ 0x00B80000, /*beh*/ bhvPoleGrabbing
  21. return
  22. script_func_local_2:
  23. object /*model*/ MODEL_HMC_METAL_PLATFORM, /*pos*/ 1100, 950, 6350, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvControllablePlatform
  24. object /*model*/ MODEL_HMC_ELEVATOR_PLATFORM, /*pos*/ -3243, 1434, 1392, /*angle*/ 0, 27, 0, /*behParam*/ 0x00000000, /*beh*/ bhvHmcElevatorPlatform
  25. object /*model*/ MODEL_HMC_ELEVATOR_PLATFORM, /*pos*/ -2816, 2253, -2509, /*angle*/ 0, 0, 0, /*behParam*/ 0x00010000, /*beh*/ bhvHmcElevatorPlatform
  26. object /*model*/ MODEL_HMC_ELEVATOR_PLATFORM, /*pos*/ -973, 1741, -7347, /*angle*/ 0, 0, 0, /*behParam*/ 0x00020000, /*beh*/ bhvHmcElevatorPlatform
  27. object /*model*/ MODEL_HMC_ELEVATOR_PLATFORM, /*pos*/ -3533, 1741, -7040, /*angle*/ 0, 0, 0, /*behParam*/ 0x00030000, /*beh*/ bhvHmcElevatorPlatform
  28. object /*model*/ MODEL_NONE, /*pos*/ 614, -4690, 2330, /*angle*/ 0, 270, 0, /*behParam*/ 0x00010000, /*beh*/ bhvOpenableGrill
  29. object /*model*/ MODEL_PURPLE_SWITCH, /*pos*/ -307, -4997, 2483, /*angle*/ 0, 270, 0, /*behParam*/ 0x00000000, /*beh*/ bhvFloorSwitchGrills
  30. object /*model*/ MODEL_CHECKERBOARD_PLATFORM, /*pos*/ 1270, 2000, 4000, /*angle*/ 0, 270, 0, /*behParam*/ 0x09A40000, /*beh*/ bhvPlatformOnTrack
  31. return
  32. script_func_local_3:
  33. object /*model*/ MODEL_DORRIE, /*pos*/ -3533, -4969, 3558, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvDorrie
  34. object /*model*/ MODEL_NONE, /*pos*/ -6093, 3075, -7807, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvBigBoulderGenerator
  35. object /*model*/ MODEL_NONE, /*pos*/ -500, 1600, 3500, /*angle*/ 0, 0, 0, /*behParam*/ 0x00040000, /*beh*/ bhvFlamethrower
  36. object /*model*/ MODEL_NONE, /*pos*/ -500, 1600, 3800, /*angle*/ 0, 0, 0, /*behParam*/ 0x00040000, /*beh*/ bhvFlamethrower
  37. return
  38. script_func_local_4:
  39. object /*model*/ MODEL_STAR, /*pos*/ -3600, -4000, 3600, /*angle*/ 0, 0, 0, /*behParam*/ 0x00000000, /*beh*/ bhvStar, /*acts*/ ALL_ACTS
  40. object /*model*/ MODEL_NONE, /*pos*/ 4000, 300, 5000, /*angle*/ 0, 0, 0, /*behParam*/ 0x01000000, /*beh*/ bhvHiddenRedCoinStar, /*acts*/ ALL_ACTS
  41. object /*model*/ MODEL_STAR, /*pos*/ 6200, -4400, 2300, /*angle*/ 0, 0, 0, /*behParam*/ 0x02000000, /*beh*/ bhvStar, /*acts*/ ALL_ACTS
  42. object /*model*/ MODEL_STAR, /*pos*/ -2100, 2100, -7550, /*angle*/ 0, 0, 0, /*behParam*/ 0x03000000, /*beh*/ bhvStar, /*acts*/ ALL_ACTS
  43. object /*model*/ MODEL_STAR, /*pos*/ -6500, 2700, -1600, /*angle*/ 0, 0, 0, /*behParam*/ 0x04000000, /*beh*/ bhvStar, /*acts*/ ALL_ACTS
  44. object /*model*/ MODEL_STAR, /*pos*/ -5000, 3050, -6700, /*angle*/ 0, 0, 0, /*behParam*/ 0x05000000, /*beh*/ bhvStar, /*acts*/ ALL_ACTS
  45. return
  46. glabel level_hmc_entry
  47. init_level
  48. load_mio0 /*seg*/ 0x07, /*romStart*/ _hmc_segment_7SegmentRomStart, /*romEnd*/ _hmc_segment_7SegmentRomEnd
  49. load_mio0_texture /*seg*/ 0x09, /*romStart*/ _cave_mio0SegmentRomStart, /*romEnd*/ _cave_mio0SegmentRomEnd
  50. load_mio0 /*seg*/ 0x05, /*romStart*/ _group6_mio0SegmentRomStart, /*romEnd*/ _group6_mio0SegmentRomEnd
  51. load_raw /*seg*/ 0x0C, /*romStart*/ _group6_geoSegmentRomStart, /*romEnd*/ _group6_geoSegmentRomEnd
  52. load_mio0 /*seg*/ 0x06, /*romStart*/ _group17_mio0SegmentRomStart, /*romEnd*/ _group17_mio0SegmentRomEnd
  53. load_raw /*seg*/ 0x0D, /*romStart*/ _group17_geoSegmentRomStart, /*romEnd*/ _group17_geoSegmentRomEnd
  54. load_mio0 /*seg*/ 0x08, /*romStart*/ _common0_mio0SegmentRomStart, /*romEnd*/ _common0_mio0SegmentRomEnd
  55. load_raw /*seg*/ 0x0F, /*romStart*/ _common0_geoSegmentRomStart, /*romEnd*/ _common0_geoSegmentRomEnd
  56. alloc_level_pool
  57. mario /*model*/ MODEL_MARIO, /*behParam*/ 0x00000001, /*beh*/ bhvMario
  58. jump_link /*target*/ script_func_global_1
  59. jump_link /*target*/ script_func_global_7
  60. jump_link /*target*/ script_func_global_18
  61. load_model_from_geo /*model*/ MODEL_HMC_WOODEN_DOOR, /*geo*/ wooden_door_geo
  62. load_model_from_geo /*model*/ MODEL_HMC_METAL_DOOR, /*geo*/ metal_door_geo
  63. load_model_from_geo /*model*/ MODEL_HMC_HAZY_MAZE_DOOR, /*geo*/ hazy_maze_door_geo
  64. load_model_from_geo /*model*/ MODEL_HMC_METAL_PLATFORM, /*geo*/ hmc_geo_0005A0
  65. load_model_from_geo /*model*/ MODEL_HMC_METAL_ARROW_PLATFORM, /*geo*/ hmc_geo_0005B8
  66. load_model_from_geo /*model*/ MODEL_HMC_ELEVATOR_PLATFORM, /*geo*/ hmc_geo_0005D0
  67. load_model_from_geo /*model*/ MODEL_HMC_ROLLING_ROCK, /*geo*/ hmc_geo_000548
  68. load_model_from_geo /*model*/ MODEL_HMC_ROCK_PIECE, /*geo*/ hmc_geo_000570
  69. load_model_from_geo /*model*/ MODEL_HMC_ROCK_SMALL_PIECE, /*geo*/ hmc_geo_000588
  70. load_model_from_geo /*model*/ MODEL_HMC_RED_GRILLS, /*geo*/ hmc_geo_000530
  71. area /*index*/ 1, /*geo*/ hmc_geo_000B90
  72. object /*model*/ MODEL_NONE, /*pos*/ -7152, 3161, 7181, /*angle*/ 0, 135, 0, /*behParam*/ 0x000A0000, /*beh*/ bhvWarps74
  73. object /*model*/ MODEL_NONE, /*pos*/ 3351, -4690, 4773, /*angle*/ 0, 0, 0, /*behParam*/ 0x340B0000, /*beh*/ bhvWarp
  74. warp_node /*id*/ 0x0A, /*destLevel*/ 0x07, /*destArea*/ 0x01, /*destNode*/ 0x0A, /*unk6*/ 0x0000
  75. warp_node /*id*/ 0x0B, /*destLevel*/ 0x1C, /*destArea*/ 0x01, /*destNode*/ 0x0A, /*unk6*/ 0x0000
  76. warp_node /*id*/ 0xF0, /*destLevel*/ 0x06, /*destArea*/ 0x03, /*destNode*/ 0x34, /*unk6*/ 0x0000
  77. warp_node /*id*/ 0xF1, /*destLevel*/ 0x06, /*destArea*/ 0x03, /*destNode*/ 0x66, /*unk6*/ 0x0000
  78. jump_link /*target*/ script_func_local_1
  79. jump_link /*target*/ script_func_local_2
  80. jump_link /*target*/ script_func_local_3
  81. jump_link /*target*/ script_func_local_4
  82. terrain /*terrainData*/ hmc_seg7_collision_level
  83. macro_objects /*objList*/ hmc_seg7_macro_objs
  84. rooms /*surfaceRooms*/ hmc_seg7_rooms
  85. set_music /*unk2*/ 0x0004, /*seq*/ SEQ_LEVEL_UNDERGROUND
  86. terrain_type /*terrainType*/ 0x0001
  87. end_area
  88. free_level_pool
  89. mario_pos /*area*/ 1, /*yaw*/ 135, /*pos*/ -7152, 2161, 7181
  90. call /*arg*/ 0, /*func*/ lvl_init_or_update
  91. call_loop /*arg*/ 1, /*func*/ lvl_init_or_update
  92. clear_level
  93. sleep_before_exit /*frames*/ 1
  94. exit