void Start() { singleton = this; Damage.damageInitialize(); Map_generator = GetComponent <Map_generator>(); Map_generator.map_generate(); }
/// <summary> /// Display destination arrow /// </summary> void setDestineArrow() { destinPosition = Game_watcher.getDestinationPos(); thisPosition = transform.position; //Calculate the intersection b/w cam-to-destine line and the screen bounds if (destinPosition.z > topCamViewBound) { intersection(CONSTANTS.DIRECTION.UP); } else if (destinPosition.z < lowerCamViewBound) { intersection(CONSTANTS.DIRECTION.DOWN); } if (destinPosition.x > rightCamViewBound) { intersection(CONSTANTS.DIRECTION.RIGHT); } else if (destinPosition.x < leftCamViewBound) { intersection(CONSTANTS.DIRECTION.LEFT); } //Destination inside camera view if (destinPosition.z <= topCamViewBound && destinPosition.z >= lowerCamViewBound && destinPosition.x <= rightCamViewBound && destinPosition.x >= leftCamViewBound) { trackArrow.transform.rotation = Quaternion.Euler(90, Game_watcher.getDestinationDir(), 0); trackArrow.transform.position = Game_watcher.getDestinationPos(); } //Destination outside camera view else { Vector3 diff = destinPosition - thisPosition; trackArrow.transform.rotation = Quaternion.Euler(90, -180 * Mathf.Atan2(diff.z, diff.x) / Mathf.PI, 0); trackArrow.transform.position = screen_intersect; } }
void setPlayerRandomPos() { int avenue = Random.Range(0, vertical_roads.Count - 1); int street = Random.Range(0, horizontal_roads.Count - 1); tempVec.x = (vertical_roads[avenue].upper + vertical_roads[avenue].lower) / 2; tempVec.z = (horizontal_roads[street].upper + horizontal_roads[street].lower) / 2; spawnLocation = tempVec; Game_watcher.setPlayerPos(tempVec); }
private void OnTriggerEnter(Collider other) { Game_watcher.OnReachDestination(Map_generator.getDistanceTravelled()); }