<?xml version="1.0" encoding="UTF-8" ?> <class name="GSAISpecializedAgent" inherits="GSAISteeringAgent" version="4.2"> <brief_description> 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. </brief_description> <description> 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. </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> Moves the agent's body by target acceleration. </description> </method> <method name="apply_steering"> <return type="void" /> <argument index="0" name="acceleration" type="GSAITargetAcceleration" /> <argument index="1" name="delta" type="float" /> <description> Moves the agent's body by target acceleration. </description> </method> </methods> <members> <member name="angular_drag_percentage" type="float" setter="set_angular_drag_percentage" getter="get_angular_drag_percentage" default="0.0"> 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. </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"> If true, interpolates the current angular velocity towards 0 by the angular_drag_percentage value. Does not apply to RigidBody and RigidBody2D nodes. </member> <member name="apply_linear_drag" type="bool" setter="set_apply_linear_drag" getter="get_apply_linear_drag" default="true"> If true, interpolates the current linear velocity towards 0 by the linear_drag_percentage value. Does not apply to RigidBody and RigidBody2D nodes. </member> <member name="calculate_velocities" type="bool" setter="set_calculate_velocities" getter="get_calculate_velocities" default="true"> If true, calculates linear and angular velocities based on the previous frame. When false, the user must keep those values updated. </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"> 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. </member> </members> <constants> </constants> </class>