using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
using System.Collections;
using GCGame.Table;
using System;

public class OtherPlayerSkillItem : SkillRootItem
{
    public override void ShowSkillItem(SkillShowInfo skillInfo, bool isOtherPlayer)
    {

        UnSelected();
        _InitInfo = skillInfo;
        ShowSkillInfo = skillInfo;
        LoadAssetBundle.Instance.SetImageSprite(_Icon, skillInfo.SkillBase.Icon);
        if (ShowSkillInfo.SkillLearn.ShowPosY > 0)
        {
            _LearnGO1.SetActive(true);
            _LearnGO2.SetActive(false);
            _LearnTx1.text = ShowSkillInfo.SkillLearn.LearnLv.ToString();
        }
        else
        {
            _LearnGO1.SetActive(false);
            _LearnGO2.SetActive(true);
            _LearnTx2.text = ShowSkillInfo.SkillLearn.LearnLv.ToString();
        }

        if (skillInfo.SkillExTab == null)
        {
            // 尚未学习
            _LevelTx.text = StrDictionary.GetClientDictionaryString("#{6738}");
            _DisableGO.SetActive(true);
            if (skillInfo.SkillLevelUp != null)
            {
                if (skillInfo.SkillLevelUp.Level > GameManager.gameManager.OtherPlayerData.Level)
                {
                    _NeedItemGO.SetActive(false);
                }
                else
                {
                    _NeedItemGO.SetActive(true);
                }
            }
        }
        else
        {
            _DisableGO.SetActive(false);
            _NeedItemGO.SetActive(false);
            Games.SkillModle.OwnSkillData ownSkill = null;
            if (!isOtherPlayer)
            {
                ownSkill = GameManager.gameManager.PlayerDataPool.GetOwnSkillInfo(skillInfo.SkillBase.Id);
            }

            if (ownSkill == null || ownSkill.exSkillLevel == 0)
            {
                _LevelTx.text = StrDictionary.GetClientDictionaryString("#{6739}", skillInfo.SkillExTab.Level.ToString());
            }
            else
            {
                _LevelTx.text = StrDictionary.GetClientDictionaryString("#{6739}", skillInfo.SkillExTab.Level.ToString() + StrDictionary.GetClientDictionaryString("#{4743}", ownSkill.exSkillLevel));
            }
        }
    }

    #region 不需要拖拽以及红点

    public override void OnBeginDrag(PointerEventData eventData) { }

    public override void OnDrag(PointerEventData eventData) { }

    protected override void SetDraggedPosition(PointerEventData eventData) { }

    public override void OnEndDrag(PointerEventData eventData) { }

    public override void UpdateRedTips() { }

    #endregion

}