public void ShootOnTarget(GeneralSquare target) { GameObject newProjectil = Instantiate <GameObject>(attackProjectil); Projectil pro = newProjectil.GetComponent <Projectil>(); pro.Go(this, target, 3, attack + bonusAtk); }
private void LatedDamageOnTarget(GeneralSquare target, int damage) { Destroy(Instantiate <GameObject>(directDamageParticlePrefab, target.transform.position + new Vector3(0, 0, -0.25f), directDamageParticlePrefab.transform.rotation), 1); StartCoroutine(WaitToDamageOnTarget(target, damage, 0.5f)); }
public virtual void LatedAct() { GeneralSquare target = myPlayer.enemyPlayer.GiveRandomTarget(); ShootOnTarget(target); //target.ApplyDamage(attack + bonusAtk); }
void ChangeTarget() { GeneralSquare newtarget = target.myPlayer.GiveRandomTarget(); target = newtarget; Vector2 dir = target.transform.position - transform.position; rig2D.velocity = dir.normalized * speed; }
private void BlockOffensive(int tier) { for (int j = 0; j < tier; j++) { GeneralSquare target = enemyPlayer.GiveRandomTarget(false); if (target == enemyPlayer.MainSquare) { return; } target.SetDisabled(true); } }
public void Go(GeneralSquare source, GeneralSquare target, float speed, int amountEffect) { this.source = source; this.target = target; this.speed = speed; this.amountEffect = amountEffect; rig2D.MovePosition(source.transform.position + new Vector3(0, 0, -0.25f)); Vector2 dir = target.transform.position - source.transform.position; rig2D.velocity = dir.normalized * speed; }
///////////////Utilities jackpot Effects////////////////////////// private void DrainUtility(int tier) { int drainValue = tier + 1; for (int j = 0; j < tier; j++) { GeneralSquare targetEnemy = enemyPlayer.GiveRandomTarget(); GeneralSquare targetAlly = GiveRandomTarget(false); LatedDamageOnTarget(targetEnemy, drainValue); //targetEnemy.ApplyDamage(drainValue); targetAlly.Heal(drainValue); } }
private void LatedHeal() { GeneralSquare target = myPlayer.GiveRandomTarget(false); ShootOnTarget(target); }
IEnumerator WaitToDamageOnTarget(GeneralSquare target, int damage, float delayTime) { yield return(new WaitForSeconds(delayTime)); target.ApplyDamage(damage); }