IEnumerator AnimateStats() { Quaternion targetHeading = Quaternion.Euler(0, 60 * heading, 0); float headingError = Quaternion.Angle(targetHeading, transform.rotation); Vector3 targetPosition = hexPos.getPosition(); targetPosition.y = HEIGHT_PER_ALTITUDE * altitude; Vector3 posError = targetPosition - transform.position; float timerMax = 1.0f; float timer = timerMax; // rotate/climb while (timer > 0) { transform.rotation = Quaternion.RotateTowards(transform.rotation, targetHeading, headingError / timerMax); transform.position += posError * 0.2f; posError = targetPosition - transform.position; timer -= Time.deltaTime; yield return(new WaitForEndOfFrame()); } transform.position = targetPosition; }
public void build_on(int selected, HexPosition destination) { Debug.Log ("Selected " + selected.ToString ()); Settlement unit = this.buildings[selected]; GameObject unit_go = (GameObject) Instantiate (unit.gameObject, destination.getPosition(), new Quaternion()); unit_go.transform.parent = GameObject.FindGameObjectWithTag ("Units").transform; grid.AddUnit (unit); unit.SetGrid (grid); grid.ai.add_unit (unit); this.state = State.DONE; grid.state_change (this); }
override public void OnStartLocalPlayer() { Object.Destroy(GameObject.FindGameObjectWithTag("Network Manager HUD").GetComponents <Component> () [2]); HexPosition.setColor("Path", Color.yellow, 1); HexPosition.setColor("Selection", Color.green, 2); HexPosition.setColor("Selectable", Color.green, 3); HexPosition.setColor("Attack", Color.red, 4); HexPosition.setColor("Cursor", Color.blue, 5); HexPosition.Marker = marker; foreach (GameObject child in GameObject.FindGameObjectsWithTag("Obstacle")) { HexPosition position = new HexPosition(child.transform.position); child.transform.position = position.getPosition(); position.flag("Obstacle"); } CmdAddPlayer(); }
void Start() { unitsRoot.BroadcastMessage("SetGrid", this); //timeout = MAX_TIME; HexPosition.setColor("Path", Color.yellow, 1); HexPosition.setColor("Selection", Color.green, 2); HexPosition.setColor("Selectable", Color.green, 3); HexPosition.setColor("Attack", Color.red, 4); HexPosition.setColor("Cursor", Color.blue, 5); HexPosition.Marker = marker; foreach (Transform child in obstacles.transform) { HexPosition position = new HexPosition(child.position); child.position = position.getPosition(); position.flag("Obstacle"); } }
void Start() { HexPosition.setColor("Path", Color.yellow, 1); HexPosition.setColor("Selection", Color.green, 2); HexPosition.setColor("Selectable", Color.green, 3); HexPosition.setColor("Attack", Color.red, 4); HexPosition.setColor("Cursor", Color.blue, 5); HexPosition.Marker = marker; foreach (GameObject child in GameObject.FindGameObjectsWithTag("Obstacle")) { HexPosition position = new HexPosition(child.transform.position); child.transform.position = position.getPosition(); position.flag("Obstacle"); } units = new List <Unit> (Object.FindObjectsOfType <Unit> ()); foreach (Unit unit in units) { unit.setPlayerInterface(this, true); } }
void Generate() { traversiblePositions = new List <HexPosition>(); for (int x = 0; x < size.x; x++) { for (int y = 0; y < size.y; y++) { int terrainIdx = Random.Range(0, terrainTypes.Length - 1); int heightOffset = Random.Range(0, 3); //Vector3 pos = new Vector3(x, 0, y); HexPosition newTile = new HexPosition(x, y); Vector3 newPos = newTile.getPosition(); newPos.y = heightOffset * 0.08f; GameObject terrainInstance = Instantiate(terrainTypes[terrainIdx], newPos, Quaternion.Euler(0, 30, 0), this.transform); newTile.add("Terrain", terrainInstance); traversiblePositions.Add(newTile); } } }
public void SetPosition(HexPosition position) { this.position = position; transform.position = position.getPosition(); position.add("Unit", this); }
void Start() { unitsRoot.BroadcastMessage("SetGrid", this); //timeout = MAX_TIME; HexPosition.setColor("Path", Color.yellow, 1); HexPosition.setColor("Selection", Color.green, 2); HexPosition.setColor("Selectable", Color.green, 3); HexPosition.setColor("Attack", Color.red, 4); HexPosition.setColor("Cursor", Color.blue, 5); HexPosition.Marker = marker; foreach (Transform child in obstacles.transform) { HexPosition position = new HexPosition(child.position); child.position = position.getPosition(); position.flag("Obstacle"); } foreach (Transform child in Bases.transform) { HexPosition position = new HexPosition(child.position); child.position = position.getPosition(); position.flag("Base"); } foreach (Transform child in Forest.transform) { HexPosition position = new HexPosition(child.position); child.position = position.getPosition(); position.flag("Forest"); } foreach (Transform child in Lava.transform) { HexPosition position = new HexPosition(child.position); child.position = position.getPosition(); position.flag("Lava"); } foreach (Transform child in Hospital.transform) { HexPosition position = new HexPosition(child.position); child.position = position.getPosition(); position.flag("Hospital"); } }
void Start() { //Spawn the units GameObject unitsRoot = new GameObject(); unitsRoot.name = "UnitsCreated"; _spawnOwnUnits(unitsRoot); _spawnOtherUnits(unitsRoot); unitsRoot.BroadcastMessage("SetGrid", this); Debug.Log("Loaded Scene by calling start"); //timeout = MAX_TIME; HexPosition.setColor("Path", Color.yellow, 1); HexPosition.setColor("Selection", Color.green, 2); HexPosition.setColor("Selectable", Color.green, 3); HexPosition.setColor("Attack", Color.red, 4); HexPosition.setColor("Cursor", Color.blue, 5); HexPosition.Marker = marker; foreach (Transform child in obstacles.transform) { HexPosition position = new HexPosition(child.position); child.position = position.getPosition(); position.flag("Obstacle"); } selectSelectable(); ai = new AI(units, 1); }