示例#1
0
 public void SelectSkill(int i)
 {
     if (Length() == 0)
     {
         return;
     }
     m_SKillData = m_data_list[i];
 }
示例#2
0
    void LayOutSetting()
    {
        SKillData data = generator.GetData();

        EditorGUILayout.Space();

        EditorGUILayout.LabelField(data.m_Name + " 스킬 정보");
        EditorGUILayout.Space();

        data.m_Name = EditorGUILayout.TextField("스킬 이름", data.m_Name);
        EditorGUILayout.Space();

        data.m_Image = (Sprite)EditorGUILayout.ObjectField("스킬 이미지", data.m_Image, typeof(Sprite), true);
        EditorGUILayout.Space();

        data.m_AttackCount = EditorGUILayout.IntField("스킬 타수 (최대 10)", data.m_AttackCount);
        EditorGUILayout.Space();

        for (int i = 0; i < data.m_AttackCount; i++)
        {
            data.m_DamegeFormula[i] = EditorGUILayout.TextField(i + 1 + " 타 데미지 공식", data.m_DamegeFormula[i]);
        }
        EditorGUILayout.Space();

        data.m_FrontSkill = (GameObject)EditorGUILayout.ObjectField("선행 스킬", data.m_FrontSkill, typeof(GameObject), true);
        EditorGUILayout.Space();

        data.m_FrontSkillCount = EditorGUILayout.IntField("스킬 해제 조건 설정", data.m_FrontSkillCount);
        EditorGUILayout.Space();

        data.m_Position = (SKillPosition)EditorGUILayout.EnumPopup("스킬창 위치", data.m_Position);
        EditorGUILayout.Space();

        data.m_Anim = (Animator)EditorGUILayout.ObjectField("스킬 애니메이션", data.m_Anim, typeof(Animator), true);
        EditorGUILayout.Space();

        data.m_Sound = (AudioSource)EditorGUILayout.ObjectField("스킬 사운드", data.m_Sound, typeof(AudioSource), true);
        EditorGUILayout.Space();

        data.m_Active = EditorGUILayout.Toggle("스킬 활성화 상태", data.m_Active);
        EditorGUILayout.Space();

        data.m_SkillLevel = EditorGUILayout.IntField("스킬 레벨", data.m_SkillLevel);
        EditorGUILayout.Space();

        data.m_MaxSkillLevel = EditorGUILayout.IntField("스킬 최대 레벨 설정", data.m_MaxSkillLevel);
        EditorGUILayout.Space();

        EditorGUILayout.LabelField("스킬 설명");
        data.m_Info = EditorGUILayout.TextArea(data.m_Info);
        EditorGUILayout.Space();

        generator.SetData(data);
    }
示例#3
0
    public void InfoView(SKillData data)
    {
        m_SkillInfo.SetActive(true);

        m_name.text  = data.m_Name;
        m_level.text = data.m_SkillLevel.ToString();
        if (data.m_FrontSkill == null)
        {
            m_frontskill.text = "선행스킬 : None";
        }
        else
        {
            m_frontskill.text = "선행스킬 : " + data.m_FrontSkill.name + " \n Lv " + data.m_FrontSkillCount;
        }
        m_info.text = data.m_Info;

        view = true;
    }
示例#4
0
    public void UpdateSkill(SKillData data, int index)
    {
        if (data.m_FrontSkill == null)
        {
            return;
        }

        for (int i = 0; i < transform.childCount; i++)
        {
            m_SkillList[i] = transform.GetChild(i).GetComponent <RectTransform>();
        }

        RectTransform rect = data.m_FrontSkill.GetComponent <RectTransform>();
        RectTransform m_line;

        if (m_SkillList[index].childCount == 1)
        {
            m_line = GameObject.Instantiate(m_SkillLine) as RectTransform;
            m_line.SetParent(m_SkillList[index].transform, false);
        }
        else
        {
            m_line = m_SkillList[index].GetChild(1).GetComponent <RectTransform>();
        }

        switch (data.m_Position)
        {
        case SKillPosition.ONE:
            m_SkillList[index].anchoredPosition = new Vector3(rect.anchoredPosition.x + 100, rect.anchoredPosition.y + 100, 0);
            m_line.anchoredPosition             = new Vector3(-70, 0, 0);
            m_line.localRotation = Quaternion.Euler(0, 0, 0);
            break;

        case SKillPosition.TWO:
            m_SkillList[index].anchoredPosition = new Vector3(rect.anchoredPosition.x + 100, rect.anchoredPosition.y - 100, 0);
            m_line.anchoredPosition             = new Vector3(0, 70, 0);
            m_line.localRotation = Quaternion.Euler(0, 0, 90);
            break;

        case SKillPosition.THREE:
            m_SkillList[index].anchoredPosition = new Vector3(rect.anchoredPosition.x - 100, rect.anchoredPosition.y - 100, 0);
            m_line.anchoredPosition             = new Vector3(70, 0, 0);
            m_line.localRotation = Quaternion.Euler(0, 0, 0);
            break;

        case SKillPosition.FOUR:
            m_SkillList[index].anchoredPosition = new Vector3(rect.anchoredPosition.x - 100, rect.anchoredPosition.y + 100, 0);
            m_line.anchoredPosition             = new Vector3(0, -70, 0);
            m_line.localRotation = Quaternion.Euler(0, 0, 90);
            break;
        }

        float max_x = 0, max_y = 0;
        float min_x = 0, min_y = 0;

        for (int i = 0; i < transform.childCount; i++)
        {
            if (m_SkillList[i].anchoredPosition.y > max_y)
            {
                max_y = m_SkillList[i].anchoredPosition.y;
            }
            if (m_SkillList[i].anchoredPosition.y < min_y)
            {
                min_y = m_SkillList[i].anchoredPosition.y;
            }
            if (m_SkillList[i].anchoredPosition.x > max_x)
            {
                max_x = m_SkillList[i].anchoredPosition.x;
            }
            if (m_SkillList[i].anchoredPosition.x < min_x)
            {
                min_x = m_SkillList[i].anchoredPosition.x;
            }
        }

        if (max_x >= 600)
        {
            m_Scroll.content.sizeDelta = new Vector2(content_x - ((150 * (max_x - 500) / 100) * -1), m_Scroll.content.sizeDelta.y);
        }
        else if (min_x <= -600)
        {
            m_Scroll.content.sizeDelta = new Vector2(content_x - ((150 * (min_x - -500) / 100)), m_Scroll.content.sizeDelta.y);
        }
        else
        {
            m_Scroll.content.sizeDelta = new Vector2(content_x, m_Scroll.content.sizeDelta.y);
        }

        if (max_y >= 300)
        {
            m_Scroll.content.sizeDelta = new Vector2(m_Scroll.content.sizeDelta.x, (content_y + (175 * ((max_y - 200) / 100))));
        }
        else if (min_y <= -300)
        {
            m_Scroll.content.sizeDelta = new Vector2(m_Scroll.content.sizeDelta.x, (content_y + ((175 * ((min_y - -200) / 100)) * -1)));
        }
        else
        {
            m_Scroll.content.sizeDelta = new Vector2(m_Scroll.content.sizeDelta.x, content_y);
        }
    }
示例#5
0
 public void SetData(SKillData _data)
 {
     m_SKillData = _data;
 }
示例#6
0
 public void SetData(SKillData _data, int i)
 {
     m_data_list[i] = _data;
 }