2023-01-14 13:38:58 +01:00
<?xml version="1.0" encoding="UTF-8" ?>
<class name= "GSAISpecializedAgent" inherits= "GSAISteeringAgent" version= "3.11" >
<brief_description >
2023-01-14 14:31:39 +01:00
A base class for a specialized steering agent that updates itself every frame so the user does not have to. All other specialized agents derive from this.
2023-01-14 13:38:58 +01:00
</brief_description>
<description >
2023-01-14 14:31:39 +01:00
A base class for a specialized steering agent that updates itself every frame so the user does not have to. All other specialized agents derive from this.
2023-01-14 13:38:58 +01:00
</description>
<tutorials >
</tutorials>
<methods >
<method name= "_apply_steering" qualifiers= "virtual" >
<return type= "void" />
<argument index= "0" name= "acceleration" type= "GSAITargetAcceleration" />
<argument index= "1" name= "delta" type= "float" />
<description >
2023-01-14 14:31:39 +01:00
Moves the agent's body by target acceleration.
2023-01-14 13:38:58 +01:00
</description>
</method>
<method name= "apply_steering" >
<return type= "void" />
<argument index= "0" name= "acceleration" type= "GSAITargetAcceleration" />
<argument index= "1" name= "delta" type= "float" />
<description >
2023-01-14 14:31:39 +01:00
Moves the agent's body by target acceleration.
2023-01-14 13:38:58 +01:00
</description>
</method>
</methods>
<members >
<member name= "angular_drag_percentage" type= "float" setter= "set_angular_drag_percentage" getter= "get_angular_drag_percentage" default= "0.0" >
2023-01-14 14:31:39 +01:00
The percentage between the current angular velocity and 0 to interpolate by if apply_angular_drag is true. Does not apply to RigidBody and RigidBody2D nodes.
2023-01-14 13:38:58 +01:00
</member>
<member name= "applied_steering" type= "bool" setter= "set_applied_steering" getter= "get_applied_steering" default= "false" >
</member>
<member name= "apply_angular_drag" type= "bool" setter= "set_apply_angular_drag" getter= "get_apply_angular_drag" default= "true" >
2023-01-14 14:31:39 +01:00
If true, interpolates the current angular velocity towards 0 by the angular_drag_percentage value. Does not apply to RigidBody and RigidBody2D nodes.
2023-01-14 13:38:58 +01:00
</member>
<member name= "apply_linear_drag" type= "bool" setter= "set_apply_linear_drag" getter= "get_apply_linear_drag" default= "true" >
2023-01-14 14:31:39 +01:00
If true, interpolates the current linear velocity towards 0 by the linear_drag_percentage value. Does not apply to RigidBody and RigidBody2D nodes.
2023-01-14 13:38:58 +01:00
</member>
<member name= "calculate_velocities" type= "bool" setter= "set_calculate_velocities" getter= "get_calculate_velocities" default= "true" >
2023-01-14 14:31:39 +01:00
If true, calculates linear and angular velocities based on the previous frame. When false, the user must keep those values updated.
2023-01-14 13:38:58 +01:00
</member>
<member name= "last_orientation" type= "float" setter= "set_last_orientation" getter= "get_last_orientation" default= "0.0" >
</member>
<member name= "linear_drag_percentage" type= "float" setter= "set_linear_drag_percentage" getter= "get_linear_drag_percentage" default= "0.0" >
2023-01-14 14:31:39 +01:00
The percentage between the current linear velocity and 0 to interpolate by if apply_linear_drag is true. Does not apply to RigidBody and RigidBody2D nodes.
2023-01-14 13:38:58 +01:00
</member>
</members>
<constants >
</constants>
</class>