void OnEntitySpawned(CH47HelicopterAIController ch47) { if (!configData.Alerts.CH47) { return; } if (ch47 == null) { return; } var srcPos = ch47.transform.position; timer.Once(1f, () => { var destPos = ch47.GetMoveTarget(); string msg = Lang("CH47", null, GetLocation(srcPos, null, null), GetLocationDest(destPos)); Server.Broadcast(msg); if (configData.Misc.LogToConsole) { Puts(msg); } if (configData.Misc.LogToFile) { LogToFile("log", $"[{DateTime.Now.ToString("HH:mm:ss")}] {msg}", this); } }); }
private void TryDropCrate(CH47HelicopterAIController chinook) { float randomtime = UnityEngine.Random.Range(configData.minTime, configData.maxTime); timer.Once(randomtime, () => { if (chinook.IsDestroyed || chinook == null) { return; } if (chinook.CanDropCrate() || blockedChinooks.Contains(chinook)) { if ((configData.checkWater && !AboveWater(chinook.transform.position)) || !configData.checkWater) { if ((configData.checkMonument && !AboveMonument(chinook.transform.position)) || !configData.checkMonument) { if (BasePlayer.activePlayerList.Count >= configData.minPlayers) { chinook.DropCrate(); } if (chinook.numCrates == 0) { if (blockedChinooks.Contains(chinook)) { blockedChinooks.Remove(chinook); } return; } } } TryDropCrate(chinook); } }); }
private object CanHelicopterDropCrate(CH47HelicopterAIController chinook) { if (configData.blockFP && blockedChinooks.Contains(chinook)) { return(false); } return(null); }
void OnEntitySpawned(BaseEntity entity) { if (entity is CH47HelicopterAIController) { CH47HelicopterAIController chinook = entity as CH47HelicopterAIController; TryDropCrate(chinook); } }
private void OnEntitySpawned(CH47HelicopterAIController chinook) { if (chinook == null) { return; } if (chinook.landingTarget != Vector3.zero) { return; } timer.Once(configData.spawnedDelay, () => TryDropCrate(chinook)); }
public override StateStatus StateThink(float delta) { Vector3 orbitCenter = GetOrbitCenter(); CH47HelicopterAIController entity = brain.GetEntity(); Vector3 position = entity.GetPosition(); Vector3 vector = Vector3Ex.Direction2D(orbitCenter, position); Vector3 vector2 = Vector3.Cross(Vector3.up, vector); float num = ((Vector3.Dot(Vector3.Cross(entity.transform.right, Vector3.up), vector2) < 0f) ? (-1f) : 1f); float num2 = 75f; Vector3 normalized = (-vector + vector2 * num * 0.6f).normalized; Vector3 vector3 = orbitCenter + normalized * num2; entity.SetMoveTarget(vector3); entity.SetAimDirection(Vector3Ex.Direction2D(vector3, position)); base.StateThink(delta); return(StateStatus.Running); }
public void Call() { CH47HelicopterAIController component = GameManager.server.CreateEntity(heliPrefab.resourcePath).GetComponent <CH47HelicopterAIController>(); if ((bool)component) { Vector3 size = TerrainMeta.Size; CH47LandingZone closest = CH47LandingZone.GetClosest(base.transform.position); Vector3 zero = Vector3.zero; zero.y = closest.transform.position.y; Vector3 vector = Vector3Ex.Direction2D(closest.transform.position, zero); Vector3 position = closest.transform.position + vector * startDist; position.y = closest.transform.position.y; component.transform.position = position; component.SetLandingTarget(closest.transform.position); component.Spawn(); } }
void OnEntitySpawned(CH47HelicopterAIController ch47) { if (!configData.alerts.ch47) { return; } timer.Once(1.5f, () => { if (ch47 == null) { return; } if (configData.misc.hideRigCrates && ch47.ShouldLand()) { return; } SendMsg(Lang("CH47", null, GetLocation(ch47.transform.position, null, null), GetLocationDest(ch47.GetMoveTarget()))); }); }
public void Call() { CH47HelicopterAIController component = (CH47HelicopterAIController)((Component)GameManager.server.CreateEntity(this.heliPrefab.resourcePath, (Vector3)null, (Quaternion)null, true)).GetComponent <CH47HelicopterAIController>(); if (!Object.op_Implicit((Object)component)) { return; } Vector3 size = TerrainMeta.Size; CH47LandingZone closest = CH47LandingZone.GetClosest(((Component)this).get_transform().get_position()); Vector3 zero = Vector3.get_zero(); zero.y = ((Component)closest).get_transform().get_position().y; Vector3 vector3_1 = Vector3Ex.Direction2D(((Component)closest).get_transform().get_position(), zero); Vector3 vector3_2 = Vector3.op_Addition(((Component)closest).get_transform().get_position(), Vector3.op_Multiply(vector3_1, this.startDist)); vector3_2.y = ((Component)closest).get_transform().get_position().y; ((Component)component).get_transform().set_position(vector3_2); component.SetLandingTarget(((Component)closest).get_transform().get_position()); component.Spawn(); }
public void Call() { GameManager gameManager = GameManager.server; string str = this.heliPrefab.resourcePath; Vector3 vector3 = new Vector3(); Quaternion quaternion = new Quaternion(); CH47HelicopterAIController component = gameManager.CreateEntity(str, vector3, quaternion, true).GetComponent <CH47HelicopterAIController>(); if (component) { Vector3 size = TerrainMeta.Size; CH47LandingZone closest = CH47LandingZone.GetClosest(base.transform.position); Vector3 vector31 = Vector3.zero; vector31.y = closest.transform.position.y; Vector3 vector32 = Vector3Ex.Direction2D(closest.transform.position, vector31); Vector3 vector33 = closest.transform.position + (vector32 * this.startDist); vector33.y = closest.transform.position.y; component.transform.position = vector33; component.SetLandingTarget(closest.transform.position); component.Spawn(); } }
void TryDropCrate(CH47HelicopterAIController chinook) { int randomtime = rnd.Next(config.minTime, config.maxTime); timer.Once(randomtime, () => { if (!chinook.IsDead()) { if (chinook.CanDropCrate()) { if ((config.checkWater && !AboveWater(chinook.transform.position)) || !config.checkWater) { if ((config.checkMonument && !AboveMonument(chinook.transform.position)) || !config.checkMonument) { chinook.DropCrate(); } } else { TryDropCrate(chinook); } } } }); }
private void OnEntitySpawned(CH47HelicopterAIController entity) { HandleEntity(entity); }
private object OnEntityKill(CH47HelicopterAIController heli) { return(Interface.Oxide.CallDeprecatedHook("OnHelicopterKilled", "OnEntityKill(CH47HelicopterAIController heli)", new System.DateTime(2020, 4, 1), heli)); }
private object OnHelicopterAttack(CH47HelicopterAIController heli) { return(Interface.Oxide.CallDeprecatedHook("OnHelicopterAttacked", "OnHelicopterAttack(CH47HelicopterAIController heli)", new DateTime(2022, 12, 31), heli)); }