Beispiel #1
0
    public PlayerKernelDataProxy GetPlayerInfoByTabIndex(int i)
    {
        PlayerKernelDataProxy temp = null;

        TeamManager.Instance.PlayerDic.TryGetValue(i, out temp);
        return(temp);
    }
Beispiel #2
0
    /// <summary>
    /// 通过角色id获取角色信息代理类
    /// </summary>
    /// <param name="id"></param>
    public PlayerKernelDataProxy GetPlayerById(int id)
    {
        PlayerKernelDataProxy temp = null;

        PlayerDic.TryGetValue(id, out temp);
        return(temp);
    }
Beispiel #3
0
    public string GetPlayerNameByTabIndex(int i)
    {
        PlayerKernelDataProxy temp = null;

        TeamManager.Instance.PlayerDic.TryGetValue(i, out temp);
        return(temp.Name);
    }
Beispiel #4
0
 /// <summary>
 /// 设置角色信息显示内容
 /// </summary>
 public void SetPlayerInfo(PlayerKernelDataProxy player)
 {
     Hp_Text.text      = player.TotalHp.ToString();
     Attack_Text.text  = player.TotalAttack.ToString();
     Defense_Text.text = player.TotalDefense.ToString();
     Speed_Text.text   = player.TotalSpeed.ToString();
     Role_Image.sprite = GetPlayerImageByName(player.Image);
 }
    /// <summary>
    /// 角色脱下装备
    /// </summary>
    /// <param name="playerId">角色id</param>
    /// <param name="equipType">装备类型</param>
    public void TakeOffEquipment(int playerId, int equipType, InventoryItem item)
    {
        PlayerKernelDataProxy player = TeamManager.Instance.GetPlayerById(playerId);

        player.Equips[equipType] = 0;
        player.DecreaseHpByEquip(item.EquipHp);
        player.DecreaseMpByEquip(item.EquipMp);
        player.DecreaseAttackByEquip(item.EquipAttack);
        player.DecreaseDefenseByEquip(item.EquipDefense);
        player.DecreaseSpeedByEquip(item.EquipSpeed);
    }
Beispiel #6
0
    private void InitPlayers()
    {
        playerItemList = PlayerInfoManager.Instance.PlayerList;

        foreach (PlayerItem playerItem in playerItemList)
        {
            PlayerKernelDataProxy player = new PlayerKernelDataProxy(playerItem.PlayerId, playerItem.PlayerName, playerItem.Image, playerItem.Hp, playerItem.Mp, playerItem.Attack, playerItem.Defense,
                                                                     playerItem.Speed, playerItem.Level, playerItem.Skills, playerItem.Equips, playerItem.HpByEquip, playerItem.MpByEquip, playerItem.AttackByEquip, playerItem.DefenseByEquip, playerItem.SpeedByEquip);
            playerDic.Add(player.Id, player);
            playerList.Add(player);
        }
    }
Beispiel #7
0
    /// <summary>
    /// 显示对应技能的详细信息
    /// </summary>
    public void ResetSkillInfo(SkillItem item)
    {
        curShowSkillItem = item;

        PlayerKernelDataProxy player = m_SkillPanelModel.GetPlayerInfoById(curIndex);
        bool canLearn = false;

        if (player.Level >= item.LearnLevel)
        {
            canLearn = true;
        }
        m_SkillPanelView.SetSkillInfo(item, canLearn);
    }
Beispiel #8
0
    /// <summary>
    /// 设置角色各项属性值
    /// </summary>
    public void SetPlayerProPerty(PlayerKernelDataProxy player)
    {
        curHp   = player.TotalHp;
        maxHp   = curHp;
        attack  = player.TotalAttack;
        defense = player.TotalDefense;
        speed   = player.TotalSpeed;

        //设置技能
        for (int i = 0; i < player.Skills.Count; i++)
        {
            skills[i] = SkillPrefabDic.Instance.GetSkillPrefabById(player.Skills[i]).GetComponent <SkillBase>();
        }
    }
