public static void TriggerModifiedTerrain(TerrainEventArgs e) { if (AIController.modifiedTerrain != null) { AIController.modifiedTerrain(e.tile, e); } }
public void HandleNewTerrain(object sender, TerrainEventArgs e) { if (allSpawners == null) { return; } Vector3 tilePos = e.tile.transform.position; SpawnerController closestSpawner = null; float closest = Mathf.Infinity; float dist; foreach (SpawnerController spawner in allSpawners) { dist = Vector3.Distance(spawner.transform.position, tilePos); if (dist < closest) { closest = dist; closestSpawner = spawner; } } if (closestSpawner != null) { foreach (Waypoint wp in closestSpawner.GetWaypoints()) { wp.RecalculateNeighbors(); } } }
protected void SendDisableTileEvent() { var e = new TerrainEventArgs { tile = this }; AIController.TriggerModifiedTerrain(e); }