// Start is called before the first frame update void Start() { hitPoint = MaxHitPoint; instantSkillEffect = null; myState = SkeltonState.AutoAttacking; skill = SkeltonSkill.Search; }
void SkillChange() { timeLine++; if (timeLine == 500) { myState = SkeltonState.SkillChaging; skill = SkeltonSkill.SphereExplosion; } else if (timeLine == 1500) { myState = SkeltonState.SkillChaging; skill = SkeltonSkill.Search; } else if (timeLine > 2000) { timeLine = 0; } }
void SkillPlace() { if (skillPlaced) { bool attacked = skillPlaceComponent.DangerSkillAttacked("SkillChaging", "Skill"); if (attacked) { myState = SkeltonState.AutoAttacking; Destroy(instantSkillEffect.gameObject); instantSkillEffect = null; skillPlaced = false; } } else { skillPlaced = true; Quaternion effectQua = new Quaternion(); effectQua = Quaternion.Euler(new Vector3(-90, 0, 0)); instantSkillEffect = Instantiate(sphereSkillEffect, transform.position, effectQua); instantSkillEffect.transform.parent = transform; GameObject ShotSkill = null; Vector3 targetPosition = transform.position; switch (skill) { case (SkeltonSkill.SphereExplosion): ShotSkill = sphereSkill; break; case (SkeltonSkill.Search): ShotSkill = searchSkill; targetPosition = target.GetPosition(); break; default: ShotSkill = sphereSkill; break; } skillPlaceComponent.SkillPlace(ShotSkill, targetPosition, "SkillChaging"); } }