public void Init(int id, int lv) { EnemyData.RootObject data = EnemyData.GetData(id); Info.Init(id, lv); _originalPosition = transform.position; Sprite.sprite = Resources.Load <Sprite>("Image/Character/Small/" + data.Image); if (data.Animator != string.Empty) { Animator.runtimeAnimatorController = Resources.Load <RuntimeAnimatorController>("Animator/" + data.Animator); } AI = GetComponent(Type.GetType(data.AI)) as AI; if (AI == null) { gameObject.AddComponent(Type.GetType(data.AI)); AI = GetComponent(Type.GetType(data.AI)) as AI; } AI.Init(this, data.SkillList); BattleController.Instance.TurnEndHandler += CheckBattleStatus; }
public virtual void Init(int id, int lv) //for enemy { EnemyData = global::EnemyData.GetData(id); IsAI = true; IsTeamMember = false; Lv = lv; Name = EnemyData.Name; HPQueue = new Queue <int>(EnemyData.HPList); MaxHP = Mathf.RoundToInt(HPQueue.Dequeue() * (1 + (lv - 1) * 0.1f)); CurrentHP = MaxHP; _atk = Mathf.RoundToInt(EnemyData.ATK * (1 + (lv - 1) * 0.1f)); _def = Mathf.RoundToInt(EnemyData.DEF * (1 + (lv - 1) * 0.1f)); _mtk = Mathf.RoundToInt(EnemyData.MTK * (1 + (lv - 1) * 0.1f)); _mef = Mathf.RoundToInt(EnemyData.MEF * (1 + (lv - 1) * 0.1f)); _agi = Mathf.RoundToInt(EnemyData.AGI * (1 + (lv - 1) * 0.1f)); _sen = Mathf.RoundToInt(EnemyData.SEN * (1 + (lv - 1) * 0.1f)); _mov = EnemyData.MOV; EquipATK = EnemyData.Equip_ATK; EquipDEF = EnemyData.Equip_DEF; EquipMTK = EnemyData.Equip_MTK; EquipMEF = EnemyData.Equip_MEF; Camp = CampEnum.Enemy; }