aboutsummaryrefslogtreecommitdiff
path: root/src/Java/miscutil/gregtech/api/enums/GregtechTextures.java
blob: 2db6f1459981a29a6fcd71d0b6cbe56c1980379e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
package miscutil.gregtech.api.enums;

import gregtech.api.interfaces.IIconContainer;
import gregtech.api.interfaces.ITexture;
import miscutil.core.lib.CORE;
import net.minecraft.client.renderer.texture.TextureMap;
import net.minecraft.util.IIcon;
import net.minecraft.util.ResourceLocation;

public class GregtechTextures {
	public enum BlockIcons implements IIconContainer, Runnable {	


		LARGECENTRIFUGE1, LARGECENTRIFUGE2, LARGECENTRIFUGE3, 
		LARGECENTRIFUGE4, LARGECENTRIFUGE5, LARGECENTRIFUGE6, 
		LARGECENTRIFUGE7, LARGECENTRIFUGE8, LARGECENTRIFUGE9, 
		LARGECENTRIFUGE_ACTIVE1, LARGECENTRIFUGE_ACTIVE2, LARGECENTRIFUGE_ACTIVE3, 
		LARGECENTRIFUGE_ACTIVE4, LARGECENTRIFUGE_ACTIVE5, LARGECENTRIFUGE_ACTIVE6, 
		LARGECENTRIFUGE_ACTIVE7, LARGECENTRIFUGE_ACTIVE8, LARGECENTRIFUGE_ACTIVE9;

		public static final IIconContainer[]

				CENTRIFUGE = new IIconContainer[]{
			LARGECENTRIFUGE1,
			LARGECENTRIFUGE2,
			LARGECENTRIFUGE3,
			LARGECENTRIFUGE4,
			LARGECENTRIFUGE5,
			LARGECENTRIFUGE6,
			LARGECENTRIFUGE7,
			LARGECENTRIFUGE8,
			LARGECENTRIFUGE9
		},
		CENTRIFUGE_ACTIVE = new IIconContainer[]{
			LARGECENTRIFUGE_ACTIVE1,
			LARGECENTRIFUGE_ACTIVE2,
			LARGECENTRIFUGE_ACTIVE3,
			LARGECENTRIFUGE_ACTIVE4,
			LARGECENTRIFUGE_ACTIVE5,
			LARGECENTRIFUGE_ACTIVE6,
			LARGECENTRIFUGE_ACTIVE7,
			LARGECENTRIFUGE_ACTIVE8,
			LARGECENTRIFUGE_ACTIVE9
		};

		public static ITexture[]   
				GT_CASING_BLOCKS = new ITexture[64];

		protected IIcon mIcon;

        private BlockIcons() {
            CORE.GT_BlockIconload.add(this);
        }

        @Override
        public IIcon getIcon() {
            return mIcon;
        }

        @Override
        public IIcon getOverlayIcon() {
            return null;
        }

        @Override
        public void run() {
            mIcon = CORE.GT_BlockIcons.registerIcon(CORE.RES_PATH_BLOCK + "iconsets/" + this);
        }

        @Override
        public ResourceLocation getTextureFile() {
            return TextureMap.locationBlocksTexture;
        }

        public static class CustomIcon implements IIconContainer, Runnable {
            protected IIcon mIcon;
            protected String mIconName;

            public CustomIcon(String aIconName) {
                mIconName = aIconName;
                CORE.GT_BlockIconload.add(this);
            }

            @Override
            public IIcon getIcon() {
                return mIcon;
            }

            @Override
            public IIcon getOverlayIcon() {
                return null;
            }

            @Override
            public void run() {
                mIcon = CORE.GT_BlockIcons.registerIcon(CORE.RES_PATH_BLOCK + mIconName);
            }

            @Override
            public ResourceLocation getTextureFile() {
                return TextureMap.locationBlocksTexture;
            }
        }
	}
}