public void FollowTarget(MinionScript newTarget) { agent.stoppingDistance = newTarget.radius * .8f; agent.updateRotation = false; target = newTarget.transform; }
public void spawnMinion(GameObject target) { if (currentNrOfMinions < inventory.GetFetchers()) { GameObject instance = (GameObject)Instantiate(minion); currentNrOfMinions++; SpriteRenderer minionRenderer = instance.GetComponent <SpriteRenderer>(); SpriteRenderer playerRenderer = GetComponentInChildren <SpriteRenderer>(); minionRenderer.color = playerRenderer.color; instance.transform.position = transform.position; Rigidbody2D minionBody = instance.GetComponent <Rigidbody2D>(); float angle = Random.value * 360 * Mathf.Deg2Rad; float forceX, forceY; forceX = minionSpawnForce * Mathf.Sin(angle); forceY = minionSpawnForce * Mathf.Cos(angle); minionBody.velocity = new Vector3(forceX, forceY); MinionScript minionScript = instance.GetComponent <MinionScript>(); minionScript.ownerPlayer = gameObject; minionScript.target = target; } }
// Start is called before the first frame update void Start() { parentobj = transform.parent.gameObject; localScale = transform.localScale; spriteRenderer = GetComponent <SpriteRenderer>(); parent = parentobj.GetComponent <MinionScript>(); }
private void OnCollisionEnter2D(Collision2D collision) { if (!collision.gameObject.tag.Equals(tag)) { enemyCastle = collision.gameObject.GetComponent <Castle>(); if (enemyCastle != null) { //Debug.Log("Hurting castel"); enemyCastle.Hurt(attack); Die(); } else { //Debug.Log("colission between " + tag+ " and " + collision.gameObject.tag); enemy = collision.gameObject.GetComponent <MinionScript>(); //bounce transform.position = Vector2.MoveTowards(transform.position, collision.gameObject.transform.position, -1 * bounce); collision.gameObject.transform.position = Vector2.MoveTowards(collision.gameObject.transform.position, transform.position, -1 * bounce); //attack if (enemy.Hurt(attack)) { gainXP(); } } } }
public JSONObject toJSONObject() { MinionScript minion = this.GetComponent <MinionScript> (); JSONObject js = new JSONObject(); JSONObject jo = null; js.AddField("_instanceID", this.Entity.GetInstanceID()); js.AddField("minion_name", minion.name); if (leftHand != null) { ItemData tmpid = ScriptableObject.CreateInstance <ItemData>(); tmpid.setItem(leftHand); js.AddField("left_hand", tmpid); } else { js.AddField("left_hand", jo); } if (rightHand != null) { ItemData tmpid = ScriptableObject.CreateInstance <ItemData>(); tmpid.setItem(rightHand); js.AddField("right_hand", tmpid); } else { js.AddField("right_hand", jo); } return(js); }
void minionDeathEventHandler(Vector3 pos, MinionScript ms) { if (minionAudio != null) { minionAudio.Stop(); Destroy(this.gameObject); } }
void OnTriggerExit2D(Collider2D collision) { if (collision.gameObject.tag.Equals("Red") || collision.gameObject.tag.Equals("Blue") || collision.gameObject.tag.Equals("Green")) { //Debug.Log("colission between " + tag+ " and " + collision.gameObject.tag); MinionScript minion = collision.gameObject.GetComponent <MinionScript>(); minion.isInBattleGround = false; } }
// Start is called before the first frame update void Start() { maxhealth = health = 10f; minion = prefab.GetComponent <MinionScript>(); minion.maxhealth = 10; minion.speed = 0.5f; minionCap = 5000; //InvokeRepeating("Spawn",delay,rate); StartCoroutine(SpawnWithCoroutine()); }
public void ExecuteExplosion() { MinionScript ms = parentGameObject.GetComponent <MinionScript>(); if (ms == null) { print("XXXXXXXXXXXXX NULLLLLLLLL!!!"); } EventManager.TriggerEvent <MinionDeathEvent, Vector3, MinionScript>(parentGameObject.transform.position + Vector3.up * 0.02f, ms); }
/* * Returns the time of the next auto-attack * */ public float autoAttack(MinionScript enemy) { float damageAmount = getWeaponDamage(); if(finalHourActive){ damageAmount *= 1.4f; awardHealth (damageAmount * .5f); } a.Play("Attack" + (((int)(Random.value * 2)) + 1)); enemy.damage(damageAmount); return Time.time + WeaponSpeed; }
void minionSpawnEventHandler(MinionScript minion) { if (minionSpawnAudio) { EventSound3D snd = Instantiate(eventSound3DPrefab, minion.transform.position, Quaternion.identity, null); snd.audioSrc.clip = this.minionSpawnAudio; snd.audioSrc.minDistance = 5f; snd.audioSrc.maxDistance = 100f; snd.audioSrc.Play(); } }
void minionDeathEventHandler(Vector3 pos, MinionScript ms) { if (minionDeathAudio) { EventSound3D snd = Instantiate(eventSound3DPrefab, pos, Quaternion.identity, null); snd.audioSrc.clip = this.minionDeathAudio; snd.audioSrc.minDistance = 5f; snd.audioSrc.maxDistance = 100f; snd.audioSrc.Play(); } }
IEnumerator SpawnWithCoroutine() { while (true) { var delay = Random.Range(minSpawn, maxSpawn); //Debug.Log("callingSpawn. delay till next call:" + delay); GameObject NewChild = Instantiate(prefab, transform); MinionScript childScript = NewChild.GetComponent <MinionScript>(); NewChild.tag = this.tag; for (int i = 0; i < level; i++) { childScript.LevelUp(); } yield return(new WaitForSeconds(delay)); } }
public bool canPick(TWItemScript item) { MinionScript minion = this.GetComponent <MinionScript>(); bool pickable = false; if (hayHueco(item.item)) { int it = item.item.Peso, man = this.pesoManos(), fu = minion.maxFuerza; if ((it + man) < fu) { pickable = true; } } return(pickable); }
void Attack(MinionScript target) { if (target.GridX >= gameObject.GetComponent<MinionScript>().GridX - Range || target.GridX <= gameObject.GetComponent<MinionScript>().GridX + Range) { if() { } else { } enemyobj = GameObject.FindGameObjectWithTag("Minion P1"); canAttack = true; if (Input.GetKey(KeyCode.K)) { if (canAttack == true) { target.GetComponent<MinionScript>().Hp = target.GetComponent<MinionScript>().Hp - gameObject.GetComponent<MinionScript>().Dmg; Debug.Log("ATtack!"); Attack(enemy); if (enemy.Hp <= 0) { Destroy(enemyobj); } } } } else if (selected == true && enemy.GetComponent<MinionScript>().PlayerOwner == 0) { enemyobj = GameObject.FindGameObjectWithTag("Minion P2"); if (Input.GetKey(KeyCode.K)) { Attack(enemy); if (enemy.Hp <= 0) { Destroy(enemyobj); } } } }
void Start() { HittableMinonList = new List<GameObject>(); // Pedro MinionObj = gameObject; MinionTilePos = MinionObj.GetComponent<GridScript>(); movementleft = Move; Turn = GameObject.Find("EndTurn"); Undo = GameObject.Find("UndoButton"); Comfirm = GameObject.Find("ConfirmButton"); DoOnceForver = true; Confirming = false; selected = false; halo = GetComponent("Halo"); YetAnotherDoOnce = false; // Pedro enemy = enemyobj.GetComponent<MinionScript>(); }
// Update is called once per frame void Update() { if (Input.GetMouseButtonDown(0)) { Ray ray = cam.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if (Physics.Raycast(ray, out hit, 100)) //movementMask)) { motor.MoveToPoint(hit.point); RemoveFocus(); } if (Physics.Raycast(ray, out hit, 100)) { MinionScript minionScript = hit.collider.GetComponent <MinionScript>(); if (minionScript != null) { SetFocus(minionScript); } } } }
public void Execute() { //If on cooldown, return if(Time.time < nextAttack) return; player.playAnimation(animationName); nextAttack = Time.time + player.WeaponSpeed; Vector3 position = player.gameObject.transform.position; MinionScript[] enemies = new MinionScript[numPossibleTargets]; int index = 0; Collider[] targets = Physics.OverlapSphere(position, radius); foreach(Collider t in targets){ MinionScript enemy = t.gameObject.GetComponent(typeof(MinionScript)) as MinionScript; if(enemy){ Vector3 direction = Vector3.Normalize(enemy.gameObject.transform.position - player.gameObject.transform.position); float dot = Vector3.Dot(direction, player.gameObject.transform.forward); if(dot > 0.707f){ enemies[index++] = enemy; if(index > numPossibleTargets - 1) //If the maximum number of targets has been reached, stop adding new ones. break; } } } //If there are no enemies to hit, return if(index == 0) return; float damagePerTarget = player.WeaponDamage * 0.5f; foreach(MinionScript enemy in enemies){ if(enemy) enemy.damage(damagePerTarget); } }
/* * Returns the time of the next auto-attack * */ public float autoAttack(MinionScript enemy) { a.Play("Attack" + (((int)(Random.value * 3)) + 1)); enemy.damage(WeaponDamage); return Time.time + WeaponSpeed; }
public void setCurrentEnemy(MinionScript enemy) { this.currentEnemy = enemy; }
void RemoveFocus() { focus = null; motor.StopFollowingTarget(); }
void SetFocus(MinionScript newFocus) { focus = newFocus; motor.FollowTarget(newFocus); }