diff --git a/core/assets-raw/sprites/blocks/production/coaldrill.png b/core/assets-raw/sprites/blocks/production/coaldrill.png deleted file mode 100644 index 1f633ad9ec..0000000000 Binary files a/core/assets-raw/sprites/blocks/production/coaldrill.png and /dev/null differ diff --git a/core/assets-raw/sprites/blocks/production/coalextractor.png b/core/assets-raw/sprites/blocks/production/coalextractor.png deleted file mode 100644 index 27e85b1258..0000000000 Binary files a/core/assets-raw/sprites/blocks/production/coalextractor.png and /dev/null differ diff --git a/core/assets-raw/sprites/blocks/production/leaddrill.png b/core/assets-raw/sprites/blocks/production/leaddrill.png deleted file mode 100644 index 3b1a608077..0000000000 Binary files a/core/assets-raw/sprites/blocks/production/leaddrill.png and /dev/null differ diff --git a/core/assets-raw/sprites/blocks/production/quartzextractor.png b/core/assets-raw/sprites/blocks/production/quartzextractor.png deleted file mode 100644 index 73070e8cd5..0000000000 Binary files a/core/assets-raw/sprites/blocks/production/quartzextractor.png and /dev/null differ diff --git a/core/assets-raw/sprites/blocks/production/reinforceddrill-rotator.png b/core/assets-raw/sprites/blocks/production/reinforceddrill-rotator.png new file mode 100644 index 0000000000..d86cd46e1e Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/reinforceddrill-rotator.png differ diff --git a/core/assets-raw/sprites/blocks/production/reinforceddrill-top.png b/core/assets-raw/sprites/blocks/production/reinforceddrill-top.png new file mode 100644 index 0000000000..e623952329 Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/reinforceddrill-top.png differ diff --git a/core/assets-raw/sprites/blocks/production/reinforceddrill.png b/core/assets-raw/sprites/blocks/production/reinforceddrill.png new file mode 100644 index 0000000000..b0f93ab55f Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/reinforceddrill.png differ diff --git a/core/assets-raw/sprites/blocks/production/steeldrill-rotator.png b/core/assets-raw/sprites/blocks/production/steeldrill-rotator.png new file mode 100644 index 0000000000..6445608818 Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/steeldrill-rotator.png differ diff --git a/core/assets-raw/sprites/blocks/production/steeldrill-top.png b/core/assets-raw/sprites/blocks/production/steeldrill-top.png new file mode 100644 index 0000000000..47facc08d6 Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/steeldrill-top.png differ diff --git a/core/assets-raw/sprites/blocks/production/steeldrill.png b/core/assets-raw/sprites/blocks/production/steeldrill.png new file mode 100644 index 0000000000..186258204d Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/steeldrill.png differ diff --git a/core/assets-raw/sprites/blocks/production/thoriumdrill.png b/core/assets-raw/sprites/blocks/production/thoriumdrill.png deleted file mode 100644 index 582b2c446e..0000000000 Binary files a/core/assets-raw/sprites/blocks/production/thoriumdrill.png and /dev/null differ diff --git a/core/assets-raw/sprites/blocks/production/titaniumdrill-rotator.png b/core/assets-raw/sprites/blocks/production/titaniumdrill-rotator.png new file mode 100644 index 0000000000..f920d9ed60 Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/titaniumdrill-rotator.png differ diff --git a/core/assets-raw/sprites/blocks/production/titaniumdrill-top.png b/core/assets-raw/sprites/blocks/production/titaniumdrill-top.png new file mode 100644 index 0000000000..d8597f4ea8 Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/titaniumdrill-top.png differ diff --git a/core/assets-raw/sprites/blocks/production/titaniumdrill.png b/core/assets-raw/sprites/blocks/production/titaniumdrill.png index d2f8fef5fc..3d40dae12c 100644 Binary files a/core/assets-raw/sprites/blocks/production/titaniumdrill.png and b/core/assets-raw/sprites/blocks/production/titaniumdrill.png differ diff --git a/core/assets-raw/sprites/blocks/production/uraniumextractor.png b/core/assets-raw/sprites/blocks/production/uraniumextractor.png deleted file mode 100644 index 77c42162e8..0000000000 Binary files a/core/assets-raw/sprites/blocks/production/uraniumextractor.png and /dev/null differ diff --git a/core/assets-raw/sprites/items/item-quartz.png b/core/assets-raw/sprites/items/item-quartz.png deleted file mode 100644 index cce04056b0..0000000000 Binary files a/core/assets-raw/sprites/items/item-quartz.png and /dev/null differ diff --git a/core/assets-raw/sprites/items/item-silicon.png b/core/assets-raw/sprites/items/item-silicon.png index 5e18933ad8..7950ca9ca2 100644 Binary files a/core/assets-raw/sprites/items/item-silicon.png and b/core/assets-raw/sprites/items/item-silicon.png differ diff --git a/core/assets/sprites/sprites.atlas b/core/assets/sprites/sprites.atlas index b3f41fede9..a25b8c9901 100644 --- a/core/assets/sprites/sprites.atlas +++ b/core/assets/sprites/sprites.atlas @@ -13,42 +13,42 @@ background index: -1 conduit-bottom rotate: false - xy: 274, 103 + xy: 264, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-top rotate: false - xy: 274, 93 + xy: 284, 103 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduittunnel rotate: false - xy: 284, 103 + xy: 274, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor rotate: false - xy: 274, 83 + xy: 284, 93 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyormove rotate: false - xy: 284, 93 + xy: 284, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyortunnel rotate: false - xy: 284, 83 + xy: 294, 103 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -62,42 +62,42 @@ core index: -1 junction rotate: false - xy: 626, 286 + xy: 636, 276 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquidjunction rotate: false - xy: 636, 266 + xy: 646, 286 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquidrouter rotate: false - xy: 636, 256 + xy: 646, 276 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquidrouter-bottom rotate: false - xy: 632, 246 + xy: 646, 266 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquidrouter-liquid rotate: false - xy: 642, 296 + xy: 646, 256 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquidrouter-top rotate: false - xy: 652, 299 + xy: 642, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -132,70 +132,70 @@ multiplexer index: -1 poweredconveyor rotate: false - xy: 656, 276 + xy: 672, 301 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 poweredconveyormove rotate: false - xy: 656, 266 + xy: 682, 301 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulseconduit-bottom rotate: false - xy: 689, 341 + xy: 750, 396 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulseconduit-top rotate: false - xy: 689, 331 + xy: 760, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 router rotate: false - xy: 662, 299 + xy: 840, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sortedunloader rotate: false - xy: 750, 396 + xy: 344, 97 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sorter rotate: false - xy: 760, 399 + xy: 354, 107 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 splitter rotate: false - xy: 770, 399 + xy: 344, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 steelconveyor rotate: false - xy: 780, 399 + xy: 354, 97 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 steelconveyormove rotate: false - xy: 790, 399 + xy: 364, 107 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -209,7 +209,7 @@ teleporter-top index: -1 unloader rotate: false - xy: 304, 107 + xy: 544, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -223,70 +223,70 @@ vault index: -1 vault-icon rotate: false - xy: 314, 107 + xy: 554, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 weaponfactory rotate: false - xy: 698, 373 + xy: 680, 371 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 blackrock1 rotate: false - xy: 465, 150 + xy: 233, 113 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackrockshadow1 rotate: false - xy: 475, 152 + xy: 243, 113 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstone1 rotate: false - xy: 223, 113 + xy: 253, 113 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstone2 rotate: false - xy: 233, 113 + xy: 263, 113 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstone3 rotate: false - xy: 243, 113 + xy: 273, 113 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstoneblock1 rotate: false - xy: 253, 113 + xy: 283, 113 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstoneblock2 rotate: false - xy: 263, 113 + xy: 293, 113 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstoneblock3 rotate: false - xy: 273, 113 + xy: 224, 103 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -300,49 +300,49 @@ blackstoneedge index: -1 coal1 rotate: false - xy: 244, 103 + xy: 254, 103 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 coal2 rotate: false - xy: 234, 83 + xy: 244, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 coal3 rotate: false - xy: 244, 93 + xy: 254, 93 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 deepwater rotate: false - xy: 294, 93 + xy: 294, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt1 rotate: false - xy: 294, 83 + xy: 582, 244 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt2 rotate: false - xy: 582, 244 + xy: 579, 234 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt3 rotate: false - xy: 579, 234 + xy: 477, 152 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -356,35 +356,35 @@ dirtedge index: -1 grass1 rotate: false - xy: 897, 403 + xy: 887, 403 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grass2 rotate: false - xy: 907, 403 + xy: 413, 123 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grass3 rotate: false - xy: 917, 403 + xy: 477, 132 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grassblock1 rotate: false - xy: 927, 403 + xy: 897, 403 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grassblock2 rotate: false - xy: 421, 125 + xy: 907, 405 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -398,406 +398,406 @@ grassedge index: -1 ice1 rotate: false - xy: 937, 407 + xy: 423, 123 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ice2 rotate: false - xy: 947, 407 + xy: 433, 124 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ice3 rotate: false - xy: 957, 407 + xy: 443, 124 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 iceedge rotate: false - xy: 933, 445 + xy: 903, 415 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 icerock1 rotate: false - xy: 967, 407 + xy: 453, 124 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icerock2 rotate: false - xy: 977, 411 + xy: 669, 351 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icerockshadow1 rotate: false - xy: 987, 411 + xy: 669, 341 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rockshadow1 rotate: false - xy: 987, 411 + xy: 669, 341 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icerockshadow2 rotate: false - xy: 427, 135 + xy: 669, 331 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rockshadow2 rotate: false - xy: 427, 135 + xy: 669, 331 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 iron1 rotate: false - xy: 437, 136 + xy: 674, 361 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 iron2 rotate: false - xy: 447, 136 + xy: 684, 361 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 iron3 rotate: false - xy: 457, 136 + xy: 679, 351 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lava rotate: false - xy: 626, 276 + xy: 636, 266 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lavaedge rotate: false - xy: 947, 445 + xy: 919, 431 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 lead1 rotate: false - xy: 626, 256 + xy: 632, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lead2 rotate: false - xy: 622, 246 + xy: 642, 296 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lead3 rotate: false - xy: 636, 286 + xy: 652, 299 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 mossblock rotate: false - xy: 646, 276 + xy: 656, 276 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 oil rotate: false - xy: 646, 266 + xy: 656, 266 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 oiledge rotate: false - xy: 935, 431 + xy: 734, 380 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 rock1 rotate: false - xy: 694, 361 + xy: 820, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rock2 rotate: false - xy: 704, 363 + xy: 830, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand1 rotate: false - xy: 699, 351 + xy: 870, 397 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand2 rotate: false - xy: 699, 341 + xy: 744, 370 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand3 rotate: false - xy: 699, 331 + xy: 744, 360 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sandblock1 rotate: false - xy: 699, 321 + xy: 744, 350 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sandblock2 rotate: false - xy: 697, 311 + xy: 305, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sandblock3 rotate: false - xy: 692, 301 + xy: 315, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sandedge rotate: false - xy: 961, 445 + xy: 730, 366 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 shrub rotate: false - xy: 719, 350 + xy: 304, 97 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shrubshadow rotate: false - xy: 709, 330 + xy: 314, 107 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow1 rotate: false - xy: 729, 340 + xy: 314, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow2 rotate: false - xy: 729, 330 + xy: 324, 97 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow3 rotate: false - xy: 712, 301 + xy: 334, 107 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snowblock1 rotate: false - xy: 739, 350 + xy: 324, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snowblock2 rotate: false - xy: 739, 340 + xy: 334, 97 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snowblock3 rotate: false - xy: 739, 330 + xy: 344, 107 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snowedge rotate: false - xy: 949, 417 + xy: 933, 445 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 stone1 rotate: false - xy: 810, 399 + xy: 374, 97 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stone2 rotate: false - xy: 820, 399 + xy: 374, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stone3 rotate: false - xy: 830, 399 + xy: 999, 449 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stoneblock1 rotate: false - xy: 840, 399 + xy: 1009, 450 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stoneblock2 rotate: false - xy: 850, 399 + xy: 148, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stoneblock3 rotate: false - xy: 860, 399 + xy: 158, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stoneedge rotate: false - xy: 1003, 446 + xy: 947, 431 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 thorium1 rotate: false - xy: 335, 117 + xy: 208, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 thorium2 rotate: false - xy: 345, 117 + xy: 218, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 thorium3 rotate: false - xy: 355, 117 + xy: 504, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium1 rotate: false - xy: 375, 117 + xy: 514, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium2 rotate: false - xy: 385, 113 + xy: 524, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium3 rotate: false - xy: 395, 113 + xy: 534, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 water rotate: false - xy: 324, 107 + xy: 494, 169 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 wateredge rotate: false - xy: 963, 417 + xy: 961, 445 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 block-middle rotate: false - xy: 224, 93 + xy: 234, 93 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pump-liquid rotate: false - xy: 224, 93 + xy: 234, 93 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-liquid rotate: false - xy: 264, 83 + xy: 274, 93 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 cross-1 rotate: false - xy: 294, 103 + xy: 294, 93 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -818,28 +818,28 @@ cross-3 index: -1 enemyspawn rotate: false - xy: 627, 306 + xy: 494, 179 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 playerspawn rotate: false - xy: 656, 286 + xy: 662, 299 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ripples rotate: false - xy: 429, 146 + xy: 441, 134 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 shadow rotate: false - xy: 453, 158 + xy: 453, 134 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -860,21 +860,21 @@ batterylarge index: -1 coalgenerator rotate: false - xy: 254, 93 + xy: 264, 103 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 coalgenerator-top rotate: false - xy: 264, 103 + xy: 254, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 combustiongenerator rotate: false - xy: 254, 83 + xy: 264, 93 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -909,56 +909,56 @@ nuclearreactor-lights index: -1 powerinfinite rotate: false - xy: 656, 256 + xy: 687, 311 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 powernode rotate: false - xy: 652, 246 + xy: 692, 301 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 powervoid rotate: false - xy: 689, 351 + xy: 750, 406 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rtgenerator rotate: false - xy: 672, 301 + xy: 850, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rtgenerator-top rotate: false - xy: 682, 301 + xy: 860, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shieldgenerator rotate: false - xy: 734, 360 + xy: 345, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shieldprojector rotate: false - xy: 853, 409 + xy: 835, 409 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 solarpanel rotate: false - xy: 750, 406 + xy: 334, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -972,7 +972,7 @@ teleporter index: -1 thermalgenerator rotate: false - xy: 325, 117 + xy: 198, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1033,20 +1033,6 @@ centrifuge orig: 16, 16 offset: 0, 0 index: -1 -coaldrill - rotate: false - xy: 254, 103 - size: 8, 8 - orig: 8, 8 - offset: 0, 0 - index: -1 -coalextractor - rotate: false - xy: 244, 83 - size: 8, 8 - orig: 8, 8 - offset: 0, 0 - index: -1 cryofluidmixer-bottom rotate: false xy: 656, 361 @@ -1091,49 +1077,56 @@ cultivator-top index: -1 extractor rotate: false - xy: 637, 306 + xy: 627, 306 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 fluxpump rotate: false - xy: 887, 403 + xy: 637, 306 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 irondrill rotate: false - xy: 431, 125 + xy: 679, 341 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 irondrill-rotator rotate: false - xy: 441, 126 + xy: 679, 331 + size: 8, 8 + orig: 8, 8 + offset: 0, 0 + index: -1 +titaniumdrill-rotator + rotate: false + xy: 679, 331 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 irondrill-top rotate: false - xy: 451, 126 + xy: 669, 321 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 itemsource rotate: false - xy: 622, 296 + xy: 622, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 itemvoid rotate: false - xy: 632, 296 + xy: 636, 286 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1161,21 +1154,14 @@ laserdrill-top index: -1 lavasmelter rotate: false - xy: 626, 266 - size: 8, 8 - orig: 8, 8 - offset: 0, 0 - index: -1 -leaddrill - rotate: false - xy: 636, 276 + xy: 636, 256 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 melter rotate: false - xy: 646, 286 + xy: 656, 286 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1210,14 +1196,14 @@ oilextractor-top index: -1 oilrefinery rotate: false - xy: 646, 256 + xy: 656, 256 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 omnidrill rotate: false - xy: 642, 246 + xy: 652, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1266,112 +1252,140 @@ powersmelter-top index: -1 pulverizer rotate: false - xy: 689, 321 + xy: 770, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pump rotate: false - xy: 687, 311 + xy: 780, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 -quartzextractor +reinforceddrill rotate: false - xy: 835, 409 - size: 16, 16 - orig: 16, 16 + xy: 790, 399 + size: 8, 8 + orig: 8, 8 + offset: 0, 0 + index: -1 +reinforceddrill-rotator + rotate: false + xy: 800, 399 + size: 8, 8 + orig: 8, 8 + offset: 0, 0 + index: -1 +reinforceddrill-top + rotate: false + xy: 810, 399 + size: 8, 8 + orig: 8, 8 offset: 0, 0 index: -1 separator rotate: false - xy: 714, 360 + xy: 325, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 siliconextractor rotate: false - xy: 719, 340 + xy: 304, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 smelter rotate: false - xy: 729, 350 + xy: 314, 97 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 smelter-middle rotate: false - xy: 719, 330 + xy: 324, 107 + size: 8, 8 + orig: 8, 8 + offset: 0, 0 + index: -1 +steeldrill + rotate: false + xy: 354, 87 + size: 8, 8 + orig: 8, 8 + offset: 0, 0 + index: -1 +steeldrill-rotator + rotate: false + xy: 364, 97 + size: 8, 8 + orig: 8, 8 + offset: 0, 0 + index: -1 +steeldrill-top + rotate: false + xy: 374, 107 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stonedrill rotate: false - xy: 870, 397 + xy: 168, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stoneformer rotate: false - xy: 305, 117 - size: 8, 8 - orig: 8, 8 - offset: 0, 0 - index: -1 -thoriumdrill - rotate: false - xy: 365, 117 + xy: 178, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titaniumdrill rotate: false - xy: 405, 113 + xy: 544, 185 + size: 8, 8 + orig: 8, 8 + offset: 0, 0 + index: -1 +titaniumdrill-top + rotate: false + xy: 554, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titaniumextractor rotate: false - xy: 415, 113 - size: 8, 8 - orig: 8, 8 - offset: 0, 0 - index: -1 -uraniumextractor - rotate: false - xy: 304, 97 + xy: 564, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 waterextractor rotate: false - xy: 921, 461 + xy: 903, 461 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 waterextractor-liquid rotate: false - xy: 680, 371 + xy: 921, 461 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 block-1 rotate: false - xy: 224, 103 + xy: 224, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1413,7 +1427,7 @@ chainturret index: -1 doubleturret rotate: false - xy: 612, 246 + xy: 602, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1448,7 +1462,7 @@ gatlingturret index: -1 laserturret rotate: false - xy: 417, 145 + xy: 453, 146 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1476,28 +1490,28 @@ missileturret index: -1 railgunturret rotate: false - xy: 429, 158 + xy: 417, 133 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 repairturret rotate: false - xy: 441, 158 + xy: 429, 134 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 shotgunturret rotate: false - xy: 441, 146 + xy: 465, 148 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 teslaturret rotate: false - xy: 453, 146 + xy: 465, 136 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1553,14 +1567,14 @@ walkerfactory-top-open index: -1 compositewall rotate: false - xy: 264, 93 + xy: 274, 103 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 door rotate: false - xy: 592, 246 + xy: 477, 142 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1581,14 +1595,14 @@ door-large-open index: -1 door-open rotate: false - xy: 602, 246 + xy: 592, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 duriumwall rotate: false - xy: 485, 152 + xy: 612, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1602,49 +1616,49 @@ duriumwall-large index: -1 ironwall rotate: false - xy: 461, 126 + xy: 679, 321 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 steelwall rotate: false - xy: 800, 399 + xy: 364, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 steelwall-large rotate: false - xy: 885, 461 + xy: 853, 409 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 stonewall rotate: false - xy: 315, 117 + xy: 188, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titaniumshieldwall rotate: false - xy: 425, 115 + xy: 574, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titaniumwall rotate: false - xy: 435, 115 + xy: 504, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titaniumwall-large rotate: false - xy: 903, 461 + xy: 885, 461 size: 16, 16 orig: 16, 16 offset: 0, 0 @@ -1658,7 +1672,7 @@ blank index: -1 bullet rotate: false - xy: 234, 103 + xy: 244, 103 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1700,126 +1714,119 @@ laserfull index: -1 shell rotate: false - xy: 724, 360 + xy: 335, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shot rotate: false - xy: 709, 350 + xy: 375, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shot-long rotate: false - xy: 709, 340 + xy: 304, 107 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanshell rotate: false - xy: 445, 116 + xy: 514, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-biomatter rotate: false - xy: 669, 351 + xy: 667, 311 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-coal rotate: false - xy: 669, 341 + xy: 677, 311 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-densealloy rotate: false - xy: 669, 331 + xy: 487, 152 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-iron rotate: false - xy: 674, 361 + xy: 487, 142 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-lead rotate: false - xy: 684, 361 + xy: 487, 132 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-plastic rotate: false - xy: 679, 351 - size: 8, 8 - orig: 8, 8 - offset: 0, 0 - index: -1 -item-quartz - rotate: false - xy: 679, 341 + xy: 622, 296 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-silicon rotate: false - xy: 679, 331 + xy: 632, 296 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-steel rotate: false - xy: 669, 321 + xy: 626, 286 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-stone rotate: false - xy: 679, 321 + xy: 626, 276 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-thorium rotate: false - xy: 667, 311 + xy: 626, 266 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-titanium rotate: false - xy: 677, 311 + xy: 626, 256 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 standard-mech rotate: false - xy: 963, 431 + xy: 933, 431 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 standard-ship rotate: false - xy: 989, 445 + xy: 947, 445 size: 12, 12 orig: 12, 12 offset: 0, 0 @@ -2016,7 +2023,7 @@ icon-admin index: -1 icon-admin-small rotate: false - xy: 1017, 452 + xy: 494, 189 size: 6, 6 orig: 6, 6 offset: 0, 0 @@ -2030,7 +2037,7 @@ icon-areaDelete index: -1 icon-arrow rotate: false - xy: 716, 370 + xy: 698, 375 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2051,14 +2058,14 @@ icon-arrow-left index: -1 icon-arrow-right rotate: false - xy: 977, 433 + xy: 961, 433 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-arrow-up rotate: false - xy: 977, 421 + xy: 975, 447 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -2086,7 +2093,7 @@ icon-cancel index: -1 icon-chat rotate: false - xy: 989, 433 + xy: 987, 447 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -2121,21 +2128,21 @@ icon-close-over index: -1 icon-crafting rotate: false - xy: 989, 421 + xy: 502, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-cursor rotate: false - xy: 502, 195 + xy: 514, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-defense rotate: false - xy: 514, 195 + xy: 526, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -2156,7 +2163,7 @@ icon-discord index: -1 icon-distribution rotate: false - xy: 526, 195 + xy: 538, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -2233,7 +2240,7 @@ icon-github index: -1 icon-google-play rotate: false - xy: 987, 459 + xy: 714, 370 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2247,42 +2254,42 @@ icon-grid index: -1 icon-hold rotate: false - xy: 538, 195 + xy: 550, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-holdDelete rotate: false - xy: 550, 195 + xy: 562, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-home rotate: false - xy: 1003, 460 + xy: 987, 459 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-host rotate: false - xy: 734, 394 + xy: 1003, 460 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-info rotate: false - xy: 562, 195 + xy: 136, 53 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-itch.io rotate: false - xy: 476, 162 + xy: 698, 359 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2296,21 +2303,21 @@ icon-line index: -1 icon-link rotate: false - xy: 118, 31 + xy: 714, 354 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-liquid rotate: false - xy: 734, 382 + xy: 154, 64 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-load rotate: false - xy: 113, 15 + xy: 734, 394 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2338,14 +2345,14 @@ icon-loading index: -1 icon-logic rotate: false - xy: 732, 370 + xy: 166, 64 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-menu rotate: false - xy: 385, 123 + xy: 178, 64 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -2359,14 +2366,14 @@ icon-menu-large index: -1 icon-none rotate: false - xy: 397, 123 + xy: 190, 64 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-pause rotate: false - xy: 136, 53 + xy: 202, 64 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -2380,7 +2387,7 @@ icon-pencil index: -1 icon-pencil-small rotate: false - xy: 129, 15 + xy: 476, 162 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2394,42 +2401,42 @@ icon-pick index: -1 icon-play rotate: false - xy: 154, 64 + xy: 214, 64 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-play-2 rotate: false - xy: 134, 31 + xy: 118, 31 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-players rotate: false - xy: 166, 64 + xy: 574, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-power rotate: false - xy: 178, 64 + xy: 417, 157 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-production rotate: false - xy: 190, 64 + xy: 417, 145 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-quit rotate: false - xy: 145, 15 + xy: 113, 15 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2443,14 +2450,14 @@ icon-redo index: -1 icon-refresh rotate: false - xy: 385, 135 + xy: 129, 15 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-rename rotate: false - xy: 401, 135 + xy: 134, 31 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2464,35 +2471,35 @@ icon-resize index: -1 icon-rotate rotate: false - xy: 885, 445 + xy: 145, 15 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-rotate-arrow rotate: false - xy: 901, 445 + xy: 385, 135 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-rotate-left rotate: false - xy: 917, 445 + xy: 401, 135 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-rotate-right rotate: false - xy: 871, 423 + xy: 885, 445 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-save rotate: false - xy: 871, 407 + xy: 901, 445 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2513,7 +2520,7 @@ icon-save-map index: -1 icon-settings rotate: false - xy: 202, 64 + xy: 429, 158 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -2527,28 +2534,28 @@ icon-terrain index: -1 icon-tools rotate: false - xy: 887, 429 + xy: 917, 445 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-touch rotate: false - xy: 214, 64 + xy: 441, 158 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-touchDelete rotate: false - xy: 574, 195 + xy: 429, 146 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-trash rotate: false - xy: 887, 413 + xy: 871, 423 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2562,14 +2569,14 @@ icon-trash-16 index: -1 icon-trello rotate: false - xy: 903, 429 + xy: 871, 407 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-tutorial rotate: false - xy: 903, 413 + xy: 887, 429 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2583,21 +2590,21 @@ icon-undo index: -1 icon-units rotate: false - xy: 409, 123 + xy: 453, 158 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-weapon rotate: false - xy: 417, 157 + xy: 441, 146 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-wiki rotate: false - xy: 919, 429 + xy: 887, 413 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2611,7 +2618,7 @@ icon-zoom index: -1 icon-zoom-small rotate: false - xy: 919, 413 + xy: 903, 429 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2791,119 +2798,119 @@ flier index: -1 scout rotate: false - xy: 935, 417 + xy: 730, 352 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 scout-base rotate: false - xy: 949, 431 + xy: 385, 121 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 standard-mech-base rotate: false - xy: 949, 431 + xy: 385, 121 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 scout-leg rotate: false - xy: 975, 445 + xy: 399, 121 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 standard-mech-leg rotate: false - xy: 975, 445 + xy: 399, 121 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 beam rotate: false - xy: 417, 135 + xy: 465, 160 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 beam-equip rotate: false - xy: 465, 160 + xy: 223, 113 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blaster rotate: false - xy: 283, 113 + xy: 224, 93 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blaster-equip rotate: false - xy: 293, 113 + xy: 234, 103 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 clustergun rotate: false - xy: 224, 83 + xy: 234, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 clustergun-equip rotate: false - xy: 234, 93 + xy: 244, 93 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shockgun rotate: false - xy: 702, 301 + xy: 355, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shockgun-equip rotate: false - xy: 707, 311 + xy: 365, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 triblaster rotate: false - xy: 455, 116 + xy: 524, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 triblaster-equip rotate: false - xy: 465, 116 + xy: 534, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 vulcan rotate: false - xy: 304, 87 + xy: 564, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 vulcan-equip rotate: false - xy: 314, 97 + xy: 574, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 diff --git a/core/assets/sprites/sprites.png b/core/assets/sprites/sprites.png index d85ab6dcb8..63662f833a 100644 Binary files a/core/assets/sprites/sprites.png and b/core/assets/sprites/sprites.png differ diff --git a/core/assets/version.properties b/core/assets/version.properties index 5db9c533c8..fbb48d223b 100644 --- a/core/assets/version.properties +++ b/core/assets/version.properties @@ -1,7 +1,7 @@ #Autogenerated file. Do not modify. -#Wed Mar 28 22:57:35 EDT 2018 +#Thu Mar 29 21:34:26 EDT 2018 version=release -androidBuildCode=718 +androidBuildCode=725 name=Mindustry code=3.4 build=custom build diff --git a/core/src/io/anuke/mindustry/content/Items.java b/core/src/io/anuke/mindustry/content/Items.java index c1b4e5807d..0f9f4bfcc6 100644 --- a/core/src/io/anuke/mindustry/content/Items.java +++ b/core/src/io/anuke/mindustry/content/Items.java @@ -1,36 +1,52 @@ package io.anuke.mindustry.content; +import com.badlogic.gdx.graphics.Color; import io.anuke.mindustry.resource.Item; public class Items { public static final Item - stone = new Item("stone") { + stone = new Item("stone", Color.valueOf("777777")) { { material = false; + hardness = 2; } }, - iron = new Item("iron"), - lead = new Item("lead"), - coal = new Item("coal") { + iron = new Item("iron", Color.valueOf("bc8271")){ + { + hardness = 1; + } + }, + lead = new Item("lead", Color.valueOf("8e85a2")){ + { + hardness = 1; + } + }, + coal = new Item("coal", Color.valueOf("272727")) { { explosiveness = 0.2f; flammability = 0.5f; fluxiness = 0.5f; material = false; + hardness = 2; } }, - steel = new Item("steel"), - titanium = new Item("titanium"), - thorium = new Item("thorium") { + steel = new Item("steel", Color.valueOf("e2e2e2")), + titanium = new Item("titanium", Color.valueOf("8da1e3")){ + { + hardness = 3; + } + }, + thorium = new Item("thorium", Color.valueOf("bb80bd")) { { explosiveness = 0.1f; + hardness = 4; } }, - silicon = new Item("silicon"), - plastic = new Item("plastic"), - densealloy = new Item("densealloy"), - biomatter = new Item("biomatter") { + silicon = new Item("silicon", Color.valueOf("53565c")), + plastic = new Item("plastic", Color.valueOf("e9ead3")), + densealloy = new Item("densealloy", Color.valueOf("b4d5c7")), + biomatter = new Item("biomatter", Color.valueOf("648b55")) { { material = false; flammability = 0.4f; diff --git a/core/src/io/anuke/mindustry/content/Recipes.java b/core/src/io/anuke/mindustry/content/Recipes.java index 4362748b18..3ec28ef42c 100644 --- a/core/src/io/anuke/mindustry/content/Recipes.java +++ b/core/src/io/anuke/mindustry/content/Recipes.java @@ -68,7 +68,10 @@ public class Recipes { new Recipe(crafting, CraftingBlocks.weaponFactory, stack(Items.steel, 60), stack(Items.iron, 60)).setDesktop(), //new Recipe(production, ProductionBlocks.stonedrill, stack(Item.stone, 12)), - new Recipe(production, ProductionBlocks.irondrill, stack(Items.iron, 25)), + new Recipe(production, ProductionBlocks.ironDrill, stack(Items.iron, 25)), + new Recipe(production, ProductionBlocks.reinforcedDrill, stack(Items.iron, 25)), + new Recipe(production, ProductionBlocks.steelDrill, stack(Items.iron, 25)), + new Recipe(production, ProductionBlocks.titaniumDrill, stack(Items.iron, 25)), //new Recipe(production, ProductionBlocks.leaddrill, stack(Items.iron, 25)), //new Recipe(production, ProductionBlocks.coaldrill, stack(Items.iron, 25), stack(Items.iron, 40)), //new Recipe(production, ProductionBlocks.titaniumdrill, stack(Items.iron, 50), stack(Items.steel, 50)), diff --git a/core/src/io/anuke/mindustry/content/blocks/ProductionBlocks.java b/core/src/io/anuke/mindustry/content/blocks/ProductionBlocks.java index f242e2ac14..a6bc147285 100644 --- a/core/src/io/anuke/mindustry/content/blocks/ProductionBlocks.java +++ b/core/src/io/anuke/mindustry/content/blocks/ProductionBlocks.java @@ -9,51 +9,35 @@ import io.anuke.mindustry.world.blocks.types.production.*; public class ProductionBlocks { public static final Block - stonedrill = new Drill("stonedrill") {{ - resource = Blocks.stone; - result = Items.stone; - drillTime = 240; - }}, - - irondrill = new Drill("irondrill") {{ - resource = Blocks.iron; - result = Items.iron; - drillTime = 360; - }}, - - leaddrill = new Drill("leaddrill") {{ - resource = Blocks.lead; - result = Items.lead; + ironDrill = new Drill("irondrill") {{ + tier = 1; drillTime = 400; }}, - coaldrill = new Drill("coaldrill") {{ - resource = Blocks.coal; - result = Items.coal; - drillTime = 420; + reinforcedDrill = new Drill("reinforceddrill") {{ + tier = 2; + drillTime = 360; }}, - thoriumdrill = new Drill("thoriumdrill") {{ - resource = Blocks.thorium; - result = Items.thorium; - drillTime = 600; + steelDrill = new Drill("steeldrill") {{ + tier = 3; + drillTime = 320; }}, - titaniumdrill = new Drill("titaniumdrill") {{ - resource = Blocks.titanium; - result = Items.titanium; - drillTime = 540; + titaniumDrill = new Drill("titaniumdrill") {{ + tier = 4; + drillTime = 280; }}, laserdrill = new GenericDrill("laserdrill") {{ - drillTime = 200; + drillTime = 220; size = 2; powerUse = 0.2f; hasPower = true; }}, nucleardrill = new GenericDrill("nucleardrill") {{ - drillTime = 240; + drillTime = 170; size = 3; powerUse = 0.32f; hasPower = true; @@ -61,21 +45,13 @@ public class ProductionBlocks { plasmadrill = new GenericDrill("plasmadrill") {{ inputLiquid = Liquids.plasma; - drillTime = 240; + drillTime = 110; size = 4; powerUse = 0.16f; hasLiquids = true; hasPower = true; }}, - quartzextractor = new GenericDrill("quartzextractor") {{ - powerUse = 0.1f; - resource = Blocks.sand; - result = Items.silicon; - drillTime = 320; - size = 2; - }}, - waterextractor = new SolidPump("waterextractor") {{ result = Liquids.water; powerUse = 0.2f; @@ -97,7 +73,6 @@ public class ProductionBlocks { }}, cultivator = new Cultivator("cultivator") {{ - resource = Blocks.grass; result = Items.biomatter; inputLiquid = Liquids.water; liquidUse = 0.2f; diff --git a/core/src/io/anuke/mindustry/core/World.java b/core/src/io/anuke/mindustry/core/World.java index 915da69c71..3b7bc84c74 100644 --- a/core/src/io/anuke/mindustry/core/World.java +++ b/core/src/io/anuke/mindustry/core/World.java @@ -169,16 +169,6 @@ public class World extends Module{ WorldGenerator.generate(tiles, MapIO.readTileData(map)); } - void set(int x, int y, Block type, int rot){ - if(!Mathf.inBounds(x, y, tiles)){ - return; - } - if(type == ProductionBlocks.stonedrill){ - tiles[x][y].setFloor(Blocks.stone); - } - tiles[x][y].setBlock(type, rot); - } - public int getSeed(){ return seed; } diff --git a/core/src/io/anuke/mindustry/game/Tutorial.java b/core/src/io/anuke/mindustry/game/Tutorial.java index b19bec5fc6..7b29a0e51d 100644 --- a/core/src/io/anuke/mindustry/game/Tutorial.java +++ b/core/src/io/anuke/mindustry/game/Tutorial.java @@ -4,7 +4,6 @@ import com.badlogic.gdx.math.GridPoint2; import io.anuke.mindustry.content.Items; import io.anuke.mindustry.content.blocks.Blocks; import io.anuke.mindustry.content.blocks.DistributionBlocks; -import io.anuke.mindustry.content.blocks.ProductionBlocks; import io.anuke.mindustry.content.blocks.WeaponBlocks; import io.anuke.mindustry.core.GameState.State; import io.anuke.mindustry.world.Block; @@ -243,7 +242,7 @@ public class Tutorial{ canForward = false; blockPlaceX = 0; blockPlaceY = -3; - targetBlock = ProductionBlocks.stonedrill; + //targetBlock = ProductionBlocks.stonedrill; } void onSwitch(){ diff --git a/core/src/io/anuke/mindustry/graphics/Fx.java b/core/src/io/anuke/mindustry/graphics/Fx.java index 55f052c144..534d05b208 100644 --- a/core/src/io/anuke/mindustry/graphics/Fx.java +++ b/core/src/io/anuke/mindustry/graphics/Fx.java @@ -20,6 +20,7 @@ public class Fx{ public static Color glowy = Color.valueOf("fdc056"); public static Color beam = Color.valueOf("9bffbe"); public static Color beamLight = Color.valueOf("ddffe9"); + public static Color stoneGray = Color.valueOf("8f8f8f"); public static final Effect @@ -189,15 +190,23 @@ public class Fx{ pulverize = new Effect(40, e -> { Angles.randLenVectors(e.id, 5, 3f + e.ifract()*8f, (x, y)->{ - Draw.color(Color.LIGHT_GRAY, Color.GRAY, e.ifract()); + Draw.color(stoneGray); Fill.poly(e.x + x, e.y + y, 4, e.fract() * 2f + 0.5f, 45); Draw.reset(); }); }), pulverizeSmall = new Effect(30, e -> { + Angles.randLenVectors(e.id, 3, e.ifract()*5f, (x, y)->{ + Draw.color(stoneGray); + Fill.poly(e.x + x, e.y + y, 4, e.fract() * 1f + 0.5f, 45); + Draw.reset(); + }); + }), + + pulverizeMedium = new Effect(30, e -> { Angles.randLenVectors(e.id, 5, 3f + e.ifract()*8f, (x, y)->{ - Draw.color(Color.LIGHT_GRAY, Color.GRAY, e.ifract()); + Draw.color(stoneGray); Fill.poly(e.x + x, e.y + y, 4, e.fract() * 1f + 0.5f, 45); Draw.reset(); }); @@ -352,13 +361,27 @@ public class Fx{ Draw.reset(); }), + spark = new Effect(10, e -> { + Lines.stroke(1f); + Draw.color(Color.WHITE, Color.GRAY, e.ifract()); + Lines.spikes(e.x, e.y, e.ifract() * 5f, 2, 8); + Draw.reset(); + }), + mine = new Effect(20, e -> { Angles.randLenVectors(e.id, 6, 3f + e.ifract()*6f, (x, y)->{ - Draw.color(Color.WHITE, Color.GRAY, e.ifract()); + Draw.color(e.color, Color.LIGHT_GRAY, e.ifract()); Fill.poly(e.x + x, e.y + y, 4, e.fract() * 2f, 45); Draw.reset(); }); }), + + sparkbig = new Effect(11, e -> { + Lines.stroke(1f); + Draw.color(lightRed, Color.GRAY, e.ifract()); + Lines.spikes(e.x, e.y, e.ifract() * 5f, 2.3f, 8); + Draw.reset(); + }), smelt = new Effect(10, e -> { Lines.stroke(1f); diff --git a/core/src/io/anuke/mindustry/resource/Item.java b/core/src/io/anuke/mindustry/resource/Item.java index 4423b823ab..33c49a86fb 100644 --- a/core/src/io/anuke/mindustry/resource/Item.java +++ b/core/src/io/anuke/mindustry/resource/Item.java @@ -1,5 +1,6 @@ package io.anuke.mindustry.resource; +import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.g2d.TextureRegion; import com.badlogic.gdx.utils.Array; import io.anuke.ucore.graphics.Draw; @@ -10,17 +11,23 @@ public class Item implements Comparable{ public final int id; public final String name; + public final Color color; public TextureRegion region; public float explosiveness = 0f; + /**flammability above 0.3 makes this eleigible for item burners.*/ public float flammability = 0f; /**how effective this item is as flux for smelting. 0 = not a flux, 0.5 = normal flux, 1 = very good*/ public float fluxiness = 0f; + /**whether this material goes in the core*/ public boolean material = true; + /**drill hardness of the item*/ + public int hardness = 0; - public Item(String name) { + public Item(String name, Color color) { this.id = items.size; this.name = name; + this.color = color; items.add(this); } diff --git a/core/src/io/anuke/mindustry/world/blocks/types/distribution/Sorter.java b/core/src/io/anuke/mindustry/world/blocks/types/distribution/Sorter.java index 3c40dd146f..6355fdb047 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/distribution/Sorter.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/distribution/Sorter.java @@ -2,9 +2,9 @@ package io.anuke.mindustry.world.blocks.types.distribution; import com.badlogic.gdx.graphics.g2d.TextureRegion; import com.badlogic.gdx.utils.Array; +import io.anuke.mindustry.content.Items; import io.anuke.mindustry.entities.TileEntity; import io.anuke.mindustry.resource.Item; -import io.anuke.mindustry.content.Items; import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.BlockGroup; import io.anuke.mindustry.world.Tile; @@ -14,7 +14,6 @@ import io.anuke.ucore.scene.ui.ButtonGroup; import io.anuke.ucore.scene.ui.ImageButton; import io.anuke.ucore.scene.ui.layout.Table; import io.anuke.ucore.util.Mathf; -import io.anuke.ucore.util.Tmp; import java.io.DataInputStream; import java.io.DataOutputStream; @@ -35,11 +34,10 @@ public class Sorter extends Block{ super.draw(tile); SorterEntity entity = tile.entity(); - - TextureRegion region = entity.sortItem.region; - Tmp.tr1.setRegion(region, 4, 4, 1, 1); - - Draw.rect(Tmp.tr1, tile.worldx(), tile.worldy(), 4f, 4f); + + Draw.color(entity.sortItem.color); + Draw.rect("blank", tile.worldx(), tile.worldy(), 4f, 4f); + Draw.color(); } @Override diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/Cultivator.java b/core/src/io/anuke/mindustry/world/blocks/types/production/Cultivator.java index 73ac40d1d6..fec918dfac 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/Cultivator.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/production/Cultivator.java @@ -4,6 +4,7 @@ import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.g2d.TextureRegion; import io.anuke.mindustry.entities.TileEntity; import io.anuke.mindustry.graphics.Fx; +import io.anuke.mindustry.resource.Item; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Timers; import io.anuke.ucore.graphics.Draw; @@ -20,6 +21,8 @@ public class Cultivator extends GenericDrill { protected Color plantColorLight = Color.valueOf("73a75f"); protected Color bottomColor = Color.valueOf("474747"); + protected Item result; + protected SeedRandom random = new SeedRandom(0); protected float recurrence = 6f; @@ -75,6 +78,11 @@ public class Cultivator extends GenericDrill { return new CultivatorEntity(); } + @Override + public boolean isValid(Tile tile){ + return tile.block().drops != null && tile.block().drops.item == result; + } + public static class CultivatorEntity extends DrillEntity{ public float warmup; diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/Drill.java b/core/src/io/anuke/mindustry/world/blocks/types/production/Drill.java index 11346540f8..bcad817720 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/Drill.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/production/Drill.java @@ -15,19 +15,22 @@ import io.anuke.ucore.core.Timers; import io.anuke.ucore.graphics.Draw; import io.anuke.ucore.util.Mathf; import io.anuke.ucore.util.Strings; -import io.anuke.ucore.util.Tmp; public class Drill extends Block{ + protected final static float hardnessDrillMultiplier = 40f; protected final int timerDrill = timers++; protected final int timerDump = timers++; protected final Array drawTiles = new Array<>(); - protected Block resource; - protected Item result; + protected int tier; protected float drillTime = 300; protected Effect drillEffect = Fx.mine; protected float rotateSpeed = 2f; + protected Effect updateEffect = Fx.pulverizeSmall; + protected float updateEffectChance = 0.02f; + + protected Array toAdd = new Array<>(); public Drill(String name) { super(name); @@ -40,14 +43,17 @@ public class Drill extends Block{ @Override public void draw(Tile tile) { + boolean valid = isMultiblock() || isValid(tile); + Draw.rect(name, tile.drawx(), tile.drawy()); - Draw.rect(name + "-rotator", tile.drawx(), tile.drawy(), Timers.time() * rotateSpeed); + Draw.rect(name + "-rotator", tile.drawx(), tile.drawy(), valid ? Timers.time() * rotateSpeed : 0f); Draw.rect(name + "-top", tile.drawx(), tile.drawy()); - TextureRegion region = result.region; - Tmp.tr1.setRegion(region, 4, 4, 1, 1); - - Draw.rect(Tmp.tr1, tile.drawx(), tile.drawy(), 2f, 2f); + if(!isMultiblock() && isValid(tile)) { + Draw.color(tile.floor().drops.item.color); + Draw.rect("blank", tile.worldx(), tile.worldy(), 2f, 2f); + Draw.color(); + } } @Override @@ -63,26 +69,37 @@ public class Drill extends Block{ @Override public void update(Tile tile){ + toAdd.clear(); + TileEntity entity = tile.entity; - int mines = 0; + float multiplier = 0f; + float totalHardness = 0f; - if(isMultiblock()){ - for(Tile other : tile.getLinkedTiles(tempTiles)){ - if(isValid(other)){ - mines ++; - } + for(Tile other : tile.getLinkedTiles(tempTiles)){ + if(isValid(other)){ + toAdd.add(other.floor().drops.item); + totalHardness += other.floor().drops.item.hardness; + multiplier += 1f; } - }else{ - if(isValid(tile)) mines = 1; } - if(mines > 0 && entity.timer.get(timerDrill, drillTime) && tile.entity.inventory.getItem(result) < itemCapacity){ - for(int i = 0; i < mines; i ++) offloadNear(tile, result); - Effects.effect(drillEffect, tile.drawx(), tile.drawy()); + if(toAdd.size > 0 && tile.entity.inventory.totalItems() < itemCapacity){ + + if(entity.timer.get(timerDrill, drillTime/multiplier + totalHardness*hardnessDrillMultiplier)) { + int extra = tile.getExtra() % toAdd.size; + + offloadNear(tile, toAdd.get(extra)); + + tile.setExtra((byte)((extra + 1) % toAdd.size)); + Effects.effect(drillEffect, toAdd.get(extra).color, tile.drawx(), tile.drawy()); + } + + if(Mathf.chance(Timers.delta() * updateEffectChance)) + Effects.effect(updateEffect, entity.x + Mathf.range(size*2f), entity.y + Mathf.range(size*2f)); } - if(entity.timer.get(timerDump, 30)){ + if(entity.timer.get(timerDump, 15)){ tryDump(tile); } } @@ -109,7 +126,7 @@ public class Drill extends Block{ } protected boolean isValid(Tile tile){ - return tile.floor() == resource || (resource != null && resource.drops != null && resource.drops.equals(tile.floor().drops)); + return tile.floor().drops != null && tile.floor().drops.item.hardness <= tier; } } diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/GenericDrill.java b/core/src/io/anuke/mindustry/world/blocks/types/production/GenericDrill.java index 5aa8b79d2d..3c58b871fe 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/GenericDrill.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/production/GenericDrill.java @@ -1,15 +1,12 @@ package io.anuke.mindustry.world.blocks.types.production; import com.badlogic.gdx.graphics.g2d.TextureRegion; -import com.badlogic.gdx.utils.Array; import io.anuke.mindustry.content.Liquids; import io.anuke.mindustry.entities.TileEntity; import io.anuke.mindustry.graphics.Fx; -import io.anuke.mindustry.resource.Item; import io.anuke.mindustry.resource.Liquid; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Effects; -import io.anuke.ucore.core.Effects.Effect; import io.anuke.ucore.core.Timers; import io.anuke.ucore.graphics.Draw; import io.anuke.ucore.util.Mathf; @@ -23,13 +20,10 @@ public class GenericDrill extends Drill{ protected Liquid inputLiquid = Liquids.water; protected float rotateSpeed = 1.5f; - protected Effect updateEffect = Fx.pulverizeSmall; - protected float updateEffectChance = 0.02f; - - private Array toAdd = new Array<>(); public GenericDrill(String name){ super(name); + updateEffect = Fx.pulverizeMedium; } @Override @@ -53,10 +47,12 @@ public class GenericDrill extends Drill{ DrillEntity entity = tile.entity(); float multiplier = 0f; + float totalHardness = 0f; for(Tile other : tile.getLinkedTiles(tempTiles)){ if(isValid(other)){ - toAdd.add(result == null ? other.floor().drops.item : result); + toAdd.add(other.floor().drops.item); + totalHardness += other.floor().drops.item.hardness; multiplier += 1f; } } @@ -81,7 +77,7 @@ public class GenericDrill extends Drill{ return; } - if(toAdd.size > 0 && entity.progress >= drillTime + if(toAdd.size > 0 && entity.progress >= drillTime + hardnessDrillMultiplier*totalHardness && tile.entity.inventory.totalItems() < itemCapacity){ int index = entity.index % toAdd.size; @@ -90,7 +86,7 @@ public class GenericDrill extends Drill{ entity.index ++; entity.progress = 0f; - Effects.effect(drillEffect, tile.drawx(), tile.drawy()); + Effects.effect(drillEffect, toAdd.get(index).color, tile.drawx(), tile.drawy()); } if(entity.timer.get(timerDump, 15)){ @@ -98,15 +94,6 @@ public class GenericDrill extends Drill{ } } - @Override - protected boolean isValid(Tile tile){ - if(resource == null) { - return tile.floor().drops != null; - }else{ - return tile.floor() == resource || (resource.drops != null && resource.drops.equals(tile.floor().drops)); - } - } - @Override public boolean acceptLiquid(Tile tile, Tile source, Liquid liquid, float amount) { return super.acceptLiquid(tile, source, liquid, amount) && liquid == inputLiquid; diff --git a/core/src/io/anuke/mindustry/world/blocks/types/storage/SortedUnloader.java b/core/src/io/anuke/mindustry/world/blocks/types/storage/SortedUnloader.java index 5c917e94e7..4569b5bc44 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/storage/SortedUnloader.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/storage/SortedUnloader.java @@ -2,16 +2,15 @@ package io.anuke.mindustry.world.blocks.types.storage; import com.badlogic.gdx.graphics.g2d.TextureRegion; import com.badlogic.gdx.utils.Array; +import io.anuke.mindustry.content.Items; import io.anuke.mindustry.entities.TileEntity; import io.anuke.mindustry.resource.Item; -import io.anuke.mindustry.content.Items; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.graphics.Draw; import io.anuke.ucore.scene.style.TextureRegionDrawable; import io.anuke.ucore.scene.ui.ButtonGroup; import io.anuke.ucore.scene.ui.ImageButton; import io.anuke.ucore.scene.ui.layout.Table; -import io.anuke.ucore.util.Tmp; import java.io.DataInputStream; import java.io.DataOutputStream; @@ -47,10 +46,9 @@ public class SortedUnloader extends Unloader { SortedUnloaderEntity entity = tile.entity(); - TextureRegion region = entity.sortItem.region; - Tmp.tr1.setRegion(region, 4, 4, 1, 1); - - Draw.rect(Tmp.tr1, tile.worldx(), tile.worldy(), 2f, 2f); + Draw.color(entity.sortItem.color); + Draw.rect("blank", tile.worldx(), tile.worldy(), 2f, 2f); + Draw.color(); } @Override