Beispiel #9
0
    /// <summary>
    /// 重置选项卡和角色信息
    /// </summary>
    private void ResetTabsAndPlayerInfo(int index)
    {
        //选项卡状态切换
        for (int i = 0; i < tabsList.Count; i++)
        {
            tabsList[i].GetComponent <PlayerInfoTabItemCtrl>().NormalTab();
        }
        tabsList[index].GetComponent <PlayerInfoTabItemCtrl>().ActiveTab();

        CurIndex = index;
        PlayerKernelDataProxy player = m_PlayerInfoPanelModel.GetPlayerInfoByTabIndex(index);

        m_PlayerInfoPanelView.SetPlayerInfo(player);            //设置角色基础信息显示
        EquipPanelCtrl.Instance.ShowCurPlayerEquips(player.Id);
    }
Beispiel #10
0
 public void SetInfo(PlayerKernelDataProxy player)
 {
     this.hp             = player.Hp;
     this.mp             = player.Mp;
     this.attack         = player.Attack;
     this.defense        = player.Defense;
     this.speed          = player.Speed;
     this.level          = player.Level;
     this.skills         = player.Skills;
     this.equips         = player.Equips;
     this.hpByEquip      = player.HpByEquip;
     this.mpByEquip      = player.MpByEquip;
     this.attackByEquip  = player.AttackByEquip;
     this.defenseByEquip = player.DefenseByEquip;
     this.speedByEquip   = player.SpeedByEquip;
 }
Beispiel #11
0
    /// <summary>
    /// 该技能被装备
    /// </summary>
    /// <param name="playerId">角色id</param>
    /// <param name="skillId">技能id</param>
    public void SkillBeEquiped(int playerId, int skillId)
    {
        PlayerKernelDataProxy player = GetPlayerInfoById(playerId);

        if (player.Skills.Count >= 4)               //已装备4个技能,不能再装备
        {
            Debug.Log("最多只能装备四个技能");
            return;
        }
        player.Skills.Add(skillId);                            //修改玩家数据类中的已装备技能

        switch (playerId)
        {
        case 0:
            for (int i = 0; i < saberSkillList.Count; i++)
            {
                if (saberSkillList[i].SkillID == skillId)
                {
                    saberSkillList[i].IsEquip = true;
                }
            }
            break;

        case 1:
            for (int i = 0; i < archerSkillList.Count; i++)
            {
                if (archerSkillList[i].SkillID == skillId)
                {
                    archerSkillList[i].IsEquip = true;
                }
            }
            break;

        case 2:
            for (int i = 0; i < casterSkillList.Count; i++)
            {
                if (casterSkillList[i].SkillID == skillId)
                {
                    casterSkillList[i].IsEquip = true;
                }
            }
            break;
        }
    }
Beispiel #12
0
    /// <summary>
    /// 该技能被卸下
    /// </summary>
    /// <param name="playerId">角色id</param>
    /// <param name="skillId">技能id</param>
    public void SkillBeRemove(int playerId, int skillId)
    {
        PlayerKernelDataProxy player = GetPlayerInfoById(playerId);

        player.Skills.Remove(skillId);                            //修改玩家数据类中的已装备技能

        switch (playerId)
        {
        case 0:
            for (int i = 0; i < saberSkillList.Count; i++)
            {
                if (saberSkillList[i].SkillID == skillId)
                {
                    saberSkillList[i].IsEquip = false;
                }
            }
            break;

        case 1:
            for (int i = 0; i < archerSkillList.Count; i++)
            {
                if (archerSkillList[i].SkillID == skillId)
                {
                    archerSkillList[i].IsEquip = false;
                }
            }
            break;

        case 2:
            for (int i = 0; i < casterSkillList.Count; i++)
            {
                if (casterSkillList[i].SkillID == skillId)
                {
                    casterSkillList[i].IsEquip = false;
                }
            }
            break;
        }
    }