/// <summary>places the specified squad on the map.</summary> public void ai_place(IAiActorDefinition ai, int value) { var toSpawn = value; if (ai is ScenarioTag.AiSquadDefinition squad) { if (toSpawn == 0) { toSpawn = squad.SpawnMin; } toSpawn = Math.Min(toSpawn, squad.StartingLocations.Length); for (int i = 0; i < toSpawn; i++) { var loc = squad.StartingLocations[i]; var entity = this.scene.EntityCreator.FromSquadStartingLocation(loc); this.scene.AddEntity(entity); } } else if (ai is ScenarioTag.AiSquadDefinition.StartingLocation loc) { this.scene.EntityCreator.FromSquadStartingLocation(loc); } else if (ai is ScenarioTag.AiSquadGroupDefinition group) { //? } else { return; } }
/// <summary>returns the unit/object corresponding to the given actor</summary> public IUnit ai_get_unit(IAiActorDefinition ai) { if (ai is ScenarioTag.AiSquadDefinition squad) { if (squad.StartingLocations.Length == 1) { return(squad.StartingLocations[0].Actor); } } else if (ai is ScenarioTag.AiSquadDefinition.StartingLocation loc) { return(loc.Actor); } return(default(IUnit)); }
/// <summary>erases the specified encounter and/or squad.</summary> public void ai_erase(IAiActorDefinition ai) { }
/// <summary>if TRUE, forces all actors to completely disregard the specified units, otherwise lets them acknowledge the units again</summary> public void ai_disregard(IAiActorDefinition actor, bool boolean) { }
/// <summary>Returns the highest integer combat status in the given squad-group/squad/actor</summary> public short ai_combat_status(IAiActorDefinition ai) { return(default(short)); }
/// <summary>makes a group of actors braindead, or restores them to life (in their initial state)</summary> public void ai_braindead(IAiActorDefinition ai, bool boolean) { }
/// <summary>Returns the vehicle that was spawned at the given starting location.</summary> public IVehicle ai_vehicle_get_from_starting_location(IAiActorDefinition ai) { return(default(IVehicle)); }
/// <summary>forces a group of actors to start or stop berserking</summary> public void ai_berserk(IAiActorDefinition ai, bool boolean) { }
/// <summary>return the current strength (average body vitality from 0-1) of the specified encounter and/or squad.</summary> public float ai_strength(IAiActorDefinition ai) { return(default(float)); }
/// <summary>attaches the specified list of units to the specified encounter.</summary> public void ai_attach_units(IUnit unit, IAiActorDefinition ai) { }
/// <summary>Takes the squad or squad group (arg1) and gives it the order (arg3) in zone (arg2). Use the zone_name/order_name format</summary> public void ai_set_orders(IAiActorDefinition ai, IAiOrders ai_orders) { }
/// <summary>enables or disables hearing for actors in the specified encounter.</summary> public void ai_set_deaf(IAiActorDefinition ai, bool boolean) { }
/// <summary>enables or disables sight for actors in the specified encounter.</summary> public void ai_set_blind(IAiActorDefinition ai, bool boolean) { }
/// <summary>Turn on active camoflage on actor/squad/squad-group</summary> public void ai_set_active_camo(IAiActorDefinition ai, bool boolean) { }
/// <summary>Start the named scene, with the named command script on the named set of squads</summary> public bool ai_scene(string /*id*/ string_id, IScriptMethodReference ai_command_script, IAiActorDefinition ai, IAiActorDefinition ai1) { return(default(bool)); }
/// <summary>the given group of actors is snapped into a vehicle, in the substring-specified seats (e.g. passenger for pelican)... does not interrupt any actors who are already going to vehicles</summary> public void ai_vehicle_enter_immediate(IAiActorDefinition ai, IUnit unit, /*VehicleSeat*/ string seat = null) { }
/// <summary>tells a group of actors to get out of any vehicles that they are in</summary> public void ai_vehicle_exit(IAiActorDefinition ai) { }
/// <summary>Turn on/off combat suppression on actor/squad/squad-group</summary> public void ai_suppress_combat(IAiActorDefinition ai, bool boolean) { }
/// <summary>Returns the vehicle that the given actor is in.</summary> public IVehicle ai_vehicle_get(IAiActorDefinition ai) { return(default(IVehicle)); }
/// <summary>return the number of swarm actors in the specified encounter and/or squad.</summary> public short ai_swarm_count(IAiActorDefinition ai) { return(default(short)); }
/// <summary>Returns true if the ai's units are ALL vitality pinned (see object_vitality_pinned)</summary> public bool ai_vitality_pinned(IAiActorDefinition ai) { return(default(bool)); }
/// <summary>teleports a group of actors to the starting locations of their current squad(s) if they are currently outside the world.</summary> public void ai_teleport_to_starting_location_if_outside_bsp(IAiActorDefinition ai) { }
/// <summary>AI cannot die from damage (as opposed to by scripting)</summary> public void ai_cannot_die(IAiActorDefinition ai, bool boolean) { }
/// <summary>Tests the named trigger on the named squad</summary> public bool ai_trigger_test(string value, IAiActorDefinition ai) { return(default(bool)); }
/// <summary>enables or disables automatic garbage collection for actors in the specified encounter and/or squad.</summary> public void ai_disposable(IAiActorDefinition ai, bool boolean) { }
/// <summary>tells a group of actors to get into a vehicle, in the substring-specified seats (e.g. passenger for pelican)... does not interrupt any actors who are already going to vehicles</summary> public void ai_vehicle_enter(IAiActorDefinition ai) { }
/// <summary>Instructs the ai in the given squad to get in all their vehicles</summary> public void ai_enter_squad_vehicles(IAiActorDefinition ai) { }
/// <summary>tells a group of actors to get into a vehicle, in the substring-specified seats (e.g. passenger for pelican)... does not interrupt any actors who are already going to vehicles</summary> public void ai_vehicle_enter(IAiActorDefinition ai, IUnit unit, /*VehicleSeat*/ string unit_seat_mapping = null) { }
/// <summary>return the number of actors that are fighting in a squad or squad_group</summary> public short ai_fighting_count(IAiActorDefinition ai) { return(default(short)); }
/// <summary>tells a group of actors to get into a vehicle... does not interrupt any actors who are already going to vehicles</summary> public void ai_vehicle_enter(IAiActorDefinition ai, /*VehicleSeat*/ string unit) { }