public static void FleeHurtDir(BaseContext c) { if (c.AIAgent.IsNavRunning() && NavigateToOperator.NavigateInDirOfBestSample(c, NavPointSampler.SampleCount.Eight, 4f, NavPointSampler.SampleFeatures.RetreatFromDirection, c.AIAgent.GetStats.MinFleeRange, c.AIAgent.GetStats.MaxFleeRange)) { c.SetFact(BaseNpc.Facts.IsFleeing, 1); } }
public static void FleeEnemy(BaseContext c) { if (!c.AIAgent.IsNavRunning() || !NavigateToOperator.NavigateInDirOfBestSample(c, NavPointSampler.SampleCount.Eight, 4f, NavPointSampler.SampleFeatures.RetreatFromTarget, c.AIAgent.GetStats.MinFleeRange, c.AIAgent.GetStats.MaxFleeRange)) { return; } c.SetFact(BaseNpc.Facts.IsFleeing, (byte)1); }
public override void DoExecute(BaseContext c) { object obj; BaseContext baseContext = c; NPCPlayerApex.Facts fact = this.fact; if (this.@value) { obj = 1; } else { obj = null; } baseContext.SetFact(fact, (byte)obj, true, true); }
public override void DoExecute(BaseContext c) { object obj; BaseContext baseContext = c; BaseNpc.Facts fact = this.fact; if (this.@value) { obj = 1; } else { obj = null; } baseContext.SetFact(fact, (byte)obj); }
public override void DoExecute(BaseContext c) { if (c.GetFact(BaseNpc.Facts.CanNotMove) == (byte)1) { c.AIAgent.StopMoving(); c.SetFact(BaseNpc.Facts.PathToTargetStatus, (byte)2); } else { if (!c.AIAgent.IsNavRunning() || c.AIAgent.GetNavAgent.get_pathPending()) { return; } switch (this.Operator) { case NavigateToOperator.OperatorType.EnemyLoc: NavigateToOperator.NavigateToEnemy(c); break; case NavigateToOperator.OperatorType.RandomLoc: NavigateToOperator.NavigateToRandomLoc(c); break; case NavigateToOperator.OperatorType.Spawn: NavigateToOperator.NavigateToSpawn(c); break; case NavigateToOperator.OperatorType.FoodLoc: NavigateToOperator.NavigateToFood(c); break; case NavigateToOperator.OperatorType.FleeEnemy: NavigateToOperator.FleeEnemy(c); break; case NavigateToOperator.OperatorType.FleeHurtDir: NavigateToOperator.FleeHurtDir(c); break; case NavigateToOperator.OperatorType.TopologyPreference: NavigateToOperator.NavigateToTopologyPreference(c); break; } } }
public static void AttackEnemy(BaseContext c, AttackOperator.AttackType type) { if (c.GetFact(BaseNpc.Facts.IsAttackReady) == 0) { return; } BaseCombatEntity enemyNpc = null; if (c.EnemyNpc != null) { enemyNpc = c.EnemyNpc; } if (c.EnemyPlayer != null) { enemyNpc = c.EnemyPlayer; } if (enemyNpc == null) { return; } c.AIAgent.StartAttack(type, enemyNpc); c.SetFact(BaseNpc.Facts.IsAttackReady, 0); }
public static void AttackEnemy(BaseContext c, AttackOperator.AttackType type) { if (c.GetFact(BaseNpc.Facts.IsAttackReady) == (byte)0) { return; } BaseCombatEntity target = (BaseCombatEntity)null; if (Object.op_Inequality((Object)c.EnemyNpc, (Object)null)) { target = (BaseCombatEntity)c.EnemyNpc; } if (Object.op_Inequality((Object)c.EnemyPlayer, (Object)null)) { target = (BaseCombatEntity)c.EnemyPlayer; } if (Object.op_Equality((Object)target, (Object)null)) { return; } c.AIAgent.StartAttack(type, target); c.SetFact(BaseNpc.Facts.IsAttackReady, (byte)0); }
public override void DoExecute(BaseContext c) { c.AIAgent.TargetSpeed = c.AIAgent.ToSpeed(this.value); c.SetFact(BaseNpc.Facts.Speed, (byte)this.value); }
public override void DoExecute(BaseContext c) { c.SetFact(NPCPlayerApex.Facts.BodyState, (byte)this.value, true, false); }
public override void DoExecute(BaseContext c) { c.SetFact(this.fact, this.value ? (byte)1 : (byte)0, true, true); }
public static void Set(BaseContext c, NPCPlayerApex.SpeedEnum speed) { c.AIAgent.TargetSpeed = c.AIAgent.ToSpeed(speed); c.SetFact(NPCPlayerApex.Facts.Speed, (byte)speed, true, true); }