|
void | InitMentalStateManager () |
|
void | InitShipCommandManager () |
|
| HumanAIController (Character c) |
|
override void | Update (float deltaTime) |
|
void | HandleRelocation (Item item) |
|
bool | FindSuitableContainer (Item containableItem, out Item suitableContainer) |
|
override void | OnHealed (Character healer, float healAmount) |
|
override void | OnAttacked (Character attacker, AttackResult attackResult) |
|
void | AddCombatObjective (AIObjectiveCombat.CombatMode mode, Character target, float delay=0, Func< AIObjective, bool > abortCondition=null, Action onAbort=null, Action onCompleted=null, bool allowHoldFire=false, bool speakWarnings=false) |
|
void | SetOrder (Order order, bool speak=true) |
|
AIObjective | SetForcedOrder (Order order) |
|
void | ClearForcedOrder () |
|
override void | SelectTarget (AITarget target) |
|
override void | Reset () |
|
override bool | Escape (float deltaTime) |
|
bool | AllowCampaignInteraction () |
|
bool | NeedsDivingGear (Hull hull, out bool needsSuit) |
|
void | AskToRecalculateHullSafety (Hull hull) |
|
float | GetHullSafety (Hull hull, Character character, IEnumerable< Hull > visibleHulls=null) |
|
bool | IsInHostileFaction () |
|
bool | IsTrueForAnyCrewMember (Func< Character, bool > predicate, bool onlyActive=true, bool onlyConnectedSubs=false) |
| Including the player characters in the same team.
|
|
bool | IsItemOperatedByAnother (ItemComponent target, out Character other) |
|
bool | IsItemRepairedByAnother (Item target, out Character other) |
|
bool | IsFriendly (Character other, bool onlySameTeam=false) |
|
bool | IsTrueForAnyBotInTheCrew (Func< HumanAIController, bool > predicate) |
|
bool | IsTrueForAllBotsInTheCrew (Func< HumanAIController, bool > predicate) |
|
int | CountBotsInTheCrew (Func< HumanAIController, bool > predicate=null) |
|
bool | HasValidPath (bool requireNonDirty=true, bool requireUnfinished=true, Func< WayPoint, bool > nodePredicate=null) |
| Is the current path valid, using the provided parameters.
|
|
| AIController (Character c) |
|
void | FaceTarget (ISpatialEntity target) |
|
virtual bool | SteerThroughGap (Structure wall, WallSection section, Vector2 targetWorldPos, float deltaTime) |
|
virtual bool | SteerThroughGap (Gap gap, Vector2 targetWorldPos, float deltaTime, float maxDistance=-1) |
|
bool | CanPassThroughHole (Structure wall, int sectionIndex, int requiredHoleCount) |
|
bool | TakeItem (Item item, CharacterInventory targetInventory, bool equip, bool wear=false, bool dropOtherIfCannotMove=true, bool allowSwapping=false, bool storeUnequipped=false, IEnumerable< Identifier > targetTags=null) |
|
void | UnequipEmptyItems (Item parentItem, bool avoidDroppingInSea=true) |
|
void | UnequipContainedItems (Item parentItem, Func< Item, bool > predicate=null, bool avoidDroppingInSea=true, int? unequipMax=null) |
|
void | ReequipUnequipped () |
|
bool | Escape (float deltaTime) |
|
void | ResetEscape () |
|
|
static bool | FindSuitableContainer (Character character, Item containableItem, List< Item > ignoredItems, ref int itemIndex, out Item suitableContainer) |
|
static bool | IsBallastFloraNoticeable (Character character, Hull hull) |
|
static void | ReportProblem (Character reporter, Order order, Hull targetHull=null) |
|
static bool | HasDivingGear (Character character, float conditionPercentage=0, bool requireOxygenTank=true) |
|
static bool | HasDivingSuit (Character character, float conditionPercentage=0, bool requireOxygenTank=true, bool requireSuitablePressureProtection=true) |
| Check whether the character has a diving suit in usable condition, suitable pressure protection for the depth, plus some oxygen.
|
|
static bool | HasDivingMask (Character character, float conditionPercentage=0, bool requireOxygenTank=true) |
| Check whether the character has a diving mask in usable condition plus some oxygen.
|
|
static bool | HasItem (Character character, Identifier tagOrIdentifier, out IEnumerable< Item > items, Identifier containedTag=default, float conditionPercentage=0, bool requireEquipped=false, bool recursive=true, Func< Item, bool > predicate=null) |
| Note: uses a single list for matching items. The item is reused each time when the method is called. So if you use the method twice, and then refer to the first items, you'll actually get the second. To solve this, create a copy of the collection or change the code so that you first handle the first items and only after that query for the next items.
|
|
static void | StructureDamaged (Structure structure, float damageAmount, Character character) |
|
static void | ItemTaken (Item item, Character thief) |
|
static void | ApplyStealingReputationLoss (Item item) |
|
static void | PropagateHullSafety (Character character, Hull hull) |
| Updates the hull safety for all ai characters in the team. The idea is that the crew communicates (magically) via radio about the threats. The safety levels need to be calculated for each bot individually, because the formula takes into account things like current orders. There's now a cached value per each hull, which should prevent too frequent calculations.
|
|
static void | RefreshTargets (Character character, Order order, Hull hull) |
|
static void | RemoveTargets< T1, T2 > (Character caller, T2 target) |
|
static float | GetHullSafety (Hull hull, IEnumerable< Hull > visibleHulls, Character character, bool ignoreWater=false, bool ignoreOxygen=false, bool ignoreFire=false, bool ignoreEnemies=false) |
|
static bool | IsFriendly (Character me, Character other, bool onlySameTeam=false) |
|
static bool | IsActive (Character c) |
|
static bool | IsTrueForAllBotsInTheCrew (Character character, Func< HumanAIController, bool > predicate) |
|
static bool | IsTrueForAnyBotInTheCrew (Character character, Func< HumanAIController, bool > predicate) |
|
static int | CountBotsInTheCrew (Character character, Func< HumanAIController, bool > predicate=null) |
|
static bool | IsItemTargetedBySomeone (ItemComponent target, CharacterTeamType team, out Character operatingCharacter) |
|
static void | UnequipEmptyItems (Character character, Item parentItem, bool avoidDroppingInSea=true) |
|
static void | UnequipContainedItems (Character character, Item parentItem, Func< Item, bool > predicate, bool avoidDroppingInSea=true, int? unequipMax=null) |
|
|
float | SortTimer [get, set] |
|
float | Hearing = 1.0f [get, set] |
| Affects how far the character can hear sounds created by AI targets with the tag ProvocativeToHumanAI. Used as a multiplier on the sound range of the target, e.g. a value of 0.5 would mean a target with a sound range of 1000 would need to be within 500 units for this character to hear it. Only affects the "fight intruders" objective, which makes the character go and inspect noises.
|
|
float | ReportRange = float.PositiveInfinity [get, set] |
| How far other characters can hear reports done by this character (e.g. reports for fires, intruders). Defaults to infinity.
|
|
float | FindWeaponsRange = float.PositiveInfinity [get, set] |
| How far the character can seek new weapons from.
|
|
float | AimSpeed [get, set] |
|
float | AimAccuracy [get, set] |
|
bool | UseOutsideWaypoints [get] |
| Waypoints that are not linked to a sub (e.g. main path).
|
|
IndoorsSteeringManager | PathSteering [get] |
|
HumanoidAnimController | AnimController [get] |
|
AIObjectiveManager | ObjectiveManager [get] |
|
float | CurrentHullSafety = 100 [get] |
|
MentalStateManager | MentalStateManager [get] |
|
override bool | IsMentallyUnstable [get] |
|
ShipCommandManager | ShipCommandManager [get] |
|
AITarget | SelectedAiTarget [get, protected set] |
|
SteeringManager | SteeringManager [get] |
|
Vector2 | Steering [get, set] |
|
Vector2 | SimPosition [get] |
|
Vector2 | WorldPosition [get] |
|
Vector2 | Velocity [get] |
|
virtual CanEnterSubmarine | CanEnterSubmarine [get] |
|
virtual bool | CanFlip [get] |
|
virtual bool | IsMentallyUnstable [get] |
|
IEnumerable< Hull > | VisibleHulls [get] |
| Returns hulls that are visible to the character, including the current hull. Note that this is not an accurate visibility check, it only checks for open gaps between the adjacent and linked hulls.
|
|
bool | IsCurrentPathNullOrUnreachable [get] |
|
bool | IsCurrentPathUnreachable [get] |
|
bool | IsCurrentPathFinished [get] |
|
bool | IsSteeringThroughGap [get, protected set] |
|
bool | IsTryingToSteerThroughGap [get, protected set] |
|
Gap | EscapeTarget [get] |
|