public override void OnHitNormalAttack(UnitObject target) { base.OnHitNormalAttack(target); AbilityEffects effect = new AbilityEffects(24); target.GetComponent <UnitObject>().AddEffect(effect); }
public static void AlphabetizeItems(PrefabGenreScript genreScript) { genreScript.UnitTypes.Sort(); int counter = 0; GameObject[] Units = new GameObject[genreScript.UnitTypes.Count]; foreach (GameObject UnitObject in genreScript.UnitsList) { foreach (string UnitType in genreScript.UnitTypes) { Unit UnitScript = UnitObject.GetComponent <Unit>(); if (UnitScript.UnitTypeName == UnitType) { Units[counter] = UnitObject; counter = 0; break; } else { counter++; } } } counter = 0; foreach (GameObject UnitObject in Units) { genreScript.UnitsList[counter] = UnitObject; counter++; } }
public PlayerPlane(int health, float speed, float angSpeed, float acc, GameObject unitObject, Vector3 unitStartPosition) : base(health, speed, angSpeed, acc, unitObject, unitStartPosition, "Player") { agent = UnitObject.GetComponent <NavMeshAgent>(); agent.speed = Speed; agent.acceleration = acceleration; agent.angularSpeed = AngularSpeed; UnitObject.tag = "Player"; }
public override void OnHitNormalAttack(UnitObject target) { if (target == null) { return; } base.OnHitNormalAttack(target); AbilityEffects effect = new AbilityEffects(1); effect.Level = parent.Level; target.GetComponent <UnitObject>().AddEffect(effect); }
private void InitUnitObject(Vector2 position) { BoxCollider boxCollider = UnitObject.GetComponent <BoxCollider>(); boxCollider.center = Data.ColliderCenter; boxCollider.size = Data.ColliderSize; UnitObject.GetComponent <SpriteRenderer>().sprite = Data.Sprite; UnitObject.GetComponent <SpriteRenderer>().sortingLayerName = GetSortingLayer(position.y); UnitObject.transform.position = position; }
public override void Move() { if (UnitObject.GetComponent <NavMeshAgent>().enabled) { if (!agent.hasPath && UnitObject.transform.position != LastPos) { agent.SetDestination(LastPos); } else if (!agent.hasPath) { agent.SetDestination(UnitStartPosition); } } }
public override void Move() { if (UnitObject.GetComponent <NavMeshAgent>().enabled) { #if UNITY_EDITOR if (Input.GetMouseButton(0)) { Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if (Physics.Raycast(ray, out hit, 100)) { agent.SetDestination(hit.point); } } #else if (Input.touchCount == 1) { Ray ray = Camera.main.ScreenPointToRay(Input.GetTouch(0).position); RaycastHit hit; switch (Input.GetTouch(0).phase) { case (TouchPhase.Began): if (Physics.Raycast(ray, out hit, 100)) { agent.SetDestination(hit.point); } break; case (TouchPhase.Moved): if (Physics.Raycast(ray, out hit, 100)) { agent.SetDestination(hit.point); } break; case (TouchPhase.Ended): if (Physics.Raycast(ray, out hit, 100)) { agent.SetDestination(hit.point); } break; } } #endif } }
public UnitObject CreateUnit(UnitObject unitObject, Vector3 position, UnitObject.Activity targetActivity, Cell targetCell) { if (GameManager.instance.maxUnits <= ObjectManager.instance.unitObjectsPlaced.Count) { return(null); } GameObject newUnitObj = Instantiate(unitObject.gameObject, position, Quaternion.identity) as GameObject; UnitObject newUnit = newUnitObj.GetComponent <UnitObject>(); newUnit.ownerUser = TeamManager.instance.curUser; newUnit.navAgent = newUnit.GetComponent <NavAgent>(); newUnit.activity = targetActivity; newUnit.navAgent.targetCell = targetCell; ObjectManager.instance.unitObjectsPlaced.Add(newUnit); return(newUnit); }