Files
mk64/green__shell_2update_8inc_8c_source.html
T

389 lines
74 KiB
HTML

<!-- HTML header for doxygen 1.10.0-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.11.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Mario Kart 64: src/actors/green_shell/update.inc.c Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
<link href="doxygen-awesome-sidebar-only-darkmode-toggle.css" rel="stylesheet" type="text/css"/>
<link href="docs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="doxygen-awesome-darkmode-toggle.js"></script>
<script type="text/javascript">
DoxygenAwesomeDarkModeToggle.init()
</script>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">Mario Kart 64
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.11.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){initNavTree('green__shell_2update_8inc_8c_source.html',''); initResizable(true); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">update.inc.c</div></div>
</div><!--header-->
<div class="contents">
<a href="green__shell_2update_8inc_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &lt;<a class="code" href="actors_8h.html">actors.h</a>&gt;</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;<a class="code" href="main_8h.html">main.h</a>&gt;</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="preprocessor">#include &lt;<a class="code" href="code__800029B0_8h.html">code_800029B0.h</a>&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;<a class="code" href="defines_8h.html">defines.h</a>&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &quot;<a class="code" href="collision_8h.html">collision.h</a>&quot;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> </div>
<div class="foldopen" id="foldopen00012" data-start="{" data-end="}">
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"><a class="line" href="green__shell_2update_8inc_8c.html#a4fd275676bf11ca2e15556db08264a90"> 12</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="green__shell_2update_8inc_8c.html#a4fd275676bf11ca2e15556db08264a90">update_actor_green_shell</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structShellActor.html">ShellActor</a> *shell) {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <a class="code hl_struct" href="structPlayer.html">Player</a> *player;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <a class="code hl_define" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> pad9;</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <a class="code hl_define" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> padA;</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> <a class="code hl_typedef" href="common__structs_8h.html#a5290523279339ea495248ab3a36cb46e">Vec3f</a> somePos2;</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> <a class="code hl_typedef" href="common__structs_8h.html#a5290523279339ea495248ab3a36cb46e">Vec3f</a> somePosVel;</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> var_f2;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="keyword">struct </span><a class="code hl_struct" href="structController.html">Controller</a> *controller;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <a class="code hl_struct" href="structTripleShellParent.html">TripleShellParent</a> *parent;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> height;</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> z;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <a class="code hl_define" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> pad2;</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <a class="code hl_define" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> pad3;</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <a class="code hl_define" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> pad4;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <a class="code hl_define" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> pad5;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> y;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <a class="code hl_define" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> pad7;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <a class="code hl_define" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> <a class="code hl_typedef" href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a> pad8;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> height = shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[0];</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> y = shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[1];</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> z = shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[2];</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keywordflow">if</span> ((z &lt; <a class="code hl_variable" href="code__800029B0_8c.html#a161879cca91eaae1535e6640e78d0ce9">gCourseMinZ</a>) || (<a class="code hl_variable" href="code__800029B0_8c.html#a1b0406ea3ec906cf85496afbfe00e23e">gCourseMaxZ</a> &lt; z) || (height &lt; <a class="code hl_variable" href="code__800029B0_8c.html#a2b6aea08cfc79f5869a84f0075561043">gCourseMinX</a>) || (<a class="code hl_variable" href="code__800029B0_8c.html#ad1302749c19d1854717267f35a2d0078">gCourseMaxX</a> &lt; height) || (y &lt; <a class="code hl_variable" href="code__800029B0_8c.html#aa2ee5042f4e7ac743d8b4d48e4e30db8">gCourseMinY</a>)) {</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <a class="code hl_function" href="actors_8c.html#a53268aa601911d56424ff08fb3395bcb">destroy_destructable_actor</a>((<span class="keyword">struct</span> <a class="code hl_struct" href="structActor.html">Actor</a> *) shell);</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> }</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a1ca761f0cac83459e16cbc22002b4569">rotVelocity</a> += 0x71C;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <span class="keywordflow">switch</span> (shell-&gt;<a class="code hl_variable" href="structShellActor.html#a62b51240387f83c669e3e279aaecbed8">state</a>) {</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <span class="keywordflow">case</span> <a class="code hl_enumvalue" href="actor__types_8h.html#ac01c8e97d91d8f2968ca1f8d4eb0495ba514b7d298fa86789854ef2056f82f7fd">HELD_SHELL</a>:</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> player = &amp;<a class="code hl_variable" href="main_8c.html#a5f24aafa500466dbf1a7154ff7041fc2">gPlayers</a>[shell-&gt;<a class="code hl_variable" href="structShellActor.html#a77c5d4878d9a0867430326a1d63491dc">playerId</a>];</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <a class="code hl_function" href="actors__extended_8c.html#a407d30d307b990cf22e979f7180477e5">copy_collision</a>(&amp;player-&gt;<a class="code hl_variable" href="structPlayer.html#a649c835eb5117a45758d3ac1946070b4">collision</a>, &amp;shell-&gt;<a class="code hl_variable" href="structShellActor.html#acf7c6324c79136005a8a16b0280862d4">unk30</a>);</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> somePosVel[0] = 0.0f;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> somePosVel[1] = player-&gt;<a class="code hl_variable" href="structPlayer.html#a681f0fac4abe58cf5919dd4c6ac503d0">boundingBoxSize</a>;</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> somePosVel[2] = -(player-&gt;<a class="code hl_variable" href="structPlayer.html#a681f0fac4abe58cf5919dd4c6ac503d0">boundingBoxSize</a> + shell-&gt;<a class="code hl_variable" href="structShellActor.html#a610da60b5b38774fba6b6bb3076fd007">boundingBoxSize</a> + 2.0f);</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <a class="code hl_function" href="math__util_8c.html#ad5bb0138c68b50f119d3cb7966f522b7">mtxf_translate_vec3f_mat3</a>(somePosVel, player-&gt;<a class="code hl_variable" href="structPlayer.html#a28df2c989598022073df6fc2425cbefe">orientationMatrix</a>);</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[0] = player-&gt;<a class="code hl_variable" href="structPlayer.html#aff7447121b2e0bd051e58a276fce7b36">pos</a>[0] + somePosVel[0];</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> pad2 = player-&gt;<a class="code hl_variable" href="structPlayer.html#aff7447121b2e0bd051e58a276fce7b36">pos</a>[1] - somePosVel[1];</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[2] = player-&gt;<a class="code hl_variable" href="structPlayer.html#aff7447121b2e0bd051e58a276fce7b36">pos</a>[2] + somePosVel[2];</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> height = <a class="code hl_function" href="collision_8c.html#a6527a2135a10909cdf9a1fd731be5628">calculate_surface_height</a>(shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[0], pad2, shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[2], player-&gt;<a class="code hl_variable" href="structPlayer.html#a649c835eb5117a45758d3ac1946070b4">collision</a>.<a class="code hl_variable" href="structCollision.html#ae78e07a65ab659cdf61a1f1ca3149a36">meshIndexZX</a>);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> z = pad2 - height;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">if</span> ((z &lt; 5.0f) &amp;&amp; (z &gt; -5.0f)) {</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[1] = shell-&gt;<a class="code hl_variable" href="structShellActor.html#a610da60b5b38774fba6b6bb3076fd007">boundingBoxSize</a> + height;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[1] = pad2;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> }</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">if</span> ((player-&gt;<a class="code hl_variable" href="structPlayer.html#a71c4ebed7633cd2330dec792fcf24f1f">type</a> &amp; <a class="code hl_define" href="defines_8h.html#ab30d6efeb8601088397fff50c25c2424">PLAYER_HUMAN</a>) != 0) {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> controller = &amp;<a class="code hl_variable" href="main_8c.html#a977a26348d9f8d421d2f927f19d50693">gControllers</a>[shell-&gt;<a class="code hl_variable" href="structShellActor.html#a77c5d4878d9a0867430326a1d63491dc">playerId</a>];</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">if</span> ((controller-&gt;<a class="code hl_variable" href="structController.html#af68b8dc9459d69a7dfdf57dabf8dbae5">buttonDepressed</a> &amp; <a class="code hl_define" href="os_8h.html#a3c1de5b3b5a9360fb2104131e6525bdd">Z_TRIG</a>) != 0) {</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> controller-&gt;<a class="code hl_variable" href="structController.html#af68b8dc9459d69a7dfdf57dabf8dbae5">buttonDepressed</a> &amp;= ~Z_TRIG;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">if</span> (controller-&gt;<a class="code hl_variable" href="structController.html#a0328aceb87b07a05b8f8b64ec33e904b">rawStickY</a> &lt; -0x2D) {</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> var_f2 = 8.0f;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">if</span> (player-&gt;<a class="code hl_variable" href="structPlayer.html#a22da56390c62208e8c75566f83a08e0f">unk_094</a> &gt; 8.0f) {</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> var_f2 = player-&gt;<a class="code hl_variable" href="structPlayer.html#a22da56390c62208e8c75566f83a08e0f">unk_094</a> * 1.2f;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> }</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> somePosVel[0] = 0.0f;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> somePosVel[1] = 0.0f;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> somePosVel[2] = -var_f2;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <a class="code hl_function" href="math__util_8c.html#a6270d7eb2d38b9c093e61da43b7d51ff">func_802B64C4</a>(somePosVel, player-&gt;<a class="code hl_variable" href="structPlayer.html#a4fafb84477d127ff2a1b74331c904f3f">rotation</a>[1] + player-&gt;<a class="code hl_variable" href="structPlayer.html#a0dae7ee727c1fd1f3d07b2b7231e85cf">unk_0C0</a>);</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[0] = somePosVel[0];</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[1] = somePosVel[1];</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[2] = somePosVel[2];</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a62b51240387f83c669e3e279aaecbed8">state</a> = 2;</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <a class="code hl_function" href="external_8c.html#a2be9efc97a92e19d02aaee90d676acc1">func_800C9060</a>(shell-&gt;<a class="code hl_variable" href="structShellActor.html#a77c5d4878d9a0867430326a1d63491dc">playerId</a>, <a class="code hl_define" href="sounds_8h.html#a71288c0bb15b503d4570b441a05013f4">SOUND_ARG_LOAD</a>(0x19, 0x00, 0x80, 0x04));</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <a class="code hl_function" href="external_8c.html#a337fc3ab94ebb3293a85908229303ac8">func_800C90F4</a>(shell-&gt;<a class="code hl_variable" href="structShellActor.html#a77c5d4878d9a0867430326a1d63491dc">playerId</a>, (player-&gt;<a class="code hl_variable" href="structPlayer.html#a3c54f7cdfdf596fcb7500e4b56a3340d">characterId</a> * 0x10) + <a class="code hl_define" href="sounds_8h.html#a71288c0bb15b503d4570b441a05013f4">SOUND_ARG_LOAD</a>(0x29, 0x00, 0x80, 0x00));</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <a class="code hl_function" href="code__80005FD0_8c.html#a3da5a7898fa91355d9cb394860db7904">add_green_shell_in_unexpired_actor_list</a>((<span class="keyword">struct</span> <a class="code hl_struct" href="structActor.html">Actor</a>*)shell - <a class="code hl_variable" href="code__800029B0_8c.html#a37d0e0553a4cd552f52174f4b33b798d">gActorList</a>);</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a62b51240387f83c669e3e279aaecbed8">state</a> = 1;</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">if</span> (player-&gt;<a class="code hl_variable" href="structPlayer.html#a0dae7ee727c1fd1f3d07b2b7231e85cf">unk_0C0</a> &gt; 0) {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a10e3cd03ca10c5502ebe7af20829a565">rotAngle</a> = 0x78E3;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a10e3cd03ca10c5502ebe7af20829a565">rotAngle</a> = -0x78E4;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> }</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> }</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> }</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> }</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">case</span> <a class="code hl_enumvalue" href="actor__types_8h.html#ac01c8e97d91d8f2968ca1f8d4eb0495ba6bccf5be381532660e62c226008d6382">RELEASED_SHELL</a>:</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> player = &amp;<a class="code hl_variable" href="main_8c.html#a5f24aafa500466dbf1a7154ff7041fc2">gPlayers</a>[shell-&gt;<a class="code hl_variable" href="structShellActor.html#a77c5d4878d9a0867430326a1d63491dc">playerId</a>];</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">if</span> (shell-&gt;<a class="code hl_variable" href="structShellActor.html#a10e3cd03ca10c5502ebe7af20829a565">rotAngle</a> &gt; 0) {</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a10e3cd03ca10c5502ebe7af20829a565">rotAngle</a> -= 0xE38;</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">if</span> (shell-&gt;<a class="code hl_variable" href="structShellActor.html#a10e3cd03ca10c5502ebe7af20829a565">rotAngle</a> &lt; 0) {</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a62b51240387f83c669e3e279aaecbed8">state</a> = 2;</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#adaca452aa94770d8d57f99cc1f3b7151">someTimer</a> = 0x001E;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <a class="code hl_function" href="external_8c.html#a2be9efc97a92e19d02aaee90d676acc1">func_800C9060</a>(shell-&gt;<a class="code hl_variable" href="structShellActor.html#a77c5d4878d9a0867430326a1d63491dc">playerId</a>, <a class="code hl_define" href="sounds_8h.html#a71288c0bb15b503d4570b441a05013f4">SOUND_ARG_LOAD</a>(0x19, 0x00, 0x80, 0x04));</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <a class="code hl_function" href="external_8c.html#a337fc3ab94ebb3293a85908229303ac8">func_800C90F4</a>(shell-&gt;<a class="code hl_variable" href="structShellActor.html#a77c5d4878d9a0867430326a1d63491dc">playerId</a>, (player-&gt;<a class="code hl_variable" href="structPlayer.html#a3c54f7cdfdf596fcb7500e4b56a3340d">characterId</a> * 0x10) + <a class="code hl_define" href="sounds_8h.html#a71288c0bb15b503d4570b441a05013f4">SOUND_ARG_LOAD</a>(0x29, 0x00, 0x80, 0x00));</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <a class="code hl_function" href="code__80005FD0_8c.html#a3da5a7898fa91355d9cb394860db7904">add_green_shell_in_unexpired_actor_list</a>((<span class="keyword">struct</span> <a class="code hl_struct" href="structActor.html">Actor</a>*)shell - <a class="code hl_variable" href="code__800029B0_8c.html#a37d0e0553a4cd552f52174f4b33b798d">gActorList</a>);</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> }</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a10e3cd03ca10c5502ebe7af20829a565">rotAngle</a> += 0xE38;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keywordflow">if</span> (shell-&gt;<a class="code hl_variable" href="structShellActor.html#a10e3cd03ca10c5502ebe7af20829a565">rotAngle</a> &gt; 0) {</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a62b51240387f83c669e3e279aaecbed8">state</a> = 2;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#adaca452aa94770d8d57f99cc1f3b7151">someTimer</a> = 0x001E;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <a class="code hl_function" href="external_8c.html#a2be9efc97a92e19d02aaee90d676acc1">func_800C9060</a>(shell-&gt;<a class="code hl_variable" href="structShellActor.html#a77c5d4878d9a0867430326a1d63491dc">playerId</a>, <a class="code hl_define" href="sounds_8h.html#a71288c0bb15b503d4570b441a05013f4">SOUND_ARG_LOAD</a>(0x19, 0x00, 0x80, 0x04));</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <a class="code hl_function" href="external_8c.html#a337fc3ab94ebb3293a85908229303ac8">func_800C90F4</a>(shell-&gt;<a class="code hl_variable" href="structShellActor.html#a77c5d4878d9a0867430326a1d63491dc">playerId</a>, (player-&gt;<a class="code hl_variable" href="structPlayer.html#a3c54f7cdfdf596fcb7500e4b56a3340d">characterId</a> * 0x10) + <a class="code hl_define" href="sounds_8h.html#a71288c0bb15b503d4570b441a05013f4">SOUND_ARG_LOAD</a>(0x29, 0x00, 0x80, 0x00));</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> <a class="code hl_function" href="code__80005FD0_8c.html#a3da5a7898fa91355d9cb394860db7904">add_green_shell_in_unexpired_actor_list</a>((<span class="keyword">struct</span> <a class="code hl_struct" href="structActor.html">Actor</a>*)shell - <a class="code hl_variable" href="code__800029B0_8c.html#a37d0e0553a4cd552f52174f4b33b798d">gActorList</a>);</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> }</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> }</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <span class="keywordflow">if</span> (shell-&gt;<a class="code hl_variable" href="structShellActor.html#a62b51240387f83c669e3e279aaecbed8">state</a> == 2) {</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> var_f2 = 8.0f;</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="keywordflow">if</span> (player-&gt;<a class="code hl_variable" href="structPlayer.html#a22da56390c62208e8c75566f83a08e0f">unk_094</a> &gt; 8.0f) {</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> var_f2 = player-&gt;<a class="code hl_variable" href="structPlayer.html#a22da56390c62208e8c75566f83a08e0f">unk_094</a> * 1.2f;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> }</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> somePosVel[0] = 0.0f;</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> somePosVel[1] = 0.0f;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> somePosVel[2] = var_f2;</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <a class="code hl_function" href="math__util_8c.html#a6270d7eb2d38b9c093e61da43b7d51ff">func_802B64C4</a>(somePosVel, player-&gt;<a class="code hl_variable" href="structPlayer.html#a4fafb84477d127ff2a1b74331c904f3f">rotation</a>[1] + player-&gt;<a class="code hl_variable" href="structPlayer.html#a0dae7ee727c1fd1f3d07b2b7231e85cf">unk_0C0</a>);</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[0] = somePosVel[0];</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[1] = somePosVel[1];</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[2] = somePosVel[2];</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> somePosVel[0] = <a class="code hl_function" href="math__util_8c.html#a19ed3bd78fd2d3e2bd0a29f6caf48545">sins</a>(shell-&gt;<a class="code hl_variable" href="structShellActor.html#a10e3cd03ca10c5502ebe7af20829a565">rotAngle</a>) * 6.0f;</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> somePosVel[1] = shell-&gt;<a class="code hl_variable" href="structShellActor.html#a610da60b5b38774fba6b6bb3076fd007">boundingBoxSize</a> - player-&gt;<a class="code hl_variable" href="structPlayer.html#a681f0fac4abe58cf5919dd4c6ac503d0">boundingBoxSize</a>;</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> somePosVel[2] = <a class="code hl_function" href="math__util_8c.html#ae69cbf5c8d4b3b0dba2d7b4d4673689f">coss</a>(shell-&gt;<a class="code hl_variable" href="structShellActor.html#a10e3cd03ca10c5502ebe7af20829a565">rotAngle</a>) * 6.0f;</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <a class="code hl_function" href="math__util_8c.html#ad5bb0138c68b50f119d3cb7966f522b7">mtxf_translate_vec3f_mat3</a>(somePosVel, player-&gt;<a class="code hl_variable" href="structPlayer.html#a28df2c989598022073df6fc2425cbefe">orientationMatrix</a>);</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[0] = player-&gt;<a class="code hl_variable" href="structPlayer.html#aff7447121b2e0bd051e58a276fce7b36">pos</a>[0] + somePosVel[0];</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[1] = player-&gt;<a class="code hl_variable" href="structPlayer.html#aff7447121b2e0bd051e58a276fce7b36">pos</a>[1] + somePosVel[1];</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[2] = player-&gt;<a class="code hl_variable" href="structPlayer.html#aff7447121b2e0bd051e58a276fce7b36">pos</a>[2] + somePosVel[2];</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> }</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> <span class="keywordflow">case</span> <a class="code hl_enumvalue" href="actor__types_8h.html#ac01c8e97d91d8f2968ca1f8d4eb0495ba453f34a714854991280e3f087d9715af">MOVING_SHELL</a>:</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">if</span> (shell-&gt;<a class="code hl_variable" href="structShellActor.html#ac40ddee32f5d1a093578e3f23ed76e0b">parentIndex</a> &gt; 0) {</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#ac40ddee32f5d1a093578e3f23ed76e0b">parentIndex</a> -= 1;</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">if</span> (shell-&gt;<a class="code hl_variable" href="structShellActor.html#ac40ddee32f5d1a093578e3f23ed76e0b">parentIndex</a> == 0) {</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a5368cbbb7b090d3f5abb520ca3ab9bf6">flags</a> &amp;= ~0x1000;</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> }</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> }</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[1] -= 0.5f;</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">if</span> (shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[1] &lt; -2.0f) {</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[1] = -2.0f;</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> }</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> somePos2[0] = shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[0];</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> somePos2[1] = shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[1];</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> somePos2[2] = shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[2];</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[0] += shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[0];</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[1] += shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[1];</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[2] += shell-&gt;<a class="code hl_variable" href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">velocity</a>[2];</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> <a class="code hl_function" href="collision_8c.html#a6cd1b12f0b031e79a7602002f3329fb8">actor_terrain_collision</a>(&amp;shell-&gt;<a class="code hl_variable" href="structShellActor.html#acf7c6324c79136005a8a16b0280862d4">unk30</a>, 4.0f, shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[0], shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[1], shell-&gt;<a class="code hl_variable" href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">pos</a>[2], somePos2[0], somePos2[1], somePos2[2]);</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <a class="code hl_function" href="actors__extended_8c.html#a78e98c146f1f4dd6e3608016486172a4">func_802B4E30</a>((<span class="keyword">struct</span> <a class="code hl_struct" href="structActor.html">Actor</a> *) shell);</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> <span class="keywordflow">if</span> ((shell-&gt;<a class="code hl_variable" href="structActor.html#acd34f66c2555a2b2dba239da10475057">unk30</a>.<a class="code hl_variable" href="structCollision.html#a1f4571abf7b64d0f1e2ee7cf70b63079">surfaceDistance</a>[0] &lt; 0.0f) || (shell-&gt;<a class="code hl_variable" href="structActor.html#acd34f66c2555a2b2dba239da10475057">unk30</a>.<a class="code hl_variable" href="structCollision.html#a1f4571abf7b64d0f1e2ee7cf70b63079">surfaceDistance</a>[1] &lt; 0.0f)) {</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> <a class="code hl_function" href="collision_8c.html#a24c9df6b00fc739e341b6f28b06396e4">shell_collision</a>(&amp;shell-&gt;<a class="code hl_variable" href="structActor.html#acd34f66c2555a2b2dba239da10475057">unk30</a>, shell-&gt;<a class="code hl_variable" href="structActor.html#abb823b9528b91c1bc292f8729803785a">velocity</a>);</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <a class="code hl_function" href="external_8c.html#acb60983213d09ee795e80ca3c8b5975e">func_800C98B8</a>(shell-&gt;<a class="code hl_variable" href="structActor.html#afa1455dbf1a4698584ed8c501439692f">pos</a>, shell-&gt;<a class="code hl_variable" href="structActor.html#abb823b9528b91c1bc292f8729803785a">velocity</a>, <a class="code hl_define" href="sounds_8h.html#a71288c0bb15b503d4570b441a05013f4">SOUND_ARG_LOAD</a>(0x19, 0x00, 0x80, 0x54));</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> shell-&gt;<a class="code hl_variable" href="structActor.html#af49bb0c1202a06dc594529a2e77249c6">flags</a> |= 0x80;</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> }</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <span class="keywordflow">case</span> <a class="code hl_enumvalue" href="actor__types_8h.html#ac01c8e97d91d8f2968ca1f8d4eb0495baa42e974f033d01764e1c170a632c43bc">TRIPLE_GREEN_SHELL</a>:</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> player = &amp;<a class="code hl_variable" href="main_8c.html#a5f24aafa500466dbf1a7154ff7041fc2">gPlayers</a>[shell-&gt;playerId];</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> parent = (<a class="code hl_struct" href="structTripleShellParent.html">TripleShellParent</a> *) &amp;<a class="code hl_variable" href="code__800029B0_8c.html#a37d0e0553a4cd552f52174f4b33b798d">gActorList</a>[shell-&gt;parentIndex];</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> <span class="keywordflow">if</span> (parent-&gt;<a class="code hl_variable" href="structTripleShellParent.html#a4fcf64256c3c06258809ee9a0871f6b6">type</a> != <a class="code hl_enumvalue" href="actor__types_8h.html#a06ad3f803827afd107e7682c8c22d990ad997bebb06b8cc8d826960f077cbef2f">ACTOR_TRIPLE_GREEN_SHELL</a>) {</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> <a class="code hl_function" href="actors_8c.html#a53268aa601911d56424ff08fb3395bcb">destroy_destructable_actor</a>((<span class="keyword">struct</span> <a class="code hl_struct" href="structActor.html">Actor</a> *) shell);</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> shell-&gt;rotAngle += parent-&gt;<a class="code hl_variable" href="structTripleShellParent.html#a31471d3847195ba9618a684764b96043">rotVelocity</a>;</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> somePosVel[0] = <a class="code hl_function" href="math__util_8c.html#a19ed3bd78fd2d3e2bd0a29f6caf48545">sins</a>(shell-&gt;rotAngle) * 8.0f;</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> somePosVel[1] = shell-&gt;<a class="code hl_variable" href="structActor.html#afa5dea9480abaa994c912de779986ef9">boundingBoxSize</a> - player-&gt;<a class="code hl_variable" href="structPlayer.html#a681f0fac4abe58cf5919dd4c6ac503d0">boundingBoxSize</a>;</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> somePosVel[2] = <a class="code hl_function" href="math__util_8c.html#ae69cbf5c8d4b3b0dba2d7b4d4673689f">coss</a>(shell-&gt;rotAngle) * 8.0f;</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> <a class="code hl_function" href="math__util_8c.html#ad5bb0138c68b50f119d3cb7966f522b7">mtxf_translate_vec3f_mat3</a>(somePosVel, player-&gt;<a class="code hl_variable" href="structPlayer.html#a28df2c989598022073df6fc2425cbefe">orientationMatrix</a>);</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> somePos2[0] = shell-&gt;<a class="code hl_variable" href="structActor.html#afa1455dbf1a4698584ed8c501439692f">pos</a>[0];</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> somePos2[1] = shell-&gt;<a class="code hl_variable" href="structActor.html#afa1455dbf1a4698584ed8c501439692f">pos</a>[1];</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> somePos2[2] = shell-&gt;<a class="code hl_variable" href="structActor.html#afa1455dbf1a4698584ed8c501439692f">pos</a>[2];</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> shell-&gt;<a class="code hl_variable" href="structActor.html#afa1455dbf1a4698584ed8c501439692f">pos</a>[0] = player-&gt;<a class="code hl_variable" href="structPlayer.html#aff7447121b2e0bd051e58a276fce7b36">pos</a>[0] + somePosVel[0];</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> shell-&gt;<a class="code hl_variable" href="structActor.html#afa1455dbf1a4698584ed8c501439692f">pos</a>[1] = player-&gt;<a class="code hl_variable" href="structPlayer.html#aff7447121b2e0bd051e58a276fce7b36">pos</a>[1] + somePosVel[1];</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> shell-&gt;<a class="code hl_variable" href="structActor.html#afa1455dbf1a4698584ed8c501439692f">pos</a>[2] = player-&gt;<a class="code hl_variable" href="structPlayer.html#aff7447121b2e0bd051e58a276fce7b36">pos</a>[2] + somePosVel[2];</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> <a class="code hl_function" href="collision_8c.html#a6cd1b12f0b031e79a7602002f3329fb8">actor_terrain_collision</a>(&amp;shell-&gt;<a class="code hl_variable" href="structActor.html#acd34f66c2555a2b2dba239da10475057">unk30</a>, 4.0f, shell-&gt;<a class="code hl_variable" href="structActor.html#afa1455dbf1a4698584ed8c501439692f">pos</a>[0], shell-&gt;<a class="code hl_variable" href="structActor.html#afa1455dbf1a4698584ed8c501439692f">pos</a>[1], shell-&gt;<a class="code hl_variable" href="structActor.html#afa1455dbf1a4698584ed8c501439692f">pos</a>[2], somePos2[0], somePos2[1], somePos2[2]);</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <a class="code hl_function" href="actors__extended_8c.html#a78e98c146f1f4dd6e3608016486172a4">func_802B4E30</a>((<span class="keyword">struct</span> <a class="code hl_struct" href="structActor.html">Actor</a> *) shell);</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> }</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">case</span> <a class="code hl_enumvalue" href="actor__types_8h.html#ac01c8e97d91d8f2968ca1f8d4eb0495ba7277793449f98cde9e41aeef89d77bba">GREEN_SHELL_HIT_A_RACER</a>:</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="comment">// Somehow, this fake match affects stack management up in case 2</span></div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> shell-&gt;<a class="code hl_variable" href="structActor.html#abb823b9528b91c1bc292f8729803785a">velocity</a>[1] -= (0, 0.3f);</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <span class="keywordflow">if</span> (shell-&gt;<a class="code hl_variable" href="structActor.html#abb823b9528b91c1bc292f8729803785a">velocity</a>[1] &lt; -5.0f) {</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> shell-&gt;<a class="code hl_variable" href="structActor.html#abb823b9528b91c1bc292f8729803785a">velocity</a>[1] = -5.0f;</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> }</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> shell-&gt;rotAngle += 0x5B0;</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> shell-&gt;someTimer -= 1;</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> shell-&gt;<a class="code hl_variable" href="structActor.html#afa1455dbf1a4698584ed8c501439692f">pos</a>[1] += shell-&gt;<a class="code hl_variable" href="structActor.html#abb823b9528b91c1bc292f8729803785a">velocity</a>[1];</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">if</span> (shell-&gt;someTimer == 0) {</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> <a class="code hl_function" href="actors_8c.html#a694ec6ef7548b8618aeb35c038d3a9b9">destroy_actor</a>((<span class="keyword">struct</span> <a class="code hl_struct" href="structActor.html">Actor</a> *) shell);</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> }</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">default</span>:</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> }</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span>}</div>
</div>
<div class="ttc" id="aactor__types_8h_html_a06ad3f803827afd107e7682c8c22d990ad997bebb06b8cc8d826960f077cbef2f"><div class="ttname"><a href="actor__types_8h.html#a06ad3f803827afd107e7682c8c22d990ad997bebb06b8cc8d826960f077cbef2f">ACTOR_TRIPLE_GREEN_SHELL</a></div><div class="ttdeci">@ ACTOR_TRIPLE_GREEN_SHELL</div><div class="ttdef"><b>Definition</b> actor_types.h:59</div></div>
<div class="ttc" id="aactor__types_8h_html_ac01c8e97d91d8f2968ca1f8d4eb0495ba453f34a714854991280e3f087d9715af"><div class="ttname"><a href="actor__types_8h.html#ac01c8e97d91d8f2968ca1f8d4eb0495ba453f34a714854991280e3f087d9715af">MOVING_SHELL</a></div><div class="ttdeci">@ MOVING_SHELL</div><div class="ttdef"><b>Definition</b> actor_types.h:95</div></div>
<div class="ttc" id="aactor__types_8h_html_ac01c8e97d91d8f2968ca1f8d4eb0495ba514b7d298fa86789854ef2056f82f7fd"><div class="ttname"><a href="actor__types_8h.html#ac01c8e97d91d8f2968ca1f8d4eb0495ba514b7d298fa86789854ef2056f82f7fd">HELD_SHELL</a></div><div class="ttdeci">@ HELD_SHELL</div><div class="ttdef"><b>Definition</b> actor_types.h:93</div></div>
<div class="ttc" id="aactor__types_8h_html_ac01c8e97d91d8f2968ca1f8d4eb0495ba6bccf5be381532660e62c226008d6382"><div class="ttname"><a href="actor__types_8h.html#ac01c8e97d91d8f2968ca1f8d4eb0495ba6bccf5be381532660e62c226008d6382">RELEASED_SHELL</a></div><div class="ttdeci">@ RELEASED_SHELL</div><div class="ttdef"><b>Definition</b> actor_types.h:94</div></div>
<div class="ttc" id="aactor__types_8h_html_ac01c8e97d91d8f2968ca1f8d4eb0495ba7277793449f98cde9e41aeef89d77bba"><div class="ttname"><a href="actor__types_8h.html#ac01c8e97d91d8f2968ca1f8d4eb0495ba7277793449f98cde9e41aeef89d77bba">GREEN_SHELL_HIT_A_RACER</a></div><div class="ttdeci">@ GREEN_SHELL_HIT_A_RACER</div><div class="ttdef"><b>Definition</b> actor_types.h:98</div></div>
<div class="ttc" id="aactor__types_8h_html_ac01c8e97d91d8f2968ca1f8d4eb0495baa42e974f033d01764e1c170a632c43bc"><div class="ttname"><a href="actor__types_8h.html#ac01c8e97d91d8f2968ca1f8d4eb0495baa42e974f033d01764e1c170a632c43bc">TRIPLE_GREEN_SHELL</a></div><div class="ttdeci">@ TRIPLE_GREEN_SHELL</div><div class="ttdef"><b>Definition</b> actor_types.h:97</div></div>
<div class="ttc" id="aactors_8c_html_a53268aa601911d56424ff08fb3395bcb"><div class="ttname"><a href="actors_8c.html#a53268aa601911d56424ff08fb3395bcb">destroy_destructable_actor</a></div><div class="ttdeci">void destroy_destructable_actor(struct Actor *actor)</div><div class="ttdef"><b>Definition</b> actors.c:1813</div></div>
<div class="ttc" id="aactors_8c_html_a694ec6ef7548b8618aeb35c038d3a9b9"><div class="ttname"><a href="actors_8c.html#a694ec6ef7548b8618aeb35c038d3a9b9">destroy_actor</a></div><div class="ttdeci">void destroy_actor(struct Actor *actor)</div><div class="ttdef"><b>Definition</b> actors.c:1290</div></div>
<div class="ttc" id="aactors_8h_html"><div class="ttname"><a href="actors_8h.html">actors.h</a></div></div>
<div class="ttc" id="aactors__extended_8c_html_a407d30d307b990cf22e979f7180477e5"><div class="ttname"><a href="actors__extended_8c.html#a407d30d307b990cf22e979f7180477e5">copy_collision</a></div><div class="ttdeci">void copy_collision(Collision *src, Collision *dest)</div><div class="ttdef"><b>Definition</b> actors_extended.c:19</div></div>
<div class="ttc" id="aactors__extended_8c_html_a78e98c146f1f4dd6e3608016486172a4"><div class="ttname"><a href="actors__extended_8c.html#a78e98c146f1f4dd6e3608016486172a4">func_802B4E30</a></div><div class="ttdeci">void func_802B4E30(struct Actor *arg0)</div><div class="ttdef"><b>Definition</b> actors_extended.c:962</div></div>
<div class="ttc" id="acode__800029B0_8c_html_a161879cca91eaae1535e6640e78d0ce9"><div class="ttname"><a href="code__800029B0_8c.html#a161879cca91eaae1535e6640e78d0ce9">gCourseMinZ</a></div><div class="ttdeci">s16 gCourseMinZ</div><div class="ttdef"><b>Definition</b> code_800029B0.c:93</div></div>
<div class="ttc" id="acode__800029B0_8c_html_a1b0406ea3ec906cf85496afbfe00e23e"><div class="ttname"><a href="code__800029B0_8c.html#a1b0406ea3ec906cf85496afbfe00e23e">gCourseMaxZ</a></div><div class="ttdeci">s16 gCourseMaxZ</div><div class="ttdef"><b>Definition</b> code_800029B0.c:92</div></div>
<div class="ttc" id="acode__800029B0_8c_html_a2b6aea08cfc79f5869a84f0075561043"><div class="ttname"><a href="code__800029B0_8c.html#a2b6aea08cfc79f5869a84f0075561043">gCourseMinX</a></div><div class="ttdeci">s16 gCourseMinX</div><div class="ttdef"><b>Definition</b> code_800029B0.c:87</div></div>
<div class="ttc" id="acode__800029B0_8c_html_a37d0e0553a4cd552f52174f4b33b798d"><div class="ttname"><a href="code__800029B0_8c.html#a37d0e0553a4cd552f52174f4b33b798d">gActorList</a></div><div class="ttdeci">struct Actor gActorList[ACTOR_LIST_SIZE]</div><div class="ttdef"><b>Definition</b> code_800029B0.c:148</div></div>
<div class="ttc" id="acode__800029B0_8c_html_aa2ee5042f4e7ac743d8b4d48e4e30db8"><div class="ttname"><a href="code__800029B0_8c.html#aa2ee5042f4e7ac743d8b4d48e4e30db8">gCourseMinY</a></div><div class="ttdeci">s16 gCourseMinY</div><div class="ttdef"><b>Definition</b> code_800029B0.c:90</div></div>
<div class="ttc" id="acode__800029B0_8c_html_ad1302749c19d1854717267f35a2d0078"><div class="ttname"><a href="code__800029B0_8c.html#ad1302749c19d1854717267f35a2d0078">gCourseMaxX</a></div><div class="ttdeci">s16 gCourseMaxX</div><div class="ttdef"><b>Definition</b> code_800029B0.c:86</div></div>
<div class="ttc" id="acode__800029B0_8h_html"><div class="ttname"><a href="code__800029B0_8h.html">code_800029B0.h</a></div></div>
<div class="ttc" id="acode__80005FD0_8c_html_a3da5a7898fa91355d9cb394860db7904"><div class="ttname"><a href="code__80005FD0_8c.html#a3da5a7898fa91355d9cb394860db7904">add_green_shell_in_unexpired_actor_list</a></div><div class="ttdeci">s32 add_green_shell_in_unexpired_actor_list(s32 actorIndex)</div><div class="ttdef"><b>Definition</b> code_80005FD0.c:3255</div></div>
<div class="ttc" id="acollision_8c_html_a24c9df6b00fc739e341b6f28b06396e4"><div class="ttname"><a href="collision_8c.html#a24c9df6b00fc739e341b6f28b06396e4">shell_collision</a></div><div class="ttdeci">void shell_collision(Collision *collision, Vec3f velocity)</div><div class="ttdef"><b>Definition</b> collision.c:586</div></div>
<div class="ttc" id="acollision_8c_html_a6527a2135a10909cdf9a1fd731be5628"><div class="ttname"><a href="collision_8c.html#a6527a2135a10909cdf9a1fd731be5628">calculate_surface_height</a></div><div class="ttdeci">f32 calculate_surface_height(f32 x, f32 y, f32 z, u16 index)</div><div class="ttdef"><b>Definition</b> collision.c:519</div></div>
<div class="ttc" id="acollision_8c_html_a6cd1b12f0b031e79a7602002f3329fb8"><div class="ttname"><a href="collision_8c.html#a6cd1b12f0b031e79a7602002f3329fb8">actor_terrain_collision</a></div><div class="ttdeci">u16 actor_terrain_collision(Collision *collision, f32 boundingBoxSize, f32 x1, f32 y1, f32 z1, f32 x2, f32 y2, f32 z2)</div><div class="ttdef"><b>Definition</b> collision.c:1221</div></div>
<div class="ttc" id="acollision_8h_html"><div class="ttname"><a href="collision_8h.html">collision.h</a></div></div>
<div class="ttc" id="acommon__structs_8h_html_a5290523279339ea495248ab3a36cb46e"><div class="ttname"><a href="common__structs_8h.html#a5290523279339ea495248ab3a36cb46e">Vec3f</a></div><div class="ttdeci">f32 Vec3f[3]</div><div class="ttdef"><b>Definition</b> common_structs.h:6</div></div>
<div class="ttc" id="adefines_8h_html"><div class="ttname"><a href="defines_8h.html">defines.h</a></div></div>
<div class="ttc" id="adefines_8h_html_ab30d6efeb8601088397fff50c25c2424"><div class="ttname"><a href="defines_8h.html#ab30d6efeb8601088397fff50c25c2424">PLAYER_HUMAN</a></div><div class="ttdeci">#define PLAYER_HUMAN</div><div class="ttdef"><b>Definition</b> defines.h:101</div></div>
<div class="ttc" id="aexternal_8c_html_a2be9efc97a92e19d02aaee90d676acc1"><div class="ttname"><a href="external_8c.html#a2be9efc97a92e19d02aaee90d676acc1">func_800C9060</a></div><div class="ttdeci">void func_800C9060(u8 playerId, u32 soundBits)</div><div class="ttdef"><b>Definition</b> external.c:2894</div></div>
<div class="ttc" id="aexternal_8c_html_a337fc3ab94ebb3293a85908229303ac8"><div class="ttname"><a href="external_8c.html#a337fc3ab94ebb3293a85908229303ac8">func_800C90F4</a></div><div class="ttdeci">void func_800C90F4(u8 playerId, u32 soundBits)</div><div class="ttdef"><b>Definition</b> external.c:2906</div></div>
<div class="ttc" id="aexternal_8c_html_acb60983213d09ee795e80ca3c8b5975e"><div class="ttname"><a href="external_8c.html#acb60983213d09ee795e80ca3c8b5975e">func_800C98B8</a></div><div class="ttdeci">void func_800C98B8(Vec3f position, Vec3f velocity, u32 soundBits)</div><div class="ttdef"><b>Definition</b> external.c:3049</div></div>
<div class="ttc" id="agreen__shell_2update_8inc_8c_html_a4fd275676bf11ca2e15556db08264a90"><div class="ttname"><a href="green__shell_2update_8inc_8c.html#a4fd275676bf11ca2e15556db08264a90">update_actor_green_shell</a></div><div class="ttdeci">void update_actor_green_shell(struct ShellActor *shell)</div><div class="ttdoc">Updates the green shell actor.</div><div class="ttdef"><b>Definition</b> update.inc.c:12</div></div>
<div class="ttc" id="amacros_8h_html_addf5ec070e9499d36b7f2009ce736076"><div class="ttname"><a href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a></div><div class="ttdeci">#define UNUSED</div><div class="ttdef"><b>Definition</b> macros.h:24</div></div>
<div class="ttc" id="amain_8c_html_a5f24aafa500466dbf1a7154ff7041fc2"><div class="ttname"><a href="main_8c.html#a5f24aafa500466dbf1a7154ff7041fc2">gPlayers</a></div><div class="ttdeci">Player gPlayers[NUM_PLAYERS]</div><div class="ttdef"><b>Definition</b> main.c:73</div></div>
<div class="ttc" id="amain_8c_html_a977a26348d9f8d421d2f927f19d50693"><div class="ttname"><a href="main_8c.html#a977a26348d9f8d421d2f927f19d50693">gControllers</a></div><div class="ttdeci">struct Controller gControllers[NUM_PLAYERS]</div><div class="ttdef"><b>Definition</b> main.c:63</div></div>
<div class="ttc" id="amain_8h_html"><div class="ttname"><a href="main_8h.html">main.h</a></div></div>
<div class="ttc" id="amath__util_8c_html_a19ed3bd78fd2d3e2bd0a29f6caf48545"><div class="ttname"><a href="math__util_8c.html#a19ed3bd78fd2d3e2bd0a29f6caf48545">sins</a></div><div class="ttdeci">f32 sins(u16 arg0)</div><div class="ttdef"><b>Definition</b> math_util.c:1055</div></div>
<div class="ttc" id="amath__util_8c_html_a6270d7eb2d38b9c093e61da43b7d51ff"><div class="ttname"><a href="math__util_8c.html#a6270d7eb2d38b9c093e61da43b7d51ff">func_802B64C4</a></div><div class="ttdeci">void func_802B64C4(Vec3f arg0, s16 arg1)</div><div class="ttdef"><b>Definition</b> math_util.c:606</div></div>
<div class="ttc" id="amath__util_8c_html_ad5bb0138c68b50f119d3cb7966f522b7"><div class="ttname"><a href="math__util_8c.html#ad5bb0138c68b50f119d3cb7966f522b7">mtxf_translate_vec3f_mat3</a></div><div class="ttdeci">void mtxf_translate_vec3f_mat3(Vec3f pos, Mat3 mat)</div><div class="ttdef"><b>Definition</b> math_util.c:572</div></div>
<div class="ttc" id="amath__util_8c_html_ae69cbf5c8d4b3b0dba2d7b4d4673689f"><div class="ttname"><a href="math__util_8c.html#ae69cbf5c8d4b3b0dba2d7b4d4673689f">coss</a></div><div class="ttdeci">f32 coss(u16 arg0)</div><div class="ttdef"><b>Definition</b> math_util.c:1059</div></div>
<div class="ttc" id="aos_8h_html_a3c1de5b3b5a9360fb2104131e6525bdd"><div class="ttname"><a href="os_8h.html#a3c1de5b3b5a9360fb2104131e6525bdd">Z_TRIG</a></div><div class="ttdeci">#define Z_TRIG</div><div class="ttdef"><b>Definition</b> os.h:398</div></div>
<div class="ttc" id="asounds_8h_html_a71288c0bb15b503d4570b441a05013f4"><div class="ttname"><a href="sounds_8h.html#a71288c0bb15b503d4570b441a05013f4">SOUND_ARG_LOAD</a></div><div class="ttdeci">#define SOUND_ARG_LOAD(sound_bank, byte2, byte3, sound_id)</div><div class="ttdef"><b>Definition</b> sounds.h:14</div></div>
<div class="ttc" id="astructActor_html"><div class="ttname"><a href="structActor.html">Actor</a></div><div class="ttdef"><b>Definition</b> actor_types.h:120</div></div>
<div class="ttc" id="astructActor_html_abb823b9528b91c1bc292f8729803785a"><div class="ttname"><a href="structActor.html#abb823b9528b91c1bc292f8729803785a">Actor::velocity</a></div><div class="ttdeci">Vec3f velocity</div><div class="ttdef"><b>Definition</b> actor_types.h:130</div></div>
<div class="ttc" id="astructActor_html_acd34f66c2555a2b2dba239da10475057"><div class="ttname"><a href="structActor.html#acd34f66c2555a2b2dba239da10475057">Actor::unk30</a></div><div class="ttdeci">Collision unk30</div><div class="ttdef"><b>Definition</b> actor_types.h:131</div></div>
<div class="ttc" id="astructActor_html_af49bb0c1202a06dc594529a2e77249c6"><div class="ttname"><a href="structActor.html#af49bb0c1202a06dc594529a2e77249c6">Actor::flags</a></div><div class="ttdeci">s16 flags</div><div class="ttdef"><b>Definition</b> actor_types.h:122</div></div>
<div class="ttc" id="astructActor_html_afa1455dbf1a4698584ed8c501439692f"><div class="ttname"><a href="structActor.html#afa1455dbf1a4698584ed8c501439692f">Actor::pos</a></div><div class="ttdeci">Vec3f pos</div><div class="ttdef"><b>Definition</b> actor_types.h:129</div></div>
<div class="ttc" id="astructActor_html_afa5dea9480abaa994c912de779986ef9"><div class="ttname"><a href="structActor.html#afa5dea9480abaa994c912de779986ef9">Actor::boundingBoxSize</a></div><div class="ttdeci">f32 boundingBoxSize</div><div class="ttdef"><b>Definition</b> actor_types.h:126</div></div>
<div class="ttc" id="astructCollision_html_a1f4571abf7b64d0f1e2ee7cf70b63079"><div class="ttname"><a href="structCollision.html#a1f4571abf7b64d0f1e2ee7cf70b63079">Collision::surfaceDistance</a></div><div class="ttdeci">Vec3f surfaceDistance</div><div class="ttdef"><b>Definition</b> common_structs.h:146</div></div>
<div class="ttc" id="astructCollision_html_ae78e07a65ab659cdf61a1f1ca3149a36"><div class="ttname"><a href="structCollision.html#ae78e07a65ab659cdf61a1f1ca3149a36">Collision::meshIndexZX</a></div><div class="ttdeci">u16 meshIndexZX</div><div class="ttdef"><b>Definition</b> common_structs.h:145</div></div>
<div class="ttc" id="astructController_html"><div class="ttname"><a href="structController.html">Controller</a></div><div class="ttdef"><b>Definition</b> common_structs.h:71</div></div>
<div class="ttc" id="astructController_html_a0328aceb87b07a05b8f8b64ec33e904b"><div class="ttname"><a href="structController.html#a0328aceb87b07a05b8f8b64ec33e904b">Controller::rawStickY</a></div><div class="ttdeci">s16 rawStickY</div><div class="ttdef"><b>Definition</b> common_structs.h:73</div></div>
<div class="ttc" id="astructController_html_af68b8dc9459d69a7dfdf57dabf8dbae5"><div class="ttname"><a href="structController.html#af68b8dc9459d69a7dfdf57dabf8dbae5">Controller::buttonDepressed</a></div><div class="ttdeci">u16 buttonDepressed</div><div class="ttdef"><b>Definition</b> common_structs.h:76</div></div>
<div class="ttc" id="astructPlayer_html"><div class="ttname"><a href="structPlayer.html">Player</a></div><div class="ttdef"><b>Definition</b> common_structs.h:255</div></div>
<div class="ttc" id="astructPlayer_html_a0dae7ee727c1fd1f3d07b2b7231e85cf"><div class="ttname"><a href="structPlayer.html#a0dae7ee727c1fd1f3d07b2b7231e85cf">Player::unk_0C0</a></div><div class="ttdeci">s16 unk_0C0</div><div class="ttdef"><b>Definition</b> common_structs.h:307</div></div>
<div class="ttc" id="astructPlayer_html_a22da56390c62208e8c75566f83a08e0f"><div class="ttname"><a href="structPlayer.html#a22da56390c62208e8c75566f83a08e0f">Player::unk_094</a></div><div class="ttdeci">f32 unk_094</div><div class="ttdef"><b>Definition</b> common_structs.h:292</div></div>
<div class="ttc" id="astructPlayer_html_a28df2c989598022073df6fc2425cbefe"><div class="ttname"><a href="structPlayer.html#a28df2c989598022073df6fc2425cbefe">Player::orientationMatrix</a></div><div class="ttdeci">Mat3 orientationMatrix</div><div class="ttdef"><b>Definition</b> common_structs.h:334</div></div>
<div class="ttc" id="astructPlayer_html_a3c54f7cdfdf596fcb7500e4b56a3340d"><div class="ttname"><a href="structPlayer.html#a3c54f7cdfdf596fcb7500e4b56a3340d">Player::characterId</a></div><div class="ttdeci">u16 characterId</div><div class="ttdef"><b>Definition</b> common_structs.h:362</div></div>
<div class="ttc" id="astructPlayer_html_a4fafb84477d127ff2a1b74331c904f3f"><div class="ttname"><a href="structPlayer.html#a4fafb84477d127ff2a1b74331c904f3f">Player::rotation</a></div><div class="ttdeci">Vec3s rotation</div><div class="ttdef"><b>Definition</b> common_structs.h:269</div></div>
<div class="ttc" id="astructPlayer_html_a649c835eb5117a45758d3ac1946070b4"><div class="ttname"><a href="structPlayer.html#a649c835eb5117a45758d3ac1946070b4">Player::collision</a></div><div class="ttdeci">Collision collision</div><div class="ttdef"><b>Definition</b> common_structs.h:332</div></div>
<div class="ttc" id="astructPlayer_html_a681f0fac4abe58cf5919dd4c6ac503d0"><div class="ttname"><a href="structPlayer.html#a681f0fac4abe58cf5919dd4c6ac503d0">Player::boundingBoxSize</a></div><div class="ttdeci">f32 boundingBoxSize</div><div class="ttdef"><b>Definition</b> common_structs.h:282</div></div>
<div class="ttc" id="astructPlayer_html_a71c4ebed7633cd2330dec792fcf24f1f"><div class="ttname"><a href="structPlayer.html#a71c4ebed7633cd2330dec792fcf24f1f">Player::type</a></div><div class="ttdeci">u16 type</div><div class="ttdef"><b>Definition</b> common_structs.h:256</div></div>
<div class="ttc" id="astructPlayer_html_aff7447121b2e0bd051e58a276fce7b36"><div class="ttname"><a href="structPlayer.html#aff7447121b2e0bd051e58a276fce7b36">Player::pos</a></div><div class="ttdeci">Vec3f pos</div><div class="ttdef"><b>Definition</b> common_structs.h:265</div></div>
<div class="ttc" id="astructShellActor_html"><div class="ttname"><a href="structShellActor.html">ShellActor</a></div><div class="ttdef"><b>Definition</b> actor_types.h:302</div></div>
<div class="ttc" id="astructShellActor_html_a10e3cd03ca10c5502ebe7af20829a565"><div class="ttname"><a href="structShellActor.html#a10e3cd03ca10c5502ebe7af20829a565">ShellActor::rotAngle</a></div><div class="ttdeci">s16 rotAngle</div><div class="ttdef"><b>Definition</b> actor_types.h:318</div></div>
<div class="ttc" id="astructShellActor_html_a1ca761f0cac83459e16cbc22002b4569"><div class="ttname"><a href="structShellActor.html#a1ca761f0cac83459e16cbc22002b4569">ShellActor::rotVelocity</a></div><div class="ttdeci">s16 rotVelocity</div><div class="ttdef"><b>Definition</b> actor_types.h:316</div></div>
<div class="ttc" id="astructShellActor_html_a5368cbbb7b090d3f5abb520ca3ab9bf6"><div class="ttname"><a href="structShellActor.html#a5368cbbb7b090d3f5abb520ca3ab9bf6">ShellActor::flags</a></div><div class="ttdeci">s16 flags</div><div class="ttdef"><b>Definition</b> actor_types.h:304</div></div>
<div class="ttc" id="astructShellActor_html_a610da60b5b38774fba6b6bb3076fd007"><div class="ttname"><a href="structShellActor.html#a610da60b5b38774fba6b6bb3076fd007">ShellActor::boundingBoxSize</a></div><div class="ttdeci">f32 boundingBoxSize</div><div class="ttdef"><b>Definition</b> actor_types.h:315</div></div>
<div class="ttc" id="astructShellActor_html_a62b51240387f83c669e3e279aaecbed8"><div class="ttname"><a href="structShellActor.html#a62b51240387f83c669e3e279aaecbed8">ShellActor::state</a></div><div class="ttdeci">s16 state</div><div class="ttdef"><b>Definition</b> actor_types.h:313</div></div>
<div class="ttc" id="astructShellActor_html_a77c5d4878d9a0867430326a1d63491dc"><div class="ttname"><a href="structShellActor.html#a77c5d4878d9a0867430326a1d63491dc">ShellActor::playerId</a></div><div class="ttdeci">s16 playerId</div><div class="ttdef"><b>Definition</b> actor_types.h:321</div></div>
<div class="ttc" id="astructShellActor_html_a89a884c6ba2b5b022b7dcb5e74d50910"><div class="ttname"><a href="structShellActor.html#a89a884c6ba2b5b022b7dcb5e74d50910">ShellActor::velocity</a></div><div class="ttdeci">Vec3f velocity</div><div class="ttdef"><b>Definition</b> actor_types.h:324</div></div>
<div class="ttc" id="astructShellActor_html_ac40ddee32f5d1a093578e3f23ed76e0b"><div class="ttname"><a href="structShellActor.html#ac40ddee32f5d1a093578e3f23ed76e0b">ShellActor::parentIndex</a></div><div class="ttdeci">s16 parentIndex</div><div class="ttdef"><b>Definition</b> actor_types.h:308</div></div>
<div class="ttc" id="astructShellActor_html_acd41b01d05450b6a241a81907bb4fbb8"><div class="ttname"><a href="structShellActor.html#acd41b01d05450b6a241a81907bb4fbb8">ShellActor::pos</a></div><div class="ttdeci">Vec3f pos</div><div class="ttdef"><b>Definition</b> actor_types.h:323</div></div>
<div class="ttc" id="astructShellActor_html_acf7c6324c79136005a8a16b0280862d4"><div class="ttname"><a href="structShellActor.html#acf7c6324c79136005a8a16b0280862d4">ShellActor::unk30</a></div><div class="ttdeci">Collision unk30</div><div class="ttdef"><b>Definition</b> actor_types.h:325</div></div>
<div class="ttc" id="astructShellActor_html_adaca452aa94770d8d57f99cc1f3b7151"><div class="ttname"><a href="structShellActor.html#adaca452aa94770d8d57f99cc1f3b7151">ShellActor::someTimer</a></div><div class="ttdeci">s16 someTimer</div><div class="ttdef"><b>Definition</b> actor_types.h:309</div></div>
<div class="ttc" id="astructTripleShellParent_html"><div class="ttname"><a href="structTripleShellParent.html">TripleShellParent</a></div><div class="ttdef"><b>Definition</b> actor_types.h:286</div></div>
<div class="ttc" id="astructTripleShellParent_html_a31471d3847195ba9618a684764b96043"><div class="ttname"><a href="structTripleShellParent.html#a31471d3847195ba9618a684764b96043">TripleShellParent::rotVelocity</a></div><div class="ttdeci">s16 rotVelocity</div><div class="ttdef"><b>Definition</b> actor_types.h:293</div></div>
<div class="ttc" id="astructTripleShellParent_html_a4fcf64256c3c06258809ee9a0871f6b6"><div class="ttname"><a href="structTripleShellParent.html#a4fcf64256c3c06258809ee9a0871f6b6">TripleShellParent::type</a></div><div class="ttdeci">s16 type</div><div class="ttdef"><b>Definition</b> actor_types.h:287</div></div>
<div class="ttc" id="aultratypes_8h_html_a5f6906312a689f27d70e9d086649d3fd"><div class="ttname"><a href="ultratypes_8h.html#a5f6906312a689f27d70e9d086649d3fd">f32</a></div><div class="ttdeci">float f32</div><div class="ttdef"><b>Definition</b> ultratypes.h:34</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_520494cf19be961f9d881ed04931ae5b.html">actors</a></li><li class="navelem"><a class="el" href="dir_082d554c8445af69fa49f0d23f20fa3b.html">green_shell</a></li><li class="navelem"><a class="el" href="green__shell_2update_8inc_8c.html">update.inc.c</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.11.0 </li>
</ul>
</div>
</body>
</html>