dirt-racer/docs/html/classgodot_1_1EnemyCar.html
2024-05-27 13:55:10 +02:00

774 lines
70 KiB
HTML

<!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.9.7"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Rally Rush: godot::EnemyCar Class Reference</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>
<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" />
</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">Rally Rush
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.7 -->
<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" 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');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- 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 id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespacegodot.html">godot</a></li><li class="navelem"><a class="el" href="classgodot_1_1EnemyCar.html">EnemyCar</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-static-methods">Static Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classgodot_1_1EnemyCar-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">godot::EnemyCar Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>The enemy car, inherits <a class="el" href="classgodot_1_1CarPhysics.html" title="Subclass Sandbox for car physics. Uses _integrate_forces and local_velocity to abstract the behaviour...">CarPhysics</a> subclass sandbox and uses a NavigationAgent3D to direct it.
<a href="classgodot_1_1EnemyCar.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="enemy__car_8hpp_source.html">enemy_car.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for godot::EnemyCar:</div>
<div class="dyncontent">
<div class="center">
<img src="classgodot_1_1EnemyCar.png" usemap="#godot::EnemyCar_map" alt=""/>
<map id="godot::EnemyCar_map" name="godot::EnemyCar_map">
<area href="classgodot_1_1CarPhysics.html" title="Subclass Sandbox for car physics. Uses _integrate_forces and local_velocity to abstract the behaviour..." alt="godot::CarPhysics" shape="rect" coords="0,56,114,80"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad34f23e213cfc742d498906aabfb58ca"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#ad34f23e213cfc742d498906aabfb58ca">_enter_tree</a> () override</td></tr>
<tr class="memdesc:ad34f23e213cfc742d498906aabfb58ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Call parent _enter_tree and fetch object references for later use. <br /></td></tr>
<tr class="separator:ad34f23e213cfc742d498906aabfb58ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa746dea04ad942c35a1ec2e5799c9fe5"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#aa746dea04ad942c35a1ec2e5799c9fe5">_process</a> (double delta_time) override</td></tr>
<tr class="memdesc:aa746dea04ad942c35a1ec2e5799c9fe5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update current navigation and acceleration. Recalculate path every recalc_frame_interval frames. Update <a class="el" href="classgodot_1_1CarPhysics.html" title="Subclass Sandbox for car physics. Uses _integrate_forces and local_velocity to abstract the behaviour...">CarPhysics</a> sandbox functions to drive towards next path position. <br /></td></tr>
<tr class="separator:aa746dea04ad942c35a1ec2e5799c9fe5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd6f3c6792ca36a168f9be7007a2191b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#acd6f3c6792ca36a168f9be7007a2191b">damage</a> ()</td></tr>
<tr class="memdesc:acd6f3c6792ca36a168f9be7007a2191b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy this object. <br /></td></tr>
<tr class="separator:acd6f3c6792ca36a168f9be7007a2191b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af705a5dc10dc15cc811da244b763b63a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#af705a5dc10dc15cc811da244b763b63a">start_fleeing</a> ()</td></tr>
<tr class="memdesc:af705a5dc10dc15cc811da244b763b63a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called from <a class="el" href="classgodot_1_1RallyRushGameMode.html" title="Game mode for Rally Rush. Mainly serves as a scorekeeper and patchbay for Observers....">RallyRushGameMode</a> shield pickup observer. Start fleeing from the player. <br /></td></tr>
<tr class="separator:af705a5dc10dc15cc811da244b763b63a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ababbc5a5d8e7dcff48ccfa648e79d361"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#ababbc5a5d8e7dcff48ccfa648e79d361">stop_fleeing</a> ()</td></tr>
<tr class="memdesc:ababbc5a5d8e7dcff48ccfa648e79d361"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called from <a class="el" href="classgodot_1_1RallyRushGameMode.html" title="Game mode for Rally Rush. Mainly serves as a scorekeeper and patchbay for Observers....">RallyRushGameMode</a> shield pickup end observer. Stop fleeing from the player. <br /></td></tr>
<tr class="separator:ababbc5a5d8e7dcff48ccfa648e79d361"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classgodot_1_1CarPhysics"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgodot_1_1CarPhysics')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgodot_1_1CarPhysics.html">godot::CarPhysics</a></td></tr>
<tr class="memitem:aab1079194a18237dda9fa3ace30393c5 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#aab1079194a18237dda9fa3ace30393c5">_enter_tree</a> () override</td></tr>
<tr class="memdesc:aab1079194a18237dda9fa3ace30393c5 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable _integrate_forces, fetch child nodes, and setup contact monitoring. <br /></td></tr>
<tr class="separator:aab1079194a18237dda9fa3ace30393c5 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae00920473d8c0c024865d9884fa9bdb3 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#ae00920473d8c0c024865d9884fa9bdb3">_physics_process</a> (double delta_time) override</td></tr>
<tr class="memdesc:ae00920473d8c0c024865d9884fa9bdb3 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fixed-interval process function. Split into process_oversteer and process_understeer. <br /></td></tr>
<tr class="separator:ae00920473d8c0c024865d9884fa9bdb3 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f154119ecb043c07cd1e3cfaf591bca inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a6f154119ecb043c07cd1e3cfaf591bca">process_oversteer</a> (double delta_time)</td></tr>
<tr class="memdesc:a6f154119ecb043c07cd1e3cfaf591bca inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process the current_oversteer member variable. <br /></td></tr>
<tr class="separator:a6f154119ecb043c07cd1e3cfaf591bca inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46d1d22958970c96262c57b5f8050466 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a46d1d22958970c96262c57b5f8050466">process_understeer</a> (double delta_time)</td></tr>
<tr class="memdesc:a46d1d22958970c96262c57b5f8050466 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process the current_understeer member variable. <br /></td></tr>
<tr class="separator:a46d1d22958970c96262c57b5f8050466 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74643a2cbcca15dda20e06645911a804 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a74643a2cbcca15dda20e06645911a804">_integrate_forces</a> (PhysicsDirectBodyState3D *state) override</td></tr>
<tr class="memdesc:a74643a2cbcca15dda20e06645911a804 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Custom force integrator. Split into integrate_steering, integrate_engine_acceleration and integrate_oversteer. After calling other integrate_* functions, applies local_velocity to state.velocity. <br /></td></tr>
<tr class="separator:a74643a2cbcca15dda20e06645911a804 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dd811c1912c48d05a6b47b8e94f2e10 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a9dd811c1912c48d05a6b47b8e94f2e10">get_local_velocity</a> () const</td></tr>
<tr class="memdesc:a9dd811c1912c48d05a6b47b8e94f2e10 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Public getter for current local velocity. <br /></td></tr>
<tr class="separator:a9dd811c1912c48d05a6b47b8e94f2e10 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea506160c1580ca2cb4fa69b0e1a4547 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#aea506160c1580ca2cb4fa69b0e1a4547">local_to_world_velocity</a> () const</td></tr>
<tr class="memdesc:aea506160c1580ca2cb4fa69b0e1a4547 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">transform the current local_velocity to world coordinates <br /></td></tr>
<tr class="separator:aea506160c1580ca2cb4fa69b0e1a4547 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a121eb8061bd5b5337306bd601ac223 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a6a121eb8061bd5b5337306bd601ac223">world_to_local_velocity</a> () const</td></tr>
<tr class="memdesc:a6a121eb8061bd5b5337306bd601ac223 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">transform the current world velocity to local coordinates <br /></td></tr>
<tr class="separator:a6a121eb8061bd5b5337306bd601ac223 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52b7e71cefacf86ec6ffc2bc4a7b87e1 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a52b7e71cefacf86ec6ffc2bc4a7b87e1">get_current_speed</a> () const</td></tr>
<tr class="memdesc:a52b7e71cefacf86ec6ffc2bc4a7b87e1 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current forward velocity (local_velocity.z) <br /></td></tr>
<tr class="separator:a52b7e71cefacf86ec6ffc2bc4a7b87e1 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a1f5e2d3d903595732013d37c74101c inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a6a1f5e2d3d903595732013d37c74101c">set_target_speed</a> (float target)</td></tr>
<tr class="memdesc:a6a1f5e2d3d903595732013d37c74101c inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The target speed. <br /></td></tr>
<tr class="separator:a6a1f5e2d3d903595732013d37c74101c inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a477e11141ce2a091e60dee1b21e10752 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a477e11141ce2a091e60dee1b21e10752">get_target_speed</a> () const</td></tr>
<tr class="memdesc:a477e11141ce2a091e60dee1b21e10752 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The target speed. <br /></td></tr>
<tr class="separator:a477e11141ce2a091e60dee1b21e10752 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02a51f96cccf952a2fadc3aa0ba3420c inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a02a51f96cccf952a2fadc3aa0ba3420c">set_current_steering</a> (float steering)</td></tr>
<tr class="memdesc:a02a51f96cccf952a2fadc3aa0ba3420c inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current steering input. <br /></td></tr>
<tr class="separator:a02a51f96cccf952a2fadc3aa0ba3420c inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68c2ded0025aabb7e2e789026e01f5bf inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a68c2ded0025aabb7e2e789026e01f5bf">get_current_steering</a> () const</td></tr>
<tr class="memdesc:a68c2ded0025aabb7e2e789026e01f5bf inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current steering input. <br /></td></tr>
<tr class="separator:a68c2ded0025aabb7e2e789026e01f5bf inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f5fdf74f27c24f5c4e456c7a2b70a00 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a8f5fdf74f27c24f5c4e456c7a2b70a00">set_brake</a> (bool value)</td></tr>
<tr class="memdesc:a8f5fdf74f27c24f5c4e456c7a2b70a00 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">True if the hand-brake is currently active. <br /></td></tr>
<tr class="separator:a8f5fdf74f27c24f5c4e456c7a2b70a00 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae678960462991192fa4da6208d05ee66 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#ae678960462991192fa4da6208d05ee66">get_brake</a> () const</td></tr>
<tr class="memdesc:ae678960462991192fa4da6208d05ee66 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">True if the hand-brake is currently active. <br /></td></tr>
<tr class="separator:ae678960462991192fa4da6208d05ee66 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e0a197399e533f96bf2abe9c3eb8683 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a9e0a197399e533f96bf2abe9c3eb8683">set_oversteer_curve</a> (Ref&lt; Curve &gt; curve)</td></tr>
<tr class="memdesc:a9e0a197399e533f96bf2abe9c3eb8683 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base curve used for oversteering. <br /></td></tr>
<tr class="separator:a9e0a197399e533f96bf2abe9c3eb8683 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9da7152996855d64dfa25ca32b26e6b2 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">Ref&lt; Curve &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a9da7152996855d64dfa25ca32b26e6b2">get_oversteer_curve</a> () const</td></tr>
<tr class="memdesc:a9da7152996855d64dfa25ca32b26e6b2 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base curve used for oversteering. <br /></td></tr>
<tr class="separator:a9da7152996855d64dfa25ca32b26e6b2 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abccb4aea4af43bf49989a060ceb42648 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#abccb4aea4af43bf49989a060ceb42648">set_oversteer_curve_x_scale</a> (float scale)</td></tr>
<tr class="memdesc:abccb4aea4af43bf49989a060ceb42648 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The amount of speed represented by x=1 on the oversteer curve. <br /></td></tr>
<tr class="separator:abccb4aea4af43bf49989a060ceb42648 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d3fc74caa36399b5d200d342c54787f inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a6d3fc74caa36399b5d200d342c54787f">get_oversteer_curve_x_scale</a> () const</td></tr>
<tr class="memdesc:a6d3fc74caa36399b5d200d342c54787f inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The amount of speed represented by x=1 on the oversteer curve. <br /></td></tr>
<tr class="separator:a6d3fc74caa36399b5d200d342c54787f inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8847321660a8530bd89eb46a3701bfef inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a8847321660a8530bd89eb46a3701bfef">set_understeer_curve</a> (Ref&lt; Curve &gt; curve)</td></tr>
<tr class="memdesc:a8847321660a8530bd89eb46a3701bfef inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base curve used for understeering. <br /></td></tr>
<tr class="separator:a8847321660a8530bd89eb46a3701bfef inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad93fc262c3410aea4b4da7111253b177 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">Ref&lt; Curve &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#ad93fc262c3410aea4b4da7111253b177">get_understeer_curve</a> () const</td></tr>
<tr class="memdesc:ad93fc262c3410aea4b4da7111253b177 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base curve used for understeering. <br /></td></tr>
<tr class="separator:ad93fc262c3410aea4b4da7111253b177 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c9e70f928259d094de82ed659b6a192 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a7c9e70f928259d094de82ed659b6a192">set_understeer_curve_x_scale</a> (float scale)</td></tr>
<tr class="memdesc:a7c9e70f928259d094de82ed659b6a192 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The amount of speed represented by x=1 on the understeer curve. <br /></td></tr>
<tr class="separator:a7c9e70f928259d094de82ed659b6a192 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ea600abe6c6b30a885db8863596c2c4 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a0ea600abe6c6b30a885db8863596c2c4">get_understeer_curve_x_scale</a> () const</td></tr>
<tr class="memdesc:a0ea600abe6c6b30a885db8863596c2c4 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The amount of speed represented by x=1 on the understeer curve. <br /></td></tr>
<tr class="separator:a0ea600abe6c6b30a885db8863596c2c4 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22459f8ecf08f2104a7949b9f21d8442 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a22459f8ecf08f2104a7949b9f21d8442">set_acceleration</a> (float value)</td></tr>
<tr class="memdesc:a22459f8ecf08f2104a7949b9f21d8442 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base engine acceleration of this car. <br /></td></tr>
<tr class="separator:a22459f8ecf08f2104a7949b9f21d8442 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19c2f2b7c2f0019189c3a3e08cd7e7d9 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a19c2f2b7c2f0019189c3a3e08cd7e7d9">get_acceleration</a> () const</td></tr>
<tr class="memdesc:a19c2f2b7c2f0019189c3a3e08cd7e7d9 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base engine acceleration of this car. <br /></td></tr>
<tr class="separator:a19c2f2b7c2f0019189c3a3e08cd7e7d9 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a939077728363b77dd31e565251a4e842 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a939077728363b77dd31e565251a4e842">set_engine_brake_force</a> (float value)</td></tr>
<tr class="memdesc:a939077728363b77dd31e565251a4e842 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base engine braking force of this car. <br /></td></tr>
<tr class="separator:a939077728363b77dd31e565251a4e842 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5068ffb2f67781d1e83192b6530ac813 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a5068ffb2f67781d1e83192b6530ac813">get_engine_brake_force</a> () const</td></tr>
<tr class="memdesc:a5068ffb2f67781d1e83192b6530ac813 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base engine braking force of this car. <br /></td></tr>
<tr class="separator:a5068ffb2f67781d1e83192b6530ac813 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4681409543ed2f72bfbe83a80acf767 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#af4681409543ed2f72bfbe83a80acf767">set_handbrake_force</a> (float value)</td></tr>
<tr class="memdesc:af4681409543ed2f72bfbe83a80acf767 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The amount of braking force applied by the handbrake. <br /></td></tr>
<tr class="separator:af4681409543ed2f72bfbe83a80acf767 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4fd3cdeb2fff714c4b93d38a98167a9 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#ae4fd3cdeb2fff714c4b93d38a98167a9">get_handbrake_force</a> () const</td></tr>
<tr class="memdesc:ae4fd3cdeb2fff714c4b93d38a98167a9 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The amount of braking force applied by the handbrake. <br /></td></tr>
<tr class="separator:ae4fd3cdeb2fff714c4b93d38a98167a9 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f29a115d3891e5277d14bf36dce555b inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a9f29a115d3891e5277d14bf36dce555b">set_handbrake_oversteer</a> (float value)</td></tr>
<tr class="memdesc:a9f29a115d3891e5277d14bf36dce555b inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The modifier applied to oversteering when the handbrake is active. <br /></td></tr>
<tr class="separator:a9f29a115d3891e5277d14bf36dce555b inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87203f9013f50fddc581403148d23881 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a87203f9013f50fddc581403148d23881">get_handbrake_oversteer</a> () const</td></tr>
<tr class="memdesc:a87203f9013f50fddc581403148d23881 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The modifier applied to oversteering when the handbrake is active. <br /></td></tr>
<tr class="separator:a87203f9013f50fddc581403148d23881 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23124982b36a8d1fe33d6bb1a0a93409 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a23124982b36a8d1fe33d6bb1a0a93409">set_traction_recovery_speed</a> (float value)</td></tr>
<tr class="memdesc:a23124982b36a8d1fe33d6bb1a0a93409 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The speed at which the car will return to regular traction after under- or oversteering. <br /></td></tr>
<tr class="separator:a23124982b36a8d1fe33d6bb1a0a93409 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f0319e3d051f544ec63dbf5f2864c1e inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a5f0319e3d051f544ec63dbf5f2864c1e">get_traction_recovery_speed</a> () const</td></tr>
<tr class="memdesc:a5f0319e3d051f544ec63dbf5f2864c1e inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The speed at which the car will return to regular traction after under- or oversteering. <br /></td></tr>
<tr class="separator:a5f0319e3d051f544ec63dbf5f2864c1e inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a693ad58d92376b95436e8abba40fb3d0 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a693ad58d92376b95436e8abba40fb3d0">set_max_slide_speed</a> (float value)</td></tr>
<tr class="memdesc:a693ad58d92376b95436e8abba40fb3d0 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The maximum sideways speed that can be reached while drifting. <br /></td></tr>
<tr class="separator:a693ad58d92376b95436e8abba40fb3d0 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d745c4c051691861df78c8077f6e5e7 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a4d745c4c051691861df78c8077f6e5e7">get_max_slide_speed</a> () const</td></tr>
<tr class="memdesc:a4d745c4c051691861df78c8077f6e5e7 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The maximum sideways speed that can be reached while drifting. <br /></td></tr>
<tr class="separator:a4d745c4c051691861df78c8077f6e5e7 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5185499766f43f0794b722c1be127124 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a5185499766f43f0794b722c1be127124">set_slide_speed_acceleration</a> (float value)</td></tr>
<tr class="memdesc:a5185499766f43f0794b722c1be127124 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The sideways acceleration applied when drifting. <br /></td></tr>
<tr class="separator:a5185499766f43f0794b722c1be127124 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89fcbdc13edbbfdf0885a8c082b04fc7 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a89fcbdc13edbbfdf0885a8c082b04fc7">get_slide_speed_acceleration</a> () const</td></tr>
<tr class="memdesc:a89fcbdc13edbbfdf0885a8c082b04fc7 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">The sideways acceleration applied when drifting. <br /></td></tr>
<tr class="separator:a89fcbdc13edbbfdf0885a8c082b04fc7 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65899e3d89ea1d8d65810117c5172151 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a65899e3d89ea1d8d65810117c5172151">set_oversteer_speed_penalty</a> (float value)</td></tr>
<tr class="memdesc:a65899e3d89ea1d8d65810117c5172151 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deceleration applied to forward speed when oversteering. <br /></td></tr>
<tr class="separator:a65899e3d89ea1d8d65810117c5172151 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa042fb7e45c7f73cbe8542a1a9013a13 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#aa042fb7e45c7f73cbe8542a1a9013a13">get_oversteer_speed_penalty</a> () const</td></tr>
<tr class="memdesc:aa042fb7e45c7f73cbe8542a1a9013a13 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deceleration applied to forward speed when oversteering. <br /></td></tr>
<tr class="separator:aa042fb7e45c7f73cbe8542a1a9013a13 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afcda38c39675572934847dbc862b52d5 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#afcda38c39675572934847dbc862b52d5">set_oversteer_brake_penalty</a> (float value)</td></tr>
<tr class="memdesc:afcda38c39675572934847dbc862b52d5 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modifier applied to brake force when oversteering. <br /></td></tr>
<tr class="separator:afcda38c39675572934847dbc862b52d5 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54b39812019d416acab89f5a895ba739 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a54b39812019d416acab89f5a895ba739">get_oversteer_brake_penalty</a> () const</td></tr>
<tr class="memdesc:a54b39812019d416acab89f5a895ba739 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modifier applied to brake force when oversteering. <br /></td></tr>
<tr class="separator:a54b39812019d416acab89f5a895ba739 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b4db248594facc717fc3489be14adaf inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a2b4db248594facc717fc3489be14adaf">set_oversteer_steering_speed</a> (float value)</td></tr>
<tr class="memdesc:a2b4db248594facc717fc3489be14adaf inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modifier applied to brake force when oversteering. <br /></td></tr>
<tr class="separator:a2b4db248594facc717fc3489be14adaf inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1cc580aa1e7c7ba0953b4d10be7cb98d inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a1cc580aa1e7c7ba0953b4d10be7cb98d">get_oversteer_steering_speed</a> () const</td></tr>
<tr class="memdesc:a1cc580aa1e7c7ba0953b4d10be7cb98d inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base amount of steering applied while oversteering. <br /></td></tr>
<tr class="separator:a1cc580aa1e7c7ba0953b4d10be7cb98d inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a295e77f85eda0deff025b1bf635f1c50 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a295e77f85eda0deff025b1bf635f1c50">set_slide_resistance</a> (float value)</td></tr>
<tr class="memdesc:a295e77f85eda0deff025b1bf635f1c50 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deceleration applied to sideways velocity. <br /></td></tr>
<tr class="separator:a295e77f85eda0deff025b1bf635f1c50 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2418a6a3515c9b0c4838b0fd18f537bc inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a2418a6a3515c9b0c4838b0fd18f537bc">get_slide_resistance</a> () const</td></tr>
<tr class="memdesc:a2418a6a3515c9b0c4838b0fd18f537bc inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deceleration applied to sideways velocity. <br /></td></tr>
<tr class="separator:a2418a6a3515c9b0c4838b0fd18f537bc inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ed2a0564fb139bec783681742177489 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a2ed2a0564fb139bec783681742177489">set_steering_inward_speed</a> (float value)</td></tr>
<tr class="memdesc:a2ed2a0564fb139bec783681742177489 inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Target amount of velocity towards the centre of a turn while steering. <br /></td></tr>
<tr class="separator:a2ed2a0564fb139bec783681742177489 inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95b5cf589f6d991329f271b092d46d7f inherit pub_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a95b5cf589f6d991329f271b092d46d7f">get_steering_inward_speed</a> () const</td></tr>
<tr class="memdesc:a95b5cf589f6d991329f271b092d46d7f inherit pub_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Target amount of velocity towards the centre of a turn while steering. <br /></td></tr>
<tr class="separator:a95b5cf589f6d991329f271b092d46d7f inherit pub_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a609f1f0f7da5cf8489495cb2b24f5677"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#a609f1f0f7da5cf8489495cb2b24f5677">recalculate_navigation</a> ()</td></tr>
<tr class="memdesc:a609f1f0f7da5cf8489495cb2b24f5677"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate a new path to the player. <br /></td></tr>
<tr class="separator:a609f1f0f7da5cf8489495cb2b24f5677"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classgodot_1_1CarPhysics"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classgodot_1_1CarPhysics')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classgodot_1_1CarPhysics.html">godot::CarPhysics</a></td></tr>
<tr class="memitem:a30d688252b9c7682a98f3d986bdc95f4 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a30d688252b9c7682a98f3d986bdc95f4">integrate_steering</a> (PhysicsDirectBodyState3D *state)</td></tr>
<tr class="memdesc:a30d688252b9c7682a98f3d986bdc95f4 inherit pro_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Integrate steering into angular and local x velocities. As a side-effect this also applies sliding resistance and sliding recovery. Also detects crashes to avoid glitchy behaviour when accelerating into a wall. <br /></td></tr>
<tr class="separator:a30d688252b9c7682a98f3d986bdc95f4 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3255f52b8bef35439a44d8a165003cf7 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a3255f52b8bef35439a44d8a165003cf7">integrate_engine_acceleration</a> (PhysicsDirectBodyState3D *state)</td></tr>
<tr class="memdesc:a3255f52b8bef35439a44d8a165003cf7 inherit pro_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply velocity along local z. Accelerates towards value returned by get_true_target_speed at get_current_acceleration m/s^2. <br /></td></tr>
<tr class="separator:a3255f52b8bef35439a44d8a165003cf7 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a738ef26f0b474d787bdf5c2c008e14e4 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a738ef26f0b474d787bdf5c2c008e14e4">integrate_oversteer</a> (PhysicsDirectBodyState3D *state)</td></tr>
<tr class="memdesc:a738ef26f0b474d787bdf5c2c008e14e4 inherit pro_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Integrate oversteering to local_velocity to allow drifting. <br /></td></tr>
<tr class="separator:a738ef26f0b474d787bdf5c2c008e14e4 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9bd5e0451772c39c23f953bf719b570 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#ae9bd5e0451772c39c23f953bf719b570">on_body_shape_entered</a> (RID body_rid, Node *node, int body_shape_index, int local_shape_index)</td></tr>
<tr class="memdesc:ae9bd5e0451772c39c23f953bf719b570 inherit pro_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Detect that an object started colliding with the wheels. <br /></td></tr>
<tr class="separator:ae9bd5e0451772c39c23f953bf719b570 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad00be124da13c4e0014191a9477017bc inherit pro_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#ad00be124da13c4e0014191a9477017bc">on_body_shape_exited</a> (RID body_rid, Node *node, int body_shape_index, int local_shape_index)</td></tr>
<tr class="memdesc:ad00be124da13c4e0014191a9477017bc inherit pro_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Detect that an object lost contact with the wheels. <br /></td></tr>
<tr class="separator:ad00be124da13c4e0014191a9477017bc inherit pro_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae62724b5685588b9a75072a00f234c87 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#ae62724b5685588b9a75072a00f234c87">evaluate_oversteer_curve</a> (float speed) const</td></tr>
<tr class="memdesc:ae62724b5685588b9a75072a00f234c87 inherit pro_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">evaluate the oversteer curve with a speed, taking *_x_scale into account <br /></td></tr>
<tr class="separator:ae62724b5685588b9a75072a00f234c87 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae64b2eba9028f84b22bdc0401e47af2f inherit pro_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#ae64b2eba9028f84b22bdc0401e47af2f">evaluate_understeer_curve</a> (float speed) const</td></tr>
<tr class="memdesc:ae64b2eba9028f84b22bdc0401e47af2f inherit pro_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">evaluate the understeer curve with a speed, taking *_x_scale into account <br /></td></tr>
<tr class="separator:ae64b2eba9028f84b22bdc0401e47af2f inherit pro_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa80af314fd7635a720916ce3dd8f0b3 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#afa80af314fd7635a720916ce3dd8f0b3">get_true_target_speed</a> () const</td></tr>
<tr class="memdesc:afa80af314fd7635a720916ce3dd8f0b3 inherit pro_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the maximum speed modified by under/oversteer. <br /></td></tr>
<tr class="separator:afa80af314fd7635a720916ce3dd8f0b3 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee48535443eebd8e6a6e65bdb60fe2c6 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#aee48535443eebd8e6a6e65bdb60fe2c6">is_grounded</a> () const</td></tr>
<tr class="memdesc:aee48535443eebd8e6a6e65bdb60fe2c6 inherit pro_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if there is at least one contact with either of the wheels. <br /></td></tr>
<tr class="separator:aee48535443eebd8e6a6e65bdb60fe2c6 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a836909ebbfda1f14886e84580ef027 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1CarPhysics.html#a3a836909ebbfda1f14886e84580ef027">get_current_acceleration</a> () const</td></tr>
<tr class="memdesc:a3a836909ebbfda1f14886e84580ef027 inherit pro_methods_classgodot_1_1CarPhysics"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns acceleration, taking into account braking, throttle, and handbrake. <br /></td></tr>
<tr class="separator:a3a836909ebbfda1f14886e84580ef027 inherit pro_methods_classgodot_1_1CarPhysics"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-methods" name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:a4291eb9882de5ac6e0bdd9be6c73a1a6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#a4291eb9882de5ac6e0bdd9be6c73a1a6">GDCLASS</a> (<a class="el" href="classgodot_1_1EnemyCar.html">EnemyCar</a>, <a class="el" href="classgodot_1_1CarPhysics.html">CarPhysics</a>)</td></tr>
<tr class="separator:a4291eb9882de5ac6e0bdd9be6c73a1a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-static-methods" name="pri-static-methods"></a>
Static Private Member Functions</h2></td></tr>
<tr class="memitem:a194ea73522ba22cca972fde4f6d1e46c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#a194ea73522ba22cca972fde4f6d1e46c">_bind_methods</a> ()</td></tr>
<tr class="memdesc:a194ea73522ba22cca972fde4f6d1e46c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register damage function. <br /></td></tr>
<tr class="separator:a194ea73522ba22cca972fde4f6d1e46c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:ae0cd81c291f4f2fde194a00050c2b08c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#ae0cd81c291f4f2fde194a00050c2b08c">next_recalc</a> {0}</td></tr>
<tr class="memdesc:ae0cd81c291f4f2fde194a00050c2b08c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frame timer to next recalculate_navigation call. <br /></td></tr>
<tr class="separator:ae0cd81c291f4f2fde194a00050c2b08c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8febc75d9897b032d19991c153e24bad"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#a8febc75d9897b032d19991c153e24bad">recalc_frame_interval</a> {60}</td></tr>
<tr class="memdesc:a8febc75d9897b032d19991c153e24bad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interval in frames between calls to recalculate_navigation. <br /></td></tr>
<tr class="separator:a8febc75d9897b032d19991c153e24bad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5919af73ab4db7be96162a5c7d8e68ca"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#a5919af73ab4db7be96162a5c7d8e68ca">turn_target_speed</a> {3.f}</td></tr>
<tr class="memdesc:a5919af73ab4db7be96162a5c7d8e68ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Desired speed when approaching a corner. <br /></td></tr>
<tr class="separator:a5919af73ab4db7be96162a5c7d8e68ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04213c97827cbbc308ed8427c02c5fcb"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#a04213c97827cbbc308ed8427c02c5fcb">max_speed</a> {45.f}</td></tr>
<tr class="memdesc:a04213c97827cbbc308ed8427c02c5fcb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Max speed when driving straight ahead. <br /></td></tr>
<tr class="separator:a04213c97827cbbc308ed8427c02c5fcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8995b45e72753e3c2e4a013d3179d8df"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#a8995b45e72753e3c2e4a013d3179d8df">brake_distance</a> {7.f}</td></tr>
<tr class="memdesc:a8995b45e72753e3c2e4a013d3179d8df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Distance from corners at which to start braking. <br /></td></tr>
<tr class="separator:a8995b45e72753e3c2e4a013d3179d8df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ab3cce28d16de5cff8990be19d64e30"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#a9ab3cce28d16de5cff8990be19d64e30">steering_speed</a> {1.5f}</td></tr>
<tr class="memdesc:a9ab3cce28d16de5cff8990be19d64e30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Speed at which to steer. <br /></td></tr>
<tr class="separator:a9ab3cce28d16de5cff8990be19d64e30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2907a439673e4bcdfc061755c92c6fa"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#ae2907a439673e4bcdfc061755c92c6fa">flee</a> {false}</td></tr>
<tr class="memdesc:ae2907a439673e4bcdfc061755c92c6fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">If true, invert goal direction and drive away from the player. <br /></td></tr>
<tr class="separator:ae2907a439673e4bcdfc061755c92c6fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6394ac893a7802d987b80b82e28c37fc"><td class="memItemLeft" align="right" valign="top">NavigationAgent3D *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#a6394ac893a7802d987b80b82e28c37fc">agent</a> {nullptr}</td></tr>
<tr class="memdesc:a6394ac893a7802d987b80b82e28c37fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Navigation agent child node. <br /></td></tr>
<tr class="separator:a6394ac893a7802d987b80b82e28c37fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af887aaa9e94400d4727b732535514d8e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgodot_1_1CarPlayer.html">CarPlayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgodot_1_1EnemyCar.html#af887aaa9e94400d4727b732535514d8e">player</a> {nullptr}</td></tr>
<tr class="memdesc:af887aaa9e94400d4727b732535514d8e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reference to the player car. <br /></td></tr>
<tr class="separator:af887aaa9e94400d4727b732535514d8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The enemy car, inherits <a class="el" href="classgodot_1_1CarPhysics.html" title="Subclass Sandbox for car physics. Uses _integrate_forces and local_velocity to abstract the behaviour...">CarPhysics</a> subclass sandbox and uses a NavigationAgent3D to direct it. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a194ea73522ba22cca972fde4f6d1e46c" name="a194ea73522ba22cca972fde4f6d1e46c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a194ea73522ba22cca972fde4f6d1e46c">&#9670;&#160;</a></span>_bind_methods()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void godot::EnemyCar::_bind_methods </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Register damage function. </p>
</div>
</div>
<a id="ad34f23e213cfc742d498906aabfb58ca" name="ad34f23e213cfc742d498906aabfb58ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad34f23e213cfc742d498906aabfb58ca">&#9670;&#160;</a></span>_enter_tree()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void godot::EnemyCar::_enter_tree </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Call parent _enter_tree and fetch object references for later use. </p>
<p>Reimplemented from <a class="el" href="classgodot_1_1CarPhysics.html#aab1079194a18237dda9fa3ace30393c5">godot::CarPhysics</a>.</p>
</div>
</div>
<a id="aa746dea04ad942c35a1ec2e5799c9fe5" name="aa746dea04ad942c35a1ec2e5799c9fe5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa746dea04ad942c35a1ec2e5799c9fe5">&#9670;&#160;</a></span>_process()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void godot::EnemyCar::_process </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>delta_time</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Update current navigation and acceleration. Recalculate path every recalc_frame_interval frames. Update <a class="el" href="classgodot_1_1CarPhysics.html" title="Subclass Sandbox for car physics. Uses _integrate_forces and local_velocity to abstract the behaviour...">CarPhysics</a> sandbox functions to drive towards next path position. </p>
</div>
</div>
<a id="acd6f3c6792ca36a168f9be7007a2191b" name="acd6f3c6792ca36a168f9be7007a2191b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd6f3c6792ca36a168f9be7007a2191b">&#9670;&#160;</a></span>damage()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void godot::EnemyCar::damage </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Destroy this object. </p>
</div>
</div>
<a id="a4291eb9882de5ac6e0bdd9be6c73a1a6" name="a4291eb9882de5ac6e0bdd9be6c73a1a6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4291eb9882de5ac6e0bdd9be6c73a1a6">&#9670;&#160;</a></span>GDCLASS()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">godot::EnemyCar::GDCLASS </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classgodot_1_1EnemyCar.html">EnemyCar</a>&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classgodot_1_1CarPhysics.html">CarPhysics</a>&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a609f1f0f7da5cf8489495cb2b24f5677" name="a609f1f0f7da5cf8489495cb2b24f5677"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a609f1f0f7da5cf8489495cb2b24f5677">&#9670;&#160;</a></span>recalculate_navigation()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void godot::EnemyCar::recalculate_navigation </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Calculate a new path to the player. </p>
</div>
</div>
<a id="af705a5dc10dc15cc811da244b763b63a" name="af705a5dc10dc15cc811da244b763b63a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af705a5dc10dc15cc811da244b763b63a">&#9670;&#160;</a></span>start_fleeing()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void godot::EnemyCar::start_fleeing </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Called from <a class="el" href="classgodot_1_1RallyRushGameMode.html" title="Game mode for Rally Rush. Mainly serves as a scorekeeper and patchbay for Observers....">RallyRushGameMode</a> shield pickup observer. Start fleeing from the player. </p>
</div>
</div>
<a id="ababbc5a5d8e7dcff48ccfa648e79d361" name="ababbc5a5d8e7dcff48ccfa648e79d361"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ababbc5a5d8e7dcff48ccfa648e79d361">&#9670;&#160;</a></span>stop_fleeing()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void godot::EnemyCar::stop_fleeing </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Called from <a class="el" href="classgodot_1_1RallyRushGameMode.html" title="Game mode for Rally Rush. Mainly serves as a scorekeeper and patchbay for Observers....">RallyRushGameMode</a> shield pickup end observer. Stop fleeing from the player. </p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a6394ac893a7802d987b80b82e28c37fc" name="a6394ac893a7802d987b80b82e28c37fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6394ac893a7802d987b80b82e28c37fc">&#9670;&#160;</a></span>agent</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">NavigationAgent3D* godot::EnemyCar::agent {nullptr}</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Navigation agent child node. </p>
</div>
</div>
<a id="a8995b45e72753e3c2e4a013d3179d8df" name="a8995b45e72753e3c2e4a013d3179d8df"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8995b45e72753e3c2e4a013d3179d8df">&#9670;&#160;</a></span>brake_distance</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float godot::EnemyCar::brake_distance {7.f}</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Distance from corners at which to start braking. </p>
</div>
</div>
<a id="ae2907a439673e4bcdfc061755c92c6fa" name="ae2907a439673e4bcdfc061755c92c6fa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae2907a439673e4bcdfc061755c92c6fa">&#9670;&#160;</a></span>flee</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool godot::EnemyCar::flee {false}</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>If true, invert goal direction and drive away from the player. </p>
</div>
</div>
<a id="a04213c97827cbbc308ed8427c02c5fcb" name="a04213c97827cbbc308ed8427c02c5fcb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04213c97827cbbc308ed8427c02c5fcb">&#9670;&#160;</a></span>max_speed</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float godot::EnemyCar::max_speed {45.f}</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Max speed when driving straight ahead. </p>
</div>
</div>
<a id="ae0cd81c291f4f2fde194a00050c2b08c" name="ae0cd81c291f4f2fde194a00050c2b08c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae0cd81c291f4f2fde194a00050c2b08c">&#9670;&#160;</a></span>next_recalc</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int godot::EnemyCar::next_recalc {0}</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Frame timer to next recalculate_navigation call. </p>
</div>
</div>
<a id="af887aaa9e94400d4727b732535514d8e" name="af887aaa9e94400d4727b732535514d8e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af887aaa9e94400d4727b732535514d8e">&#9670;&#160;</a></span>player</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classgodot_1_1CarPlayer.html">CarPlayer</a>* godot::EnemyCar::player {nullptr}</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reference to the player car. </p>
</div>
</div>
<a id="a8febc75d9897b032d19991c153e24bad" name="a8febc75d9897b032d19991c153e24bad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8febc75d9897b032d19991c153e24bad">&#9670;&#160;</a></span>recalc_frame_interval</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int godot::EnemyCar::recalc_frame_interval {60}</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Interval in frames between calls to recalculate_navigation. </p>
</div>
</div>
<a id="a9ab3cce28d16de5cff8990be19d64e30" name="a9ab3cce28d16de5cff8990be19d64e30"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9ab3cce28d16de5cff8990be19d64e30">&#9670;&#160;</a></span>steering_speed</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float godot::EnemyCar::steering_speed {1.5f}</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Speed at which to steer. </p>
</div>
</div>
<a id="a5919af73ab4db7be96162a5c7d8e68ca" name="a5919af73ab4db7be96162a5c7d8e68ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5919af73ab4db7be96162a5c7d8e68ca">&#9670;&#160;</a></span>turn_target_speed</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float godot::EnemyCar::turn_target_speed {3.f}</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Desired speed when approaching a corner. </p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/<a class="el" href="enemy__car_8hpp_source.html">enemy_car.hpp</a></li>
<li>src/<a class="el" href="enemy__car_8cpp.html">enemy_car.cpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.7
</small></address>
</body>
</html>