import * as modlib from 'modlib';
function OnSpawnerSpawned_New_Rule_Action(eventInfo: any) {
let myTeam: number = eventInfo.eventPlayer.getTeamId();
console.log(myTeam);
mod.DisplayCustomNotificationMessage(mod.Message("bot is on {} team", myTeam), mod.CustomNotificationSlots.HeaderText,2)
switch(myTeam){
case 112:
//do stuff
break;
case 113:
//do stuff
break;
default:
break;
}
mod.AISetMoveSpeed(mod.EventPlayer(),mod.MoveSpeed.InvestigateRun)
while (mod.And(
mod.GetSoldierState(mod.EventPlayer(),mod.SoldierStateBool.IsAISoldier),
mod.GetSoldierState(mod.EventPlayer(),mod.SoldierStateBool.IsAlive))) {
await mod.Wait(3)
mod.AIMoveToBehavior(mod.EventPlayer(),mod.GetObjectPosition(mod.GetSpatialObject(301)))
await mod.Wait(3)
mod.AIMoveToBehavior(mod.EventPlayer(),mod.GetObjectPosition(mod.GetSpatialObject(303)))
}
}
function OnSpawnerSpawned_New_Rule(conditionState: any, eventInfo: any) {
let newState = true;
if (!conditionState.update(newState)) {
return;
}
OnSpawnerSpawned_New_Rule_Action(eventInfo);
}
function OnGameModeStarted_New_Rule_Action() {
await mod.Wait(5)
mod.SpawnAIFromAISpawner(mod.GetSpawner(112),mod.GetTeam(2))
}
function OnGameModeStarted_New_Rule(conditionState: any) {
let newState = true;
if (!conditionState.update(newState)) {
return;
}
OnGameModeStarted_New_Rule_Action();
}
function OnPlayerDeployed_New_Rule_Condition(eventInfo: any): boolean {
const newState = mod.Not(mod.GetSoldierState(mod.EventPlayer(),mod.SoldierStateBool.IsAISoldier));
return newState;
}
function OnPlayerDeployed_New_Rule_Action(eventInfo: any) {
mod.SetTeam(mod.EventPlayer(),mod.GetTeam(1))
}
function OnPlayerDeployed_New_Rule(conditionState: any, eventInfo: any) {
let newState = OnPlayerDeployed_New_Rule_Condition(eventInfo);
if (!conditionState.update(newState)) {
return;
}
OnPlayerDeployed_New_Rule_Action(eventInfo);
}
function OnPlayerDied_New_Rule_Condition(eventInfo: any): boolean {
const newState = mod.GetSoldierState(mod.EventPlayer(),mod.SoldierStateBool.IsAISoldier);
return newState;
}
function OnPlayerDied_New_Rule_Action(eventInfo: any) {
if (mod.GetSoldierState(mod.EventPlayer(),mod.SoldierStateBool.IsAISoldier)) {
await mod.Wait(5)
mod.SpawnAIFromAISpawner(mod.GetSpawner(112),mod.GetTeam(2))
}
}
function OnPlayerDied_New_Rule(conditionState: any, eventInfo: any) {
let newState = OnPlayerDied_New_Rule_Condition(eventInfo);
if (!conditionState.update(newState)) {
return;
}
OnPlayerDied_New_Rule_Action(eventInfo);
}
// global vars
// player vars
// team vars
// capture point vars
// mcom vars
// vehicle vars
export function OnSpawnerSpawned(eventPlayer: mod.Player, eventSpawner: mod.Spawner) {
const eventInfo = {eventPlayer, eventSpawner};
let eventNum = 0;
OnSpawnerSpawned_New_Rule(modlib.getPlayerCondition(eventPlayer, eventNum++), eventInfo);
}
export function OnGameModeStarted() {
const eventInfo = {};
let eventNum = 0;
OnGameModeStarted_New_Rule(modlib.getGlobalCondition(eventNum++));
}
export function OnPlayerDeployed(eventPlayer: mod.Player) {
const eventInfo = {eventPlayer};
let eventNum = 1;
OnPlayerDeployed_New_Rule(modlib.getPlayerCondition(eventPlayer, eventNum++), eventInfo);
}
export function OnPlayerDied(eventPlayer: mod.Player, eventOtherPlayer: mod.Player, eventDeathType: mod.DeathType, eventWeaponUnlock: mod.WeaponUnlock) {
const eventInfo = {eventPlayer, eventOtherPlayer, eventDeathType, eventWeaponUnlock};
let eventNum = 2;
OnPlayerDied_New_Rule(modlib.getPlayerCondition(eventPlayer, eventNum++), eventInfo);
}
// Strings content - add the following to your strings file:
{
"s0": "MoveSpeed",
"s1": "InvestigateRun",
"s2": "SoldierStateBool",
"s3": "IsAISoldier",
"s4": "IsAlive"
}