Character Script External Code: Difference between revisions
From Wolfire Games Wiki
Jump to navigationJump to search
No edit summary |
|||
| Line 19: | Line 19: | ||
== Constants == | == Constants == | ||
<pre style="white-space: pre-wrap;">enum AnimationFlags : uint8;</pre> | <pre style="white-space: pre-wrap;">enum AnimationFlags : uint8 { | ||
<pre style="white-space: pre-wrap;">enum AttackerDirectionType : int;</pre> | _ANM_FROM_START, | ||
<pre style="white-space: pre-wrap;">enum AttackerHeightType : int;</pre> | _ANM_MIRRORED, | ||
<pre style="white-space: pre-wrap;">enum CollisionSides;</pre> | _ANM_MOBILE, | ||
<pre style="white-space: pre-wrap;">enum NavPathFlag;</pre> | _ANM_SUPER_MOBILE, | ||
<pre style="white-space: pre-wrap;">enum SamplePolyFlag;</pre> | _ANM_SWAP, | ||
};</pre> | |||
<pre style="white-space: pre-wrap;">enum AttackerDirectionType : int { | |||
_front, | |||
_left, | |||
_right, | |||
};</pre> | |||
<pre style="white-space: pre-wrap;">enum AttackerHeightType : int { | |||
_high, | |||
_low, | |||
_medium, | |||
};</pre> | |||
<pre style="white-space: pre-wrap;">enum CollisionSides { | |||
DOUBLE_SIDED, | |||
SINGLE_SIDED, | |||
};</pre> | |||
<pre style="white-space: pre-wrap;">enum NavPathFlag { | |||
DT_STRAIGHTPATH_START, | |||
DT_STRAIGHTPATH_END, | |||
DT_STRAIGHTPATH_OFFMESH_CONNECTION, | |||
};</pre> | |||
<pre style="white-space: pre-wrap;">enum SamplePolyFlag { | |||
POLYFLAGS_NONE, | |||
POLYFLAGS_WALK, | |||
POLYFLAGS_SWIM, | |||
POLYFLAGS_DOOR, | |||
POLYFLAGS_JUMP1, | |||
POLYFLAGS_JUMP2, | |||
POLYFLAGS_JUMP3, | |||
POLYFLAGS_JUMP4, | |||
POLYFLAGS_JUMP5, | |||
POLYFLAGS_JUMP_ALL, | |||
POLYFLAGS_DISABLED, | |||
POLYFLAGS_ALL, | |||
};</pre> | |||
== Global Functions == | == Global Functions == | ||
Revision as of 05:21, 4 November 2017
This is a list of the external code that is only available to be used inside a character script - variables, functions, and classes that "magically" exist.
To see a list of external code that is available to all scripts, please see this page - Common Script External Code
This list is pulled from the ~/Documents/Wolfire/Overgrowth/aschar_docs.h file, which is automatically generated by the game.
See this page to find the location for the Wolfire/Overgrowth folder on each OS - How to clear the game's cache
TODO: These can be documented individually, possibly on their own pages
Global Variables
ASCollisions col; // Used to access collision functions
ScriptParams params;
ReactionScriptGetter reaction_getter;
SphereCollision sphere_col; // Stores results of collision functions
MovementObject this_mo;
Constants
enum AnimationFlags : uint8 {
_ANM_FROM_START,
_ANM_MIRRORED,
_ANM_MOBILE,
_ANM_SUPER_MOBILE,
_ANM_SWAP,
};
enum AttackerDirectionType : int {
_front,
_left,
_right,
};
enum AttackerHeightType : int {
_high,
_low,
_medium,
};
enum CollisionSides {
DOUBLE_SIDED,
SINGLE_SIDED,
};
enum NavPathFlag {
DT_STRAIGHTPATH_START,
DT_STRAIGHTPATH_END,
DT_STRAIGHTPATH_OFFMESH_CONNECTION,
};
enum SamplePolyFlag {
POLYFLAGS_NONE,
POLYFLAGS_WALK,
POLYFLAGS_SWIM,
POLYFLAGS_DOOR,
POLYFLAGS_JUMP1,
POLYFLAGS_JUMP2,
POLYFLAGS_JUMP3,
POLYFLAGS_JUMP4,
POLYFLAGS_JUMP5,
POLYFLAGS_JUMP_ALL,
POLYFLAGS_DISABLED,
POLYFLAGS_ALL,
};
Global Functions
float GetAnimationEventTime( string &in anim_path, string &in event_label );
NavPoint GetNavPoint(vec3);
vec3 GetNavPointPos(vec3);
NavPath GetPath(vec3 start, vec3 end);
NavPath GetPath(vec3 start, vec3 end, uint16 include_poly_flags, uint16 exclude_poly_flags);
vec3 LineLineIntersect(vec3 start_a, vec3 end_a, vec3 start_b, vec3 end_b); // Get closest point between two line segments
vec3 NavRaycast(vec3 start, vec3 end);
vec3 NavRaycastSlide(vec3 start, vec3 end, int depth);
Classes
class ASCollisions;
class AttackScriptGetter;
class CollisionPoint;
class NavPath;
class NavPoint;
class ReactionScriptGetter;
class SphereCollision;