DEADSOFTWARE

6c511a4fb260de21abe7dd196226005b1f14ea3f
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / game / GameItems.java
1 package ru.deadsoftware.cavedroid.game;
3 import com.badlogic.gdx.utils.ArrayMap;
4 import ru.deadsoftware.cavedroid.game.objects.Block;
5 import ru.deadsoftware.cavedroid.game.objects.Item;
7 import java.util.ArrayList;
9 public class GameItems {
11 private static ArrayMap<String, Block> blocks = new ArrayMap<String, Block>();
12 private static ArrayList<Item> items = new ArrayList<Item>();
14 public static boolean isFluid(int bl) {
15 return isWater(bl) || isLava(bl);
16 }
18 public static boolean isWater(int bl) {
19 return (bl == 8 || bl == 60 || bl == 61 || bl == 62 || bl == 63);
20 }
22 public static boolean isLava(int bl) {
23 return (bl == 9 || bl == 64 || bl == 65 || bl == 66 || bl == 67);
24 }
26 public static boolean isSlab(int bl) {
27 return (bl == 51 || bl == 53 || bl == 54 || bl == 55 || bl == 56 || bl == 58);
28 }
30 public static String getBlockKey(int id) {
31 return blocks.getKeyAt(id);
32 }
34 public static Block getBlock(int id) {
35 return blocks.getValueAt(id);
36 }
38 public static Item getItem(int id) {
39 return items.get(id);
40 }
42 public static int getBlocksSize() {
43 return blocks.size;
44 }
46 public static int getItemsSize() {
47 return items.size();
48 }
50 public static void loadItems() {
51 //0
52 items.add(null);
53 //1
54 items.add(new Item("Stone", 0, 0, 1));
55 //2
56 items.add(new Item("Grass", 1, 0, 2));
57 //3
58 items.add(new Item("Dirt", 2, 0, 3));
59 //4
60 items.add(new Item("Cobblestone", 3, 0, 4));
61 //5
62 items.add(new Item("Planks", 4, 0, 5));
63 //6
64 items.add(new Item("Sapling", 5, 0, 6));
65 //7
66 items.add(new Item("Bedrock", 6, 0, 7));
67 //8
68 items.add(new Item("Sand", 9, 0, 10));
69 //9
70 items.add(new Item("Gravel", 10, 0, 11));
71 //10
72 items.add(new Item("Golden Ore", 11, 0, 12));
73 //11
74 items.add(new Item("Iron Ore", 12, 0, 13));
75 //12
76 items.add(new Item("Coal Ore", 13, 0, 14));
77 //13
78 items.add(new Item("Wood", 14, 0, 15));
79 //14
80 items.add(new Item("Leaves", 15, 0, 16));
81 //15
82 items.add(new Item("Glass", 17, 0, 18));
83 //16
84 items.add(new Item("Lapis Ore", 18, 0, 19));
85 //17
86 items.add(new Item("Lapis Block", 19, 0, 20));
87 //18
88 items.add(new Item("Sandstone", 20, 0, 21));
89 //19
90 items.add(new Item("Cobweb", 24, 0, 25));
91 //20
92 items.add(new Item("Tall Grass", 25, 0, 26));
93 //21
94 items.add(new Item("Dead Bush", 26, 0, 27));
95 //22
96 items.add(new Item("Bricks", 27, 0, 28));
97 //23
98 items.add(new Item("Dandelion", 28, 0, 29));
99 //24
100 items.add(new Item("Rose", 29, 0, 30));
101 //25
102 items.add(new Item("Mushroom", 30, 0, 31));
103 //26
104 items.add(new Item("Mushroom", 31, 0, 32));
105 //27
106 items.add(new Item("White Wool", 32, 0, 33));
107 //28
108 items.add(new Item("Orange Wool", 33, 0, 34));
109 //29
110 items.add(new Item("Magenta Wool", 34, 0, 35));
111 //30
112 items.add(new Item("Light Blue Wool", 35, 0, 36));
113 //31
114 items.add(new Item("Yellow Wool", 36, 0, 37));
115 //32
116 items.add(new Item("Lime Wool", 37, 0, 38));
117 //33
118 items.add(new Item("Pink Wool", 38, 0, 39));
119 //34
120 items.add(new Item("Gray Wool", 39, 0, 40));
121 //35
122 items.add(new Item("Light Gray Wool", 40, 0, 41));
123 //36
124 items.add(new Item("Cyan Wool", 41, 0, 42));
125 //37
126 items.add(new Item("Purple Wool", 42, 0, 43));
127 //38
128 items.add(new Item("Blue Wool", 43, 0, 44));
129 //39
130 items.add(new Item("Brown Wool", 44, 0, 45));
131 //40
132 items.add(new Item("Green Wool", 45, 0, 46));
133 //41
134 items.add(new Item("Red Wool", 46, 0, 47));
135 //42
136 items.add(new Item("Black Wool", 47, 0, 48));
137 //43
138 items.add(new Item("Golden Block", 48, 0, 49));
139 //44
140 items.add(new Item("Iron Block", 49, 0, 50));
141 //45
142 items.add(new Item("Stone Slab", 50, 0, 51));
143 //46
144 items.add(new Item("Sandstone Slab", 52, 0, 53));
145 //47
146 items.add(new Item("Wooden Slab", 53, 0, 54));
147 //48
148 items.add(new Item("Cobblestone Slab", 54, 0, 55));
149 //49
150 items.add(new Item("Brick Slab", 55, 0, 56));
151 //50
152 items.add(new Item("Stone Brick", 64, 0, 57));
153 //51
154 items.add(new Item("Stone Brick Slab", 56, 0, 58));
155 //52
156 items.add(new Item("Cactus", 57, 0, 59));
157 //53
158 items.add(new Item("Obsidian", 65, 0, 68));
159 //54
160 items.add(new Item("Wooden Sword", 0, 1));
161 //55
162 items.add(new Item("Stone Sword", 1, 1));
163 //56
164 items.add(new Item("Iron Sword", 2, 1));
165 //57
166 items.add(new Item("Diamond Sword", 3, 1));
167 //58
168 items.add(new Item("Golden Sword", 4, 1));
169 //59
170 items.add(new Item("Wooden Shovel", 5, 1));
171 //60
172 items.add(new Item("Stone Shovel", 6, 1));
173 //61
174 items.add(new Item("Iron Shovel", 7, 1));
175 //62
176 items.add(new Item("Diamond Shovel", 8, 1));
177 //63
178 items.add(new Item("Golden Shovel", 9, 1));
179 //64
180 items.add(new Item("Empty Bucket", 10, 2));
181 //65
182 items.add(new Item("Water Bucket", 11, 2));
183 //66
184 items.add(new Item("Lava Bucket", 12, 2));
188 public static void loadBlocks() {
189 //0
190 blocks.put("none", null);
191 //1
192 blocks.put("stone", new Block(0, 450, 4));
193 //2
194 blocks.put("grass", new Block(1, 54, 3));
195 //3
196 blocks.put("dirt", new Block(2, 45, 3));
197 //4
198 blocks.put("cobblestone", new Block(3, 600, 4));
199 //5
200 blocks.put("planks", new Block(4, 180, 5));
201 //6
202 blocks.put("sapling", new Block(5, 0, 6, false, false, true, true));
203 //7
204 blocks.put("bedrock", new Block(6, -1, 7));
205 //8
206 blocks.put("water", new Block(7, -1, 0, false, false, true));
207 //9
208 blocks.put("lava", new Block(8, -1, 0, false, false, false));
209 //10
210 blocks.put("sand", new Block(9, 45, 8));
211 //11
212 blocks.put("gravel", new Block(10, 54, 9));
213 //12
214 blocks.put("gold_ore", new Block(11, 900, 10));
215 //13
216 blocks.put("iron_ore", new Block(12, 900, 11));
217 //14
218 blocks.put("coal_ore", new Block(13, 900, 0));
219 //15
220 blocks.put("log", new Block(14, 180, 13));
221 //16
222 blocks.put("leaves", new Block(15, 21, 0));
223 //17
224 blocks.put("sponge", new Block(16, 54, 0));
225 //18
226 blocks.put("glass", new Block(17, 27, 0, true, false, true));
227 //19
228 blocks.put("lapis_ore", new Block(18, 900, 0));
229 //20
230 blocks.put("lapis_block", new Block(19, 900, 17));
231 //21
232 blocks.put("sandstone", new Block(20, 240, 18));
233 //22
234 blocks.put("noteblock", new Block(21, 75, 0));
235 //23
236 blocks.put("bed_l", new Block(22, 21, 0, false, true, true));
237 //24
238 blocks.put("bed_r", new Block(23, 21, 0, false, true, true));
239 //25
240 blocks.put("cobweb", new Block(24, 1200, 0, false, false, true));
241 //26
242 blocks.put("tallgrass", new Block(25, 0, 0, false, false, true, true));
243 //27
244 blocks.put("deadbush", new Block(26, 0, 0, false, false, true, true));
245 //28
246 blocks.put("brick_block", new Block(27, 600, 22));
247 //29
248 blocks.put("dandelion", new Block(28, 0, 23, false, false, true, true));
249 //30
250 blocks.put("rose", new Block(29, 0, 24, false, false, true, true));
251 //31
252 blocks.put("brown_mushroom", new Block(30, 0, 25, false, false, true, true));
253 //32
254 blocks.put("red_mushroom", new Block(31, 0, 26, false, false, true, true));
255 //33
256 blocks.put("wool_while", new Block(32, 75, 27, true, false, false));
257 //34
258 blocks.put("wool_orange", new Block(33, 75, 28, true, false, false));
259 //35
260 blocks.put("wool_magenta", new Block(34, 75, 29, true, false, false));
261 //36
262 blocks.put("wool_lightblue", new Block(35, 75, 30, true, false, false));
263 //37
264 blocks.put("wool_yellow", new Block(36, 75, 31, true, false, false));
265 //38
266 blocks.put("wool_lime", new Block(37, 75, 32, true, false, false));
267 //39
268 blocks.put("wool_pink", new Block(38, 75, 33, true, false, false));
269 //40
270 blocks.put("wool_gray", new Block(39, 75, 34, true, false, false));
271 //41
272 blocks.put("wool_lightgray", new Block(40, 75, 35, true, false, false));
273 //42
274 blocks.put("wool_cyan", new Block(41, 75, 36, true, false, false));
275 //43
276 blocks.put("wool_purple", new Block(42, 75, 37, true, false, false));
277 //44
278 blocks.put("wool_blue", new Block(43, 75, 38, true, false, false));
279 //45
280 blocks.put("wool_brown", new Block(44, 75, 39, true, false, false));
281 //46
282 blocks.put("wool_green", new Block(45, 75, 40, true, false, false));
283 //47
284 blocks.put("wool_red", new Block(46, 75, 41, true, false, false));
285 //48
286 blocks.put("wool_black", new Block(47, 75, 42, true, false, false));
287 //49
288 blocks.put("gold_block", new Block(48, 900, 43));
289 //50
290 blocks.put("iron_block", new Block(49, 1500, 44));
291 //51
292 blocks.put("stone_slab", new Block(0, 8, 16, 8, 50, 600, 45, true, false, true));
293 //52
294 blocks.put("double_stone_slab", new Block(51, 600, 45));
295 //53
296 blocks.put("sandstone_slab", new Block(0, 8, 16, 8, 52, 600, 46, true, false, true));
297 //54
298 blocks.put("wooden_slab", new Block(0, 8, 16, 8, 53, 180, 47, true, false, true));
299 //55
300 blocks.put("cobblestone_slab", new Block(0, 8, 16, 8, 54, 600, 48, true, false, true));
301 //56
302 blocks.put("brick_slab", new Block(0, 8, 16, 8, 55, 600, 49, true, false, true));
303 //57
304 blocks.put("stonebrick", new Block(64, 450, 50));
305 //58
306 blocks.put("stone_brick_slab", new Block(0, 8, 16, 8, 56, 450, 51, true, false, true));
307 //59
308 blocks.put("cactus", new Block(1, 0, 14, 16, 57, 39, 52, true, false, true, true));
309 //60
310 blocks.put("water_16", new Block(7, -1, 0, false, false, true));
311 //61
312 blocks.put("water_12", new Block(58, -1, 0, false, false, true));
313 //62
314 blocks.put("water_8", new Block(59, -1, 0, false, false, true));
315 //63
316 blocks.put("water_4", new Block(60, -1, 0, false, false, true));
317 //64
318 blocks.put("lava_16", new Block(8, -1, 0, false, false, true));
319 //65
320 blocks.put("lava_12", new Block(61, -1, 0, false, false, true));
321 //66
322 blocks.put("lava_8", new Block(62, -1, 0, false, false, true));
323 //67
324 blocks.put("lava_4", new Block(63, -1, 0, false, false, true));
325 //68
326 blocks.put("obsidian", new Block(65, 1500, 53));
329 public static void load() {
330 loadBlocks();
331 loadItems();