コード例 #1
0
    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;
    }
コード例 #2
0
    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;
    }