sm64

A Super Mario 64 decompilation
Log | Files | Refs | README | LICENSE

geo.inc.c (8182B)


      1 // 0x0C000098
      2 const GeoLayout peach_geo_000098[] = {
      3     GEO_NODE_START(),
      4     GEO_OPEN_NODE(),
      5         GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
      6         GEO_OPEN_NODE(),
      7             GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, peach_seg5_dl_05007230),
      8             GEO_OPEN_NODE(),
      9                 GEO_ANIMATED_PART(LAYER_OPAQUE, 78, 0, 0, peach_seg5_dl_05006A18),
     10                 GEO_OPEN_NODE(),
     11                     GEO_ANIMATED_PART(LAYER_OPAQUE, 132, 0, 0, NULL),
     12                     GEO_OPEN_NODE(),
     13                         GEO_SWITCH_CASE(8, geo_switch_peach_eyes),
     14                         GEO_OPEN_NODE(),
     15                             GEO_DISPLAY_LIST(LAYER_OPAQUE, peach_seg5_dl_05005CE0),
     16                             GEO_DISPLAY_LIST(LAYER_OPAQUE, peach_seg5_dl_05005D38),
     17                             GEO_DISPLAY_LIST(LAYER_OPAQUE, peach_seg5_dl_05005D90),
     18                             GEO_DISPLAY_LIST(LAYER_OPAQUE, peach_seg5_dl_05005DE8),
     19                             GEO_DISPLAY_LIST(LAYER_OPAQUE, peach_seg5_dl_05005E40),
     20                             GEO_DISPLAY_LIST(LAYER_OPAQUE, peach_seg5_dl_05005E98),
     21                             GEO_DISPLAY_LIST(LAYER_OPAQUE, peach_seg5_dl_05005EF0),
     22                             GEO_DISPLAY_LIST(LAYER_OPAQUE, peach_seg5_dl_05005F48),
     23                         GEO_CLOSE_NODE(),
     24                         GEO_ANIMATED_PART(LAYER_OPAQUE, 38, -78, 0, NULL),
     25                         GEO_OPEN_NODE(),
     26                             GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, peach_seg5_dl_05007AB8),
     27                         GEO_CLOSE_NODE(),
     28                     GEO_CLOSE_NODE(),
     29                     GEO_ANIMATED_PART(LAYER_OPAQUE, 132, 0, 0, peach_seg5_dl_05009148),
     30                     GEO_ANIMATED_PART(LAYER_OPAQUE, 132, 0, 0, peach_seg5_dl_05008F20),
     31                     GEO_ANIMATED_PART(LAYER_OPAQUE, 63, 0, 84, NULL),
     32                     GEO_OPEN_NODE(),
     33                         GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, peach_seg5_dl_05007E58),
     34                         GEO_OPEN_NODE(),
     35                             GEO_ANIMATED_PART(LAYER_OPAQUE, 104, 0, 0, peach_seg5_dl_050087A8),
     36                             GEO_OPEN_NODE(),
     37                                 GEO_ANIMATED_PART(LAYER_OPAQUE, 87, 0, 0, peach_seg5_dl_05009500),
     38                             GEO_CLOSE_NODE(),
     39                         GEO_CLOSE_NODE(),
     40                         GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, peach_seg5_dl_05008560),
     41                     GEO_CLOSE_NODE(),
     42                     GEO_ANIMATED_PART(LAYER_OPAQUE, 63, 0, -84, NULL),
     43                     GEO_OPEN_NODE(),
     44                         GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, peach_seg5_dl_05008228),
     45                         GEO_OPEN_NODE(),
     46                             GEO_ANIMATED_PART(LAYER_OPAQUE, 104, 0, 0, peach_seg5_dl_05008CF8),
     47                             GEO_OPEN_NODE(),
     48                                 GEO_ANIMATED_PART(LAYER_OPAQUE, 87, 0, 0, peach_seg5_dl_05009940),
     49                             GEO_CLOSE_NODE(),
     50                         GEO_CLOSE_NODE(),
     51                         GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, peach_seg5_dl_05008AB0),
     52                     GEO_CLOSE_NODE(),
     53                 GEO_CLOSE_NODE(),
     54                 GEO_ANIMATED_PART(LAYER_OPAQUE, 78, 0, 0, peach_seg5_dl_050060E0),
     55                 GEO_ANIMATED_PART(LAYER_OPAQUE, -23, -1, 0, NULL),
     56                 GEO_OPEN_NODE(),
     57                     GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, peach_seg5_dl_0500A0A8),
     58                 GEO_CLOSE_NODE(),
     59             GEO_CLOSE_NODE(),
     60         GEO_CLOSE_NODE(),
     61     GEO_CLOSE_NODE(),
     62     GEO_RETURN(),
     63 };
     64 
     65 // 0x0C000254
     66 const GeoLayout peach_geo_000254[] = {
     67     GEO_NODE_START(),
     68     GEO_OPEN_NODE(),
     69         GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, NULL),
     70         GEO_OPEN_NODE(),
     71 #ifdef VERSION_JP
     72             GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, peach_seg5_dl_05007230),
     73 #else
     74             GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, peach_seg5_us_dl_05007288),
     75 #endif
     76             GEO_OPEN_NODE(),
     77                 GEO_ANIMATED_PART(LAYER_TRANSPARENT, 78, 0, 0, peach_seg5_dl_05006A18),
     78                 GEO_OPEN_NODE(),
     79                     GEO_ANIMATED_PART(LAYER_TRANSPARENT, 132, 0, 0, NULL),
     80                     GEO_OPEN_NODE(),
     81                         GEO_SWITCH_CASE(8, geo_switch_peach_eyes),
     82                         GEO_OPEN_NODE(),
     83                             GEO_DISPLAY_LIST(LAYER_TRANSPARENT, peach_seg5_dl_05005CE0),
     84                             GEO_DISPLAY_LIST(LAYER_TRANSPARENT, peach_seg5_dl_05005D38),
     85                             GEO_DISPLAY_LIST(LAYER_TRANSPARENT, peach_seg5_dl_05005D90),
     86                             GEO_DISPLAY_LIST(LAYER_TRANSPARENT, peach_seg5_dl_05005DE8),
     87                             GEO_DISPLAY_LIST(LAYER_TRANSPARENT, peach_seg5_dl_05005E40),
     88                             GEO_DISPLAY_LIST(LAYER_TRANSPARENT, peach_seg5_dl_05005E98),
     89                             GEO_DISPLAY_LIST(LAYER_TRANSPARENT, peach_seg5_dl_05005EF0),
     90                             GEO_DISPLAY_LIST(LAYER_TRANSPARENT, peach_seg5_dl_05005F48),
     91                         GEO_CLOSE_NODE(),
     92                         GEO_ANIMATED_PART(LAYER_TRANSPARENT, 38, -78, 0, NULL),
     93                         GEO_OPEN_NODE(),
     94                             GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, peach_seg5_dl_05007AB8),
     95                         GEO_CLOSE_NODE(),
     96                     GEO_CLOSE_NODE(),
     97                     GEO_ANIMATED_PART(LAYER_TRANSPARENT, 132, 0, 0, peach_seg5_dl_05009148),
     98                     GEO_ANIMATED_PART(LAYER_TRANSPARENT, 132, 0, 0, peach_seg5_dl_05008F20),
     99                     GEO_ANIMATED_PART(LAYER_TRANSPARENT, 63, 0, 84, NULL),
    100                     GEO_OPEN_NODE(),
    101                         GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, peach_seg5_dl_05007E58),
    102                         GEO_OPEN_NODE(),
    103                             GEO_ANIMATED_PART(LAYER_TRANSPARENT, 104, 0, 0, peach_seg5_dl_050087A8),
    104                             GEO_OPEN_NODE(),
    105                                 GEO_ANIMATED_PART(LAYER_TRANSPARENT, 87, 0, 0, peach_seg5_dl_05009500),
    106                             GEO_CLOSE_NODE(),
    107                         GEO_CLOSE_NODE(),
    108                         GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, peach_seg5_dl_05008560),
    109                     GEO_CLOSE_NODE(),
    110                     GEO_ANIMATED_PART(LAYER_TRANSPARENT, 63, 0, -84, NULL),
    111                     GEO_OPEN_NODE(),
    112                         GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, peach_seg5_dl_05008228),
    113                         GEO_OPEN_NODE(),
    114                             GEO_ANIMATED_PART(LAYER_TRANSPARENT, 104, 0, 0, peach_seg5_dl_05008CF8),
    115                             GEO_OPEN_NODE(),
    116                                 GEO_ANIMATED_PART(LAYER_TRANSPARENT, 87, 0, 0, peach_seg5_dl_05009940),
    117                             GEO_CLOSE_NODE(),
    118                         GEO_CLOSE_NODE(),
    119                         GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, peach_seg5_dl_05008AB0),
    120                     GEO_CLOSE_NODE(),
    121                 GEO_CLOSE_NODE(),
    122                 GEO_ANIMATED_PART(LAYER_TRANSPARENT, 78, 0, 0, peach_seg5_dl_050060E0),
    123                 GEO_ANIMATED_PART(LAYER_TRANSPARENT, -23, -1, 0, NULL),
    124                 GEO_OPEN_NODE(),
    125 #ifdef VERSION_JP
    126                     GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, peach_seg5_dl_0500A0A8),
    127 #else
    128                     GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, peach_seg5_us_dl_0500A188),
    129 #endif
    130                 GEO_CLOSE_NODE(),
    131             GEO_CLOSE_NODE(),
    132         GEO_CLOSE_NODE(),
    133     GEO_CLOSE_NODE(),
    134     GEO_RETURN(),
    135 };
    136 
    137 // 0x0C000410
    138 const GeoLayout peach_geo[] = {
    139     GEO_SHADOW(SHADOW_CIRCLE_9_VERTS, 0x96, 100),
    140     GEO_OPEN_NODE(),
    141         GEO_SCALE(0x00, 16384),
    142         GEO_OPEN_NODE(),
    143             GEO_ASM(10, geo_update_layer_transparency),
    144             GEO_SWITCH_CASE(2, geo_switch_anim_state),
    145             GEO_OPEN_NODE(),
    146                 GEO_BRANCH(1, peach_geo_000098),
    147                 GEO_BRANCH(1, peach_geo_000254),
    148             GEO_CLOSE_NODE(),
    149         GEO_CLOSE_NODE(),
    150     GEO_CLOSE_NODE(),
    151     GEO_END(),
    152 };
    153 
    154 UNUSED static const u64 peach_unused_1 = 0;