package com.minelittlepony.pony.data;

import com.minelittlepony.MineLittlePony;
import com.minelittlepony.transform.PonyTransformation;

public enum PonySize implements ITriggerPixelMapped<PonySize> {
    NORMAL(0, 0.4f, 1f, PonyTransformation.NORMAL),
    LARGE(0xce3254, 0.5f, 0.8f, PonyTransformation.LARGE),
    FOAL(0xffbe53, 0.25f, 0.8f, PonyTransformation.FOAL),
    TALL(0x534b76, 0.45f, 1f, PonyTransformation.TALL);

    private int triggerValue;

    private float shadowSize;
    private float scale;

    private PonyTransformation transform;

    PonySize(int pixel, float shadowSz, float scaleF, PonyTransformation transformation) {
        triggerValue = pixel;
        shadowSize = shadowSz;
        scale = scaleF;
        transform = transformation;
    }

    public float getShadowSize() {
        if (MineLittlePony.getConfig().showscale) {
            return shadowSize * 0.9F;
        }
        return shadowSize;
    }

    public float getScaleFactor() {
        if (MineLittlePony.getConfig().showscale) {
            return scale * 0.9F;
        }
        return scale;
    }

    public PonyTransformation getTranformation() {
        return transform;
    }

    @Override
    public int getTriggerPixel() {
        return triggerValue;
    }
}

@@ -203,26 +203,34 @@
     
-NORM
+T
 AL
+L
 (0
+x534b76
 , 0.4
+5
 f, 1
-f
+.1F
 , Po
@@ -250,13 +250,11 @@
 ion.
-NORMA
+TAL
 L),%0A
@@ -275,28 +275,25 @@
 3254, 0.5f, 
-0.8f
+1
 , PonyTransf
@@ -317,34 +317,28 @@
     
-FOAL(0xffbe53
+NORMAL(0
 , 0.
-25
+4
 f, 0.8
-f
+F
 , Po
@@ -358,10 +358,12 @@
 ion.
-FO
+NORM
 AL),
@@ -371,32 +371,34 @@
     
-TAL
+FOA
 L(0x
-534b76
+ffbe53
 , 0.
-4
+2
 5f, 
-1f
+0.8F
 , Po
@@ -414,19 +414,19 @@
 rmation.
-TAL
+FOA
 L);%0A%0A   

Correct pony scaling