public void ProjCompAth(ProjComp comp) { GetComponentInChildren <Image>().sprite = comp.Icon1; Text[] te = transform.GetComponentsInChildren <Text>(); te[0].text = comp.Name; te[2].text = "Cooldown : " + comp.Cooldown; te[3].text = "Damage : " + comp.AdDamage; te[4].text = "Damage : " + comp.ApDamage; te[5].text = "Mana Cost : " + comp.ManaCost; te[6].text = "Number : " + comp.Number; te[7].text = "Perforant : " + comp.Live; }
public override void ChildCreate(CompetencesData competence, int lvl) { ProjComp comp = (ProjComp)competence; manaCost = comp.manaCost + 2 * lvl; addNumber = Math.Abs(addNumber) < 0.01 ? 0 : 1 / comp.addNumber; adDamage = comp.adDamage + lvl; apDamage = comp.apDamage + lvl; live = comp.live + (int)(AddLive * lvl); number = comp.number + (int)(addNumber * lvl); speed = comp.speed; icon1 = comp.icon1; AddLive = comp.AddLive; addNumber = comp.addNumber; }
private void InstantiateArcProjectiles(ProjComp competence, float dx = 0, float dy = 0) { AttackEvent.Raise(new EventArgsInt(_playerData.MultiID)); float rotDist = 10; float rot = rotDist; Vector3 dir = ProjectilesDirection(dx, dy); InstantiateProjectiles(competence, dir); for (int i = 1; i < competence.Number / 2 + 1; i++) { InstantiateProjectiles(competence, Quaternion.Euler(0, 0, rot) * dir); InstantiateProjectiles(competence, Quaternion.Euler(0, 0, -rot) * dir); rot += rotDist; } StartCoroutine(CoolDownCoroutine(competence, true)); }
private void InstantiateProjectiles(ProjComp competence, Vector3 dir) { Transform o = Instantiate(Proj, transform.position + dir / 4, Quaternion.identity); o.name = competence.Name; ProjectilesData projectilesData = ScriptableObject.CreateInstance <ProjectilesData>(); int dP = 25; int dM = 25; if (_playerData.MultiID + "" == (string)Coffre.Regarder("id")) { dP = _playerData.PhysicsDamage + _playerData.Inventory.Weapon.PhysicsDamage + competence.AdDamage; dM = _playerData.MagicDamage + _playerData.Inventory.Weapon.MagicDamage + competence.ApDamage; } projectilesData.Created(dir.normalized, competence.Speed, dP, dM, competence.EnemyTag, _playerData.AnimProj(), competence.Live, _playerData.AnimColor(), _playerData.Prob(), _playerData.Effect(), _playerData.EffectDamage(), _playerData.Duration()); Projectiles script = o.GetComponent <Projectiles>(); script.Create(projectilesData); }
private void InstantiateCircleAttack(ProjComp competence, float dx = 0, float dy = 0) { if (_playerData.Mana < competence.ManaCost) { return; } _playerData.Mana -= competence.ManaCost; AttackEvent.Raise(new EventArgsInt(_playerData.MultiID)); if (_playerData.Name == "Warrior") { return; } float rot = 360 / competence.Number; for (int i = 0; i < competence.Number; i++) { InstantiateProjectiles(competence, Quaternion.Euler(0, 0, rot * i) * new Vector3(1, 1, 0)); } StartCoroutine(CoolDownCoroutine(competence, true)); }
private void InstantiateOneProjectiles(ProjComp competence, float dx = 0, float dy = 0) { AttackEvent.Raise(new EventArgsInt(_playerData.MultiID)); StartCoroutine(CoolDownCoroutine(competence, true)); InstantiateProjectiles(competence, ProjectilesDirection(dx, dy)); }