Exemple #1
0
        private float GetProperty(ScalingTypes type, Obj_AI_Base target = null)
        {
            switch (type)
            {
            case ScalingTypes.AD:
                return(Player.TotalAttackDamage);

            case ScalingTypes.ADBonus:
                return(Player.FlatPhysicalDamageMod);

            case ScalingTypes.AP:
                return(Player.TotalMagicalDamage);

            case ScalingTypes.APBonus:
                return(Player.FlatMagicDamageMod);

            case ScalingTypes.Armor:
                return(Player.Armor);

            case ScalingTypes.Speed:
                return(Player.MoveSpeed);

            case ScalingTypes.TargetLostLife:
                return(target.MaxHealth - target.Health);

            case ScalingTypes.TargetAP:
                return(target.TotalMagicalDamage);

            case ScalingTypes.TargetAPBonus:
                return(target.FlatMagicDamageMod);

            default:
                return(0);
            }
        }
    public override void OnGUI(float width)
    {
        int hash = m_Texture.GetHashCode();

        m_Texture = (Texture2D)EditorGUILayout.ObjectField(m_Texture, typeof(Texture2D), false, GUILayout.Width(width));

        if (hash != m_Texture.GetHashCode())
        {
            if (!m_Texture.isReadable)
            {
                Debug.LogWarning("Texture Creator : Given texture is not readable.");
                m_Texture = Texture2D.blackTexture;
            }
            else if (m_Texture.format != TextureFormat.RGBA32 && m_Texture.format != TextureFormat.BGRA32 && m_Texture.format != TextureFormat.RGB24)
            {
                Debug.Log(m_Texture.format);
                Debug.LogWarning("Texture Creator : Given texture must be in RGBA32 or BGRA32 format.");
                m_Texture = Texture2D.blackTexture;
            }
        }

        GUILayout.Space(8.0f);

        bool overrideSize = m_OverrideSize;

        m_OverrideSize = GUILayout.Toggle(m_OverrideSize, "Override Size", GUILayout.Width(width));
        if (overrideSize != m_OverrideSize)
        {
            m_OverridenSize = new Vector2Int(m_Texture.width, m_Texture.height);
        }

        GUILayout.Space(8.0f);

        Vector2Int   overridenSize = m_OverridenSize;
        ScalingTypes scaling       = m_ScalingType;

        if (m_OverrideSize)
        {
            GUILayout.Label("New Size :");

            GUILayout.BeginHorizontal(GUILayout.Width(width));
            {
                m_OverridenSize.x = EditorGUILayout.IntField(m_OverridenSize.x);
                m_OverridenSize.y = EditorGUILayout.IntField(m_OverridenSize.y);
            }
            GUILayout.EndHorizontal();

            GUILayout.Space(8.0f);

            GUILayout.Label("Scaling Algorithm :");
            m_ScalingType = (ScalingTypes)EditorGUILayout.EnumPopup(m_ScalingType, GUILayout.Width(width));
        }

        IsDirty = hash != m_Texture.GetHashCode() || overridenSize != m_OverridenSize || overrideSize != m_OverrideSize || scaling != m_ScalingType;
    }
        private float GetProperty(ScalingTypes type, Obj_AI_Base target = null)
        {
            switch (type)
            {
                case ScalingTypes.AD:
                    return Player.TotalAttackDamage;

                case ScalingTypes.ADBonus:
                    return Player.FlatPhysicalDamageMod;

                case ScalingTypes.AP:
                    return Player.TotalMagicalDamage;

                case ScalingTypes.APBonus:
                    return Player.FlatMagicDamageMod;

                case ScalingTypes.Armor:
                    return Player.Armor;

                case ScalingTypes.Speed:
                    return Player.MoveSpeed;

                case ScalingTypes.TargetLostLife:
                    return target.MaxHealth - target.Health;

                case ScalingTypes.TargetAP:
                    return target.TotalMagicalDamage;

                case ScalingTypes.TargetAPBonus:
                    return target.FlatMagicDamageMod;

                default:
                    return 0;

            }
        }