diff options
| author | RealBadAngel <mk@realbadangel.pl> | 2012-12-13 01:49:02 +0100 | 
|---|---|---|
| committer | RealBadAngel <mk@realbadangel.pl> | 2012-12-13 01:49:02 +0100 | 
| commit | b8d77627a4d28c624e63423eef317dd09c68e533 (patch) | |
| tree | a2fe8c05ce8e431f1194879c33fca760fa86abf0 | |
| parent | 306b407a38b087b59c92d23c0c1f7c3e8fb7ce4e (diff) | |
update the mod
| -rw-r--r-- | coal_furnace.lua | 171 | ||||
| -rw-r--r-- | config.lua | 3 | ||||
| -rw-r--r-- | technic/modpack.txt | 1 | ||||
| -rw-r--r-- | technic/pipeworks/.gitignore | 1 | ||||
| -rw-r--r-- | technic/pipeworks/README | 34 | ||||
| -rw-r--r-- | technic/pipeworks/autoplace.lua | 176 | ||||
| -rw-r--r-- | technic/pipeworks/changelog.txt | 46 | ||||
| -rw-r--r-- | technic/pipeworks/crafts.lua | 94 | ||||
| -rw-r--r-- | technic/pipeworks/depends.txt | 2 | ||||
| -rw-r--r-- | technic/pipeworks/devices.lua | 471 | ||||
| -rw-r--r-- | technic/pipeworks/init.lua | 322 | ||||
| -rw-r--r-- | technic/pipeworks/oldpipes.lua | 360 | ||||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_intake_sides.png | bin | 0 -> 6739 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_intake_top.png | bin | 0 -> 7121 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_outlet_sides.png | bin | 0 -> 5152 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_outlet_top.png | bin | 0 -> 5707 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_pipe_end.png | bin | 0 -> 2149 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_pipe_end_empty.png | bin | 0 -> 2144 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_pipe_end_loaded.png | bin | 0 -> 2185 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_plain.png | bin | 0 -> 1872 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_plastic_sheeting.png | bin | 0 -> 198 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_pump_ends.png | bin | 0 -> 6410 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_pump_off.png | bin | 0 -> 5185 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_pump_on.png | bin | 0 -> 6488 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_pump_sides.png | bin | 0 -> 5389 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_pump_top_x.png | bin | 0 -> 5389 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_pump_top_z.png | bin | 0 -> 5207 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_back.png | bin | 0 -> 4593 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_fittings.png | bin | 0 -> 5359 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_front_0.png | bin | 0 -> 5126 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_front_1.png | bin | 0 -> 5139 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_front_10.png | bin | 0 -> 5131 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_front_2.png | bin | 0 -> 5135 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_front_3.png | bin | 0 -> 5148 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_front_4.png | bin | 0 -> 5146 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_front_5.png | bin | 0 -> 5136 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_front_6.png | bin | 0 -> 5145 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_front_7.png | bin | 0 -> 5130 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_front_8.png | bin | 0 -> 5128 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_storage_tank_front_9.png | bin | 0 -> 5155 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_testobject.png | bin | 0 -> 4781 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_tube_end.png | bin | 0 -> 2577 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_tube_inv.png | bin | 0 -> 1217 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_tube_noctr.png | bin | 0 -> 1979 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_tube_plain.png | bin | 0 -> 2444 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_tube_short.png | bin | 0 -> 1248 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_tube_transparent.png | bin | 0 -> 109 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_valvebody_bottom.png | bin | 0 -> 5321 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_valvebody_ends.png | bin | 0 -> 6138 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_valvebody_sides.png | bin | 0 -> 4592 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_valvebody_top_off.png | bin | 0 -> 4557 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_valvebody_top_off_x.png | bin | 0 -> 4557 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_valvebody_top_off_z.png | bin | 0 -> 4768 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_valvebody_top_on.png | bin | 0 -> 4559 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_valvebody_top_on_x.png | bin | 0 -> 4559 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_valvebody_top_on_z.png | bin | 0 -> 4726 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_windowed_empty.png | bin | 0 -> 1945 bytes | |||
| -rw-r--r-- | technic/pipeworks/textures/pipeworks_windowed_loaded.png | bin | 0 -> 1950 bytes | |||
| -rw-r--r-- | technic/pipeworks/tubes.lua | 217 | ||||
| -rw-r--r-- | technic/technic/alloy_furnace.lua (renamed from alloy_furnace.lua) | 14 | ||||
| -rw-r--r-- | technic/technic/battery_box.lua (renamed from battery_box.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/battery_box_mv.lua (renamed from battery_box_mv.lua) | 4 | ||||
| -rw-r--r-- | technic/technic/cans.lua (renamed from cans.lua) | 67 | ||||
| -rw-r--r-- | technic/technic/chainsaw.lua (renamed from chainsaw.lua) | 2 | ||||
| -rw-r--r-- | technic/technic/concrete.lua (renamed from concrete.lua) | 11 | ||||
| -rw-r--r-- | technic/technic/config.lua | 10 | ||||
| -rw-r--r-- | technic/technic/constructor.lua (renamed from constructor.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/copper_chest.lua (renamed from copper_chest.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/creative.lua | 21 | ||||
| -rw-r--r-- | technic/technic/depends.txt (renamed from depends.txt) | 2 | ||||
| -rw-r--r-- | technic/technic/deployer.lua (renamed from deployer.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/electric.lua (renamed from electric.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/electric_furnace.lua (renamed from electric_furnace.lua) | 3 | ||||
| -rw-r--r-- | technic/technic/flashlight.lua (renamed from flashlight.lua) | 2 | ||||
| -rw-r--r-- | technic/technic/flashlight_old.lua | 176 | ||||
| -rw-r--r-- | technic/technic/generator.lua (renamed from generator.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/geothermal.lua (renamed from geothermal.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/gold_chest.lua (renamed from gold_chest.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/grinder.lua (renamed from grinder.lua) | 10 | ||||
| -rw-r--r-- | technic/technic/grinder_gloopores.lua | 55 | ||||
| -rw-r--r-- | technic/technic/init.lua (renamed from init.lua) | 57 | ||||
| -rw-r--r-- | technic/technic/injector.lua (renamed from injector.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/injector1.lua | 248 | ||||
| -rw-r--r-- | technic/technic/iron_chest.lua (renamed from iron_chest.lua) | 13 | ||||
| -rw-r--r-- | technic/technic/item_drop.lua (renamed from item_drop.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/item_pickup.lua (renamed from item_pickup.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/items.lua (renamed from items.lua) | 12 | ||||
| -rw-r--r-- | technic/technic/mining_drill.lua (renamed from mining_drill.lua) | 4 | ||||
| -rw-r--r-- | technic/technic/mining_laser_mk1.lua (renamed from mining_laser_mk1.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/mithril_chest.lua (renamed from mithril_chest.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/mithril_subspace_chest.lua | 145 | ||||
| -rw-r--r-- | technic/technic/music_player.lua (renamed from music_player.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/node_breaker.lua (renamed from node_breaker.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/ores.lua (renamed from ores.lua) | 142 | ||||
| -rw-r--r-- | technic/technic/project_table.lua (renamed from project_table.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/rubber.lua (renamed from rubber.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/screwdriver.lua (renamed from screwdriver.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/silver_chest.lua (renamed from silver_chest.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/solar_panel.lua (renamed from solar_panel.lua) | 2 | ||||
| -rw-r--r-- | technic/technic/solar_panel_mv.lua (renamed from solar_panel_mv.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/sonic_screwdriver.lua (renamed from sonic_screwdriver.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/sounds/chainsaw.ogg (renamed from sounds/chainsaw.ogg) | bin | 38174 -> 38174 bytes | |||
| -rw-r--r-- | technic/technic/sounds/item_drop_pickup.1.ogg (renamed from sounds/item_drop_pickup.1.ogg) | bin | 9981 -> 9981 bytes | |||
| -rw-r--r-- | technic/technic/sounds/item_drop_pickup.2.ogg (renamed from sounds/item_drop_pickup.2.ogg) | bin | 10477 -> 10477 bytes | |||
| -rw-r--r-- | technic/technic/sounds/item_drop_pickup.3.ogg (renamed from sounds/item_drop_pickup.3.ogg) | bin | 9586 -> 9586 bytes | |||
| -rw-r--r-- | technic/technic/sounds/item_drop_pickup.4.ogg (renamed from sounds/item_drop_pickup.4.ogg) | bin | 9696 -> 9696 bytes | |||
| -rw-r--r-- | technic/technic/sounds/mining_drill.ogg (renamed from sounds/mining_drill.ogg) | bin | 14499 -> 14499 bytes | |||
| -rw-r--r-- | technic/technic/sounds/technic_laser.ogg (renamed from sounds/technic_laser.ogg) | bin | 13465 -> 13465 bytes | |||
| -rw-r--r-- | technic/technic/sounds/technic_sonic_screwdriver.ogg (renamed from sounds/technic_sonic_screwdriver.ogg) | bin | 29827 -> 29827 bytes | |||
| -rw-r--r-- | technic/technic/tetris.lua | 17 | ||||
| -rw-r--r-- | technic/technic/textures/technic_alloy_furnace_front.png (renamed from textures/technic_alloy_furnace_front.png) | bin | 2756 -> 2756 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_alloy_furnace_front_active.png (renamed from textures/technic_alloy_furnace_front_active.png) | bin | 2757 -> 2757 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_alloy_furnace_side.png (renamed from textures/technic_alloy_furnace_side.png) | bin | 2667 -> 2667 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_alloy_furnace_top.png (renamed from textures/technic_alloy_furnace_top.png) | bin | 2431 -> 2431 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_battery.png (renamed from textures/technic_battery.png) | bin | 247 -> 247 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_battery_box_bottom.png (renamed from textures/technic_battery_box_bottom.png) | bin | 2046 -> 2046 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_battery_box_side0.png (renamed from textures/technic_battery_box_side0.png) | bin | 2313 -> 2313 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_battery_box_top.png (renamed from textures/technic_battery_box_top.png) | bin | 2390 -> 2390 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_battery_reload.png (renamed from textures/technic_battery_reload.png) | bin | 8201 -> 8201 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_brass_dust.png (renamed from textures/technic_brass_dust.png) | bin | 1297 -> 1297 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_brass_ingot.png (renamed from textures/technic_brass_ingot.png) | bin | 456 -> 456 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_bronze_dust.png (renamed from textures/technic_bronze_dust.png) | bin | 1304 -> 1304 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_chainsaw.png (renamed from textures/technic_chainsaw.png) | bin | 17656 -> 17656 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_chromium_dust.png (renamed from textures/technic_chromium_dust.png) | bin | 1162 -> 1162 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_chromium_ingot.png (renamed from textures/technic_chromium_ingot.png) | bin | 242 -> 242 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_chromium_lump.png (renamed from textures/technic_chromium_lump.png) | bin | 213 -> 213 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_coal_alloy_furnace_bottom.png (renamed from textures/technic_coal_alloy_furnace_bottom.png) | bin | 2957 -> 2957 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_coal_alloy_furnace_front.png (renamed from textures/technic_coal_alloy_furnace_front.png) | bin | 2802 -> 2802 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_coal_alloy_furnace_front_active.png (renamed from textures/technic_coal_alloy_furnace_front_active.png) | bin | 2953 -> 2953 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_coal_alloy_furnace_side.png (renamed from textures/technic_coal_alloy_furnace_side.png) | bin | 2667 -> 2667 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_coal_alloy_furnace_top.png (renamed from textures/technic_coal_alloy_furnace_top.png) | bin | 2431 -> 2431 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_coal_dust.png (renamed from textures/technic_coal_dust.png) | bin | 144 -> 144 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_concrete_block.png (renamed from textures/technic_concrete_block.png) | bin | 2319 -> 2319 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_back.png (renamed from textures/technic_constructor_back.png) | bin | 2094 -> 2094 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_front_off.png (renamed from textures/technic_constructor_front_off.png) | bin | 2677 -> 2677 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_front_on.png (renamed from textures/technic_constructor_front_on.png) | bin | 2627 -> 2627 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk1_bottom_off.png (renamed from textures/technic_constructor_mk1_bottom_off.png) | bin | 2272 -> 2272 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk1_bottom_on.png (renamed from textures/technic_constructor_mk1_bottom_on.png) | bin | 2308 -> 2308 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk1_side1_off.png (renamed from textures/technic_constructor_mk1_side1_off.png) | bin | 2327 -> 2327 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk1_side1_on.png (renamed from textures/technic_constructor_mk1_side1_on.png) | bin | 2342 -> 2342 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk1_side2_off.png (renamed from textures/technic_constructor_mk1_side2_off.png) | bin | 2326 -> 2326 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk1_side2_on.png (renamed from textures/technic_constructor_mk1_side2_on.png) | bin | 2338 -> 2338 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk1_top_off.png (renamed from textures/technic_constructor_mk1_top_off.png) | bin | 2292 -> 2292 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk1_top_on.png (renamed from textures/technic_constructor_mk1_top_on.png) | bin | 2319 -> 2319 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk2_bottom_off.png (renamed from textures/technic_constructor_mk2_bottom_off.png) | bin | 2281 -> 2281 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk2_bottom_on.png (renamed from textures/technic_constructor_mk2_bottom_on.png) | bin | 2316 -> 2316 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk2_side1_off.png (renamed from textures/technic_constructor_mk2_side1_off.png) | bin | 2339 -> 2339 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk2_side1_on.png (renamed from textures/technic_constructor_mk2_side1_on.png) | bin | 2355 -> 2355 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk2_side2_off.png (renamed from textures/technic_constructor_mk2_side2_off.png) | bin | 2338 -> 2338 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk2_side2_on.png (renamed from textures/technic_constructor_mk2_side2_on.png) | bin | 2354 -> 2354 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk2_top_off.png (renamed from textures/technic_constructor_mk2_top_off.png) | bin | 2307 -> 2307 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk2_top_on.png (renamed from textures/technic_constructor_mk2_top_on.png) | bin | 2329 -> 2329 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk3_bottom_off.png (renamed from textures/technic_constructor_mk3_bottom_off.png) | bin | 2286 -> 2286 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk3_bottom_on.png (renamed from textures/technic_constructor_mk3_bottom_on.png) | bin | 2318 -> 2318 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk3_side1_off.png (renamed from textures/technic_constructor_mk3_side1_off.png) | bin | 2378 -> 2378 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk3_side1_on.png (renamed from textures/technic_constructor_mk3_side1_on.png) | bin | 2402 -> 2402 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk3_side2_off.png (renamed from textures/technic_constructor_mk3_side2_off.png) | bin | 2313 -> 2313 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk3_side2_on.png (renamed from textures/technic_constructor_mk3_side2_on.png) | bin | 2338 -> 2338 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk3_top_off.png (renamed from textures/technic_constructor_mk3_top_off.png) | bin | 2313 -> 2313 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_constructor_mk3_top_on.png (renamed from textures/technic_constructor_mk3_top_on.png) | bin | 2338 -> 2338 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_copper_chest_front.png (renamed from textures/technic_copper_chest_front.png) | bin | 2614 -> 2614 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_copper_chest_locked.png (renamed from textures/technic_copper_chest_locked.png) | bin | 2682 -> 2682 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_copper_chest_side.png (renamed from textures/technic_copper_chest_side.png) | bin | 2568 -> 2568 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_copper_chest_top.png (renamed from textures/technic_copper_chest_top.png) | bin | 2521 -> 2521 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_copper_coil.png (renamed from textures/technic_copper_coil.png) | bin | 2447 -> 2447 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_copper_dust.png (renamed from textures/technic_copper_dust.png) | bin | 1252 -> 1252 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_deployer_back.png (renamed from textures/technic_deployer_back.png) | bin | 37128 -> 37128 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_deployer_bottom.png (renamed from textures/technic_deployer_bottom.png) | bin | 38757 -> 38757 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_deployer_front_off.png (renamed from textures/technic_deployer_front_off.png) | bin | 29441 -> 29441 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_deployer_front_on.png (renamed from textures/technic_deployer_front_on.png) | bin | 23351 -> 23351 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_deployer_side.png (renamed from textures/technic_deployer_side.png) | bin | 38136 -> 38136 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_deployer_side1.png (renamed from textures/technic_deployer_side1.png) | bin | 38291 -> 38291 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_deployer_side2.png (renamed from textures/technic_deployer_side2.png) | bin | 38195 -> 38195 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_deployer_top.png (renamed from textures/technic_deployer_top.png) | bin | 38904 -> 38904 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_diamond.png (renamed from textures/technic_diamond.png) | bin | 693 -> 693 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_diamond_block.png (renamed from textures/technic_diamond_block.png) | bin | 2865 -> 2865 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_diamond_block_blue.png (renamed from textures/technic_diamond_block_blue.png) | bin | 3011 -> 3011 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_diamond_block_green.png (renamed from textures/technic_diamond_block_green.png) | bin | 3033 -> 3033 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_diamond_block_red.png (renamed from textures/technic_diamond_block_red.png) | bin | 2927 -> 2927 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_diamond_drill_head.png (renamed from textures/technic_diamond_drill_head.png) | bin | 978 -> 978 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_doped_silicon_wafer.png (renamed from textures/technic_doped_silicon_wafer.png) | bin | 867 -> 867 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_electric_furnace_GUI.png | bin | 0 -> 68120 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_electric_furnace_GUI.xcf | bin | 0 -> 610035 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_electric_furnace_bottom.png (renamed from textures/technic_electric_furnace_bottom.png) | bin | 2876 -> 2876 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_electric_furnace_front.png (renamed from textures/technic_electric_furnace_front.png) | bin | 2912 -> 2912 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_electric_furnace_front_active.png (renamed from textures/technic_electric_furnace_front_active.png) | bin | 2912 -> 2912 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_electric_furnace_side.png (renamed from textures/technic_electric_furnace_side.png) | bin | 2917 -> 2917 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_electric_furnace_top.png (renamed from textures/technic_electric_furnace_top.png) | bin | 2957 -> 2957 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_fine_copper_wire.png (renamed from textures/technic_fine_copper_wire.png) | bin | 1814 -> 1814 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_flashlight.png (renamed from textures/technic_flashlight.png) | bin | 1901 -> 1901 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_generator_front.png (renamed from textures/technic_generator_front.png) | bin | 430 -> 430 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_generator_front_active.png (renamed from textures/technic_generator_front_active.png) | bin | 454 -> 454 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_generator_side.png (renamed from textures/technic_generator_side.png) | bin | 341 -> 341 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_generator_top.png (renamed from textures/technic_generator_top.png) | bin | 388 -> 388 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_geothermal_side.png (renamed from textures/technic_geothermal_side.png) | bin | 809 -> 809 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_geothermal_top.png (renamed from textures/technic_geothermal_top.png) | bin | 828 -> 828 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_geothermal_top_active.png (renamed from textures/technic_geothermal_top_active.png) | bin | 819 -> 819 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front.png (renamed from textures/technic_gold_chest_front.png) | bin | 2653 -> 2653 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_black.png (renamed from textures/technic_gold_chest_front_black.png) | bin | 2659 -> 2659 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_blue.png (renamed from textures/technic_gold_chest_front_blue.png) | bin | 2666 -> 2666 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_brown.png (renamed from textures/technic_gold_chest_front_brown.png) | bin | 2674 -> 2674 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_cyan.png (renamed from textures/technic_gold_chest_front_cyan.png) | bin | 2675 -> 2675 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_dark_green.png (renamed from textures/technic_gold_chest_front_dark_green.png) | bin | 2672 -> 2672 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_dark_grey.png (renamed from textures/technic_gold_chest_front_dark_grey.png) | bin | 2659 -> 2659 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_green.png (renamed from textures/technic_gold_chest_front_green.png) | bin | 2665 -> 2665 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_grey.png (renamed from textures/technic_gold_chest_front_grey.png) | bin | 2678 -> 2678 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_magenta.png (renamed from textures/technic_gold_chest_front_magenta.png) | bin | 2673 -> 2673 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_orange.png (renamed from textures/technic_gold_chest_front_orange.png) | bin | 2667 -> 2667 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_pink.png (renamed from textures/technic_gold_chest_front_pink.png) | bin | 2672 -> 2672 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_red.png (renamed from textures/technic_gold_chest_front_red.png) | bin | 2661 -> 2661 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_violet.png (renamed from textures/technic_gold_chest_front_violet.png) | bin | 2668 -> 2668 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_white.png (renamed from textures/technic_gold_chest_front_white.png) | bin | 2660 -> 2660 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_front_yellow.png (renamed from textures/technic_gold_chest_front_yellow.png) | bin | 2669 -> 2669 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked.png (renamed from textures/technic_gold_chest_locked.png) | bin | 2717 -> 2717 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_black.png (renamed from textures/technic_gold_chest_locked_black.png) | bin | 2720 -> 2720 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_blue.png (renamed from textures/technic_gold_chest_locked_blue.png) | bin | 2728 -> 2728 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_brown.png (renamed from textures/technic_gold_chest_locked_brown.png) | bin | 2736 -> 2736 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_cyan.png (renamed from textures/technic_gold_chest_locked_cyan.png) | bin | 2735 -> 2735 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_dark_green.png (renamed from textures/technic_gold_chest_locked_dark_green.png) | bin | 2734 -> 2734 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_dark_grey.png (renamed from textures/technic_gold_chest_locked_dark_grey.png) | bin | 2722 -> 2722 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_green.png (renamed from textures/technic_gold_chest_locked_green.png) | bin | 2724 -> 2724 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_grey.png (renamed from textures/technic_gold_chest_locked_grey.png) | bin | 2732 -> 2732 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_magenta.png (renamed from textures/technic_gold_chest_locked_magenta.png) | bin | 2732 -> 2732 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_orange.png (renamed from textures/technic_gold_chest_locked_orange.png) | bin | 2728 -> 2728 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_pink.png (renamed from textures/technic_gold_chest_locked_pink.png) | bin | 2730 -> 2730 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_red.png (renamed from textures/technic_gold_chest_locked_red.png) | bin | 2721 -> 2721 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_violet.png (renamed from textures/technic_gold_chest_locked_violet.png) | bin | 2728 -> 2728 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_white.png (renamed from textures/technic_gold_chest_locked_white.png) | bin | 2723 -> 2723 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_locked_yellow.png (renamed from textures/technic_gold_chest_locked_yellow.png) | bin | 2728 -> 2728 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_side.png (renamed from textures/technic_gold_chest_side.png) | bin | 2617 -> 2617 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_chest_top.png (renamed from textures/technic_gold_chest_top.png) | bin | 2558 -> 2558 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_gold_dust.png (renamed from textures/technic_gold_dust.png) | bin | 1285 -> 1285 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_granite.png (renamed from textures/technic_granite.png) | bin | 947 -> 947 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_grinder_front.png (renamed from textures/technic_grinder_front.png) | bin | 777 -> 777 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_grinder_side.png (renamed from textures/technic_grinder_side.png) | bin | 692 -> 692 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_grinder_top.png (renamed from textures/technic_grinder_top.png) | bin | 465 -> 465 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_iron_chest_front.png (renamed from textures/technic_iron_chest_front.png) | bin | 2515 -> 2515 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_iron_chest_locked.png (renamed from textures/technic_iron_chest_locked.png) | bin | 2603 -> 2603 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_iron_chest_side.png (renamed from textures/technic_iron_chest_side.png) | bin | 2478 -> 2478 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_iron_chest_top.png (renamed from textures/technic_iron_chest_top.png) | bin | 2432 -> 2432 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_iron_dust.png (renamed from textures/technic_iron_dust.png) | bin | 1199 -> 1199 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_laser_beam.png (renamed from textures/technic_laser_beam.png) | bin | 119 -> 119 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_lava_can.png (renamed from textures/technic_lava_can.png) | bin | 1045 -> 1045 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_light.png (renamed from textures/technic_light.png) | bin | 246 -> 246 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_lv_cable.png (renamed from textures/technic_lv_cable.png) | bin | 381 -> 381 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_lv_cable_wield.png (renamed from textures/technic_lv_cable_wield.png) | bin | 286 -> 286 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_machine_bottom.png (renamed from textures/technic_machine_bottom.png) | bin | 572 -> 572 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_marble.png (renamed from textures/technic_marble.png) | bin | 807 -> 807 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_marble_bricks.png (renamed from textures/technic_marble_bricks.png) | bin | 959 -> 959 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_menu_bg.png (renamed from textures/technic_menu_bg.png) | bin | 11018 -> 11018 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mineral_chromium.png (renamed from textures/technic_mineral_chromium.png) | bin | 887 -> 887 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mineral_diamond.png (renamed from textures/technic_mineral_diamond.png) | bin | 904 -> 904 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mineral_uranium.png (renamed from textures/technic_mineral_uranium.png) | bin | 912 -> 912 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mineral_zinc.png (renamed from textures/technic_mineral_zinc.png) | bin | 891 -> 891 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mining_drill.png (renamed from textures/technic_mining_drill.png) | bin | 2099 -> 2099 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mining_laser_mk1.png (renamed from textures/technic_mining_laser_mk1.png) | bin | 358 -> 358 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mithril_chest_front.png (renamed from textures/technic_mithril_chest_front.png) | bin | 2656 -> 2656 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mithril_chest_locked.png (renamed from textures/technic_mithril_chest_locked.png) | bin | 2716 -> 2716 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mithril_chest_side.png (renamed from textures/technic_mithril_chest_side.png) | bin | 2616 -> 2616 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mithril_chest_top.png (renamed from textures/technic_mithril_chest_top.png) | bin | 2558 -> 2558 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mithril_dust.png (renamed from textures/technic_mithril_dust.png) | bin | 1289 -> 1289 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_motor.png (renamed from textures/technic_motor.png) | bin | 2517 -> 2517 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_music_player_bottom.png (renamed from textures/technic_music_player_bottom.png) | bin | 744 -> 744 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_music_player_side.png (renamed from textures/technic_music_player_side.png) | bin | 788 -> 788 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_music_player_top.png (renamed from textures/technic_music_player_top.png) | bin | 916 -> 916 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mv_battery_box_bottom.png (renamed from textures/technic_mv_battery_box_bottom.png) | bin | 2019 -> 2019 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mv_battery_box_side0.png (renamed from textures/technic_mv_battery_box_side0.png) | bin | 2309 -> 2309 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mv_battery_box_top.png (renamed from textures/technic_mv_battery_box_top.png) | bin | 2390 -> 2390 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mv_cable.png (renamed from textures/technic_mv_cable.png) | bin | 416 -> 416 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mv_cable_wield.png (renamed from textures/technic_mv_cable_wield.png) | bin | 2996 -> 2996 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mv_solar_panel_bottom.png (renamed from textures/technic_mv_solar_panel_bottom.png) | bin | 2019 -> 2019 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mv_solar_panel_side.png (renamed from textures/technic_mv_solar_panel_side.png) | bin | 1772 -> 1772 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mv_solar_panel_top.png (renamed from textures/technic_mv_solar_panel_top.png) | bin | 2728 -> 2728 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_mv_transformer.png (renamed from textures/technic_mv_transformer.png) | bin | 1748 -> 1748 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_back.png (renamed from textures/technic_nodebreaker_back.png) | bin | 37128 -> 37128 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_bottom.png (renamed from textures/technic_nodebreaker_bottom.png) | bin | 38757 -> 38757 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_bottom_off.png (renamed from textures/technic_nodebreaker_bottom_off.png) | bin | 41584 -> 41584 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_bottom_on.png (renamed from textures/technic_nodebreaker_bottom_on.png) | bin | 41522 -> 41522 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_front_off.png (renamed from textures/technic_nodebreaker_front_off.png) | bin | 37094 -> 37094 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_front_on.png (renamed from textures/technic_nodebreaker_front_on.png) | bin | 36983 -> 36983 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_side.png (renamed from textures/technic_nodebreaker_side.png) | bin | 38136 -> 38136 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_side1.png (renamed from textures/technic_nodebreaker_side1.png) | bin | 38291 -> 38291 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_side1_off.png (renamed from textures/technic_nodebreaker_side1_off.png) | bin | 42142 -> 42142 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_side1_on.png (renamed from textures/technic_nodebreaker_side1_on.png) | bin | 42270 -> 42270 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_side2.png (renamed from textures/technic_nodebreaker_side2.png) | bin | 38195 -> 38195 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_side2_off.png (renamed from textures/technic_nodebreaker_side2_off.png) | bin | 42183 -> 42183 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_side2_on.png (renamed from textures/technic_nodebreaker_side2_on.png) | bin | 42283 -> 42283 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_top.png (renamed from textures/technic_nodebreaker_top.png) | bin | 38904 -> 38904 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_top_off.png (renamed from textures/technic_nodebreaker_top_off.png) | bin | 42025 -> 42025 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_nodebreaker_top_on.png (renamed from textures/technic_nodebreaker_top_on.png) | bin | 42103 -> 42103 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_power_meter.png (renamed from textures/technic_power_meter.png) | bin | 209 -> 209 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_power_meter1.png (renamed from textures/technic_power_meter1.png) | bin | 271 -> 271 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_power_meter2.png (renamed from textures/technic_power_meter2.png) | bin | 349 -> 349 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_power_meter3.png (renamed from textures/technic_power_meter3.png) | bin | 395 -> 395 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_power_meter4.png (renamed from textures/technic_power_meter4.png) | bin | 434 -> 434 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_power_meter5.png (renamed from textures/technic_power_meter5.png) | bin | 452 -> 452 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_power_meter6.png (renamed from textures/technic_power_meter6.png) | bin | 509 -> 509 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_power_meter7.png (renamed from textures/technic_power_meter7.png) | bin | 576 -> 576 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_power_meter8.png (renamed from textures/technic_power_meter8.png) | bin | 655 -> 655 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_power_meter_bg.png (renamed from textures/technic_power_meter_bg.png) | bin | 278 -> 278 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_power_meter_fg.png (renamed from textures/technic_power_meter_fg.png) | bin | 465 -> 465 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_raw_latex.png (renamed from textures/technic_raw_latex.png) | bin | 1625 -> 1625 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_rebar.png (renamed from textures/technic_rebar.png) | bin | 813 -> 813 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_rubber.png (renamed from textures/technic_rubber.png) | bin | 587 -> 587 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_rubber_sapling.png (renamed from textures/technic_rubber_sapling.png) | bin | 333 -> 333 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_rubber_tree_empty.png (renamed from textures/technic_rubber_tree_empty.png) | bin | 835 -> 835 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_rubber_tree_full.png (renamed from textures/technic_rubber_tree_full.png) | bin | 808 -> 808 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_screwdriver.png (renamed from textures/technic_screwdriver.png) | bin | 1001 -> 1001 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_silicon_wafer.png (renamed from textures/technic_silicon_wafer.png) | bin | 913 -> 913 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_silver_chest_front.png (renamed from textures/technic_silver_chest_front.png) | bin | 2241 -> 2241 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_silver_chest_locked.png (renamed from textures/technic_silver_chest_locked.png) | bin | 2368 -> 2368 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_silver_chest_side.png (renamed from textures/technic_silver_chest_side.png) | bin | 2146 -> 2146 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_silver_chest_top.png (renamed from textures/technic_silver_chest_top.png) | bin | 2226 -> 2226 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_silver_dust.png (renamed from textures/technic_silver_dust.png) | bin | 1295 -> 1295 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_solar_panel_bottom.png (renamed from textures/technic_solar_panel_bottom.png) | bin | 2046 -> 2046 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_solar_panel_side.png (renamed from textures/technic_solar_panel_side.png) | bin | 465 -> 465 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_solar_panel_top.png (renamed from textures/technic_solar_panel_top.png) | bin | 569 -> 569 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_sonic_screwdriver.png (renamed from textures/technic_sonic_screwdriver.png) | bin | 2064 -> 2064 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_stainless_steel_dust.png (renamed from textures/technic_stainless_steel_dust.png) | bin | 1145 -> 1145 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_stainless_steel_ingot.png (renamed from textures/technic_stainless_steel_ingot.png) | bin | 230 -> 230 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_tin_dust.png (renamed from textures/technic_tin_dust.png) | bin | 1261 -> 1261 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_tree_tap.png (renamed from textures/technic_tree_tap.png) | bin | 1045 -> 1045 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_uranium.png (renamed from textures/technic_uranium.png) | bin | 213 -> 213 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_water_can.png (renamed from textures/technic_water_can.png) | bin | 1041 -> 1041 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_water_mill_side.png (renamed from textures/technic_water_mill_side.png) | bin | 907 -> 907 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_water_mill_top.png (renamed from textures/technic_water_mill_top.png) | bin | 828 -> 828 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_water_mill_top_active.png (renamed from textures/technic_water_mill_top_active.png) | bin | 819 -> 819 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_workshop_bottom.png (renamed from textures/technic_workshop_bottom.png) | bin | 744 -> 744 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_workshop_side.png (renamed from textures/technic_workshop_side.png) | bin | 589 -> 589 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_workshop_top.png (renamed from textures/technic_workshop_top.png) | bin | 555 -> 555 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_zinc_dust.png (renamed from textures/technic_zinc_dust.png) | bin | 1150 -> 1150 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_zinc_ingot.png (renamed from textures/technic_zinc_ingot.png) | bin | 242 -> 242 bytes | |||
| -rw-r--r-- | technic/technic/textures/technic_zinc_lump.png (renamed from textures/technic_zinc_lump.png) | bin | 214 -> 214 bytes | |||
| -rw-r--r-- | technic/technic/textures/tetris_machine_front1.png | bin | 0 -> 20501 bytes | |||
| -rw-r--r-- | technic/technic/textures/tetris_machine_front2.png | bin | 0 -> 24305 bytes | |||
| -rw-r--r-- | technic/technic/textures/tetris_machine_side1B.png | bin | 0 -> 2805 bytes | |||
| -rw-r--r-- | technic/technic/textures/tetris_machine_side1L.png | bin | 0 -> 15928 bytes | |||
| -rw-r--r-- | technic/technic/textures/tetris_machine_side1P.png | bin | 0 -> 15928 bytes | |||
| -rw-r--r-- | technic/technic/textures/tetris_machine_side2B.png | bin | 0 -> 17424 bytes | |||
| -rw-r--r-- | technic/technic/textures/tetris_machine_side2L.png | bin | 0 -> 16242 bytes | |||
| -rw-r--r-- | technic/technic/textures/tetris_machine_side2P.png | bin | 0 -> 16192 bytes | |||
| -rw-r--r-- | technic/technic/textures/tetris_machine_top.png | bin | 0 -> 2805 bytes | |||
| -rw-r--r-- | technic/technic/tool_workshop.lua (renamed from tool_workshop.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/tree_tap.lua (renamed from tree_tap.lua) | 2 | ||||
| -rw-r--r-- | technic/technic/water.lua | 588 | ||||
| -rw-r--r-- | technic/technic/water_mill.lua (renamed from water_mill.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/wires.lua (renamed from wires.lua) | 0 | ||||
| -rw-r--r-- | technic/technic/wires_mv.lua (renamed from wires_mv.lua) | 0 | 
348 files changed, 3257 insertions, 248 deletions
| diff --git a/coal_furnace.lua b/coal_furnace.lua deleted file mode 100644 index 9727795..0000000 --- a/coal_furnace.lua +++ /dev/null @@ -1,171 +0,0 @@ -minetest.register_alias("coal_furnace", "technic:coal_furnace") - -minetest.register_craft({ -	output = 'technic:coal_furnace', -	recipe = { -		{'default:stone', 'default:stone', 'default:stone'}, -		{'default:stone', '', 'default:stone'}, -		{'default:stone', 'default:stone', 'default:stone'}, -	} -}) - - -coal_furnace_formspec = -	"invsize[8,9;]".. -	"image[1,1;1,2;technic_power_meter_bg.png]".. -	"list[current_name;src;3,1;1,1;]".. -	"list[current_name;dst;5,1;2,2;]".. -	"list[current_player;main;0,5;8,4;]".. -	"label[0,0;Coal Furnace]") -	 -minetest.register_node("technic:coal_furnace", { -	description = "Coal furnace", -	tiles = {"technic_electric_furnace_top.png", "technic_electric_furnace_bottom.png", "technic_electric_furnace_side.png", -		"technic_electric_furnace_side.png", "technic_electric_furnace_side.png", "technic_electric_furnace_front.png"}, -	paramtype2 = "facedir", -	groups = {cracky=2}, -	legacy_facedir_simple = true, -	sounds = default.node_sound_stone_defaults(), -	technic_power_machine=1, -	internal_EU_buffer=0; -	interal_EU_buffer_size=2000; -	on_construct = function(pos) -		local meta = minetest.env:get_meta(pos) -		meta:set_string("formspec", coal_furnace_formspec) -		meta:set_string("infotext", "Coal furnace") -		local inv = meta:get_inventory() -		inv:set_size("src", 1) -		inv:set_size("dst", 4) -		local EU_used  = 0 -		local furnace_is_cookin = 0 -		local cooked = nil -		meta:set_float("internal_EU_buffer",0) -		meta:set_float("internal_EU_buffer_size",2000) - -	end, -	can_dig = function(pos,player) -		local meta = minetest.env:get_meta(pos); -		local inv = meta:get_inventory() -		if not inv:is_empty("dst") then -			return false -		elseif not inv:is_empty("src") then -			return false -		end -		return true -	end, -}) - -minetest.register_node("technic:coal_furnace_active", { -	description = "Coal Furnace", -	tiles = {"technic_electric_furnace_top.png", "technic_electric_furnace_bottom.png", "technic_electric_furnace_side.png", -		"technic_electric_furnace_side.png", "technic_electric_furnace_side.png", "technic_electric_furnace_front_active.png"}, -	paramtype2 = "facedir", -	light_source = 8, -	drop = "technic:coal_furnace", -	groups = {cracky=2, not_in_creative_inventory=1}, -	legacy_facedir_simple = true, -	sounds = default.node_sound_stone_defaults(), -	internal_EU_buffer=0; -	interal_EU_buffer_size=2000; -	technic_power_machine=1, -	on_construct = function(pos) -		local meta = minetest.env:get_meta(pos) -		meta:set_string("formspec", electric_furnace_formspec) -		meta:set_string("infotext", "Coal furnace"); -		local inv = meta:get_inventory() -		inv:set_size("src", 1) -		inv:set_size("dst", 4) -		local EU_used  = 0 -		local furnace_is_cookin = 0 -		local cooked = nil -	end, -	can_dig = function(pos,player) -		local meta = minetest.env:get_meta(pos); -		local inv = meta:get_inventory() -		if not inv:is_empty("dst") then -			return false -		elseif not inv:is_empty("src") then -			return false -		end -		return true -	end, -}) - -minetest.register_abm({ -	nodenames = {"technic:coal_furnace","technic:coal_furnace_active"}, -	interval = 1, -	chance = 1, -	 -	action = function(pos, node, active_object_count, active_object_count_wider) - -		local meta = minetest.env:get_meta(pos) -		internal_EU_buffer=meta:get_float("internal_EU_buffer") -		internal_EU_buffer_size=meta:get_float("internal_EU_buffer") -		local load = math.floor(internal_EU_buffer/2000 * 100) -		meta:set_string("formspec", -				"invsize[8,9;]".. -				"image[1,1;1,2;technic_power_meter_bg.png^[lowpart:".. -						(load)..":technic_power_meter_fg.png]".. -				"list[current_name;src;3,1;1,1;]".. -				"list[current_name;dst;5,1;2,2;]".. -				"list[current_player;main;0,5;8,4;]".. -				"label[0,0;Electric Furnace]") - -		local inv = meta:get_inventory() -		 -		local furnace_is_cookin = meta:get_float("furnace_is_cookin") -		 -		 -		local srclist = inv:get_list("src") -		local cooked=nil  - -		if srclist then -		 cooked = minetest.get_craft_result({method = "cooking", width = 1, items = srclist}) -		end -		 -		 -		if (furnace_is_cookin == 1) then -			if internal_EU_buffer>=150 then -			internal_EU_buffer=internal_EU_buffer-150; -			meta:set_float("internal_EU_buffer",internal_EU_buffer) -			meta:set_float("src_time", meta:get_float("src_time") + 3) -			if cooked and cooked.item and meta:get_float("src_time") >= cooked.time then -				-- check if there's room for output in "dst" list -				if inv:room_for_item("dst",cooked.item) then -					-- Put result in "dst" list -					inv:add_item("dst", cooked.item) -					-- take stuff from "src" list -					srcstack = inv:get_stack("src", 1) -					srcstack:take_item() -					inv:set_stack("src", 1, srcstack) -				else -					print("Furnace inventory full!") -				end -				meta:set_string("src_time", 0) -			end -			end		 -		end -		 -		 - -		 -		if srclist then -			cooked = minetest.get_craft_result({method = "cooking", width = 1, items = srclist}) -			if cooked.time>0 then  -			hacky_swap_node(pos,"technic:coal_furnace_active") -			meta:set_string("infotext","Furnace active") -			meta:set_string("furnace_is_cookin",1) -			meta:set_string("src_time", 0) -			return -			end - -		end -	 -				hacky_swap_node(pos,"technic:coal_furnace") -				meta:set_string("infotext","Furnace inactive") -				meta:set_string("furnace_is_cookin",0) -				meta:set_string("src_time", 0) -		 -	 -end,		 -})
\ No newline at end of file diff --git a/config.lua b/config.lua deleted file mode 100644 index 88662d3..0000000 --- a/config.lua +++ /dev/null @@ -1,3 +0,0 @@ --- Please note that item_drop module already contains item_pickup -enable_item_drop=false -enable_item_pickup=true diff --git a/technic/modpack.txt b/technic/modpack.txt new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/technic/modpack.txt @@ -0,0 +1 @@ + diff --git a/technic/pipeworks/.gitignore b/technic/pipeworks/.gitignore new file mode 100644 index 0000000..b25c15b --- /dev/null +++ b/technic/pipeworks/.gitignore @@ -0,0 +1 @@ +*~ diff --git a/technic/pipeworks/README b/technic/pipeworks/README new file mode 100644 index 0000000..fb18d4f --- /dev/null +++ b/technic/pipeworks/README @@ -0,0 +1,34 @@ +This simple mod uses nodeboxes to supply a complete set of 3D flanged pipes,  +along with "valve" and "pump" devices. + +Unlike the previous version of this mod, these pipes are rounded, and when  +placed, they'll automatically join together as needed.  Pipes can go vertically  +or horizontally, and there are enough nodes defined to allow for all possible  +connections.  Valves and pumps can only be placed horizontally, and will  +automatically rotate and join with neighboring pipes as objects are added, as  +well as joining with each other under certain circumstances. + +Pipes come in two variants: one type bears one or more dark windows on each  +pipe, suggesting they're empty, while the other type bears green-tinted  +windows, as if full (the two colors should also be easy to select if you want  +to change them in a paint program).  These windows only appear on straight  +lengths and on certain junctions. + +There are no crafting recipes, yet, but you can use /giveme as usual, namely  +"/giveme pipeworks:pipe 999" or so, and then place them as needed.  See  +init.lua for more details. + +This mod is intended to be used as a basis or at least as sort of a model for  +something else to build on (perhaps a nicer-looking oil mod?), and does not  +provide any of the code necessary to cause anything to flow through them.  Like  +the pipes, the valve and pump don't do anything useful yet, but you can punch  +them to turn them "on" and "off".  Note that the valve and pump textures and  +shapes are not yet complete (hence their boxy appearance). + +This mod is a work in progress. + +Please note that owing to the nature of this mod, I have opted to use 64px  +textures.  Anything less just looks terrible. + +If you don't need the old node names from the previous version of this mod,  +edit init.lua and comment-out the 'dofile' line at the top. diff --git a/technic/pipeworks/autoplace.lua b/technic/pipeworks/autoplace.lua new file mode 100644 index 0000000..390c66a --- /dev/null +++ b/technic/pipeworks/autoplace.lua @@ -0,0 +1,176 @@ +-- autorouting for pipes + +function pipe_scanforobjects(pos) +	pipe_autoroute({ x=pos.x-1, y=pos.y  , z=pos.z   }, "_loaded") +	pipe_autoroute({ x=pos.x+1, y=pos.y  , z=pos.z   }, "_loaded") +	pipe_autoroute({ x=pos.x  , y=pos.y-1, z=pos.z   }, "_loaded") +	pipe_autoroute({ x=pos.x  , y=pos.y+1, z=pos.z   }, "_loaded") +	pipe_autoroute({ x=pos.x  , y=pos.y  , z=pos.z-1 }, "_loaded") +	pipe_autoroute({ x=pos.x  , y=pos.y  , z=pos.z+1 }, "_loaded") +	pipe_autoroute(pos, "_loaded") + +	pipe_autoroute({ x=pos.x-1, y=pos.y  , z=pos.z   }, "_empty") +	pipe_autoroute({ x=pos.x+1, y=pos.y  , z=pos.z   }, "_empty") +	pipe_autoroute({ x=pos.x  , y=pos.y-1, z=pos.z   }, "_empty") +	pipe_autoroute({ x=pos.x  , y=pos.y+1, z=pos.z   }, "_empty") +	pipe_autoroute({ x=pos.x  , y=pos.y  , z=pos.z-1 }, "_empty") +	pipe_autoroute({ x=pos.x  , y=pos.y  , z=pos.z+1 }, "_empty") +	pipe_autoroute(pos, "_empty") +end + +function pipe_autoroute(pos, state) +	nctr = minetest.env:get_node(pos) +	if (string.find(nctr.name, "pipeworks:pipe_") == nil) then return end + +	pipes_scansurroundings(pos) + +	nsurround = pxm..pxp..pym..pyp..pzm..pzp +	if nsurround == "000000" then nsurround = "110000" end +	minetest.env:add_node(pos, { name = "pipeworks:pipe_"..nsurround..state }) +end + +-- autorouting for pneumatic tubes + +function tube_scanforobjects(pos) +	tube_autoroute({ x=pos.x-1, y=pos.y  , z=pos.z   }) +	tube_autoroute({ x=pos.x+1, y=pos.y  , z=pos.z   }) +	tube_autoroute({ x=pos.x  , y=pos.y-1, z=pos.z   }) +	tube_autoroute({ x=pos.x  , y=pos.y+1, z=pos.z   }) +	tube_autoroute({ x=pos.x  , y=pos.y  , z=pos.z-1 }) +	tube_autoroute({ x=pos.x  , y=pos.y  , z=pos.z+1 }) +	tube_autoroute(pos) +end + +function tube_autoroute(pos) +	nctr = minetest.env:get_node(pos) +	print ("minetest.get_item_group("..nctr.name..',"tubedevice") == '..minetest.get_item_group(nctr.name, "tubedevice")) +	if (string.find(nctr.name, "pipeworks:tube_") == nil) +		and minetest.get_item_group(nctr.name, "tubedevice") ~= 1 then return end + +	pxm=0 +	pxp=0 +	pym=0 +	pyp=0 +	pzm=0 +	pzp=0 + +	nxm = minetest.env:get_node({ x=pos.x-1, y=pos.y  , z=pos.z   }) +	nxp = minetest.env:get_node({ x=pos.x+1, y=pos.y  , z=pos.z   }) +	nym = minetest.env:get_node({ x=pos.x  , y=pos.y-1, z=pos.z   }) +	nyp = minetest.env:get_node({ x=pos.x  , y=pos.y+1, z=pos.z   }) +	nzm = minetest.env:get_node({ x=pos.x  , y=pos.y  , z=pos.z-1 }) +	nzp = minetest.env:get_node({ x=pos.x  , y=pos.y  , z=pos.z+1 }) + +	if (string.find(nxm.name, "pipeworks:tube_") ~= nil)  +		or minetest.get_item_group(nxm.name, "tubedevice") == 1 then pxm=1 end +	if (string.find(nxp.name, "pipeworks:tube_") ~= nil)  +		or minetest.get_item_group(nxp.name, "tubedevice") == 1 then pxp=1 end +	if (string.find(nym.name, "pipeworks:tube_") ~= nil)  +		or minetest.get_item_group(nym.name, "tubedevice") == 1 then pym=1 end +	if (string.find(nyp.name, "pipeworks:tube_") ~= nil)  +		or minetest.get_item_group(nyp.name, "tubedevice") == 1 then pyp=1 end +	if (string.find(nzm.name, "pipeworks:tube_") ~= nil)  +		or minetest.get_item_group(nzm.name, "tubedevice") == 1 then pzm=1 end +	if (string.find(nzp.name, "pipeworks:tube_") ~= nil)  +		or minetest.get_item_group(nzp.name, "tubedevice") == 1 then pzp=1 end + +	nsurround = pxm..pxp..pym..pyp..pzm..pzp +	if minetest.get_item_group(nctr.name, "tubedevice") ~= 1 then +		minetest.env:add_node(pos, { name = "pipeworks:tube_"..nsurround }) +	end + +end + +-- auto-rotation code for various devices the tubes attach to + +function pipe_device_autorotate(pos, state, bname) + +	if state == nil then +		nname = bname +	else +		nname = bname.."_"..state +	end + +	local nctr = minetest.env:get_node(pos) + +	pipes_scansurroundings(pos) + +	if (pxm+pxp) ~= 0 then +		minetest.env:add_node(pos, { name = nname.."_x" }) +		return +	end + +	if (pzm+pzp) ~= 0 then +		minetest.env:add_node(pos, { name = nname.."_z" }) +	end +	 +end + +function pipes_scansurroundings(pos) +	pxm=0 +	pxp=0 +	pym=0 +	pyp=0 +	pzm=0 +	pzp=0 + +	nxm = minetest.env:get_node({ x=pos.x-1, y=pos.y  , z=pos.z   }) +	nxp = minetest.env:get_node({ x=pos.x+1, y=pos.y  , z=pos.z   }) +	nym = minetest.env:get_node({ x=pos.x  , y=pos.y-1, z=pos.z   }) +	nyp = minetest.env:get_node({ x=pos.x  , y=pos.y+1, z=pos.z   }) +	nzm = minetest.env:get_node({ x=pos.x  , y=pos.y  , z=pos.z-1 }) +	nzp = minetest.env:get_node({ x=pos.x  , y=pos.y  , z=pos.z+1 }) + +	if (string.find(nxm.name, "pipeworks:pipe_") ~= nil) then pxm=1 end +	if (string.find(nxp.name, "pipeworks:pipe_") ~= nil) then pxp=1 end +	if (string.find(nym.name, "pipeworks:pipe_") ~= nil) then pym=1 end +	if (string.find(nyp.name, "pipeworks:pipe_") ~= nil) then pyp=1 end +	if (string.find(nzm.name, "pipeworks:pipe_") ~= nil) then pzm=1 end +	if (string.find(nzp.name, "pipeworks:pipe_") ~= nil) then pzp=1 end + +	for p in ipairs(pipes_devicelist) do +		pdev = pipes_devicelist[p] +		if (string.find(nxm.name, "pipeworks:"..pdev.."_off_x") ~= nil) or +		   (string.find(nxm.name, "pipeworks:"..pdev.."_on_x") ~= nil) or +		   (string.find(nxm.name, "pipeworks:"..pdev.."_x") ~= nil) then +			pxm=1 +		end + +		if (string.find(nxp.name, "pipeworks:"..pdev.."_off_x") ~= nil) or +		   (string.find(nxp.name, "pipeworks:"..pdev.."_on_x") ~= nil) or +		   (string.find(nxp.name, "pipeworks:"..pdev.."_x") ~= nil)  then +			pxp=1 +		end + +		if (string.find(nzm.name, "pipeworks:"..pdev.."_off_z") ~= nil) or +		   (string.find(nzm.name, "pipeworks:"..pdev.."_on_z") ~= nil) or +		   (string.find(nzm.name, "pipeworks:"..pdev.."_z") ~= nil)  then +			pzm=1 +		end + +		if (string.find(nzp.name, "pipeworks:"..pdev.."_off_z") ~= nil) or +		   (string.find(nzp.name, "pipeworks:"..pdev.."_on_z") ~= nil) or +		   (string.find(nzp.name, "pipeworks:"..pdev.."_z") ~= nil)  then +			pzp=1 +		end +	end + +	-- storage tanks and intake grates have vertical connections +	-- also, so they require a special case + +	if (string.find(nym.name, "pipeworks:storage_tank_") ~= nil) or +	   (string.find(nym.name, "pipeworks:intake") ~= nil) or +	   (string.find(nym.name, "pipeworks:outlet") ~= nil) then +		pym=1 +	end +end + +function pipe_look_for_stackable_tanks(pos) +	tym = minetest.env:get_node({ x=pos.x  , y=pos.y-1, z=pos.z   }) + +	if string.find(tym.name, "pipeworks:storage_tank_") ~= nil or +	    string.find(tym.name, "pipeworks:expansion_tank_") ~= nil then +		minetest.env:add_node(pos, { name =  "pipeworks:expansion_tank_0"}) +	end +end + diff --git a/technic/pipeworks/changelog.txt b/technic/pipeworks/changelog.txt new file mode 100644 index 0000000..9e51430 --- /dev/null +++ b/technic/pipeworks/changelog.txt @@ -0,0 +1,46 @@ +Changelog +--------- + +2012-08-24: Added square-ish pneumatic tubes, with their own autoplace code  +(they do not connect to the steel pipes or their related devices). + +2012-08-22: Added outlet grate, made it participate in autoplace algorithm.   +Extended storage tank to show fill level in 10% steps (0% to 100%).  Added  +"expansion tank" that appears if the user stacks tanks upwards.  (Downwards is  +not checked). + +2012-08-21: Made storage tank participate in autoplace algorithm.  Tuned API a  +little to allow for more flexible placement.  Re-organized code a bit to allow  +for some upcoming rules changes.  Made storage tanks' upper/lower fittins and  +intake grate participate in autoplace algorithm. + +2012-08-20: Added temporary nodes for storage tank and intake grating, but  +without autoplace. + +2012-08-19: Pumps and valves now fully participate in the  +auto-rotate/auto-place algorithm. + +2012-08-18: Total rewrite again.  All pipes are now nice and round-looking, and  +they auto-connect!  Also added temporary nodes for pump and valve (each with an  +on/off setting - punch to change).  No crafting recipes yet and the pipes still  +don't do anything useful yet.  Soon. + +2012-08-06:  Moved this changelog off the forum post and into a separate file. + +2012-08-05 (multiple updates): Rewrote pipeworks to use loops and tables to  +create the nodes. Requires far less code now. Added -X, +X, -Y, +Y, -Z, +Z  +capped stubs and a short centered horizontal segment. Changed node definitions  +so that the aforementioned "short centered" segment is given on dig/drop.   +Renamed it to just "pipeworks:pipe" (and pipe_loaded). Added empty/loaded  +indicator images to the capped ends, removed some redundant comments. Made the  +empty/loaded indication at the capped end more prominent. + +2012-07-21: Added screenshot showing pipes as they look now that nodebox  +texture rotation is fixed. + +2012-07-18: Changed the mod name and all internals to 'pipeworks' instead of  +'pipes'... after a couple of mistakes :-) + +2012-07-12: moved project to github. + +2012-06-23: Initial release, followed by reworking the textures a bit. diff --git a/technic/pipeworks/crafts.lua b/technic/pipeworks/crafts.lua new file mode 100644 index 0000000..493fdcf --- /dev/null +++ b/technic/pipeworks/crafts.lua @@ -0,0 +1,94 @@ +-- Crafting recipes for pipeworks + +-- If the technic mod is present, then don't bother registering these recipes +-- as that mod supplies its own. + +if io.open(minetest.get_modpath("pipeworks").."/../technic/init.lua", "r") == nil then + +	-- If homedecor is not installed, we need to register a few of its crafts +	-- manually so we can use them. + +	if minetest.get_modpath("homedecor") == nil then + +		minetest.register_craftitem(":homedecor:plastic_sheeting", { +			description = "Plastic sheet", +			inventory_image = "pipeworks_plastic_sheeting.png", +		}) + +		minetest.register_craft({ +		        type = "cooking", +		        output = "homedecor:plastic_sheeting", +		        recipe = "default:junglegrass", +		}) + +		minetest.register_craft({ +		        type = 'fuel', +		        recipe = 'homedecor:plastic_sheeting', +		        burntime = 30, +		}) +	end + +	minetest.register_craft( { +	        output = "pipeworks:pipe_110000_empty 12", +	        recipe = { +	                { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" }, +	                { "", "", "" }, +	                { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" } +	        }, +	}) + +	minetest.register_craft( { +	        output = "pipeworks:pump 2", +	        recipe = { +	                { "default:stone", "default:stone", "default:stone" }, +	                { "default:steel_ingot", "default:stick", "default:steel_ingot" }, +	                { "default:stone", "default:stone", "default:stone" } +	        }, +	}) + +	minetest.register_craft( { +	        output = "pipeworks:valve 2", +	        recipe = { +	                { "", "default:stick", "" }, +	                { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" }, +	                { "", "default:steel_ingot", "" } +	        }, +	}) + +	minetest.register_craft( { +	        output = "pipeworks:storage_tank 2", +	        recipe = { +	                { "", "default:steel_ingot", "default:steel_ingot" }, +	                { "default:steel_ingot", "default:glass", "default:steel_ingot" }, +	                { "default:steel_ingot", "default:steel_ingot", "" } +	        }, +	}) + +	minetest.register_craft( { +	        output = "pipeworks:intake 2", +	        recipe = { +	                { "", "default:steel_ingot", "" }, +	                { "default:steel_ingot", "", "default:steel_ingot" }, +	                { "", "default:steel_ingot", "" } +	        }, +	}) + +	minetest.register_craft( { +	        output = "pipeworks:outlet 2", +	        recipe = { +	                { "default:steel_ingot", "", "default:steel_ingot" }, +	                { "", "default:steel_ingot", "" }, +	                { "default:steel_ingot", "", "default:steel_ingot" } +	        }, +	}) + +	minetest.register_craft( { +		output = "pipeworks:tube 12", +		recipe = { +		        { "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", "homedecor:plastic_sheeting" }, +		        { "", "", "" }, +		        { "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", "homedecor:plastic_sheeting" } +		}, +	}) + +end diff --git a/technic/pipeworks/depends.txt b/technic/pipeworks/depends.txt new file mode 100644 index 0000000..3a7daa1 --- /dev/null +++ b/technic/pipeworks/depends.txt @@ -0,0 +1,2 @@ +default + diff --git a/technic/pipeworks/devices.lua b/technic/pipeworks/devices.lua new file mode 100644 index 0000000..5f1ce0d --- /dev/null +++ b/technic/pipeworks/devices.lua @@ -0,0 +1,471 @@ +-- List of devices that should participate in the autoplace algorithm + +pipes_devicelist = { +	"pump", +	"valve", +	"storage_tank_0", +	"storage_tank_1", +	"storage_tank_2", +	"storage_tank_3", +	"storage_tank_4", +	"storage_tank_5", +	"storage_tank_6", +	"storage_tank_7", +	"storage_tank_8", +	"storage_tank_9", +	"storage_tank_10" +} + +-- tables + +minetest.register_alias("pipeworks:pump", "pipeworks:pump_off_x") +minetest.register_alias("pipeworks:valve", "pipeworks:valve_off_x") +minetest.register_alias("pipeworks:storage_tank", "pipeworks:storage_tank_0_x") + +pipe_pumpbody_x = { +	{ -6/16, -8/16, -6/16, 6/16, 8/16, 6/16 } +} + +pipe_pumpbody_z = { +	{ -6/16, -8/16, -6/16, 6/16, 8/16, 6/16 } +} + +pipe_valvebody_x = { +	{ -4/16, -4/16, -4/16, 4/16, 4/16, 4/16 } +} + +pipe_valvebody_z = { +	{ -4/16, -4/16, -4/16, 4/16, 4/16, 4/16 } +} + +pipe_valvehandle_on_x = { +	{ -5/16, 4/16, -1/16, 0, 5/16, 1/16 } +} + +pipe_valvehandle_on_z = { +	{ -1/16, 4/16, -5/16, 1/16, 5/16, 0 } +} + +pipe_valvehandle_off_x = { +	{ -1/16, 4/16, -5/16, 1/16, 5/16, 0 } +} + +pipe_valvehandle_off_z = { +	{ -5/16, 4/16, -1/16, 0, 5/16, 1/16 } +} + +-- Now define the nodes. + +local states = { "on", "off" } +local dgroups = "" + +for s in ipairs(states) do + +	if states[s] == "off" then +		dgroups = {snappy=3, pipe=1} +	else +		dgroups = {snappy=3, pipe=1, not_in_creative_inventory=1} +	end + +	local pumpboxes = {} +	pipe_addbox(pumpboxes, pipe_leftstub) +	pipe_addbox(pumpboxes, pipe_pumpbody_x) +	pipe_addbox(pumpboxes, pipe_rightstub) +	local tilex = "pipeworks_pump_ends.png" +	local tilez = "pipeworks_pump_"..states[s]..".png" + +	minetest.register_node("pipeworks:pump_"..states[s].."_x", { +		description = "Pump Module ("..states[s]..")", +		drawtype = "nodebox", +		tiles = { +			"pipeworks_pump_top_x.png", +			"pipeworks_pump_sides.png", +			tilex, +			tilex, +			"pipeworks_pump_sides.png", +			tilez +		}, +		paramtype = "light", +		selection_box = { +	             	type = "fixed", +			fixed = { -0.5, -0.5, -0.5, 0.5, 0.5, 0.5 } +		}, +		node_box = { +			type = "fixed", +			fixed = pumpboxes +		}, +		groups = dgroups, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		after_place_node = function(pos) +			pipe_device_autorotate(pos, states[s], "pipeworks:pump") +			pipe_scanforobjects(pos) +		end, +		after_dig_node = function(pos) +			pipe_scanforobjects(pos) +		end, +		drop = "pipeworks:pump_off_x" +	}) +	 +	local pumpboxes = {} +	pipe_addbox(pumpboxes, pipe_frontstub) +	pipe_addbox(pumpboxes, pipe_pumpbody_z) +	pipe_addbox(pumpboxes, pipe_backstub) + +	minetest.register_node("pipeworks:pump_"..states[s].."_z", { +		description = "Pump Module ("..states[s]..", Z-axis)", +		drawtype = "nodebox", +		tiles = { +			"pipeworks_pump_top_z.png", +			"pipeworks_pump_sides.png", +			tilez, +			tilez, +			"pipeworks_pump_sides.png", +			tilex +		}, +		paramtype = "light", +		selection_box = { +	             	type = "fixed", +			fixed = { -0.5, -0.5, -0.5, 0.5, 0.5, 0.5 } +		}, +		node_box = { +			type = "fixed", +			fixed = pumpboxes +		}, +		groups = {snappy=3, pipe=1, not_in_creative_inventory=1}, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		after_place_node = function(pos) +			pipe_device_autorotate(pos, states[s], "pipeworks:pump") +			pipe_scanforobjects(pos) +		end, +		after_dig_node = function(pos) +			pipe_scanforobjects(pos) +		end, +		drop = "pipeworks:pump_off_x" +	}) + +	local valveboxes = {} +	pipe_addbox(valveboxes, pipe_leftstub) +	pipe_addbox(valveboxes, pipe_valvebody_x) +	if states[s] == "off" then  +		pipe_addbox(valveboxes, pipe_valvehandle_off_x) +	else +		pipe_addbox(valveboxes, pipe_valvehandle_on_x) +	end +	pipe_addbox(valveboxes, pipe_rightstub) +	local tilex = "pipeworks_valvebody_ends.png" +	local tilez = "pipeworks_valvebody_sides.png" + +	minetest.register_node("pipeworks:valve_"..states[s].."_x", { +		description = "Valve ("..states[s]..")", +		drawtype = "nodebox", +		tiles = { +			"pipeworks_valvebody_top_"..states[s].."_x.png", +			"pipeworks_valvebody_bottom.png", +			tilex, +			tilex, +			tilez, +			tilez, +		}, +		paramtype = "light", +		selection_box = { +	             	type = "fixed", +			fixed = { -8/16, -4/16, -5/16, 8/16, 5/16, 5/16 } +		}, +		node_box = { +			type = "fixed", +			fixed = valveboxes +		}, +		groups = dgroups, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		after_place_node = function(pos) +			pipe_device_autorotate(pos, states[s], "pipeworks:valve") +			pipe_scanforobjects(pos) +		end, +		after_dig_node = function(pos) +			pipe_scanforobjects(pos) +		end, +		drop = "pipeworks:valve_off_x", +		pipelike=1, +		on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_int("pipelike",1) +		end, +	}) + +	local valveboxes = {} +	pipe_addbox(valveboxes, pipe_frontstub) +	pipe_addbox(valveboxes, pipe_valvebody_z) +	if states[s] == "off" then  +		pipe_addbox(valveboxes, pipe_valvehandle_off_z) +	else +		pipe_addbox(valveboxes, pipe_valvehandle_on_z) +	end +	pipe_addbox(valveboxes, pipe_backstub) + +	minetest.register_node("pipeworks:valve_"..states[s].."_z", { +		description = "Valve ("..states[s]..", Z-axis)", +		drawtype = "nodebox", +		tiles = { +			"pipeworks_valvebody_top_"..states[s].."_z.png", +			"pipeworks_valvebody_bottom.png", +			tilez, +			tilez, +			tilex, +			tilex, +		}, +		paramtype = "light", +		selection_box = { +	             	type = "fixed", +			fixed = { -5/16, -4/16, -8/16, 5/16, 5/16, 8/16 } +		}, +		node_box = { +			type = "fixed", +			fixed = valveboxes +		}, +		groups = {snappy=3, pipe=1, not_in_creative_inventory=1}, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		after_place_node = function(pos) +			pipe_device_autorotate(pos, states[s], "pipeworks:valve") +			pipe_scanforobjects(pos) + +		end, +		after_dig_node = function(pos) +			pipe_scanforobjects(pos) +		end, +		drop = "pipeworks:valve_off_x", +		pipelike=1, +		on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_int("pipelike",1) +		end, +	}) +end + +-- intake grate + +minetest.register_node("pipeworks:intake", { +	description = "Intake grate", +	drawtype = "nodebox", +	tiles = { +		"pipeworks_intake_top.png", +		"pipeworks_intake_sides.png", +		"pipeworks_intake_sides.png", +		"pipeworks_intake_sides.png", +		"pipeworks_intake_sides.png", +		"pipeworks_intake_sides.png" +	}, +	selection_box = { +             	type = "fixed", +		fixed = { -0.5, -0.5, -0.5, 0.5, 0.5, 0.5 } +	}, +	node_box = { +		type = "fixed", +		fixed = { -0.5, -0.5, -0.5, 0.5, 0.5, 0.5 } +	}, +	paramtype = "light", +	groups = {snappy=3, pipe=1}, +	sounds = default.node_sound_wood_defaults(), +	walkable = true, +	stack_max = 99, +	after_place_node = function(pos) +		pipe_scanforobjects(pos) +	end, +	after_dig_node = function(pos) +		pipe_scanforobjects(pos) +	end, +	pipelike=1, +	on_construct = function(pos) +	local meta = minetest.env:get_meta(pos) +	meta:set_int("pipelike",1) +	end, +}) + +-- outlet grate + +minetest.register_node("pipeworks:outlet", { +	description = "Outlet grate", +	drawtype = "nodebox", +	tiles = { +		"pipeworks_outlet_top.png", +		"pipeworks_outlet_sides.png", +		"pipeworks_outlet_sides.png", +		"pipeworks_outlet_sides.png", +		"pipeworks_outlet_sides.png", +		"pipeworks_outlet_sides.png" +	}, +	selection_box = { +             	type = "fixed", +		fixed = { -0.5, -0.5, -0.5, 0.5, 0.5, 0.5 } +	}, +	node_box = { +		type = "fixed", +		fixed = { -0.5, -0.5, -0.5, 0.5, 0.5, 0.5 } +	}, +	paramtype = "light", +	groups = {snappy=3, pipe=1}, +	sounds = default.node_sound_wood_defaults(), +	walkable = true, +	stack_max = 99, +	after_place_node = function(pos) +		pipe_scanforobjects(pos) +	end, +	after_dig_node = function(pos) +		pipe_scanforobjects(pos) +	end, +	pipelike=1, +	on_construct = function(pos) +	local meta = minetest.env:get_meta(pos) +	meta:set_int("pipelike",1) +	end, +}) + +-- tanks + +for fill = 0, 10 do +	if fill == 0 then  +		filldesc="empty" +		sgroups = {snappy=3, pipe=1, tankfill=fill+1} +	else +		filldesc=fill.."0% full" +		sgroups = {snappy=3, pipe=1, tankfill=fill+1, not_in_creative_inventory=1} +	end + +	minetest.register_node("pipeworks:expansion_tank_"..fill, { +		description = "Expansion Tank ("..filldesc..")... You hacker, you.", +		tiles = { +			"pipeworks_storage_tank_fittings.png", +			"pipeworks_storage_tank_fittings.png", +			"pipeworks_storage_tank_back.png", +			"pipeworks_storage_tank_back.png", +			"pipeworks_storage_tank_back.png", +			"pipeworks_storage_tank_front_"..fill..".png" +		}, +		paramtype = "light", +		paramtype2 = "facedir", +		groups = {snappy=3, pipe=1, tankfill=fill+1, not_in_creative_inventory=1}, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		drop = "pipeworks:storage_tank_"..fill.."_x", +		after_place_node = function(pos) +			pipe_look_for_stackable_tanks(pos) +			pipe_scanforobjects(pos) +		end, +		after_dig_node = function(pos) +			pipe_scanforobjects(pos) +		end, +		pipelike=0, +		on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_int("pipelike",0) +		end, +	}) + +	minetest.register_node("pipeworks:storage_tank_"..fill.."_x", { +		description = "Fluid Storage Tank ("..filldesc..")", +		tiles = { +			"pipeworks_storage_tank_fittings.png", +			"pipeworks_storage_tank_back.png", +			"pipeworks_storage_tank_fittings.png", +			"pipeworks_storage_tank_fittings.png", +			"pipeworks_storage_tank_back.png", +			"pipeworks_storage_tank_front_"..fill..".png" +		}, +		paramtype = "light", +		groups = sgroups, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		after_place_node = function(pos) +			pipe_look_for_stackable_tanks(pos) +			if string.find(minetest.env:get_node(pos).name, "pipeworks:storage_tank_") ~= nil then +				pipe_device_autorotate(pos, nil, "pipeworks:storage_tank_"..fill) +			end +			pipe_scanforobjects(pos) +		end, +		after_dig_node = function(pos) +			pipe_scanforobjects(pos) +		end, +		pipelike=1, +		on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_int("pipelike",1) +		end, +	}) +	 +	minetest.register_node("pipeworks:storage_tank_"..fill.."_z", { +		description = "Fluid Storage Tank (Z axis, "..filldesc..")... You hacker, you.", +		tiles = { +			"pipeworks_storage_tank_fittings.png", +			"pipeworks_storage_tank_back.png", +			"pipeworks_storage_tank_front_"..fill..".png", +			"pipeworks_storage_tank_back.png", +			"pipeworks_storage_tank_fittings.png", +			"pipeworks_storage_tank_fittings.png" +		}, +		paramtype = "light", +		groups = {snappy=3, pipe=1, tankfill=fill+1, not_in_creative_inventory=1}, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		drop = "pipeworks:storage_tank_"..fill.."_x", +		after_place_node = function(pos) +			pipe_look_for_stackable_tanks(pos) +			if string.find(minetest.env:get_node(pos).name, "pipeworks:storage_tank_") ~= nil then +				pipe_device_autorotate(pos, nil, "pipeworks:storage_tank_"..fill) +			end +			pipe_scanforobjects(pos) +		end, +		after_dig_node = function(pos) +			pipe_scanforobjects(pos) +		end, +		pipelike=1, +		on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_int("pipelike",1) +		end, +	}) +end + +-- various actions + +local axes = { "x", "z" } + +for a in ipairs(axes) do +	minetest.register_on_punchnode(function (pos, node) +		if node.name=="pipeworks:valve_on_"..axes[a] then  +			minetest.env:add_node(pos, { name = "pipeworks:valve_off_"..axes[a] }) +			local meta = minetest.env:get_meta(pos) +			meta:set_int("pipelike",0) +		end +	end) + +	minetest.register_on_punchnode(function (pos, node) +		if node.name=="pipeworks:valve_off_"..axes[a] then  +			minetest.env:add_node(pos, { name = "pipeworks:valve_on_"..axes[a] }) +			local meta = minetest.env:get_meta(pos) +			meta:set_int("pipelike",1) +		end +	end) + +	minetest.register_on_punchnode(function (pos, node) +		if node.name=="pipeworks:pump_on_"..axes[a] then  +			minetest.env:add_node(pos, { name = "pipeworks:pump_off_"..axes[a] }) +		end +	end) + +	minetest.register_on_punchnode(function (pos, node) +		if node.name=="pipeworks:pump_off_"..axes[a] then  +			minetest.env:add_node(pos, { name = "pipeworks:pump_on_"..axes[a] }) +		end +	end) +end + diff --git a/technic/pipeworks/init.lua b/technic/pipeworks/init.lua new file mode 100644 index 0000000..0c6a501 --- /dev/null +++ b/technic/pipeworks/init.lua @@ -0,0 +1,322 @@ +-- Pipeworks mod by Vanessa Ezekowitz - 2012-08-05 +-- +-- Entirely my own code.  This mod supplies various shapes of pipes +-- and devices that they can connect to such as pumps, valves, etc. +-- All pipes autoconnect as you lay them out, and devices will auto- +-- connect to them. +-- +-- License: WTFPL +-- + +-- Un-comment the following dofile line to re-enable the old pipe nodes. +-- dofile(minetest.get_modpath("pipeworks").."/oldpipes.lua") + +minetest.register_alias("pipeworks:pipe", "pipeworks:pipe_110000_empty") + +pipe_leftstub = { +	{ -32/64, -2/64, -6/64,   1/64, 2/64, 6/64 },	-- pipe segment against -X face +	{ -32/64, -4/64, -5/64,   1/64, 4/64, 5/64 }, +	{ -32/64, -5/64, -4/64,   1/64, 5/64, 4/64 }, +	{ -32/64, -6/64, -2/64,   1/64, 6/64, 2/64 }, + +	{ -32/64, -3/64, -8/64, -30/64, 3/64, 8/64 },	-- (the flange for it) +	{ -32/64, -5/64, -7/64, -30/64, 5/64, 7/64 }, +	{ -32/64, -6/64, -6/64, -30/64, 6/64, 6/64 }, +	{ -32/64, -7/64, -5/64, -30/64, 7/64, 5/64 }, +	{ -32/64, -8/64, -3/64, -30/64, 8/64, 3/64 } +} + +pipe_rightstub = { +	{ -1/64, -2/64, -6/64,  32/64, 2/64, 6/64 },	-- pipe segment against +X face +	{ -1/64, -4/64, -5/64,  32/64, 4/64, 5/64 }, +	{ -1/64, -5/64, -4/64,  32/64, 5/64, 4/64 }, +	{ -1/64, -6/64, -2/64,  32/64, 6/64, 2/64 }, + +	{ 30/64, -3/64, -8/64, 32/64, 3/64, 8/64 },	-- (the flange for it) +	{ 30/64, -5/64, -7/64, 32/64, 5/64, 7/64 }, +	{ 30/64, -6/64, -6/64, 32/64, 6/64, 6/64 }, +	{ 30/64, -7/64, -5/64, 32/64, 7/64, 5/64 }, +	{ 30/64, -8/64, -3/64, 32/64, 8/64, 3/64 } +} + +pipe_bottomstub = { +	{ -2/64, -32/64, -6/64,   2/64, 1/64, 6/64 },	-- pipe segment against -Y face +	{ -4/64, -32/64, -5/64,   4/64, 1/64, 5/64 }, +	{ -5/64, -32/64, -4/64,   5/64, 1/64, 4/64 }, +	{ -6/64, -32/64, -2/64,   6/64, 1/64, 2/64 }, + +	{ -3/64, -32/64, -8/64, 3/64, -30/64, 8/64 },	-- (the flange for it) +	{ -5/64, -32/64, -7/64, 5/64, -30/64, 7/64 }, +	{ -6/64, -32/64, -6/64, 6/64, -30/64, 6/64 }, +	{ -7/64, -32/64, -5/64, 7/64, -30/64, 5/64 }, +	{ -8/64, -32/64, -3/64, 8/64, -30/64, 3/64 } +} + + +pipe_topstub = { +	{ -2/64, -1/64, -6/64,   2/64, 32/64, 6/64 },	-- pipe segment against +Y face +	{ -4/64, -1/64, -5/64,   4/64, 32/64, 5/64 }, +	{ -5/64, -1/64, -4/64,   5/64, 32/64, 4/64 }, +	{ -6/64, -1/64, -2/64,   6/64, 32/64, 2/64 }, + +	{ -3/64, 30/64, -8/64, 3/64, 32/64, 8/64 },	-- (the flange for it) +	{ -5/64, 30/64, -7/64, 5/64, 32/64, 7/64 }, +	{ -6/64, 30/64, -6/64, 6/64, 32/64, 6/64 }, +	{ -7/64, 30/64, -5/64, 7/64, 32/64, 5/64 }, +	{ -8/64, 30/64, -3/64, 8/64, 32/64, 3/64 } +} + +pipe_frontstub = { +	{ -6/64, -2/64, -32/64,   6/64, 2/64, 1/64 },	-- pipe segment against -Z face +	{ -5/64, -4/64, -32/64,   5/64, 4/64, 1/64 }, +	{ -4/64, -5/64, -32/64,   4/64, 5/64, 1/64 }, +	{ -2/64, -6/64, -32/64,   2/64, 6/64, 1/64 }, + +	{ -8/64, -3/64, -32/64, 8/64, 3/64, -30/64 },	-- (the flange for it) +	{ -7/64, -5/64, -32/64, 7/64, 5/64, -30/64 }, +	{ -6/64, -6/64, -32/64, 6/64, 6/64, -30/64 }, +	{ -5/64, -7/64, -32/64, 5/64, 7/64, -30/64 }, +	{ -3/64, -8/64, -32/64, 3/64, 8/64, -30/64 } +} + +pipe_backstub = { +	{ -6/64, -2/64, -1/64,   6/64, 2/64, 32/64 },	-- pipe segment against -Z face +	{ -5/64, -4/64, -1/64,   5/64, 4/64, 32/64 }, +	{ -4/64, -5/64, -1/64,   4/64, 5/64, 32/64 }, +	{ -2/64, -6/64, -1/64,   2/64, 6/64, 32/64 }, + +	{ -8/64, -3/64, 30/64, 8/64, 3/64, 32/64 },	-- (the flange for it) +	{ -7/64, -5/64, 30/64, 7/64, 5/64, 32/64 }, +	{ -6/64, -6/64, 30/64, 6/64, 6/64, 32/64 }, +	{ -5/64, -7/64, 30/64, 5/64, 7/64, 32/64 }, +	{ -3/64, -8/64, 30/64, 3/64, 8/64, 32/64 } +}  + +pipe_selectboxes = { +	{ -32/64,  -8/64,  -8/64,  8/64,  8/64,  8/64 }, +	{ -8/64 ,  -8/64,  -8/64, 32/64,  8/64,  8/64 }, +	{ -8/64 , -32/64,  -8/64,  8/64,  8/64,  8/64 }, +	{ -8/64 ,  -8/64,  -8/64,  8/64, 32/64,  8/64 }, +	{ -8/64 ,  -8/64, -32/64,  8/64,  8/64,  8/64 }, +	{ -8/64 ,  -8/64,  -8/64,  8/64,  8/64, 32/64 } +} + +pipe_bendsphere = {	 +	{ -4/64, -4/64, -4/64, 4/64, 4/64, 4/64 }, +	{ -5/64, -3/64, -3/64, 5/64, 3/64, 3/64 }, +	{ -3/64, -5/64, -3/64, 3/64, 5/64, 3/64 }, +	{ -3/64, -3/64, -5/64, 3/64, 3/64, 5/64 } +} + +--  Functions + +dbg = function(s) +	if DEBUG == 1 then +		print('[PIPEWORKS] ' .. s) +	end +end + +function pipes_fix_image_names(table, replacement) +	outtable={} +	for i in ipairs(table) do +		outtable[i]=string.gsub(table[i], "_XXXXX", replacement) +	end + +	return outtable +end + +function pipe_addbox(t, b) +	for i in ipairs(b) +		do table.insert(t, b[i]) +	end +end + +-- now define the nodes! + +for xm = 0, 1 do +for xp = 0, 1 do +for ym = 0, 1 do +for yp = 0, 1 do +for zm = 0, 1 do +for zp = 0, 1 do +	local outboxes = {} +	local outsel = {} +	local outimgs = {} + +	if yp==1 then +		pipe_addbox(outboxes, pipe_topstub) +		table.insert(outsel, pipe_selectboxes[4]) +		table.insert(outimgs, "pipeworks_pipe_end.png") +	else +		table.insert(outimgs, "pipeworks_plain.png") +	end +	if ym==1 then +		pipe_addbox(outboxes, pipe_bottomstub) +		table.insert(outsel, pipe_selectboxes[3]) +		table.insert(outimgs, "pipeworks_pipe_end.png") +	else +		table.insert(outimgs, "pipeworks_plain.png") +	end +	if xp==1 then +		pipe_addbox(outboxes, pipe_rightstub) +		table.insert(outsel, pipe_selectboxes[2]) +		table.insert(outimgs, "pipeworks_pipe_end.png") +	else +		table.insert(outimgs, "pipeworks_plain.png") +	end +	if xm==1 then +		pipe_addbox(outboxes, pipe_leftstub) +		table.insert(outsel, pipe_selectboxes[1]) +		table.insert(outimgs, "pipeworks_pipe_end.png") +	else +		table.insert(outimgs, "pipeworks_plain.png") +	end +	if zp==1 then +		pipe_addbox(outboxes, pipe_backstub) +		table.insert(outsel, pipe_selectboxes[6]) +		table.insert(outimgs, "pipeworks_pipe_end.png") +	else +		table.insert(outimgs, "pipeworks_plain.png") +	end +	if zm==1 then +		pipe_addbox(outboxes, pipe_frontstub) +		table.insert(outsel, pipe_selectboxes[5]) +		table.insert(outimgs, "pipeworks_pipe_end.png") +	else +		table.insert(outimgs, "pipeworks_plain.png") +	end + +	local jx = xp+xm +	local jy = yp+ym +	local jz = zp+zm + +	if (jx+jy+jz) == 1 then +		if xm == 1 then  +			table.remove(outimgs, 3) +			table.insert(outimgs, 3, "pipeworks_pipe_end_XXXXX.png") +		end +		if xp == 1 then  +			table.remove(outimgs, 4) +			table.insert(outimgs, 4, "pipeworks_pipe_end_XXXXX.png") +		end +		if ym == 1 then  +			table.remove(outimgs, 1) +			table.insert(outimgs, 1, "pipeworks_pipe_end_XXXXX.png") +		end +		if xp == 1 then  +			table.remove(outimgs, 2) +			table.insert(outimgs, 2, "pipeworks_pipe_end_XXXXX.png") +		end +		if zm == 1 then  +			table.remove(outimgs, 5) +			table.insert(outimgs, 5, "pipeworks_pipe_end_XXXXX.png") +		end +		if zp == 1 then  +			table.remove(outimgs, 6) +			table.insert(outimgs, 6, "pipeworks_pipe_end_XXXXX.png") +		end +	end + +	if (jx==1 and jy==1 and jz~=1) or (jx==1 and jy~=1 and jz==1) or (jx~= 1 and jy==1 and jz==1) then +		pipe_addbox(outboxes, pipe_bendsphere) +	end + +	if (jx==2 and jy~=2 and jz~=2) then +		table.remove(outimgs, 5) +		table.remove(outimgs, 5) +		table.insert(outimgs, 5, "pipeworks_windowed_XXXXX.png") +		table.insert(outimgs, 5, "pipeworks_windowed_XXXXX.png") +	end + +	if (jx~=2 and jy~=2 and jz==2) or (jx~=2 and jy==2 and jz~=2) then +		table.remove(outimgs, 3) +		table.remove(outimgs, 3) +		table.insert(outimgs, 3, "pipeworks_windowed_XXXXX.png") +		table.insert(outimgs, 3, "pipeworks_windowed_XXXXX.png") +	end + +	local pname = xm..xp..ym..yp..zm..zp +	local pgroups = "" + +	if pname ~= "110000" then +		pgroups = {snappy=3, pipe=1, not_in_creative_inventory=1} +		pipedesc = "Pipe segment (empty, "..pname..")... You hacker, you." +	else +		pgroups = {snappy=3, pipe=1} +		pipedesc = "Pipe segment" +	end + +	minetest.register_node("pipeworks:pipe_"..pname.."_empty", { +		description = pipedesc, +		drawtype = "nodebox", +		tiles = pipes_fix_image_names(outimgs, "_empty"), +		paramtype = "light", +		selection_box = { +	             	type = "fixed", +			fixed = outsel +		}, +		node_box = { +			type = "fixed", +			fixed = outboxes +		}, +		groups = pgroups, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		drop = "pipeworks:pipe_110000_empty", +		pipelike=1, +		on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_int("pipelike",1) +		end, +		after_place_node = function(pos) +			pipe_scanforobjects(pos) +		end, +		after_dig_node = function(pos) +			pipe_scanforobjects(pos) +		end, +	}) + +	minetest.register_node("pipeworks:pipe_"..pname.."_loaded", { +		description = "Pipe segment (loaded, "..pname..")... You hacker, you.", +		drawtype = "nodebox", +		tiles = pipes_fix_image_names(outimgs, "_loaded"), +		paramtype = "light", +		selection_box = { +	             	type = "fixed", +			fixed = outsel +		}, +		node_box = { +			type = "fixed", +			fixed = outboxes +		}, +		groups = {snappy=3, pipe=1, not_in_creative_inventory=1}, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		drop = "pipeworks:pipe_110000_loaded", +		pipelike=1, +		on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_int("pipelike",1) +		end, +		after_place_node = function(pos) +			pipe_scanforobjects(pos) +		end, +		after_dig_node = function(pos) +			pipe_scanforobjects(pos) +		end +	}) +end +end +end +end +end +end + +dofile(minetest.get_modpath("pipeworks").."/tubes.lua") +dofile(minetest.get_modpath("pipeworks").."/devices.lua") +dofile(minetest.get_modpath("pipeworks").."/autoplace.lua") +dofile(minetest.get_modpath("pipeworks").."/crafts.lua") + +print("Pipeworks loaded!") diff --git a/technic/pipeworks/oldpipes.lua b/technic/pipeworks/oldpipes.lua new file mode 100644 index 0000000..90c8a27 --- /dev/null +++ b/technic/pipeworks/oldpipes.lua @@ -0,0 +1,360 @@ +-- This file is basically most of the old init.lua and only supplies the +-- old nodes created by the previous verison of Pipeworks. +-- +-- License: WTFPL +-- + +local nodenames = { +	"vertical", +	"horizontal", +	"junction_xy", +	"junction_xz", +	"bend_xy_down", +	"bend_xy_up", +	"bend_xz", +	"crossing_xz", +	"crossing_xy", +	"crossing_xyz", +	"pipe_segment", +	"cap_neg_x", +	"cap_pos_x", +	"cap_neg_y", +	"cap_pos_y", +	"cap_neg_z", +	"cap_pos_z" +} + +local descriptions = { +	"vertical", +	"horizontal", +	"junction between X and Y axes", +	"junction between X and Z axes", +	"downward bend between X and Y axes", +	"upward bend between X and Y axes", +	"bend between X/Z axes", +	"4-way crossing between X and Z axes", +	"4-way crossing between X/Z and Y axes", +	"6-way crossing", +	"basic segment", +	"capped, negative X half only", +	"capped, positive X half only", +	"capped, negative Y half only", +	"capped, positive Y half only", +	"capped, negative Z half only", +	"capped, positive Z half only" +} + +local nodeimages = { +	{"pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_plain.png", +	 "pipeworks_plain.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png"}, + +	{"pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_plain.png", +	 "pipeworks_plain.png"}, + +	{"pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_plain.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png"}, + +	{"pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_plain.png"}, + +	{"pipeworks_plain.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_plain.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png"}, + +	{"pipeworks_pipe_end.png", +	 "pipeworks_plain.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_plain.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png"}, + +	{"pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_plain.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_plain.png"}, + +	{"pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png"}, + +	{"pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png"}, + +	{"pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png"}, + +-- horizontal short segment + +	{"pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_plain.png", +	 "pipeworks_plain.png"}, + +-- capped  + +	{"pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png"}, + +	{"pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png"}, + +	{"pipeworks_windowed_XXXXX.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png"}, + +	{"pipeworks_pipe_end.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png"}, + +	{"pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_pipe_end.png"}, + +	{"pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_windowed_XXXXX.png", +	 "pipeworks_pipe_end.png", +	 "pipeworks_windowed_XXXXX.png"}, +} + +local selectionboxes = { +	{ -0.15, -0.5, -0.15, 0.15,  0.5, 0.15 }, +	{ -0.5, -0.15, -0.15, 0.5, 0.15, 0.15 }, +	{ -0.15, -0.5, -0.15, 0.5, 0.5, 0.15 }, +	{ -0.5, -0.15, -0.15, 0.5, 0.15, 0.5 }, +	{ -0.15, -0.5, -0.15, 0.5, 0.15, 0.15 }, +	{ -0.15, -0.15, -0.15, 0.5, 0.5, 0.15 }, +	{ -0.15, -0.15, -0.15, 0.5, 0.15, 0.5 }, +	{ -0.5, -0.15, -0.5, 0.5, 0.15, 0.5 }, +	{ -0.5, -0.5, -0.15, 0.5, 0.5, 0.15 }, +	{ -0.5, -0.5, -0.5, 0.5, 0.5, 0.5 }, +	{ -0.3, -0.15, -0.15, 0.3, 0.15, 0.15 }, +	{ -0.5, -0.15, -0.15, 0, 0.15, 0.15 }, +	{ 0, -0.15, -0.15, 0.5, 0.15, 0.15 }, +	{ -0.15, -0.5, -0.15, 0.15, 0, 0.15 }, +	{ -0.15, 0, -0.15, 0.15, 0.5, 0.15 }, +	{ -0.15, -0.15, -0.5, 0.15, 0.15, 0 }, +	{ -0.15, -0.15, 0, 0.15, 0.15, 0.5 }, +} + +local nodeboxes = { +	{{ -0.15, -0.5 , -0.15, 0.15, -0.45, 0.15 },	-- vertical +	 { -0.1 , -0.45, -0.1 , 0.1 ,  0.45, 0.1  }, +	 { -0.15,  0.45, -0.15, 0.15,  0.5 , 0.15 }}, + +	{{ -0.5 , -0.15, -0.15, -0.45, 0.15, 0.15 },	-- horizontal +	 { -0.45, -0.1 , -0.1 ,  0.45, 0.1 , 0.1  }, +	 {  0.45, -0.15, -0.15,  0.5 , 0.15, 0.15 }}, + +	{{ -0.15, -0.5 , -0.15,  0.15, -0.45, 0.15 },	-- vertical with X/Z junction +	 { -0.1 , -0.45, -0.1 ,  0.1 ,  0.45, 0.1  }, +	 { -0.15,  0.45, -0.15,  0.15,  0.5 , 0.15 },	 +	 {  0.1 , -0.1 , -0.1 ,  0.45,  0.1 , 0.1  }, +	 {  0.45, -0.15, -0.15,  0.5 ,  0.15, 0.15 }}, + +	{{ -0.15, -0.15,  0.45,  0.15, 0.15, 0.5  },	-- horizontal with X/Z junction +	 { -0.1 , -0.1 ,  0.1 ,  0.1 , 0.1 , 0.45 }, +	 { -0.5 , -0.15, -0.15, -0.45, 0.15, 0.15 }, +	 { -0.45, -0.1 , -0.1 ,  0.45, 0.1 , 0.1  }, +	 {  0.45, -0.15, -0.15,  0.5 , 0.15, 0.15 }}, + +	{{ -0.15, -0.5 , -0.15,  0.15, -0.45, 0.15 },	-- bend down from X/Z to Y axis +	 { -0.1 , -0.45, -0.1 ,  0.1 ,  0.1 , 0.1  }, +	 { -0.1 , -0.1 , -0.1 ,  0.45,  0.1 , 0.1  }, +	 {  0.45, -0.15, -0.15,  0.5 ,  0.15, 0.15 }}, + +	{{ -0.15, 0.45 , -0.15, 0.15,  0.5, 0.15 },	-- bend up from X/Z to Y axis +	 { -0.1 , -0.1 , -0.1 , 0.1 , 0.45, 0.1  }, +	 { -0.1 , -0.1 , -0.1 , 0.45, 0.1 , 0.1  }, +	 {  0.45, -0.15, -0.15, 0.5 , 0.15, 0.15 }}, + +	{{ -0.15, -0.15,  0.45,  0.15, 0.15, 0.5  },	-- bend between X and Z axes +	 { -0.1 , -0.1 ,  0.1 ,  0.1 , 0.1 , 0.45 }, +	 { -0.1 , -0.1 , -0.1 ,  0.45, 0.1 , 0.1  }, +	 {  0.45, -0.15, -0.15,  0.5 , 0.15, 0.15 }}, + +	{{ -0.5 , -0.15, -0.15, -0.45, 0.15, 0.15 },	-- 4-way crossing between X and Z axes +	 { -0.45, -0.1 , -0.1 ,  0.45, 0.1 , 0.1  }, +	 {  0.45, -0.15, -0.15,  0.5 , 0.15, 0.15 }, +	 { -0.15, -0.15, -0.5 ,  0.15, 0.15, -0.45 }, +	 { -0.1 , -0.1 , -0.45,  0.1 , 0.1 ,  0.45 }, +	 { -0.15, -0.15,  0.45,  0.15, 0.15,  0.5  }}, + +	{{ -0.15, -0.5 , -0.15, 0.15, -0.45, 0.15 },	-- 4-way crossing between X/Z and Y axes +	 { -0.1 , -0.45, -0.1 , 0.1 ,  0.45, 0.1  }, +	 { -0.15,  0.45, -0.15, 0.15,  0.5 , 0.15 }, +	 { -0.5 , -0.15, -0.15, -0.45, 0.15, 0.15 }, +	 { -0.45, -0.1 , -0.1 ,  0.45, 0.1 , 0.1  }, +	 {  0.45, -0.15, -0.15,  0.5 , 0.15, 0.15 }}, + +	{{ -0.5 , -0.15, -0.15, -0.45, 0.15, 0.15 },	-- 6-way crossing (all 3 axes) +	 { -0.45, -0.1 , -0.1 ,  0.45, 0.1 , 0.1  }, +	 {  0.45, -0.15, -0.15,  0.5 , 0.15, 0.15 }, +	 { -0.15, -0.15, -0.5 ,  0.15, 0.15, -0.45 }, +	 { -0.1 , -0.1 , -0.45,  0.1 , 0.1 ,  0.45 }, +	 { -0.15, -0.15,  0.45,  0.15, 0.15,  0.5  }, +	 { -0.15, -0.5 , -0.15, 0.15, -0.45, 0.15 }, +	 { -0.1 , -0.45, -0.1 , 0.1 ,  0.45, 0.1  }, +	 { -0.15,  0.45, -0.15, 0.15,  0.5 , 0.15 }}, + +	{{ -0.3 , -0.15, -0.15, -0.25, 0.15, 0.15 },	-- main center segment +	 { -0.25, -0.1 , -0.1 ,  0.25, 0.1 , 0.1  }, +	 {  0.25, -0.15, -0.15,  0.3 , 0.15, 0.15 }}, + +	{{ -0.5,  -0.15, -0.15, -0.45, 0.15, 0.15 },	-- anchored at -X +	 { -0.45, -0.1,  -0.1,  -0.2,  0.1,  0.1  }, +	 { -0.2,  -0.15, -0.15, -0.15, 0.15, 0.15 }, +	 { -0.15, -0.12, -0.12, -0.1,  0.12, 0.12 }, +	 { -0.1,  -0.08, -0.08, -0.05, 0.08, 0.08 }, +	 { -0.05, -0.04, -0.04,  0,    0.04, 0.04 }}, + +	{{  0.45, -0.15, -0.15, 0.5,  0.15, 0.15 },	-- anchored at +X +	 {  0.2,  -0.1,  -0.1,  0.45, 0.1,  0.1  }, +	 {  0.15, -0.15, -0.15, 0.2,  0.15, 0.15 }, +	 {  0.1,  -0.12, -0.12, 0.15, 0.12, 0.12 }, +	 {  0.05, -0.08, -0.08, 0.1,  0.08, 0.08 }, +	 {  0,    -0.04, -0.04, 0.05, 0.04, 0.04 }}, + +	{{ -0.15,  -0.5, -0.15,  0.15, -0.45, 0.15 },	-- anchored at -Y +	 { -0.1,  -0.45, -0.1,   0.1,  -0.2,  0.1  }, +	 { -0.15,  -0.2, -0.15,  0.15, -0.15, 0.15 }, +	 { -0.12, -0.15, -0.12,  0.12, -0.1,  0.12 }, +	 { -0.08, -0.1,  -0.08,  0.08, -0.05, 0.08 }, +	 { -0.04, -0.05, -0.04,  0.04,  0,    0.04 }}, + +	{{ -0.15,  0.45, -0.15, 0.15, 0.5,  0.15 },	-- anchored at +Y +	 { -0.1,   0.2,  -0.1,  0.1,  0.45, 0.1  }, +	 { -0.15,  0.15, -0.15, 0.15, 0.2,  0.15 }, +	 { -0.12,  0.1,  -0.12, 0.12, 0.15, 0.12 }, +	 { -0.08,  0.05, -0.08, 0.08, 0.1,  0.08 } , +	 { -0.04,  0,    -0.04, 0.04, 0.05, 0.04 }}, + +	{{ -0.15, -0.15, -0.5,  0.15, 0.15, -0.45 },	-- anchored at -Z +	 { -0.1,  -0.1,  -0.45, 0.1,  0.1,  -0.2  }, +	 { -0.15, -0.15, -0.2,  0.15, 0.15, -0.15 }, +	 { -0.12, -0.12, -0.15, 0.12, 0.12, -0.1  }, +	 { -0.08, -0.08, -0.1,  0.08, 0.08, -0.05 }, +	 { -0.04, -0.04, -0.05, 0.04, 0.04,  0    }}, + +	{{ -0.15, -0.15,  0.45, 0.15, 0.15, 0.5  },	-- anchored at +Z +	 { -0.1,  -0.1,   0.2,  0.1,  0.1,  0.45 }, +	 { -0.15, -0.15,  0.15, 0.15, 0.15, 0.2  }, +	 { -0.12, -0.12,  0.1,  0.12, 0.12, 0.15 }, +	 { -0.08, -0.08,  0.05, 0.08, 0.08, 0.1  }, +	 { -0.04, -0.04,  0,    0.04, 0.04, 0.05 }}, +} + +function fix_image_names(node, replacement) +	outtable={} +	for i in ipairs(nodeimages[node]) do +		outtable[i]=string.gsub(nodeimages[node][i], "_XXXXX", replacement) +	end + +	return outtable +end + +-- Now define the actual nodes + +for node in ipairs(nodenames) do + +	if node ~= 2 then +		pgroups = {snappy=3, pipe=1, not_in_creative_inventory=1} +	else +		pgroups = {snappy=3, pipe=1} +	end + +	minetest.register_node("pipeworks:"..nodenames[node], { +		description = "Empty Pipe ("..descriptions[node]..")", +		drawtype = "nodebox", +		tiles = fix_image_names(node, "_empty"), +		paramtype = "light", +		paramtype2 = "facedir", +		selection_box = { +              		type = "fixed", +			fixed = selectionboxes[node], +		}, +		node_box = { +			type = "fixed", +			fixed = nodeboxes[node] +		}, +		groups = pgroups, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		drop = "pipeworks:pipe" +	}) + +	minetest.register_node("pipeworks:"..nodenames[node].."_loaded", { +		description = "Loaded Pipe ("..descriptions[node]..")", +		drawtype = "nodebox", +		tiles = fix_image_names(node, "_loaded"), +		paramtype = "light", +		paramtype2 = "facedir", +		selection_box = { +              		type = "fixed", +			fixed = selectionboxes[node], +		},	 +		node_box = { +			type = "fixed", +			fixed = nodeboxes[node] +		}, +		groups = {snappy=3, pipe=1, not_in_creative_inventory=1}, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		drop = "pipeworks:pipe" +	}) +end + diff --git a/technic/pipeworks/textures/pipeworks_intake_sides.png b/technic/pipeworks/textures/pipeworks_intake_sides.pngBinary files differ new file mode 100644 index 0000000..5237f0e --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_intake_sides.png diff --git a/technic/pipeworks/textures/pipeworks_intake_top.png b/technic/pipeworks/textures/pipeworks_intake_top.pngBinary files differ new file mode 100644 index 0000000..3ca91a8 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_intake_top.png diff --git a/technic/pipeworks/textures/pipeworks_outlet_sides.png b/technic/pipeworks/textures/pipeworks_outlet_sides.pngBinary files differ new file mode 100644 index 0000000..fa85d0c --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_outlet_sides.png diff --git a/technic/pipeworks/textures/pipeworks_outlet_top.png b/technic/pipeworks/textures/pipeworks_outlet_top.pngBinary files differ new file mode 100644 index 0000000..7de76de --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_outlet_top.png diff --git a/technic/pipeworks/textures/pipeworks_pipe_end.png b/technic/pipeworks/textures/pipeworks_pipe_end.pngBinary files differ new file mode 100644 index 0000000..cb0e4b9 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_pipe_end.png diff --git a/technic/pipeworks/textures/pipeworks_pipe_end_empty.png b/technic/pipeworks/textures/pipeworks_pipe_end_empty.pngBinary files differ new file mode 100644 index 0000000..400a85b --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_pipe_end_empty.png diff --git a/technic/pipeworks/textures/pipeworks_pipe_end_loaded.png b/technic/pipeworks/textures/pipeworks_pipe_end_loaded.pngBinary files differ new file mode 100644 index 0000000..5624b83 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_pipe_end_loaded.png diff --git a/technic/pipeworks/textures/pipeworks_plain.png b/technic/pipeworks/textures/pipeworks_plain.pngBinary files differ new file mode 100644 index 0000000..3bd1b6a --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_plain.png diff --git a/technic/pipeworks/textures/pipeworks_plastic_sheeting.png b/technic/pipeworks/textures/pipeworks_plastic_sheeting.pngBinary files differ new file mode 100644 index 0000000..810ea2a --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_plastic_sheeting.png diff --git a/technic/pipeworks/textures/pipeworks_pump_ends.png b/technic/pipeworks/textures/pipeworks_pump_ends.pngBinary files differ new file mode 100644 index 0000000..a76aea1 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_pump_ends.png diff --git a/technic/pipeworks/textures/pipeworks_pump_off.png b/technic/pipeworks/textures/pipeworks_pump_off.pngBinary files differ new file mode 100644 index 0000000..4705a9a --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_pump_off.png diff --git a/technic/pipeworks/textures/pipeworks_pump_on.png b/technic/pipeworks/textures/pipeworks_pump_on.pngBinary files differ new file mode 100644 index 0000000..4f35b08 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_pump_on.png diff --git a/technic/pipeworks/textures/pipeworks_pump_sides.png b/technic/pipeworks/textures/pipeworks_pump_sides.pngBinary files differ new file mode 100644 index 0000000..14129f7 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_pump_sides.png diff --git a/technic/pipeworks/textures/pipeworks_pump_top_x.png b/technic/pipeworks/textures/pipeworks_pump_top_x.pngBinary files differ new file mode 100644 index 0000000..9228bdd --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_pump_top_x.png diff --git a/technic/pipeworks/textures/pipeworks_pump_top_z.png b/technic/pipeworks/textures/pipeworks_pump_top_z.pngBinary files differ new file mode 100644 index 0000000..45837e7 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_pump_top_z.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_back.png b/technic/pipeworks/textures/pipeworks_storage_tank_back.pngBinary files differ new file mode 100644 index 0000000..aeecdf9 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_back.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_fittings.png b/technic/pipeworks/textures/pipeworks_storage_tank_fittings.pngBinary files differ new file mode 100644 index 0000000..2460b86 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_fittings.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_front_0.png b/technic/pipeworks/textures/pipeworks_storage_tank_front_0.pngBinary files differ new file mode 100644 index 0000000..9118285 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_front_0.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_front_1.png b/technic/pipeworks/textures/pipeworks_storage_tank_front_1.pngBinary files differ new file mode 100644 index 0000000..cebd8ef --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_front_1.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_front_10.png b/technic/pipeworks/textures/pipeworks_storage_tank_front_10.pngBinary files differ new file mode 100644 index 0000000..7d1e54e --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_front_10.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_front_2.png b/technic/pipeworks/textures/pipeworks_storage_tank_front_2.pngBinary files differ new file mode 100644 index 0000000..14babe7 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_front_2.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_front_3.png b/technic/pipeworks/textures/pipeworks_storage_tank_front_3.pngBinary files differ new file mode 100644 index 0000000..f479797 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_front_3.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_front_4.png b/technic/pipeworks/textures/pipeworks_storage_tank_front_4.pngBinary files differ new file mode 100644 index 0000000..08e1092 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_front_4.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_front_5.png b/technic/pipeworks/textures/pipeworks_storage_tank_front_5.pngBinary files differ new file mode 100644 index 0000000..8ba4374 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_front_5.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_front_6.png b/technic/pipeworks/textures/pipeworks_storage_tank_front_6.pngBinary files differ new file mode 100644 index 0000000..1647011 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_front_6.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_front_7.png b/technic/pipeworks/textures/pipeworks_storage_tank_front_7.pngBinary files differ new file mode 100644 index 0000000..3ec4f4a --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_front_7.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_front_8.png b/technic/pipeworks/textures/pipeworks_storage_tank_front_8.pngBinary files differ new file mode 100644 index 0000000..0bd0f3f --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_front_8.png diff --git a/technic/pipeworks/textures/pipeworks_storage_tank_front_9.png b/technic/pipeworks/textures/pipeworks_storage_tank_front_9.pngBinary files differ new file mode 100644 index 0000000..d24c425 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_storage_tank_front_9.png diff --git a/technic/pipeworks/textures/pipeworks_testobject.png b/technic/pipeworks/textures/pipeworks_testobject.pngBinary files differ new file mode 100644 index 0000000..38f85b7 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_testobject.png diff --git a/technic/pipeworks/textures/pipeworks_tube_end.png b/technic/pipeworks/textures/pipeworks_tube_end.pngBinary files differ new file mode 100644 index 0000000..e5d7be6 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_tube_end.png diff --git a/technic/pipeworks/textures/pipeworks_tube_inv.png b/technic/pipeworks/textures/pipeworks_tube_inv.pngBinary files differ new file mode 100644 index 0000000..6646ca1 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_tube_inv.png diff --git a/technic/pipeworks/textures/pipeworks_tube_noctr.png b/technic/pipeworks/textures/pipeworks_tube_noctr.pngBinary files differ new file mode 100644 index 0000000..a654bba --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_tube_noctr.png diff --git a/technic/pipeworks/textures/pipeworks_tube_plain.png b/technic/pipeworks/textures/pipeworks_tube_plain.pngBinary files differ new file mode 100644 index 0000000..b2caab0 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_tube_plain.png diff --git a/technic/pipeworks/textures/pipeworks_tube_short.png b/technic/pipeworks/textures/pipeworks_tube_short.pngBinary files differ new file mode 100644 index 0000000..8576b87 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_tube_short.png diff --git a/technic/pipeworks/textures/pipeworks_tube_transparent.png b/technic/pipeworks/textures/pipeworks_tube_transparent.pngBinary files differ new file mode 100644 index 0000000..4b4ee1f --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_tube_transparent.png diff --git a/technic/pipeworks/textures/pipeworks_valvebody_bottom.png b/technic/pipeworks/textures/pipeworks_valvebody_bottom.pngBinary files differ new file mode 100644 index 0000000..05f20e3 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_valvebody_bottom.png diff --git a/technic/pipeworks/textures/pipeworks_valvebody_ends.png b/technic/pipeworks/textures/pipeworks_valvebody_ends.pngBinary files differ new file mode 100644 index 0000000..2bc3ecb --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_valvebody_ends.png diff --git a/technic/pipeworks/textures/pipeworks_valvebody_sides.png b/technic/pipeworks/textures/pipeworks_valvebody_sides.pngBinary files differ new file mode 100644 index 0000000..989cbbc --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_valvebody_sides.png diff --git a/technic/pipeworks/textures/pipeworks_valvebody_top_off.png b/technic/pipeworks/textures/pipeworks_valvebody_top_off.pngBinary files differ new file mode 100644 index 0000000..4ecd7fc --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_valvebody_top_off.png diff --git a/technic/pipeworks/textures/pipeworks_valvebody_top_off_x.png b/technic/pipeworks/textures/pipeworks_valvebody_top_off_x.pngBinary files differ new file mode 100644 index 0000000..0ab4938 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_valvebody_top_off_x.png diff --git a/technic/pipeworks/textures/pipeworks_valvebody_top_off_z.png b/technic/pipeworks/textures/pipeworks_valvebody_top_off_z.pngBinary files differ new file mode 100644 index 0000000..d645b2d --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_valvebody_top_off_z.png diff --git a/technic/pipeworks/textures/pipeworks_valvebody_top_on.png b/technic/pipeworks/textures/pipeworks_valvebody_top_on.pngBinary files differ new file mode 100644 index 0000000..e36eb94 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_valvebody_top_on.png diff --git a/technic/pipeworks/textures/pipeworks_valvebody_top_on_x.png b/technic/pipeworks/textures/pipeworks_valvebody_top_on_x.pngBinary files differ new file mode 100644 index 0000000..e2d33a0 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_valvebody_top_on_x.png diff --git a/technic/pipeworks/textures/pipeworks_valvebody_top_on_z.png b/technic/pipeworks/textures/pipeworks_valvebody_top_on_z.pngBinary files differ new file mode 100644 index 0000000..7199797 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_valvebody_top_on_z.png diff --git a/technic/pipeworks/textures/pipeworks_windowed_empty.png b/technic/pipeworks/textures/pipeworks_windowed_empty.pngBinary files differ new file mode 100644 index 0000000..ebd4486 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_windowed_empty.png diff --git a/technic/pipeworks/textures/pipeworks_windowed_loaded.png b/technic/pipeworks/textures/pipeworks_windowed_loaded.pngBinary files differ new file mode 100644 index 0000000..91c4829 --- /dev/null +++ b/technic/pipeworks/textures/pipeworks_windowed_loaded.png diff --git a/technic/pipeworks/tubes.lua b/technic/pipeworks/tubes.lua new file mode 100644 index 0000000..7a05d92 --- /dev/null +++ b/technic/pipeworks/tubes.lua @@ -0,0 +1,217 @@ +-- This file supplies pneumatic tubes and a 'test' device + +minetest.register_node("pipeworks:testobject", { +	description = "Pneumatic tube test ojbect", +	tiles = { +		"pipeworks_testobject.png", +	}, +	paramtype = "light", +	groups = {snappy=3, tubedevice=1}, +	sounds = default.node_sound_wood_defaults(), +	walkable = true, +	after_place_node = function(pos) +			tube_scanforobjects(pos) +	end, +	after_dig_node = function(pos) +			tube_scanforobjects(pos) +	end, +}) + +-- tables + +minetest.register_alias("pipeworks:tube", "pipeworks:tube_000000") + +tube_leftstub = { +	{ -32/64, -9/64, -9/64, 9/64, 9/64, 9/64 },	-- tube segment against -X face +} + +tube_rightstub = { +	{ -9/64, -9/64, -9/64,  32/64, 9/64, 9/64 },	-- tube segment against +X face +} + +tube_bottomstub = { +	{ -9/64, -32/64, -9/64,   9/64, 9/64, 9/64 },	-- tube segment against -Y face +} + + +tube_topstub = { +	{ -9/64, -9/64, -9/64,   9/64, 32/64, 9/64 },	-- tube segment against +Y face +} + +tube_frontstub = { +	{ -9/64, -9/64, -32/64,   9/64, 9/64, 9/64 },	-- tube segment against -Z face +} + +tube_backstub = { +	{ -9/64, -9/64, -9/64,   9/64, 9/64, 32/64 },	-- tube segment against -Z face +}  + +tube_selectboxes = { +	{ -32/64,  -10/64,  -10/64,  10/64,  10/64,  10/64 }, +	{ -10/64 ,  -10/64,  -10/64, 32/64,  10/64,  10/64 }, +	{ -10/64 , -32/64,  -10/64,  10/64,  10/64,  10/64 }, +	{ -10/64 ,  -10/64,  -10/64,  10/64, 32/64,  10/64 }, +	{ -10/64 ,  -10/64, -32/64,  10/64,  10/64,  10/64 }, +	{ -10/64 ,  -10/64,  -10/64,  10/64,  10/64, 32/64 } +} + +--  Functions + +function tube_addbox(t, b) +	for i in ipairs(b) +		do table.insert(t, b[i]) +	end +end + +-- now define the nodes! + +for xm = 0, 1 do +for xp = 0, 1 do +for ym = 0, 1 do +for yp = 0, 1 do +for zm = 0, 1 do +for zp = 0, 1 do +	local outboxes = {} +	local outsel = {} +	local outimgs = {} + +	if yp==1 then +		tube_addbox(outboxes, tube_topstub) +		table.insert(outsel, tube_selectboxes[4]) +		table.insert(outimgs, "pipeworks_tube_noctr.png") +	else +		table.insert(outimgs, "pipeworks_tube_plain.png") +	end +	if ym==1 then +		tube_addbox(outboxes, tube_bottomstub) +		table.insert(outsel, tube_selectboxes[3]) +		table.insert(outimgs, "pipeworks_tube_noctr.png") +	else +		table.insert(outimgs, "pipeworks_tube_plain.png") +	end +	if xp==1 then +		tube_addbox(outboxes, tube_rightstub) +		table.insert(outsel, tube_selectboxes[2]) +		table.insert(outimgs, "pipeworks_tube_noctr.png") +	else +		table.insert(outimgs, "pipeworks_tube_plain.png") +	end +	if xm==1 then +		tube_addbox(outboxes, tube_leftstub) +		table.insert(outsel, tube_selectboxes[1]) +		table.insert(outimgs, "pipeworks_tube_noctr.png") +	else +		table.insert(outimgs, "pipeworks_tube_plain.png") +	end +	if zp==1 then +		tube_addbox(outboxes, tube_backstub) +		table.insert(outsel, tube_selectboxes[6]) +		table.insert(outimgs, "pipeworks_tube_noctr.png") +	else +		table.insert(outimgs, "pipeworks_tube_plain.png") +	end +	if zm==1 then +		tube_addbox(outboxes, tube_frontstub) +		table.insert(outsel, tube_selectboxes[5]) +		table.insert(outimgs, "pipeworks_tube_noctr.png") +	else +		table.insert(outimgs, "pipeworks_tube_plain.png") +	end + +	local jx = xp+xm +	local jy = yp+ym +	local jz = zp+zm + +	if (jx+jy+jz) == 1 then +		if xm == 1 then  +			table.remove(outimgs, 3) +			table.insert(outimgs, 3, "pipeworks_tube_end.png") +		end +		if xp == 1 then  +			table.remove(outimgs, 4) +			table.insert(outimgs, 4, "pipeworks_tube_end.png") +		end +		if ym == 1 then  +			table.remove(outimgs, 1) +			table.insert(outimgs, 1, "pipeworks_tube_end.png") +		end +		if xp == 1 then  +			table.remove(outimgs, 2) +			table.insert(outimgs, 2, "pipeworks_tube_end.png") +		end +		if zm == 1 then  +			table.remove(outimgs, 5) +			table.insert(outimgs, 5, "pipeworks_tube_end.png") +		end +		if zp == 1 then  +			table.remove(outimgs, 6) +			table.insert(outimgs, 6, "pipeworks_tube_end.png") +		end +	end + +	local tname = xm..xp..ym..yp..zm..zp +	local tgroups = "" + +	if tname ~= "000000" then +		tgroups = {snappy=3, tube=1, not_in_creative_inventory=1} +		tubedesc = "Pneumatic tube segment ("..tname..")... You hacker, you." +		iimg=nil +		wscale = {x=1,y=1,z=1} +	else +		tgroups = {snappy=3, tube=1} +		tubedesc = "Pneumatic tube segment" +		iimg="pipeworks_tube_inv.png" +		outimgs = { +			"pipeworks_tube_short.png", +			"pipeworks_tube_short.png", +			"pipeworks_tube_end.png", +			"pipeworks_tube_end.png", +			"pipeworks_tube_short.png", +			"pipeworks_tube_short.png" +		} +		outboxes = { -24/64, -9/64, -9/64, 24/64, 9/64, 9/64 } +		outsel = { -24/64, -10/64, -10/64, 24/64, 10/64, 10/64 } +		wscale = {x=1,y=1,z=0.01} +	end +	 +	minetest.register_node("pipeworks:tube_"..tname, { +		description = tubedesc, +		drawtype = "nodebox", +		tiles = outimgs, +		inventory_image=iimg, +		wield_image=iimg, +		wield_scale=wscale, +		paramtype = "light", +		selection_box = { +	             	type = "fixed", +			fixed = outsel +		}, +		node_box = { +			type = "fixed", +			fixed = outboxes +		}, +		groups = tgroups, +		sounds = default.node_sound_wood_defaults(), +		walkable = true, +		stack_max = 99, +		drop = "pipeworks:tube_000000", +		tubelike=1, +		on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_int("tubelike",1) +		end, +		after_place_node = function(pos) +			tube_scanforobjects(pos) +		end, +		after_dig_node = function(pos) +			tube_scanforobjects(pos) +		end +	}) + +end +end +end +end +end +end + diff --git a/alloy_furnace.lua b/technic/technic/alloy_furnace.lua index fd0bc70..83496e1 100644 --- a/alloy_furnace.lua +++ b/technic/technic/alloy_furnace.lua @@ -19,6 +19,16 @@ alloy_recipes[registered_recipes_count].src2_count=count1  alloy_recipes[registered_recipes_count].dst_name=string3  alloy_recipes[registered_recipes_count].dst_count=count3  registered_recipes_count=registered_recipes_count+1 +if UI_recipes_hook then +	minetest.register_craft({ +	type = "alloy", +	output = string3.." "..count3, +	recipe = { +		{string1.." "..count1}, +		{string2.." "..count2}, +			} +	}) +	end  end  register_alloy_recipe ("technic:copper_dust",3, "technic:tin_dust",1, "technic:bronze_dust",4) @@ -26,7 +36,7 @@ register_alloy_recipe ("moreores:copper_ingot",3, "moreores:tin_ingot",1, "moreo  register_alloy_recipe ("technic:iron_dust",3, "technic:chromium_dust",1, "technic:stainless_steel_dust",4)  register_alloy_recipe ("default:steel_ingot",3, "technic:chromium_ingot",1, "technic:stainless_steel_ingot",4)  register_alloy_recipe ("technic:copper_dust",2, "technic:zinc_dust",1, "technic:brass_dust",3) -register_alloy_recipe ("technic:copper_ingot",2, "technic:zinc_ingot",1, "technic:brass_ingot",3) +register_alloy_recipe ("moreores:copper_ingot",2, "technic:zinc_ingot",1, "technic:brass_ingot",3)  register_alloy_recipe ("default:sand",2, "technic:coal_dust",2, "technic:silicon_wafer",1)  register_alloy_recipe ("technic:silicon_wafer",1, "technic:mithril_dust",1, "technic:doped_silicon_wafer",1) @@ -421,4 +431,4 @@ minetest.register_abm({  		inv:set_stack("fuel", 1, stack)  end,		 -})
\ No newline at end of file +}) diff --git a/battery_box.lua b/technic/technic/battery_box.lua index f5827a4..f5827a4 100644 --- a/battery_box.lua +++ b/technic/technic/battery_box.lua diff --git a/battery_box_mv.lua b/technic/technic/battery_box_mv.lua index 6288589..ae448e0 100644 --- a/battery_box_mv.lua +++ b/technic/technic/battery_box_mv.lua @@ -206,7 +206,7 @@ minetest.register_abm({  		MV_nodes[1].y=pos1.y  		MV_nodes[1].z=pos1.z  		MV_nodes[1].visited=false - +	  table_index=1  	repeat  	check_MV_node (PR_nodes,RE_nodes,MV_nodes,table_index) @@ -318,4 +318,4 @@ meta = minetest.env:get_meta(pos1)  if meta:get_float("mv_cablelike")==1 then new_node_added=add_new_MVcable_node(MV_nodes,pos1) end  if minetest.env:get_node(pos1).name == "technic:solar_panel_mv" then 	new_node_added=add_new_MVcable_node(PR_nodes,pos1) end		  end -		
\ No newline at end of file +		 diff --git a/cans.lua b/technic/technic/cans.lua index 2809498..d50a621 100644 --- a/cans.lua +++ b/technic/technic/cans.lua @@ -29,33 +29,32 @@ minetest.register_tool("technic:water_can", {  		if pointed_thing.type ~= "node" then  					return end -		  		n = minetest.env:get_node(pointed_thing.under) +		 +		item=itemstack:to_table() +		local load=nil +		if item["metadata"]=="" then load=0  +		else load=tonumber(item["metadata"])  +		end +		  		if n.name == "default:water_source" then -			item=itemstack:to_table() -			local load=tonumber((item["wear"]))  -			if  load==0 then load =65535 end -			load=get_RE_item_load(load,water_can_max_load)  			if load+1<17 then  			minetest.env:add_node(pointed_thing.under, {name="air"})  			 load=load+1;	 -			load=set_RE_item_load(load,water_can_max_load) -			item["wear"]=tostring(load) +			item["metadata"]=tostring(load) +			set_RE_wear(item,load,water_can_max_load)  			itemstack:replace(item)  			end  			return itemstack  		end  		item=itemstack:to_table() -			load=tonumber((item["wear"]))  -			if  load==0 then load =65535 end -			load=get_RE_item_load(load,water_can_max_load) -			if load==0 then return end +		if load==0 then return end  		if n.name == "default:water_flowing" then  			minetest.env:add_node(pointed_thing.under, {name="default:water_source"})  			load=load-1;	 -			load=set_RE_item_load(load,water_can_max_load) -			item["wear"]=tostring(load) +			item["metadata"]=tostring(load) +			set_RE_wear(item,load,water_can_max_load)  			itemstack:replace(item)  			return itemstack  			end @@ -64,8 +63,8 @@ minetest.register_tool("technic:water_can", {  		if n.name == "air" then  			minetest.env:add_node(pointed_thing.above, {name="default:water_source"})  			load=load-1;	 -			load=set_RE_item_load(load,water_can_max_load) -			item["wear"]=tostring(load) +			item["metadata"]=tostring(load) +			set_RE_wear(item,load,water_can_max_load)  			itemstack:replace(item)  			return itemstack  			end		 @@ -78,7 +77,45 @@ minetest.register_tool("technic:lava_can", {  	stack_max = 1,  	liquids_pointable = true,  	on_use = function(itemstack, user, pointed_thing) +	 +		item=itemstack:to_table() +		local load=nil +		if item["metadata"]=="" then load=0  +		else load=tonumber(item["metadata"])  +		end +		if n.name == "default:water_source" then +			if load+1<17 then +			minetest.env:add_node(pointed_thing.under, {name="air"}) +			 load=load+1;	 +			item["metadata"]=tostring(load) +			set_RE_wear(item,load,water_can_max_load) +			itemstack:replace(item) +			end +			return itemstack +		end +		item=itemstack:to_table() +		if load==0 then return end +			 +		if n.name == "default:lava_flowing" then +			minetest.env:add_node(pointed_thing.under, {name="default:lava_source"}) +			load=load-1;	 +			item["metadata"]=tostring(load) +			set_RE_wear(item,load,water_can_max_load) +			itemstack:replace(item) +			return itemstack +			end + +		n = minetest.env:get_node(pointed_thing.above) +		if n.name == "air" then +			minetest.env:add_node(pointed_thing.above, {name="default:lava_source"}) +			load=load-1;	 +			item["metadata"]=tostring(load) +			set_RE_wear(item,load,water_can_max_load) +			itemstack:replace(item) +			return itemstack +			end	 +				  		if pointed_thing.type ~= "node" then  					return end diff --git a/chainsaw.lua b/technic/technic/chainsaw.lua index 9f69fd9..9970935 100644 --- a/chainsaw.lua +++ b/technic/technic/chainsaw.lua @@ -26,7 +26,7 @@ minetest.register_craft({  	output = 'technic:chainsaw',  	recipe = {  		{'technic:stainless_steel_ingot', 'technic:stainless_steel_ingot', 'technic:battery'}, -		{'technic:stainless_steel_ingot', 'technic:stainless_steel_ingot', 'technic:battery'}, +		{'technic:stainless_steel_ingot', 'technic:motor', 'technic:battery'},  		{'','','moreores:copper_ingot'},  	}  }) diff --git a/concrete.lua b/technic/technic/concrete.lua index 0a480a0..6d031d9 100644 --- a/concrete.lua +++ b/technic/technic/concrete.lua @@ -71,4 +71,13 @@ minetest.register_node("technic:concrete_post", {  	groups = {cracky=1},  	sounds = default.node_sound_stone_defaults(), -})
\ No newline at end of file +}) + +stairsplus.register_stair_and_slab_and_panel_and_micro("concrete", "technic:concrete", +		{cracky=3}, +		{"technic_concrete_block.png"}, +		"Concrete Stairs", +		"Concrete Slab", +		"Concrete Panel", +		"Concrete Microblock", +		"concrete") diff --git a/technic/technic/config.lua b/technic/technic/config.lua new file mode 100644 index 0000000..3fa1282 --- /dev/null +++ b/technic/technic/config.lua @@ -0,0 +1,10 @@ +enable_item_drop=false +enable_item_pickup=true +enable_technic_inventory=true +enable_mining_drill=true +enable_mining_laser=true +enable_flashlight=true +enable_rubber_tree_generation=true +enable_marble_generation=true +enable_granite_generation=true +enable_obsidian_generation=true diff --git a/constructor.lua b/technic/technic/constructor.lua index 1e58408..1e58408 100644 --- a/constructor.lua +++ b/technic/technic/constructor.lua diff --git a/copper_chest.lua b/technic/technic/copper_chest.lua index cf1ae06..cf1ae06 100644 --- a/copper_chest.lua +++ b/technic/technic/copper_chest.lua diff --git a/technic/technic/creative.lua b/technic/technic/creative.lua new file mode 100644 index 0000000..7b4c493 --- /dev/null +++ b/technic/technic/creative.lua @@ -0,0 +1,21 @@ +technic.creative_inventory_size = 0 +technic.creative_list = {} + +-- Create detached creative inventory after loading all mods +minetest.after(0, function() +	local inv = minetest.create_detached_inventory("technic_creative", {}) +	technic.creative_list = {} +	for name,def in pairs(minetest.registered_items) do +		if (not def.groups.not_in_creative_inventory or def.groups.not_in_creative_inventory == 0) +				and def.description and def.description ~= "" then +			table.insert(technic.creative_list, name) +		end +	end +	table.sort(technic.creative_list) +	--inv:set_size("main", #technic.creative_list) +	--for _,itemstring in ipairs(technic.creative_list) do +	--	local stack = ItemStack(itemstring) +	--	inv:add_item("main", stack) +	--end +	--technic.creative_inventory_size = #technic.creative_list +end) diff --git a/depends.txt b/technic/technic/depends.txt index bfbfdf1..8f4edab 100644 --- a/depends.txt +++ b/technic/technic/depends.txt @@ -2,4 +2,4 @@ moreores  flowers  pipeworks  mesecons -farming +stairsplus diff --git a/deployer.lua b/technic/technic/deployer.lua index ce3b735..ce3b735 100644 --- a/deployer.lua +++ b/technic/technic/deployer.lua diff --git a/electric.lua b/technic/technic/electric.lua index 2eb2bf3..2eb2bf3 100644 --- a/electric.lua +++ b/technic/technic/electric.lua diff --git a/electric_furnace.lua b/technic/technic/electric_furnace.lua index 6563efb..ab56bdb 100644 --- a/electric_furnace.lua +++ b/technic/technic/electric_furnace.lua @@ -107,8 +107,9 @@ minetest.register_abm({  		local load = math.floor(internal_EU_buffer/2000 * 100)  		meta:set_string("formspec",  				"invsize[8,9;]".. +				"background[-1,-1;10,11;technic_electric_furnace_GUI.png]"..  				"image[1,1;1,2;technic_power_meter_bg.png^[lowpart:".. -						(load)..":technic_power_meter_fg.png]".. +					(load)..":technic_power_meter_fg.png]"..  				"list[current_name;src;3,1;1,1;]"..  				"list[current_name;dst;5,1;2,2;]"..  				"list[current_player;main;0,5;8,4;]".. diff --git a/flashlight.lua b/technic/technic/flashlight.lua index c9901d1..460cc21 100644 --- a/flashlight.lua +++ b/technic/technic/flashlight.lua @@ -13,7 +13,7 @@ flashlight_max_charge=30000      minetest.register_craft({              output = "technic:flashlight",              recipe = { -		    {"glass","glass","glass"}, +		    {"technic:rubber","glass","technic:rubber"},                      {"technic:stainless_steel_ingot","technic:battery","technic:stainless_steel_ingot"},                      {"","technic:battery",""}              } diff --git a/technic/technic/flashlight_old.lua b/technic/technic/flashlight_old.lua new file mode 100644 index 0000000..8a2c338 --- /dev/null +++ b/technic/technic/flashlight_old.lua @@ -0,0 +1,176 @@ +-- original code comes from walkin_light mod by Echo http://minetest.net/forum/viewtopic.php?id=2621 + +flashlight_max_charge=30000 +       +       minetest.register_tool("technic:flashlight", { +            description = "Flashlight", +            inventory_image = "technic_flashlight.png", +	stack_max = 1, +            on_use = function(itemstack, user, pointed_thing) +	end,	         +    }) +      +    minetest.register_craft({ +            output = "technic:flashlight", +            recipe = { +		    {"glass","glass","glass"}, +                    {"technic:stainless_steel_ingot","technic:battery","technic:stainless_steel_ingot"}, +                    {"","technic:battery",""} +            } +    }) +local players = {} +local player_positions = {} +local last_wielded = {} + +function round(num)  +	return math.floor(num + 0.5)  +end + +minetest.register_on_joinplayer(function(player) +	local player_name = player:get_player_name() +	table.insert(players, player_name) +	last_wielded[player_name] = flashlight_weared(player) +	local pos = player:getpos() +	local rounded_pos = {x=round(pos.x),y=round(pos.y)+1,z=round(pos.z)} +	local wielded_item = player:get_wielded_item():get_name() +	if flashlight_weared(player)==true then +		-- Neuberechnung des Lichts erzwingen +		minetest.env:add_node(rounded_pos,{type="node",name="technic:light_off"}) +		minetest.env:add_node(rounded_pos,{type="node",name="air"}) +	end +	player_positions[player_name] = {} +	player_positions[player_name]["x"] = rounded_pos.x; +	player_positions[player_name]["y"] = rounded_pos.y; +	player_positions[player_name]["z"] = rounded_pos.z; +end) + +minetest.register_on_leaveplayer(function(player) +	local player_name = player:get_player_name() +	for i,v in ipairs(players) do +		if v == player_name then  +			table.remove(players, i) +			last_wielded[player_name] = nil +			-- Neuberechnung des Lichts erzwingen +			local pos = player:getpos() +			local rounded_pos = {x=round(pos.x),y=round(pos.y)+1,z=round(pos.z)} +			minetest.env:add_node(rounded_pos,{type="node",name="technic:light_off"}) +			minetest.env:add_node(rounded_pos,{type="node",name="air"}) +			player_positions[player_name]["x"] = nil +			player_positions[player_name]["y"] = nil +			player_positions[player_name]["z"] = nil +			player_positions[player_name]["m"] = nil +			player_positions[player_name] = nil +		end +	end +end) + +minetest.register_globalstep(function(dtime) +	for i,player_name in ipairs(players) do +		local player = minetest.env:get_player_by_name(player_name) +		if flashlight_weared(player)==true then +			-- Fackel ist in der Hand +			local pos = player:getpos() +			local rounded_pos = {x=round(pos.x),y=round(pos.y)+1,z=round(pos.z)} +			if (last_wielded[player_name] ~= true) or (player_positions[player_name]["x"] ~= rounded_pos.x or player_positions[player_name]["y"] ~= rounded_pos.y or player_positions[player_name]["z"] ~= rounded_pos.z) then +				-- Fackel gerade in die Hand genommen oder zu neuem Node bewegt +				local is_air  = minetest.env:get_node_or_nil(rounded_pos) +				if is_air == nil or (is_air ~= nil and (is_air.name == "air" or is_air.name == "technic:light")) then +					-- wenn an aktueller Position "air" ist, Fackellicht setzen +					minetest.env:add_node(rounded_pos,{type="node",name="technic:light"}) +				end +				if (player_positions[player_name]["x"] ~= rounded_pos.x or player_positions[player_name]["y"] ~= rounded_pos.y or player_positions[player_name]["z"] ~= rounded_pos.z) then +					-- wenn Position geänder, dann altes Licht löschen +					local old_pos = {x=player_positions[player_name]["x"], y=player_positions[player_name]["y"], z=player_positions[player_name]["z"]} +					-- Neuberechnung des Lichts erzwingen +					local is_light = minetest.env:get_node_or_nil(old_pos) +					if is_light ~= nil and is_light.name == "technic:light" then +						minetest.env:add_node(old_pos,{type="node",name="technic:light_off"}) +						minetest.env:add_node(old_pos,{type="node",name="air"}) +					end +				end +				-- gemerkte Position ist nun die gerundete neue Position +				player_positions[player_name]["x"] = rounded_pos.x +				player_positions[player_name]["y"] = rounded_pos.y +				player_positions[player_name]["z"] = rounded_pos.z +			end + +			last_wielded[player_name] = true; +		elseif last_wielded[player_name] == true  then +			-- Fackel nicht in der Hand, aber beim letzten Durchgang war die Fackel noch in der Hand +			local pos = player:getpos() +			local rounded_pos = {x=round(pos.x),y=round(pos.y)+1,z=round(pos.z)} +			repeat +				local is_light  = minetest.env:get_node_or_nil(rounded_pos) +				if is_light ~= nil and is_light.name == "technic:light" then +					-- minetest.env:remove_node(rounded_pos) +					-- Erzwinge Neuberechnung des Lichts +					minetest.env:add_node(rounded_pos,{type="node",name="technic:light_off"}) +					minetest.env:add_node(rounded_pos,{type="node",name="air"}) +				end +			until minetest.env:get_node_or_nil(rounded_pos) ~= "technic:light" +			local old_pos = {x=player_positions[player_name]["x"], y=player_positions[player_name]["y"], z=player_positions[player_name]["z"]} +			repeat +				is_light  = minetest.env:get_node_or_nil(old_pos) +				if is_light ~= nil and is_light.name == "technic:light" then +					-- minetest.env:remove_node(old_pos) +					-- Erzwinge Neuberechnung des Lichts +					minetest.env:add_node(old_pos,{type="node",name="technic:light_off"}) +					minetest.env:add_node(old_pos,{type="node",name="air"}) +				end +			until minetest.env:get_node_or_nil(old_pos) ~= "technic:light" +			last_wielded[player_name] = true +		end +	end +end) + +minetest.register_node("technic:light", { +	drawtype = "glasslike", +	tile_images = {"technic_light.png"}, +	paramtype = "light", +	walkable = false, +	is_ground_content = true, +	light_propagates = true, +	sunlight_propagates = true, +	light_source = 15, +	selection_box = { +        type = "fixed", +        fixed = {0, 0, 0, 0, 0, 0}, +    }, +}) +minetest.register_node("technic:light_off", { +	drawtype = "glasslike", +	tile_images = {"technic_light.png"}, +	paramtype = "light", +	walkable = false, +	is_ground_content = true, +	light_propagates = true, +	sunlight_propagates = true, +	selection_box = { +        type = "fixed", +        fixed = {0, 0, 0, 0, 0, 0}, +    }, +}) + +function flashlight_weared (player) +flashlight_on=false +local inv = player:get_inventory() +local hotbar=inv:get_list("main") +		for i=1,8,1 do +			 +			if hotbar[i]:get_name() == "technic:flashlight" then +			item=hotbar[i]:to_table() +			if item["metadata"]=="" or item["metadata"]=="0" then return flashlight_on end --flashlight not charghed +			charge=tonumber(item["metadata"])  +			if charge-2>0 then +			 flashlight_on=true	 +			 charge =charge-2;	 +			set_RE_wear(item,charge,flashlight_max_charge) +			item["metadata"]=tostring(charge) +			hotbar[i]:replace(item) +			inv:set_stack("main",i,hotbar[i]) +			return true +			end +			end +		end +return flashlight_on +end	
\ No newline at end of file diff --git a/generator.lua b/technic/technic/generator.lua index c8ac802..c8ac802 100644 --- a/generator.lua +++ b/technic/technic/generator.lua diff --git a/geothermal.lua b/technic/technic/geothermal.lua index 8f3a7d7..8f3a7d7 100644 --- a/geothermal.lua +++ b/technic/technic/geothermal.lua diff --git a/gold_chest.lua b/technic/technic/gold_chest.lua index 29f1666..29f1666 100644 --- a/gold_chest.lua +++ b/technic/technic/gold_chest.lua diff --git a/grinder.lua b/technic/technic/grinder.lua index 40c068a..686ffd3 100644 --- a/grinder.lua +++ b/technic/technic/grinder.lua @@ -7,6 +7,13 @@ grinder_recipes[registered_grinder_recipes_count]={}  grinder_recipes[registered_grinder_recipes_count].src_name=string1  grinder_recipes[registered_grinder_recipes_count].dst_name=string2  registered_grinder_recipes_count=registered_grinder_recipes_count+1 +if UI_recipes_hook then +	minetest.register_craft({ +	type = "grinding", +	output = string2, +	recipe = string1, +	}) +	end  end  register_grinder_recipe("default:stone","default:sand") @@ -32,7 +39,6 @@ register_grinder_recipe("flowers:flower_tulip","dye:orange 2")  register_grinder_recipe("flowers:flower_rose","dye:red 2")   register_grinder_recipe("flowers:flower_viola","dye:violet 2")  -  minetest.register_craftitem( "technic:coal_dust", {  	description = "Coal Dust",  	inventory_image = "technic_coal_dust.png", @@ -317,4 +323,4 @@ if	grinder_recipes[i].src_name==item_name then return ItemStack(grinder_recipes[  end  return nil -end
\ No newline at end of file +end diff --git a/technic/technic/grinder_gloopores.lua b/technic/technic/grinder_gloopores.lua new file mode 100644 index 0000000..0c58c98 --- /dev/null +++ b/technic/technic/grinder_gloopores.lua @@ -0,0 +1,55 @@ +register_grinder_recipe("gloopores:alatro_lump","technic:alatro_dust 2") +register_grinder_recipe("gloopores:kalite_lump","technic:kalite_dust 2") +register_grinder_recipe("gloopores:arol_lump","technic:arol_dust 2") +register_grinder_recipe("gloopores:talinite_lump","technic:talinite_dust 2") +register_grinder_recipe("gloopores:akalin_lump","technic:akalin_dust 2") +  +minetest.register_craftitem("technic:alatro_dust", { +        description = "Alatro Dust", +        inventory_image = "technic_alatro_dust.png", +}) +  +minetest.register_craft({ +    type = "cooking", +    output = "gloopores:alatro_ingot", +    recipe = "technic:alatro_dust", +}) +  +minetest.register_craftitem("technicplus:arol_dust", { +        description = "Arol Dust", +        inventory_image = "technic_arol_dust.png", +}) +  +minetest.register_craft({ +    type = "cooking", +    output = "gloopores:arol_ingot", +    recipe = "technic:arol_dust", +}) +  +minetest.register_craftitem("technic:talinite_dust", { +        description = "Talinite Dust", +        inventory_image = "technic_talinite_dust.png", +}) +  +minetest.register_craft({ +    type = "cooking", +    output = "gloopores:talinite_ingot", +    recipe = "technic:talinite_dust", +}) +  +minetest.register_craftitem("technic:akalin_dust", { +        description = "Akalin Dust", +        inventory_image = "technic_akalin_dust.png", +}) +  +minetest.register_craft({ +    type = "cooking", +    output = "gloopores:akalin_ingot", +    recipe = "technic:akalin_dust", +}) +  +minetest.register_craftitem("technic:kalite_dust", { +        description = "Kalite Dust", +        inventory_image = "technic_kalite_dust.png", +        on_use = minetest.item_eat(2) +}) diff --git a/init.lua b/technic/technic/init.lua index 8933a11..355e25e 100644 --- a/init.lua +++ b/technic/technic/init.lua @@ -1,4 +1,4 @@ --- Minetest 0.4.3 : technic +-- Minetest 0.4.4 : technic  minetest.register_alias("rebar", "technic:rebar")  minetest.register_alias("concrete", "technic:concrete") @@ -20,47 +20,58 @@ modpath=minetest.get_modpath("technic")  --Read technic config file  dofile(modpath.."/config.lua") -dofile(modpath.."/concrete.lua") +-- world gen +dofile(modpath.."/ores.lua") +if enable_rubber_tree_generation==true then dofile(modpath.."/rubber.lua") end + +-- chests  dofile(modpath.."/iron_chest.lua")  dofile(modpath.."/copper_chest.lua")  dofile(modpath.."/silver_chest.lua")  dofile(modpath.."/gold_chest.lua")  dofile(modpath.."/mithril_chest.lua") + +--items  +dofile(modpath.."/concrete.lua") +dofile(modpath.."/items.lua") + +--LV machines +dofile(modpath.."/alloy_furnace.lua") +dofile(modpath.."/solar_panel.lua") +dofile(modpath.."/geothermal.lua") +dofile(modpath.."/water_mill.lua")  dofile(modpath.."/electric_furnace.lua")  dofile(modpath.."/battery_box.lua")  dofile(modpath.."/wires.lua") -dofile(modpath.."/wires_mv.lua") -dofile(modpath.."/ores.lua")  dofile(modpath.."/tool_workshop.lua")  dofile(modpath.."/music_player.lua") -dofile(modpath.."/grinder.lua") -dofile(modpath.."/mining_laser_mk1.lua") -dofile(modpath.."/injector.lua")  dofile(modpath.."/generator.lua") -dofile(modpath.."/solar_panel.lua") -dofile(modpath.."/geothermal.lua") -dofile(modpath.."/water_mill.lua") -dofile(modpath.."/alloy_furnace.lua") -dofile(modpath.."/items.lua") -dofile(modpath.."/mining_drill.lua") +dofile(modpath.."/grinder.lua") + +--MV machines +dofile(modpath.."/wires_mv.lua") +dofile(modpath.."/solar_panel_mv.lua") +dofile(modpath.."/battery_box_mv.lua") + +--Tools +if enable_mining_dril==true then dofile(modpath.."/mining_drill.lua") end +if enable_mining_laser==true then dofile(modpath.."/mining_laser_mk1.lua") end +if enable_flashlight==true then dofile(modpath.."/flashlight.lua") end +dofile(modpath.."/cans.lua") +dofile(modpath.."/chainsaw.lua") +dofile(modpath.."/tree_tap.lua")  dofile(modpath.."/screwdriver.lua")  dofile(modpath.."/sonic_screwdriver.lua") + +-- mesecons and tubes related +dofile(modpath.."/injector.lua")  dofile(modpath.."/node_breaker.lua")  dofile(modpath.."/deployer.lua")  dofile(modpath.."/constructor.lua") -dofile(modpath.."/tree_tap.lua") -dofile(modpath.."/flashlight.lua") -dofile(modpath.."/cans.lua") -dofile(modpath.."/chainsaw.lua")  if enable_item_drop	then dofile(modpath.."/item_drop.lua") end  if enable_item_pickup   then dofile(modpath.."/item_pickup.lua") end ---MV machines -dofile(modpath.."/solar_panel_mv.lua") -dofile(modpath.."/battery_box_mv.lua") - -  function has_locked_chest_privilege(meta, player)  	if player:get_player_name() ~= meta:get_string("owner") then  		return false @@ -82,4 +93,4 @@ function hacky_swap_node(pos,name)  	meta = minetest.env:get_meta(pos)  	meta:from_table(meta0)  	return 1 -end
\ No newline at end of file +end diff --git a/injector.lua b/technic/technic/injector.lua index 0a6a19c..0a6a19c 100644 --- a/injector.lua +++ b/technic/technic/injector.lua diff --git a/technic/technic/injector1.lua b/technic/technic/injector1.lua new file mode 100644 index 0000000..537e478 --- /dev/null +++ b/technic/technic/injector1.lua @@ -0,0 +1,248 @@ +minetest.register_craftitem("technic:injector", { +	description = "Injector", +	stack_max = 99, +}) + +minetest.register_node("technic:injector", { +	description = "Injector", +	tiles = {"technic_iron_chest_top.png", "technic_iron_chest_top.png", "technic_iron_chest_side.png", +		"technic_iron_chest_side.png", "technic_iron_chest_side.png", "technic_iron_chest_front.png"}, +	paramtype2 = "facedir", +	groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, +	legacy_facedir_simple = true, +	sounds = default.node_sound_wood_defaults(), +	on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_string("formspec", +				"invsize[9,9;]".. +				"list[current_name;main;0,2;8,2;]".. +				"list[current_player;main;0,5;8,4;]") +		meta:set_string("infotext", "Injector") +		local inv = meta:get_inventory() +		inv:set_size("main", 8*4) +	end, +	can_dig = function(pos,player) +		local meta = minetest.env:get_meta(pos); +		local inv = meta:get_inventory() +		return inv:is_empty("main") +	end, +	on_punch = function (pos, node, puncher) +	local meta = minetest.env:get_meta(pos); +	local inv = meta:get_inventory() +	for _,stack in ipairs(inv:get_list("main")) do +		if stack:get_name() ~="" then  +			inv:remove_item("main",stack) +			item1=tube_item({x=pos.x+.5,y=pos.y,z=pos.z},stack) +			return +			end +	end +end, +}) + + +function tube_item(pos, item) +	-- Take item in any format +	local stack = ItemStack(item) +	local obj = minetest.env:add_entity(pos, "technic:tubed_item") +	obj:get_luaentity():set_item(stack:to_string()) +	obj:get_luaentity().start_pos = {x=pos.x,y=pos.y,z=pos.z} +	obj:setacceleration({x=0, y=0, z=0}) +	pos.x=pos.x+1 +	local meta = minetest.env:get_meta(pos) +	if meta:get_int("tubelike")==1 then obj:setvelocity({x=1, y=0, z=0}) return obj end +	pos.x=pos.x-2 +	meta = minetest.env:get_meta(pos) +	if meta:get_int("tubelike")==1 then obj:setvelocity({x=-1, y=0, z=0}) return obj end +	pos.x=pos.x+1 +	pos.z=pos.z+1 +	meta = minetest.env:get_meta(pos) +	if meta:get_int("tubelike")==1 then obj:setvelocity({x=0, y=0, z=1}) return obj end +	pos.z=pos.z-2 +	meta = minetest.env:get_meta(pos) +	if meta:get_int("tubelike")==1 then obj:setvelocity({x=0, y=0, z=-1}) return obj end +	pos.z=pos.z+1 +	pos.y=pos.y+1 +	meta = minetest.env:get_meta(pos) +	if meta:get_int("tubelike")==1 then obj:setvelocity({x=0, y=1, z=0}) return obj end +	pos.y=pos.y-2 +	meta = minetest.env:get_meta(pos) +	if meta:get_int("tubelike")==1 then obj:setvelocity({x=0, y=-2, z=0}) return obj end +	pos.y=pos.y+1 +	return obj +end + +minetest.register_entity("technic:tubed_item", { +	initial_properties = { +		hp_max = 1, +		physical = false, +		collisionbox = {0,0,0,0,0,0}, +		visual = "sprite", +		visual_size = {x=0.5, y=0.5}, +		textures = {""}, +		spritediv = {x=1, y=1}, +		initial_sprite_basepos = {x=0, y=0}, +		is_visible = false, +		start_pos={} +	}, +	 +	itemstring = '', +	physical_state = false, + +	set_item = function(self, itemstring) +		self.itemstring = itemstring +		local stack = ItemStack(itemstring) +		local itemtable = stack:to_table() +		local itemname = nil +		if itemtable then +			itemname = stack:to_table().name +		end +		local item_texture = nil +		local item_type = "" +		if minetest.registered_items[itemname] then +			item_texture = minetest.registered_items[itemname].inventory_image +			item_type = minetest.registered_items[itemname].type +		end +		prop = { +			is_visible = true, +			visual = "sprite", +			textures = {"unknown_item.png"} +		} +		if item_texture and item_texture ~= "" then +			prop.visual = "sprite" +			prop.textures = {item_texture} +			prop.visual_size = {x=0.3, y=0.3} +		else +			prop.visual = "wielditem" +			prop.textures = {itemname} +			prop.visual_size = {x=0.15, y=0.15} +		end +		self.object:set_properties(prop) +	end, + +	get_staticdata = function(self) +			 +			return	minetest.serialize({ +				itemstring=self.itemstring, +				velocity=self.object:getvelocity(), +				start_pos=self.start_pos +				}) +	end, + +	on_activate = function(self, staticdata) +		if  staticdata=="" or staticdata==nil then return end +		local item = minetest.deserialize(staticdata) +		local stack = ItemStack(item.itemstring) +		local itemtable = stack:to_table() +		local itemname = nil +		if itemtable then +			itemname = stack:to_table().name +		end +		 +		if itemname then  +		self.start_pos=item.start_pos +		self.object:setvelocity(item.velocity) +		self.object:setacceleration({x=0, y=0, z=0}) +		self.object:setpos(item.start_pos) +		end +		self:set_item(item.itemstring) +	end, + +	on_step = function(self, dtime) +	if self.start_pos then +	local pos = self.object:getpos() +	local node = minetest.env:get_node(pos) +	local meta = minetest.env:get_meta(pos) +	tubelike=meta:get_int("tubelike") +	local velocity=self.object:getvelocity() +	 +	if not velocity then return end + +	if math.abs(velocity.x)==1 then +		local next_node=math.abs(pos.x-self.start_pos.x) +		if next_node >= 1 then  +			self.start_pos.x=self.start_pos.x+velocity.x +			if check_pos_vector (self.start_pos, velocity)==0 then  +			check_next_step (self.start_pos, velocity)  +			self.object:setpos(self.start_pos) +			self.object:setvelocity(velocity) +			return +			end +			end +		end + +	if math.abs(velocity.y)==1 then +		local next_node=math.abs(pos.y-self.start_pos.y) +		if next_node >= 1 then  +			self.start_pos.y=self.start_pos.y+velocity.y +			if check_pos_vector (self.start_pos, velocity)==0 then +			check_next_step (self.start_pos, velocity)  +			self.object:setpos(self.start_pos) +			self.object:setvelocity(velocity) +			return +			end +			end +		end +	 +	if math.abs(velocity.z)==1 then +		local next_node=math.abs(pos.z-self.start_pos.z) +		if next_node >= 1 then  +			self.start_pos.z=self.start_pos.z+velocity.z +			if check_pos_vector (self.start_pos, velocity)==0 then +			check_next_step (self.start_pos, velocity)  +			self.object:setpos(self.start_pos) +			self.object:setvelocity(velocity) +			return +			end +			end +		end +	end +end +}) + + +function check_next_step (pos,velocity) +local meta +local tubelike + +if velocity.x==0 then +meta = minetest.env:get_meta({x=pos.x-1,y=pos.y,z=pos.z}) +tubelike=meta:get_int("tubelike") +if tubelike==1 then velocity.x=-1 velocity.y=0 velocity.z=0 return end +meta = minetest.env:get_meta({x=pos.x+1,y=pos.y,z=pos.z}) +tubelike=meta:get_int("tubelike") +if tubelike==1 then velocity.x=1 velocity.y=0 velocity.z=0 return end +end + +if velocity.z==0 then +meta = minetest.env:get_meta({x=pos.x,y=pos.y,z=pos.z+1}) +tubelike=meta:get_int("tubelike") +if tubelike==1 then velocity.x=0 velocity.y=0 velocity.z=1 return end +meta = minetest.env:get_meta({x=pos.x,y=pos.y,z=pos.z-1}) +tubelike=meta:get_int("tubelike") +if tubelike==1 then velocity.x=0 velocity.y=0 velocity.z=-1 return end +end + +if velocity.y==0 then +meta = minetest.env:get_meta({x=pos.x,y=pos.y+1,z=pos.z}) +tubelike=meta:get_int("tubelike") +if tubelike==1 then velocity.x=0 velocity.y=1 velocity.z=0 return end +meta = minetest.env:get_meta({x=pos.x,y=pos.y-1,z=pos.z}) +tubelike=meta:get_int("tubelike") +if tubelike==1 then velocity.x=0 velocity.y=-1 velocity.z=0 return end +end + +--velocity.x=0 +--velocity.y=0 +--velocity.z=0 +end + +function check_pos_vector (pos,velocity) +added={} +added.x=pos.x+velocity.x +added.y=pos.y+velocity.y +added.z=pos.z+velocity.z +local meta=minetest.env:get_meta(added)  +--print(dump(added).." : "..tubelike) +if meta:get_int("tubelike")==1 then return 1 end +return 0 +end diff --git a/iron_chest.lua b/technic/technic/iron_chest.lua index f0e0fcb..27b1aba 100644 --- a/iron_chest.lua +++ b/technic/technic/iron_chest.lua @@ -54,15 +54,6 @@ minetest.register_node("technic:iron_chest", {  		local inv = meta:get_inventory()  		inv:set_size("main", 9*4)  	end, - -	after_place_node = function(pos, placer) -		ntop1 = minetest.env:get_node({x=pos.x, y=pos.y, z=pos.z}) -		ntop = minetest.env:get_node({x=pos.x, y=pos.y+1, z=pos.z}) -                if ntop.name ~= "air" then -                        minetest.node_dig(pos, ntop1, placer) -		end -	end, -  	can_dig = function(pos,player)  		local meta = minetest.env:get_meta(pos);  		local inv = meta:get_inventory() @@ -170,7 +161,3 @@ on_construct = function(pos)  				" takes stuff from locked chest at "..minetest.pos_to_string(pos))  	end,  }) - -function add_item (player) -player:get_inventory():add_item("main", "blabla 1") -end
\ No newline at end of file diff --git a/item_drop.lua b/technic/technic/item_drop.lua index 3165e6a..3165e6a 100644 --- a/item_drop.lua +++ b/technic/technic/item_drop.lua diff --git a/item_pickup.lua b/technic/technic/item_pickup.lua index 04ed0f8..04ed0f8 100644 --- a/item_pickup.lua +++ b/technic/technic/item_pickup.lua diff --git a/items.lua b/technic/technic/items.lua index 527fc6f..c2b596e 100644 --- a/items.lua +++ b/technic/technic/items.lua @@ -55,27 +55,27 @@ minetest.register_node( "technic:diamond_block", {  minetest.register_craft({  	output = 'technic:green_energy_crystal',  	recipe = { -		{'moreores:gold_ingot', 'technic:battery', 'group:dye,basecolor_green'}, +		{'moreores:gold_ingot', 'technic:battery', 'dye:green'},  		{'technic:battery', 'technic:red_energy_crystal', 'technic:battery'}, -		{'group:dye,basecolor_green', 'technic:battery', 'moreores:gold_ingot'}, +		{'dye:green', 'technic:battery', 'moreores:gold_ingot'},  	}  })  minetest.register_craft({  	output = 'technic:blue_energy_crystal',  	recipe = { -		{'moreores:gold_ingot', 'technic:battery', 'group:dye,basecolor_blue'}, +		{'moreores:gold_ingot', 'technic:battery', 'dye:blue'},  		{'technic:battery', 'technic:green_energy_crystal', 'technic:battery'}, -		{'group:dye,basecolor_green', 'technic:battery', 'moreores:gold_ingot'}, +		{'dye:blue', 'technic:battery', 'moreores:gold_ingot'},  	}  })  minetest.register_craft({  	output = 'technic:red_energy_crystal',  	recipe = { -		{'moreores:gold_ingot', 'technic:battery', 'group:dye,basecolor_red'}, +		{'moreores:gold_ingot', 'technic:battery', 'dye:red'},  		{'technic:battery', 'technic:diamond_block', 'technic:battery'}, -		{'group:dye,basecolor_red', 'technic:battery', 'moreores:gold_ingot'}, +		{'dye:red', 'technic:battery', 'moreores:gold_ingot'},  	}  }) diff --git a/mining_drill.lua b/technic/technic/mining_drill.lua index 5fc5377..4ccfc95 100644 --- a/mining_drill.lua +++ b/technic/technic/mining_drill.lua @@ -25,8 +25,8 @@ minetest.register_craft({  	output = 'technic:mining_drill',  	recipe = {  		{'technic:stainless_steel_ingot', 'technic:diamond_drill_head', 'technic:stainless_steel_ingot'}, -		{'technic:stainless_steel_ingot', 'technic:red_energy_crystal', 'technic:stainless_steel_ingot'}, -		{'', 'moreores:copper_ingot', ''}, +		{'technic:stainless_steel_ingot', 'technic:motor', 'technic:stainless_steel_ingot'}, +		{'', 'technic:red_energy_crystal', 'moreores:copper_ingot'},  	}  }) diff --git a/mining_laser_mk1.lua b/technic/technic/mining_laser_mk1.lua index a206bb4..a206bb4 100644 --- a/mining_laser_mk1.lua +++ b/technic/technic/mining_laser_mk1.lua diff --git a/mithril_chest.lua b/technic/technic/mithril_chest.lua index 89683f8..89683f8 100644 --- a/mithril_chest.lua +++ b/technic/technic/mithril_chest.lua diff --git a/technic/technic/mithril_subspace_chest.lua b/technic/technic/mithril_subspace_chest.lua new file mode 100644 index 0000000..89683f8 --- /dev/null +++ b/technic/technic/mithril_subspace_chest.lua @@ -0,0 +1,145 @@ +minetest.register_craft({ +	output = 'technic:mithril_chest 1', +	recipe = { +		{'moreores:mithril_ingot','moreores:mithril_ingot','moreores:mithril_ingot'}, +		{'moreores:mithril_ingot','technic:gold_chest','moreores:mithril_ingot'}, +		{'moreores:mithril_ingot','moreores:mithril_ingot','moreores:mithril_ingot'}, +	} +}) + +minetest.register_craft({ +	output = 'technic:mithril_locked_chest 1', +	recipe = { +		{'moreores:mithril_ingot','moreores:mithril_ingot','moreores:mithril_ingot'}, +		{'moreores:mithril_ingot','technic:gold_locked_chest','moreores:mithril_ingot'}, +		{'moreores:mithril_ingot','moreores:mithril_ingot','moreores:mithril_ingot'}, +	} +}) + +minetest.register_craft({ +	output = 'technic:mithril_locked_chest 1', +	recipe = { +		{'default:steel_ingot'}, +		{'technic:mithril_chest'}, +	} +}) + +minetest.register_node("technic:mithril_chest", { +	description = "Mithril Chest", +	tiles = {"technic_mithril_chest_top.png", "technic_mithril_chest_top.png", "technic_mithril_chest_side.png", +		"technic_mithril_chest_side.png", "technic_mithril_chest_side.png", "technic_mithril_chest_front.png"}, +	paramtype2 = "facedir", +	groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, +	legacy_facedir_simple = true, +	sounds = default.node_sound_wood_defaults(), +	on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_string("formspec", +				"invsize[13,9;]".. +				"list[current_name;main;0,0;13,4;]".. +				"list[current_player;main;0,5;8,4;]") +		meta:set_string("infotext", "Mithril Chest") +		local inv = meta:get_inventory() +		inv:set_size("main", 13*4) +	end, +	can_dig = function(pos,player) +		local meta = minetest.env:get_meta(pos); +		local inv = meta:get_inventory() +		return inv:is_empty("main") +	end, + +    on_metadata_inventory_move = function(pos, from_list, from_index, +			to_list, to_index, count, player) +		minetest.log("action", player:get_player_name().. +				" moves stuff in chest at "..minetest.pos_to_string(pos)) +		return minetest.node_metadata_inventory_move_allow_all( +				pos, from_list, from_index, to_list, to_index, count, player) +	end, +    on_metadata_inventory_offer = function(pos, listname, index, stack, player) +		minetest.log("action", player:get_player_name().. +				" moves stuff to chest at "..minetest.pos_to_string(pos)) +		return minetest.node_metadata_inventory_offer_allow_all( +				pos, listname, index, stack, player) +	end, +    on_metadata_inventory_take = function(pos, listname, index, stack, player) +		minetest.log("action", player:get_player_name().. +				" takes stuff from chest at "..minetest.pos_to_string(pos)) +	end, +}) + +minetest.register_node("technic:mithril_locked_chest", { +	description = "Mithril Locked Chest", +	tiles = {"technic_mithril_chest_top.png", "technic_mithril_chest_top.png", "technic_mithril_chest_side.png", +		"technic_mithril_chest_side.png", "technic_mithril_chest_side.png", "technic_mithril_chest_locked.png"}, +	paramtype2 = "facedir", +	groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, +	legacy_facedir_simple = true, +	sounds = default.node_sound_wood_defaults(), +	after_place_node = function(pos, placer) +		local meta = minetest.env:get_meta(pos) +		meta:set_string("owner", placer:get_player_name() or "") +		meta:set_string("infotext", "Mithril Locked Chest (owned by ".. +				meta:get_string("owner")..")") +	end, +on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_string("formspec", +				"invsize[13,9;]".. +				"list[current_name;main;0,0;13,4;]".. +				"list[current_player;main;0,5;8,4;]") +		meta:set_string("infotext", "Mithril Locked Chest") +		meta:set_string("owner", "") +		local inv = meta:get_inventory() +		inv:set_size("main", 13*4) +	end, +	can_dig = function(pos,player) +		local meta = minetest.env:get_meta(pos); +		local inv = meta:get_inventory() +		return inv:is_empty("main") +	end, +	allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player) +		local meta = minetest.env:get_meta(pos) +		if not has_locked_chest_privilege(meta, player) then +			minetest.log("action", player:get_player_name().. +					" tried to access a locked chest belonging to ".. +					meta:get_string("owner").." at ".. +					minetest.pos_to_string(pos)) +			return 0 +		end +		return count +	end, +    allow_metadata_inventory_put = function(pos, listname, index, stack, player) +		local meta = minetest.env:get_meta(pos) +		if not has_locked_chest_privilege(meta, player) then +			minetest.log("action", player:get_player_name().. +					" tried to access a locked chest belonging to ".. +					meta:get_string("owner").." at ".. +					minetest.pos_to_string(pos)) +			return 0 +		end +		return stack:get_count() +	end, +    allow_metadata_inventory_take = function(pos, listname, index, stack, player) +		local meta = minetest.env:get_meta(pos) +		if not has_locked_chest_privilege(meta, player) then +			minetest.log("action", player:get_player_name().. +					" tried to access a locked chest belonging to ".. +					meta:get_string("owner").." at ".. +					minetest.pos_to_string(pos)) +			return 0 +		end +		return stack:get_count() +	end, +	on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player) +		minetest.log("action", player:get_player_name().. +				" moves stuff in locked chest at "..minetest.pos_to_string(pos)) +	end, +    on_metadata_inventory_put = function(pos, listname, index, stack, player) +		minetest.log("action", player:get_player_name().. +				" moves stuff to locked chest at "..minetest.pos_to_string(pos)) +	end, +    on_metadata_inventory_take = function(pos, listname, index, stack, player) +		minetest.log("action", player:get_player_name().. +				" takes stuff from locked chest at "..minetest.pos_to_string(pos)) +	end, +}) diff --git a/music_player.lua b/technic/technic/music_player.lua index 0a6474a..0a6474a 100644 --- a/music_player.lua +++ b/technic/technic/music_player.lua diff --git a/node_breaker.lua b/technic/technic/node_breaker.lua index 3a7f53b..3a7f53b 100644 --- a/node_breaker.lua +++ b/technic/technic/node_breaker.lua diff --git a/ores.lua b/technic/technic/ores.lua index 90013fc..2642c9e 100644 --- a/ores.lua +++ b/technic/technic/ores.lua @@ -30,6 +30,14 @@ minetest.register_node( "technic:granite", {  	sounds = default.node_sound_stone_defaults(),  })  +minetest.register_node( "technic:obsidian", { +	description = "Obsidian", +	tiles = { "technic_obsidian.png" }, +	is_ground_content = true, +	groups = {cracky=3}, +	sounds = default.node_sound_stone_defaults(), +})  +  stairsplus.register_stair_and_slab_and_panel_and_micro("marble", "technic:marble",  		{cracky=3},  		{"technic_marble.png"}, @@ -54,6 +62,14 @@ stairsplus.register_stair_and_slab_and_panel_and_micro("granite", "technic:grani  		"Granite Panel",  		"Granite Microblock",  		"granite") +stairsplus.register_stair_and_slab_and_panel_and_micro("obsidian", "technic:obsidian", +		{cracky=3}, +		{"technic_obsidian.png"}, +		"Obsidian Stairs", +		"Obsidian Slab", +		"Obsidian Panel", +		"Obsidian Microblock", +		"obsidian")  minetest.register_node( "technic:mineral_diamond", {  	description = "Diamond Ore", @@ -192,10 +208,132 @@ local function generate_ore(name, wherein, minp, maxp, seed, chunks_per_volume,  end  minetest.register_on_generated(function(minp, maxp, seed) -generate_ore("technic:mineral_diamond", "default:stone", minp, maxp, seed+21,   1/11/11/11,    4, -31000,  -300) +generate_ore("technic:mineral_diamond", "default:stone", minp, maxp, seed+21,   1/11/11/11,    4, -31000,  -450)  generate_ore("technic:mineral_uranium", "default:stone", minp, maxp, seed+22,   1/10/10/10,    3, -300,  -80)  generate_ore("technic:mineral_chromium", "default:stone", minp, maxp, seed+23,   1/10/10/10,    2, -31000,  -100)  generate_ore("technic:mineral_zinc", "default:stone", minp, maxp, seed+24,   1/9/9/9,    4, -31000,  2)  generate_ore("technic:marble", "default:stone", minp, maxp, seed+25,	1/128, 20, -100, -32)  generate_ore("technic:granite", "default:stone", minp, maxp, seed+25,	1/128, 15, -190, -90) -end)
\ No newline at end of file +generate_stratus("technic:obsidian", +                {"default:stone"}, +                {"default:lava_source"},{"default:air"}, +                  minp, maxp, seed+4, 10, 25, 7, -450, -31000, -450) +end) + +function generate_stratus(name, wherein, ceilin, ceil, minp, maxp, seed, stratus_chance, radius, radius_y, deep, height_min, height_max) +  if maxp.y < height_min or minp.y > height_max then +    return +  end +  -- it will be only generate a stratus for every 100 m of area +  local stratus_per_volume=1 +  local area=45 +  local y_min = math.max(minp.y, height_min) +  local y_max = math.min(maxp.y, height_max) +  local volume = ((maxp.x-minp.x+1)/area)*((y_max-y_min+1)/area)*((maxp.z-minp.z+1)/area) +  local pr = PseudoRandom(seed) +  local blocks = math.floor(stratus_per_volume*volume) +  print(" <<"..dump(name)..">>"); +  if blocks == 0 then +    blocks = 1 +  end +  print(" blocks: "..dump(blocks).." in vol: "..dump(volume).." ("..dump(maxp.x-minp.x+1)..","..dump(y_max-y_min+1)..","..dump(maxp.z-minp.z+1)..")") +  for i=1,blocks do +    local x = pr:next(1,stratus_chance) +    if x == 1 then +      -- TODO deep +      local y0=y_max-radius_y+1 +      if y0 < y_min then +        y0=y_min +      else +        y0=pr:next(y_min, y0) +      end +      local x0 = maxp.x-radius+1 +      if x0 < minp.x then +        x0 = minp.x +      else +        x0 = pr:next(minp.x, x0) +      end +      local z0 = maxp.z-radius+1 +      if z0 < minp.z then +        x0 = minp.z +      else +        z0 = pr:next(minp.z, z0) +      end +      local p0 = {x=x0, y=y0, z=z0} +      local n = minetest.env:get_node(p0).name +      local i = 0 +      --print(" upper node "..n) +      x = 0 +      for k, v in ipairs(ceilin) do +        if n == v then +          x = 1 +          break +        end +      end +      if x == 1 then +        -- search for the node to replace +        --print(" Searching nodes to replace from "..dump(y0-1).." to "..dump(y_min)) +        for y1=y0-1,y_min,-1 do +          p0.y=y1 +          n = minetest.env:get_node(p0).name +          x = 0 +          for k, v in ipairs(wherein) do +            if n == v then +              x = 1 +              break +            end +          end +          if x == 1 then +            y0=y1-deep +            if y0 < y_min then +              y0 = y_min +            end +            break +          end +        end +        local rx=pr:next(radius/2,radius)+1 +        local rz=pr:next(radius/2,radius)+1 +        local ry=pr:next(radius_y/2,radius_y)+1 +        --print(" area of generation ("..dump(rx)..","..dump(rz)..","..dump(ry)..")") +        for x1=0,rx do +          rz = rz + 3 - pr:next(1,6) +          if rz < 1 then +            rz = 1 +          end +          for z1=pr:next(1,3),rz do +            local ry0=ry+ pr:next(1,3) +            for y1=pr:next(1,3),ry0 do +              local x2 = x0+x1 +              local y2 = y0+y1 +              local z2 = z0+z1 +              local p2 = {x=x2, y=y2, z=z2} +              n = minetest.env:get_node(p2).name +              x = 0 +              for k, v in ipairs(wherein) do +                if n == v then +                  x = 1 +                  break +                end +              end +              if x == 1 then +                if ceil == nil then +                  minetest.env:set_node(p2, {name=name}) +                  i = i +1 +                else +                  local p3 = {p2.x,p2.y+1,p2} +                  if minetest.env:get_node(p3).name == ceil then +                     minetest.env:set_node(p2, {name=name}) +                     i = i +1 +                  end +                end +              end +            end +          end +        end +        print(" generated "..dump(i).." blocks in ("..dump(x0)..","..dump(y0)..","..dump(z0)..")") +      end + +    end +  end +  --print("generate_ore done") +end
\ No newline at end of file diff --git a/project_table.lua b/technic/technic/project_table.lua index 355295c..355295c 100644 --- a/project_table.lua +++ b/technic/technic/project_table.lua diff --git a/rubber.lua b/technic/technic/rubber.lua index 311f3af..311f3af 100644 --- a/rubber.lua +++ b/technic/technic/rubber.lua diff --git a/screwdriver.lua b/technic/technic/screwdriver.lua index 0b81217..0b81217 100644 --- a/screwdriver.lua +++ b/technic/technic/screwdriver.lua diff --git a/silver_chest.lua b/technic/technic/silver_chest.lua index 66a915a..66a915a 100644 --- a/silver_chest.lua +++ b/technic/technic/silver_chest.lua diff --git a/solar_panel.lua b/technic/technic/solar_panel.lua index f2d08f6..02a8f69 100644 --- a/solar_panel.lua +++ b/technic/technic/solar_panel.lua @@ -54,7 +54,7 @@ minetest.register_abm(  		local light = minetest.env:get_node_light(pos1, nil)  		local meta = minetest.env:get_meta(pos)  		if light == nil then light = 0 end -		if light >= 14 then +		if light >= 12 then  			meta:set_string("infotext", "Solar Panel is active ")  			meta:set_float("active",1)  			local internal_EU_buffer=meta:get_float("internal_EU_buffer") diff --git a/solar_panel_mv.lua b/technic/technic/solar_panel_mv.lua index 93e21e7..93e21e7 100644 --- a/solar_panel_mv.lua +++ b/technic/technic/solar_panel_mv.lua diff --git a/sonic_screwdriver.lua b/technic/technic/sonic_screwdriver.lua index d089778..d089778 100644 --- a/sonic_screwdriver.lua +++ b/technic/technic/sonic_screwdriver.lua diff --git a/sounds/chainsaw.ogg b/technic/technic/sounds/chainsaw.oggBinary files differ index 5fe7552..5fe7552 100644 --- a/sounds/chainsaw.ogg +++ b/technic/technic/sounds/chainsaw.ogg diff --git a/sounds/item_drop_pickup.1.ogg b/technic/technic/sounds/item_drop_pickup.1.oggBinary files differ index 2ae432d..2ae432d 100644 --- a/sounds/item_drop_pickup.1.ogg +++ b/technic/technic/sounds/item_drop_pickup.1.ogg diff --git a/sounds/item_drop_pickup.2.ogg b/technic/technic/sounds/item_drop_pickup.2.oggBinary files differ index f58bf08..f58bf08 100644 --- a/sounds/item_drop_pickup.2.ogg +++ b/technic/technic/sounds/item_drop_pickup.2.ogg diff --git a/sounds/item_drop_pickup.3.ogg b/technic/technic/sounds/item_drop_pickup.3.oggBinary files differ index cf57c94..cf57c94 100644 --- a/sounds/item_drop_pickup.3.ogg +++ b/technic/technic/sounds/item_drop_pickup.3.ogg diff --git a/sounds/item_drop_pickup.4.ogg b/technic/technic/sounds/item_drop_pickup.4.oggBinary files differ index bfe99d9..bfe99d9 100644 --- a/sounds/item_drop_pickup.4.ogg +++ b/technic/technic/sounds/item_drop_pickup.4.ogg diff --git a/sounds/mining_drill.ogg b/technic/technic/sounds/mining_drill.oggBinary files differ index 1493544..1493544 100644 --- a/sounds/mining_drill.ogg +++ b/technic/technic/sounds/mining_drill.ogg diff --git a/sounds/technic_laser.ogg b/technic/technic/sounds/technic_laser.oggBinary files differ index 19be080..19be080 100644 --- a/sounds/technic_laser.ogg +++ b/technic/technic/sounds/technic_laser.ogg diff --git a/sounds/technic_sonic_screwdriver.ogg b/technic/technic/sounds/technic_sonic_screwdriver.oggBinary files differ index 471bb72..471bb72 100644 --- a/sounds/technic_sonic_screwdriver.ogg +++ b/technic/technic/sounds/technic_sonic_screwdriver.ogg diff --git a/technic/technic/tetris.lua b/technic/technic/tetris.lua new file mode 100644 index 0000000..3b14c47 --- /dev/null +++ b/technic/technic/tetris.lua @@ -0,0 +1,17 @@ +minetest.register_node("technic:tetris_machine_node1", { +	tiles = {"tetris_machine_top.png", "technic_mv_battery_box_bottom.png", "tetris_machine_front1.png", +		"tetris_machine_side1B.png", "tetris_machine_side1P.png", "tetris_machine_side1L.png"}, +	tile_images = {"technic_tetris_machine.png",}, +	is_ground_content = true, +	groups = {cracky=1}, +	sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("technic:tetris_machine_node2", { +	tiles = {"tetris_machine_top.png", "technic_mv_battery_box_bottom.png", "tetris_machine_front2.png", +		"tetris_machine_side2B.png", "tetris_machine_side2P.png", "tetris_machine_side2L.png"}, +	tile_images = {"technic_tetris_machine.png",}, +	is_ground_content = true, +	groups = {cracky=1}, +	sounds = default.node_sound_stone_defaults(), +}) diff --git a/textures/technic_alloy_furnace_front.png b/technic/technic/textures/technic_alloy_furnace_front.pngBinary files differ index 9123fb6..9123fb6 100644 --- a/textures/technic_alloy_furnace_front.png +++ b/technic/technic/textures/technic_alloy_furnace_front.png diff --git a/textures/technic_alloy_furnace_front_active.png b/technic/technic/textures/technic_alloy_furnace_front_active.pngBinary files differ index 4dda2e6..4dda2e6 100644 --- a/textures/technic_alloy_furnace_front_active.png +++ b/technic/technic/textures/technic_alloy_furnace_front_active.png diff --git a/textures/technic_alloy_furnace_side.png b/technic/technic/textures/technic_alloy_furnace_side.pngBinary files differ index b5bd428..b5bd428 100644 --- a/textures/technic_alloy_furnace_side.png +++ b/technic/technic/textures/technic_alloy_furnace_side.png diff --git a/textures/technic_alloy_furnace_top.png b/technic/technic/textures/technic_alloy_furnace_top.pngBinary files differ index 67ef4b7..67ef4b7 100644 --- a/textures/technic_alloy_furnace_top.png +++ b/technic/technic/textures/technic_alloy_furnace_top.png diff --git a/textures/technic_battery.png b/technic/technic/textures/technic_battery.pngBinary files differ index ee83b74..ee83b74 100644 --- a/textures/technic_battery.png +++ b/technic/technic/textures/technic_battery.png diff --git a/textures/technic_battery_box_bottom.png b/technic/technic/textures/technic_battery_box_bottom.pngBinary files differ index 03c7ccc..03c7ccc 100644 --- a/textures/technic_battery_box_bottom.png +++ b/technic/technic/textures/technic_battery_box_bottom.png diff --git a/textures/technic_battery_box_side0.png b/technic/technic/textures/technic_battery_box_side0.pngBinary files differ index 2662ac0..2662ac0 100644 --- a/textures/technic_battery_box_side0.png +++ b/technic/technic/textures/technic_battery_box_side0.png diff --git a/textures/technic_battery_box_top.png b/technic/technic/textures/technic_battery_box_top.pngBinary files differ index 4953a32..4953a32 100644 --- a/textures/technic_battery_box_top.png +++ b/technic/technic/textures/technic_battery_box_top.png diff --git a/textures/technic_battery_reload.png b/technic/technic/textures/technic_battery_reload.pngBinary files differ index 164b4ac..164b4ac 100644 --- a/textures/technic_battery_reload.png +++ b/technic/technic/textures/technic_battery_reload.png diff --git a/textures/technic_brass_dust.png b/technic/technic/textures/technic_brass_dust.pngBinary files differ index f86167a..f86167a 100644 --- a/textures/technic_brass_dust.png +++ b/technic/technic/textures/technic_brass_dust.png diff --git a/textures/technic_brass_ingot.png b/technic/technic/textures/technic_brass_ingot.pngBinary files differ index 2d8b153..2d8b153 100644 --- a/textures/technic_brass_ingot.png +++ b/technic/technic/textures/technic_brass_ingot.png diff --git a/textures/technic_bronze_dust.png b/technic/technic/textures/technic_bronze_dust.pngBinary files differ index 0a2401e..0a2401e 100644 --- a/textures/technic_bronze_dust.png +++ b/technic/technic/textures/technic_bronze_dust.png diff --git a/textures/technic_chainsaw.png b/technic/technic/textures/technic_chainsaw.pngBinary files differ index b7ceee6..b7ceee6 100644 --- a/textures/technic_chainsaw.png +++ b/technic/technic/textures/technic_chainsaw.png diff --git a/textures/technic_chromium_dust.png b/technic/technic/textures/technic_chromium_dust.pngBinary files differ index a33358b..a33358b 100644 --- a/textures/technic_chromium_dust.png +++ b/technic/technic/textures/technic_chromium_dust.png diff --git a/textures/technic_chromium_ingot.png b/technic/technic/textures/technic_chromium_ingot.pngBinary files differ index 91d5b20..91d5b20 100644 --- a/textures/technic_chromium_ingot.png +++ b/technic/technic/textures/technic_chromium_ingot.png diff --git a/textures/technic_chromium_lump.png b/technic/technic/textures/technic_chromium_lump.pngBinary files differ index 1588f92..1588f92 100644 --- a/textures/technic_chromium_lump.png +++ b/technic/technic/textures/technic_chromium_lump.png diff --git a/textures/technic_coal_alloy_furnace_bottom.png b/technic/technic/textures/technic_coal_alloy_furnace_bottom.pngBinary files differ index 7a5eed7..7a5eed7 100644 --- a/textures/technic_coal_alloy_furnace_bottom.png +++ b/technic/technic/textures/technic_coal_alloy_furnace_bottom.png diff --git a/textures/technic_coal_alloy_furnace_front.png b/technic/technic/textures/technic_coal_alloy_furnace_front.pngBinary files differ index b00bef3..b00bef3 100644 --- a/textures/technic_coal_alloy_furnace_front.png +++ b/technic/technic/textures/technic_coal_alloy_furnace_front.png diff --git a/textures/technic_coal_alloy_furnace_front_active.png b/technic/technic/textures/technic_coal_alloy_furnace_front_active.pngBinary files differ index b41f619..b41f619 100644 --- a/textures/technic_coal_alloy_furnace_front_active.png +++ b/technic/technic/textures/technic_coal_alloy_furnace_front_active.png diff --git a/textures/technic_coal_alloy_furnace_side.png b/technic/technic/textures/technic_coal_alloy_furnace_side.pngBinary files differ index 3db8daa..3db8daa 100644 --- a/textures/technic_coal_alloy_furnace_side.png +++ b/technic/technic/textures/technic_coal_alloy_furnace_side.png diff --git a/textures/technic_coal_alloy_furnace_top.png b/technic/technic/textures/technic_coal_alloy_furnace_top.pngBinary files differ index c648fe8..c648fe8 100644 --- a/textures/technic_coal_alloy_furnace_top.png +++ b/technic/technic/textures/technic_coal_alloy_furnace_top.png diff --git a/textures/technic_coal_dust.png b/technic/technic/textures/technic_coal_dust.pngBinary files differ index 4a1da0c..4a1da0c 100644 --- a/textures/technic_coal_dust.png +++ b/technic/technic/textures/technic_coal_dust.png diff --git a/textures/technic_concrete_block.png b/technic/technic/textures/technic_concrete_block.pngBinary files differ index 91364f3..91364f3 100644 --- a/textures/technic_concrete_block.png +++ b/technic/technic/textures/technic_concrete_block.png diff --git a/textures/technic_constructor_back.png b/technic/technic/textures/technic_constructor_back.pngBinary files differ index 6baf788..6baf788 100644 --- a/textures/technic_constructor_back.png +++ b/technic/technic/textures/technic_constructor_back.png diff --git a/textures/technic_constructor_front_off.png b/technic/technic/textures/technic_constructor_front_off.pngBinary files differ index f878e55..f878e55 100644 --- a/textures/technic_constructor_front_off.png +++ b/technic/technic/textures/technic_constructor_front_off.png diff --git a/textures/technic_constructor_front_on.png b/technic/technic/textures/technic_constructor_front_on.pngBinary files differ index 89189d6..89189d6 100644 --- a/textures/technic_constructor_front_on.png +++ b/technic/technic/textures/technic_constructor_front_on.png diff --git a/textures/technic_constructor_mk1_bottom_off.png b/technic/technic/textures/technic_constructor_mk1_bottom_off.pngBinary files differ index 205dcc4..205dcc4 100644 --- a/textures/technic_constructor_mk1_bottom_off.png +++ b/technic/technic/textures/technic_constructor_mk1_bottom_off.png diff --git a/textures/technic_constructor_mk1_bottom_on.png b/technic/technic/textures/technic_constructor_mk1_bottom_on.pngBinary files differ index 9896c52..9896c52 100644 --- a/textures/technic_constructor_mk1_bottom_on.png +++ b/technic/technic/textures/technic_constructor_mk1_bottom_on.png diff --git a/textures/technic_constructor_mk1_side1_off.png b/technic/technic/textures/technic_constructor_mk1_side1_off.pngBinary files differ index e8a01ff..e8a01ff 100644 --- a/textures/technic_constructor_mk1_side1_off.png +++ b/technic/technic/textures/technic_constructor_mk1_side1_off.png diff --git a/textures/technic_constructor_mk1_side1_on.png b/technic/technic/textures/technic_constructor_mk1_side1_on.pngBinary files differ index c897942..c897942 100644 --- a/textures/technic_constructor_mk1_side1_on.png +++ b/technic/technic/textures/technic_constructor_mk1_side1_on.png diff --git a/textures/technic_constructor_mk1_side2_off.png b/technic/technic/textures/technic_constructor_mk1_side2_off.pngBinary files differ index 8da65f6..8da65f6 100644 --- a/textures/technic_constructor_mk1_side2_off.png +++ b/technic/technic/textures/technic_constructor_mk1_side2_off.png diff --git a/textures/technic_constructor_mk1_side2_on.png b/technic/technic/textures/technic_constructor_mk1_side2_on.pngBinary files differ index da8ed34..da8ed34 100644 --- a/textures/technic_constructor_mk1_side2_on.png +++ b/technic/technic/textures/technic_constructor_mk1_side2_on.png diff --git a/textures/technic_constructor_mk1_top_off.png b/technic/technic/textures/technic_constructor_mk1_top_off.pngBinary files differ index 7d8c7e0..7d8c7e0 100644 --- a/textures/technic_constructor_mk1_top_off.png +++ b/technic/technic/textures/technic_constructor_mk1_top_off.png diff --git a/textures/technic_constructor_mk1_top_on.png b/technic/technic/textures/technic_constructor_mk1_top_on.pngBinary files differ index 439caf5..439caf5 100644 --- a/textures/technic_constructor_mk1_top_on.png +++ b/technic/technic/textures/technic_constructor_mk1_top_on.png diff --git a/textures/technic_constructor_mk2_bottom_off.png b/technic/technic/textures/technic_constructor_mk2_bottom_off.pngBinary files differ index 83c5b07..83c5b07 100644 --- a/textures/technic_constructor_mk2_bottom_off.png +++ b/technic/technic/textures/technic_constructor_mk2_bottom_off.png diff --git a/textures/technic_constructor_mk2_bottom_on.png b/technic/technic/textures/technic_constructor_mk2_bottom_on.pngBinary files differ index 9ad76f4..9ad76f4 100644 --- a/textures/technic_constructor_mk2_bottom_on.png +++ b/technic/technic/textures/technic_constructor_mk2_bottom_on.png diff --git a/textures/technic_constructor_mk2_side1_off.png b/technic/technic/textures/technic_constructor_mk2_side1_off.pngBinary files differ index 584dfe3..584dfe3 100644 --- a/textures/technic_constructor_mk2_side1_off.png +++ b/technic/technic/textures/technic_constructor_mk2_side1_off.png diff --git a/textures/technic_constructor_mk2_side1_on.png b/technic/technic/textures/technic_constructor_mk2_side1_on.pngBinary files differ index fe02042..fe02042 100644 --- a/textures/technic_constructor_mk2_side1_on.png +++ b/technic/technic/textures/technic_constructor_mk2_side1_on.png diff --git a/textures/technic_constructor_mk2_side2_off.png b/technic/technic/textures/technic_constructor_mk2_side2_off.pngBinary files differ index fd9ad74..fd9ad74 100644 --- a/textures/technic_constructor_mk2_side2_off.png +++ b/technic/technic/textures/technic_constructor_mk2_side2_off.png diff --git a/textures/technic_constructor_mk2_side2_on.png b/technic/technic/textures/technic_constructor_mk2_side2_on.pngBinary files differ index f51411a..f51411a 100644 --- a/textures/technic_constructor_mk2_side2_on.png +++ b/technic/technic/textures/technic_constructor_mk2_side2_on.png diff --git a/textures/technic_constructor_mk2_top_off.png b/technic/technic/textures/technic_constructor_mk2_top_off.pngBinary files differ index e3e3292..e3e3292 100644 --- a/textures/technic_constructor_mk2_top_off.png +++ b/technic/technic/textures/technic_constructor_mk2_top_off.png diff --git a/textures/technic_constructor_mk2_top_on.png b/technic/technic/textures/technic_constructor_mk2_top_on.pngBinary files differ index 83043d4..83043d4 100644 --- a/textures/technic_constructor_mk2_top_on.png +++ b/technic/technic/textures/technic_constructor_mk2_top_on.png diff --git a/textures/technic_constructor_mk3_bottom_off.png b/technic/technic/textures/technic_constructor_mk3_bottom_off.pngBinary files differ index 5f46154..5f46154 100644 --- a/textures/technic_constructor_mk3_bottom_off.png +++ b/technic/technic/textures/technic_constructor_mk3_bottom_off.png diff --git a/textures/technic_constructor_mk3_bottom_on.png b/technic/technic/textures/technic_constructor_mk3_bottom_on.pngBinary files differ index f76f29b..f76f29b 100644 --- a/textures/technic_constructor_mk3_bottom_on.png +++ b/technic/technic/textures/technic_constructor_mk3_bottom_on.png diff --git a/textures/technic_constructor_mk3_side1_off.png b/technic/technic/textures/technic_constructor_mk3_side1_off.pngBinary files differ index 0ea1fc0..0ea1fc0 100644 --- a/textures/technic_constructor_mk3_side1_off.png +++ b/technic/technic/textures/technic_constructor_mk3_side1_off.png diff --git a/textures/technic_constructor_mk3_side1_on.png b/technic/technic/textures/technic_constructor_mk3_side1_on.pngBinary files differ index ba86332..ba86332 100644 --- a/textures/technic_constructor_mk3_side1_on.png +++ b/technic/technic/textures/technic_constructor_mk3_side1_on.png diff --git a/textures/technic_constructor_mk3_side2_off.png b/technic/technic/textures/technic_constructor_mk3_side2_off.pngBinary files differ index 8e8dce4..8e8dce4 100644 --- a/textures/technic_constructor_mk3_side2_off.png +++ b/technic/technic/textures/technic_constructor_mk3_side2_off.png diff --git a/textures/technic_constructor_mk3_side2_on.png b/technic/technic/textures/technic_constructor_mk3_side2_on.pngBinary files differ index 12dff69..12dff69 100644 --- a/textures/technic_constructor_mk3_side2_on.png +++ b/technic/technic/textures/technic_constructor_mk3_side2_on.png diff --git a/textures/technic_constructor_mk3_top_off.png b/technic/technic/textures/technic_constructor_mk3_top_off.pngBinary files differ index 705f255..705f255 100644 --- a/textures/technic_constructor_mk3_top_off.png +++ b/technic/technic/textures/technic_constructor_mk3_top_off.png diff --git a/textures/technic_constructor_mk3_top_on.png b/technic/technic/textures/technic_constructor_mk3_top_on.pngBinary files differ index cef077e..cef077e 100644 --- a/textures/technic_constructor_mk3_top_on.png +++ b/technic/technic/textures/technic_constructor_mk3_top_on.png diff --git a/textures/technic_copper_chest_front.png b/technic/technic/textures/technic_copper_chest_front.pngBinary files differ index 1769435..1769435 100644 --- a/textures/technic_copper_chest_front.png +++ b/technic/technic/textures/technic_copper_chest_front.png diff --git a/textures/technic_copper_chest_locked.png b/technic/technic/textures/technic_copper_chest_locked.pngBinary files differ index 6d059e9..6d059e9 100644 --- a/textures/technic_copper_chest_locked.png +++ b/technic/technic/textures/technic_copper_chest_locked.png diff --git a/textures/technic_copper_chest_side.png b/technic/technic/textures/technic_copper_chest_side.pngBinary files differ index 2c7943f..2c7943f 100644 --- a/textures/technic_copper_chest_side.png +++ b/technic/technic/textures/technic_copper_chest_side.png diff --git a/textures/technic_copper_chest_top.png b/technic/technic/textures/technic_copper_chest_top.pngBinary files differ index 2ab8104..2ab8104 100644 --- a/textures/technic_copper_chest_top.png +++ b/technic/technic/textures/technic_copper_chest_top.png diff --git a/textures/technic_copper_coil.png b/technic/technic/textures/technic_copper_coil.pngBinary files differ index db6db1a..db6db1a 100644 --- a/textures/technic_copper_coil.png +++ b/technic/technic/textures/technic_copper_coil.png diff --git a/textures/technic_copper_dust.png b/technic/technic/textures/technic_copper_dust.pngBinary files differ index 68678ed..68678ed 100644 --- a/textures/technic_copper_dust.png +++ b/technic/technic/textures/technic_copper_dust.png diff --git a/textures/technic_deployer_back.png b/technic/technic/textures/technic_deployer_back.pngBinary files differ index 0bc8df9..0bc8df9 100644 --- a/textures/technic_deployer_back.png +++ b/technic/technic/textures/technic_deployer_back.png diff --git a/textures/technic_deployer_bottom.png b/technic/technic/textures/technic_deployer_bottom.pngBinary files differ index ff1a2c6..ff1a2c6 100644 --- a/textures/technic_deployer_bottom.png +++ b/technic/technic/textures/technic_deployer_bottom.png diff --git a/textures/technic_deployer_front_off.png b/technic/technic/textures/technic_deployer_front_off.pngBinary files differ index d0f6f55..d0f6f55 100644 --- a/textures/technic_deployer_front_off.png +++ b/technic/technic/textures/technic_deployer_front_off.png diff --git a/textures/technic_deployer_front_on.png b/technic/technic/textures/technic_deployer_front_on.pngBinary files differ index 368ce32..368ce32 100644 --- a/textures/technic_deployer_front_on.png +++ b/technic/technic/textures/technic_deployer_front_on.png diff --git a/textures/technic_deployer_side.png b/technic/technic/textures/technic_deployer_side.pngBinary files differ index aefd7c8..aefd7c8 100644 --- a/textures/technic_deployer_side.png +++ b/technic/technic/textures/technic_deployer_side.png diff --git a/textures/technic_deployer_side1.png b/technic/technic/textures/technic_deployer_side1.pngBinary files differ index 8cb8634..8cb8634 100644 --- a/textures/technic_deployer_side1.png +++ b/technic/technic/textures/technic_deployer_side1.png diff --git a/textures/technic_deployer_side2.png b/technic/technic/textures/technic_deployer_side2.pngBinary files differ index c2855d0..c2855d0 100644 --- a/textures/technic_deployer_side2.png +++ b/technic/technic/textures/technic_deployer_side2.png diff --git a/textures/technic_deployer_top.png b/technic/technic/textures/technic_deployer_top.pngBinary files differ index 941d333..941d333 100644 --- a/textures/technic_deployer_top.png +++ b/technic/technic/textures/technic_deployer_top.png diff --git a/textures/technic_diamond.png b/technic/technic/textures/technic_diamond.pngBinary files differ index 23e6126..23e6126 100644 --- a/textures/technic_diamond.png +++ b/technic/technic/textures/technic_diamond.png diff --git a/textures/technic_diamond_block.png b/technic/technic/textures/technic_diamond_block.pngBinary files differ index 347ed78..347ed78 100644 --- a/textures/technic_diamond_block.png +++ b/technic/technic/textures/technic_diamond_block.png diff --git a/textures/technic_diamond_block_blue.png b/technic/technic/textures/technic_diamond_block_blue.pngBinary files differ index d89bd6e..d89bd6e 100644 --- a/textures/technic_diamond_block_blue.png +++ b/technic/technic/textures/technic_diamond_block_blue.png diff --git a/textures/technic_diamond_block_green.png b/technic/technic/textures/technic_diamond_block_green.pngBinary files differ index 996b254..996b254 100644 --- a/textures/technic_diamond_block_green.png +++ b/technic/technic/textures/technic_diamond_block_green.png diff --git a/textures/technic_diamond_block_red.png b/technic/technic/textures/technic_diamond_block_red.pngBinary files differ index 52fd893..52fd893 100644 --- a/textures/technic_diamond_block_red.png +++ b/technic/technic/textures/technic_diamond_block_red.png diff --git a/textures/technic_diamond_drill_head.png b/technic/technic/textures/technic_diamond_drill_head.pngBinary files differ index e3d31e8..e3d31e8 100644 --- a/textures/technic_diamond_drill_head.png +++ b/technic/technic/textures/technic_diamond_drill_head.png diff --git a/textures/technic_doped_silicon_wafer.png b/technic/technic/textures/technic_doped_silicon_wafer.pngBinary files differ index 6ff06a6..6ff06a6 100644 --- a/textures/technic_doped_silicon_wafer.png +++ b/technic/technic/textures/technic_doped_silicon_wafer.png diff --git a/technic/technic/textures/technic_electric_furnace_GUI.png b/technic/technic/textures/technic_electric_furnace_GUI.pngBinary files differ new file mode 100644 index 0000000..320794f --- /dev/null +++ b/technic/technic/textures/technic_electric_furnace_GUI.png diff --git a/technic/technic/textures/technic_electric_furnace_GUI.xcf b/technic/technic/textures/technic_electric_furnace_GUI.xcfBinary files differ new file mode 100644 index 0000000..482eeb4 --- /dev/null +++ b/technic/technic/textures/technic_electric_furnace_GUI.xcf diff --git a/textures/technic_electric_furnace_bottom.png b/technic/technic/textures/technic_electric_furnace_bottom.pngBinary files differ index d16ac47..d16ac47 100644 --- a/textures/technic_electric_furnace_bottom.png +++ b/technic/technic/textures/technic_electric_furnace_bottom.png diff --git a/textures/technic_electric_furnace_front.png b/technic/technic/textures/technic_electric_furnace_front.pngBinary files differ index dfee663..dfee663 100644 --- a/textures/technic_electric_furnace_front.png +++ b/technic/technic/textures/technic_electric_furnace_front.png diff --git a/textures/technic_electric_furnace_front_active.png b/technic/technic/textures/technic_electric_furnace_front_active.pngBinary files differ index 038eec4..038eec4 100644 --- a/textures/technic_electric_furnace_front_active.png +++ b/technic/technic/textures/technic_electric_furnace_front_active.png diff --git a/textures/technic_electric_furnace_side.png b/technic/technic/textures/technic_electric_furnace_side.pngBinary files differ index cf345e7..cf345e7 100644 --- a/textures/technic_electric_furnace_side.png +++ b/technic/technic/textures/technic_electric_furnace_side.png diff --git a/textures/technic_electric_furnace_top.png b/technic/technic/textures/technic_electric_furnace_top.pngBinary files differ index d3309ec..d3309ec 100644 --- a/textures/technic_electric_furnace_top.png +++ b/technic/technic/textures/technic_electric_furnace_top.png diff --git a/textures/technic_fine_copper_wire.png b/technic/technic/textures/technic_fine_copper_wire.pngBinary files differ index 36e2ed6..36e2ed6 100644 --- a/textures/technic_fine_copper_wire.png +++ b/technic/technic/textures/technic_fine_copper_wire.png diff --git a/textures/technic_flashlight.png b/technic/technic/textures/technic_flashlight.pngBinary files differ index 01afdbb..01afdbb 100644 --- a/textures/technic_flashlight.png +++ b/technic/technic/textures/technic_flashlight.png diff --git a/textures/technic_generator_front.png b/technic/technic/textures/technic_generator_front.pngBinary files differ index 2d64844..2d64844 100644 --- a/textures/technic_generator_front.png +++ b/technic/technic/textures/technic_generator_front.png diff --git a/textures/technic_generator_front_active.png b/technic/technic/textures/technic_generator_front_active.pngBinary files differ index 4e57ca0..4e57ca0 100644 --- a/textures/technic_generator_front_active.png +++ b/technic/technic/textures/technic_generator_front_active.png diff --git a/textures/technic_generator_side.png b/technic/technic/textures/technic_generator_side.pngBinary files differ index 5cbcbef..5cbcbef 100644 --- a/textures/technic_generator_side.png +++ b/technic/technic/textures/technic_generator_side.png diff --git a/textures/technic_generator_top.png b/technic/technic/textures/technic_generator_top.pngBinary files differ index e2f3db3..e2f3db3 100644 --- a/textures/technic_generator_top.png +++ b/technic/technic/textures/technic_generator_top.png diff --git a/textures/technic_geothermal_side.png b/technic/technic/textures/technic_geothermal_side.pngBinary files differ index 90fb430..90fb430 100644 --- a/textures/technic_geothermal_side.png +++ b/technic/technic/textures/technic_geothermal_side.png diff --git a/textures/technic_geothermal_top.png b/technic/technic/textures/technic_geothermal_top.pngBinary files differ index 601ff15..601ff15 100644 --- a/textures/technic_geothermal_top.png +++ b/technic/technic/textures/technic_geothermal_top.png diff --git a/textures/technic_geothermal_top_active.png b/technic/technic/textures/technic_geothermal_top_active.pngBinary files differ index f02bec6..f02bec6 100644 --- a/textures/technic_geothermal_top_active.png +++ b/technic/technic/textures/technic_geothermal_top_active.png diff --git a/textures/technic_gold_chest_front.png b/technic/technic/textures/technic_gold_chest_front.pngBinary files differ index 9bc9615..9bc9615 100644 --- a/textures/technic_gold_chest_front.png +++ b/technic/technic/textures/technic_gold_chest_front.png diff --git a/textures/technic_gold_chest_front_black.png b/technic/technic/textures/technic_gold_chest_front_black.pngBinary files differ index 6d0fe5e..6d0fe5e 100644 --- a/textures/technic_gold_chest_front_black.png +++ b/technic/technic/textures/technic_gold_chest_front_black.png diff --git a/textures/technic_gold_chest_front_blue.png b/technic/technic/textures/technic_gold_chest_front_blue.pngBinary files differ index 7efe651..7efe651 100644 --- a/textures/technic_gold_chest_front_blue.png +++ b/technic/technic/textures/technic_gold_chest_front_blue.png diff --git a/textures/technic_gold_chest_front_brown.png b/technic/technic/textures/technic_gold_chest_front_brown.pngBinary files differ index 4f4f34e..4f4f34e 100644 --- a/textures/technic_gold_chest_front_brown.png +++ b/technic/technic/textures/technic_gold_chest_front_brown.png diff --git a/textures/technic_gold_chest_front_cyan.png b/technic/technic/textures/technic_gold_chest_front_cyan.pngBinary files differ index e33d76d..e33d76d 100644 --- a/textures/technic_gold_chest_front_cyan.png +++ b/technic/technic/textures/technic_gold_chest_front_cyan.png diff --git a/textures/technic_gold_chest_front_dark_green.png b/technic/technic/textures/technic_gold_chest_front_dark_green.pngBinary files differ index 3088bbf..3088bbf 100644 --- a/textures/technic_gold_chest_front_dark_green.png +++ b/technic/technic/textures/technic_gold_chest_front_dark_green.png diff --git a/textures/technic_gold_chest_front_dark_grey.png b/technic/technic/textures/technic_gold_chest_front_dark_grey.pngBinary files differ index 0aa03b4..0aa03b4 100644 --- a/textures/technic_gold_chest_front_dark_grey.png +++ b/technic/technic/textures/technic_gold_chest_front_dark_grey.png diff --git a/textures/technic_gold_chest_front_green.png b/technic/technic/textures/technic_gold_chest_front_green.pngBinary files differ index 30da993..30da993 100644 --- a/textures/technic_gold_chest_front_green.png +++ b/technic/technic/textures/technic_gold_chest_front_green.png diff --git a/textures/technic_gold_chest_front_grey.png b/technic/technic/textures/technic_gold_chest_front_grey.pngBinary files differ index eae7e69..eae7e69 100644 --- a/textures/technic_gold_chest_front_grey.png +++ b/technic/technic/textures/technic_gold_chest_front_grey.png diff --git a/textures/technic_gold_chest_front_magenta.png b/technic/technic/textures/technic_gold_chest_front_magenta.pngBinary files differ index 6daed3b..6daed3b 100644 --- a/textures/technic_gold_chest_front_magenta.png +++ b/technic/technic/textures/technic_gold_chest_front_magenta.png diff --git a/textures/technic_gold_chest_front_orange.png b/technic/technic/textures/technic_gold_chest_front_orange.pngBinary files differ index 085c102..085c102 100644 --- a/textures/technic_gold_chest_front_orange.png +++ b/technic/technic/textures/technic_gold_chest_front_orange.png diff --git a/textures/technic_gold_chest_front_pink.png b/technic/technic/textures/technic_gold_chest_front_pink.pngBinary files differ index eada4da..eada4da 100644 --- a/textures/technic_gold_chest_front_pink.png +++ b/technic/technic/textures/technic_gold_chest_front_pink.png diff --git a/textures/technic_gold_chest_front_red.png b/technic/technic/textures/technic_gold_chest_front_red.pngBinary files differ index b67da7b..b67da7b 100644 --- a/textures/technic_gold_chest_front_red.png +++ b/technic/technic/textures/technic_gold_chest_front_red.png diff --git a/textures/technic_gold_chest_front_violet.png b/technic/technic/textures/technic_gold_chest_front_violet.pngBinary files differ index b62011c..b62011c 100644 --- a/textures/technic_gold_chest_front_violet.png +++ b/technic/technic/textures/technic_gold_chest_front_violet.png diff --git a/textures/technic_gold_chest_front_white.png b/technic/technic/textures/technic_gold_chest_front_white.pngBinary files differ index 76b5ebf..76b5ebf 100644 --- a/textures/technic_gold_chest_front_white.png +++ b/technic/technic/textures/technic_gold_chest_front_white.png diff --git a/textures/technic_gold_chest_front_yellow.png b/technic/technic/textures/technic_gold_chest_front_yellow.pngBinary files differ index b0ab9f4..b0ab9f4 100644 --- a/textures/technic_gold_chest_front_yellow.png +++ b/technic/technic/textures/technic_gold_chest_front_yellow.png diff --git a/textures/technic_gold_chest_locked.png b/technic/technic/textures/technic_gold_chest_locked.pngBinary files differ index 91a8b73..91a8b73 100644 --- a/textures/technic_gold_chest_locked.png +++ b/technic/technic/textures/technic_gold_chest_locked.png diff --git a/textures/technic_gold_chest_locked_black.png b/technic/technic/textures/technic_gold_chest_locked_black.pngBinary files differ index 5a5a568..5a5a568 100644 --- a/textures/technic_gold_chest_locked_black.png +++ b/technic/technic/textures/technic_gold_chest_locked_black.png diff --git a/textures/technic_gold_chest_locked_blue.png b/technic/technic/textures/technic_gold_chest_locked_blue.pngBinary files differ index f369ebd..f369ebd 100644 --- a/textures/technic_gold_chest_locked_blue.png +++ b/technic/technic/textures/technic_gold_chest_locked_blue.png diff --git a/textures/technic_gold_chest_locked_brown.png b/technic/technic/textures/technic_gold_chest_locked_brown.pngBinary files differ index a44a273..a44a273 100644 --- a/textures/technic_gold_chest_locked_brown.png +++ b/technic/technic/textures/technic_gold_chest_locked_brown.png diff --git a/textures/technic_gold_chest_locked_cyan.png b/technic/technic/textures/technic_gold_chest_locked_cyan.pngBinary files differ index f3ce7b6..f3ce7b6 100644 --- a/textures/technic_gold_chest_locked_cyan.png +++ b/technic/technic/textures/technic_gold_chest_locked_cyan.png diff --git a/textures/technic_gold_chest_locked_dark_green.png b/technic/technic/textures/technic_gold_chest_locked_dark_green.pngBinary files differ index 084dae5..084dae5 100644 --- a/textures/technic_gold_chest_locked_dark_green.png +++ b/technic/technic/textures/technic_gold_chest_locked_dark_green.png diff --git a/textures/technic_gold_chest_locked_dark_grey.png b/technic/technic/textures/technic_gold_chest_locked_dark_grey.pngBinary files differ index 629e33c..629e33c 100644 --- a/textures/technic_gold_chest_locked_dark_grey.png +++ b/technic/technic/textures/technic_gold_chest_locked_dark_grey.png diff --git a/textures/technic_gold_chest_locked_green.png b/technic/technic/textures/technic_gold_chest_locked_green.pngBinary files differ index 9ea1818..9ea1818 100644 --- a/textures/technic_gold_chest_locked_green.png +++ b/technic/technic/textures/technic_gold_chest_locked_green.png diff --git a/textures/technic_gold_chest_locked_grey.png b/technic/technic/textures/technic_gold_chest_locked_grey.pngBinary files differ index c936d7c..c936d7c 100644 --- a/textures/technic_gold_chest_locked_grey.png +++ b/technic/technic/textures/technic_gold_chest_locked_grey.png diff --git a/textures/technic_gold_chest_locked_magenta.png b/technic/technic/textures/technic_gold_chest_locked_magenta.pngBinary files differ index 4c97fa8..4c97fa8 100644 --- a/textures/technic_gold_chest_locked_magenta.png +++ b/technic/technic/textures/technic_gold_chest_locked_magenta.png diff --git a/textures/technic_gold_chest_locked_orange.png b/technic/technic/textures/technic_gold_chest_locked_orange.pngBinary files differ index f6d5e90..f6d5e90 100644 --- a/textures/technic_gold_chest_locked_orange.png +++ b/technic/technic/textures/technic_gold_chest_locked_orange.png diff --git a/textures/technic_gold_chest_locked_pink.png b/technic/technic/textures/technic_gold_chest_locked_pink.pngBinary files differ index 4248c21..4248c21 100644 --- a/textures/technic_gold_chest_locked_pink.png +++ b/technic/technic/textures/technic_gold_chest_locked_pink.png diff --git a/textures/technic_gold_chest_locked_red.png b/technic/technic/textures/technic_gold_chest_locked_red.pngBinary files differ index 4bfe5d4..4bfe5d4 100644 --- a/textures/technic_gold_chest_locked_red.png +++ b/technic/technic/textures/technic_gold_chest_locked_red.png diff --git a/textures/technic_gold_chest_locked_violet.png b/technic/technic/textures/technic_gold_chest_locked_violet.pngBinary files differ index c9abe73..c9abe73 100644 --- a/textures/technic_gold_chest_locked_violet.png +++ b/technic/technic/textures/technic_gold_chest_locked_violet.png diff --git a/textures/technic_gold_chest_locked_white.png b/technic/technic/textures/technic_gold_chest_locked_white.pngBinary files differ index 810abb9..810abb9 100644 --- a/textures/technic_gold_chest_locked_white.png +++ b/technic/technic/textures/technic_gold_chest_locked_white.png diff --git a/textures/technic_gold_chest_locked_yellow.png b/technic/technic/textures/technic_gold_chest_locked_yellow.pngBinary files differ index 2856165..2856165 100644 --- a/textures/technic_gold_chest_locked_yellow.png +++ b/technic/technic/textures/technic_gold_chest_locked_yellow.png diff --git a/textures/technic_gold_chest_side.png b/technic/technic/textures/technic_gold_chest_side.pngBinary files differ index 5d5ad0f..5d5ad0f 100644 --- a/textures/technic_gold_chest_side.png +++ b/technic/technic/textures/technic_gold_chest_side.png diff --git a/textures/technic_gold_chest_top.png b/technic/technic/textures/technic_gold_chest_top.pngBinary files differ index f9c8fec..f9c8fec 100644 --- a/textures/technic_gold_chest_top.png +++ b/technic/technic/textures/technic_gold_chest_top.png diff --git a/textures/technic_gold_dust.png b/technic/technic/textures/technic_gold_dust.pngBinary files differ index e545bb6..e545bb6 100644 --- a/textures/technic_gold_dust.png +++ b/technic/technic/textures/technic_gold_dust.png diff --git a/textures/technic_granite.png b/technic/technic/textures/technic_granite.pngBinary files differ index abb1385..abb1385 100644 --- a/textures/technic_granite.png +++ b/technic/technic/textures/technic_granite.png diff --git a/textures/technic_grinder_front.png b/technic/technic/textures/technic_grinder_front.pngBinary files differ index a28dbc1..a28dbc1 100644 --- a/textures/technic_grinder_front.png +++ b/technic/technic/textures/technic_grinder_front.png diff --git a/textures/technic_grinder_side.png b/technic/technic/textures/technic_grinder_side.pngBinary files differ index af562f2..af562f2 100644 --- a/textures/technic_grinder_side.png +++ b/technic/technic/textures/technic_grinder_side.png diff --git a/textures/technic_grinder_top.png b/technic/technic/textures/technic_grinder_top.pngBinary files differ index b074e13..b074e13 100644 --- a/textures/technic_grinder_top.png +++ b/technic/technic/textures/technic_grinder_top.png diff --git a/textures/technic_iron_chest_front.png b/technic/technic/textures/technic_iron_chest_front.pngBinary files differ index 79d5b49..79d5b49 100644 --- a/textures/technic_iron_chest_front.png +++ b/technic/technic/textures/technic_iron_chest_front.png diff --git a/textures/technic_iron_chest_locked.png b/technic/technic/textures/technic_iron_chest_locked.pngBinary files differ index 6229487..6229487 100644 --- a/textures/technic_iron_chest_locked.png +++ b/technic/technic/textures/technic_iron_chest_locked.png diff --git a/textures/technic_iron_chest_side.png b/technic/technic/textures/technic_iron_chest_side.pngBinary files differ index e12daa5..e12daa5 100644 --- a/textures/technic_iron_chest_side.png +++ b/technic/technic/textures/technic_iron_chest_side.png diff --git a/textures/technic_iron_chest_top.png b/technic/technic/textures/technic_iron_chest_top.pngBinary files differ index da1ab7b..da1ab7b 100644 --- a/textures/technic_iron_chest_top.png +++ b/technic/technic/textures/technic_iron_chest_top.png diff --git a/textures/technic_iron_dust.png b/technic/technic/textures/technic_iron_dust.pngBinary files differ index aaecd2b..aaecd2b 100644 --- a/textures/technic_iron_dust.png +++ b/technic/technic/textures/technic_iron_dust.png diff --git a/textures/technic_laser_beam.png b/technic/technic/textures/technic_laser_beam.pngBinary files differ index 4814a9b..4814a9b 100644 --- a/textures/technic_laser_beam.png +++ b/technic/technic/textures/technic_laser_beam.png diff --git a/textures/technic_lava_can.png b/technic/technic/textures/technic_lava_can.pngBinary files differ index 80d15a6..80d15a6 100644 --- a/textures/technic_lava_can.png +++ b/technic/technic/textures/technic_lava_can.png diff --git a/textures/technic_light.png b/technic/technic/textures/technic_light.pngBinary files differ index 334cb07..334cb07 100644 --- a/textures/technic_light.png +++ b/technic/technic/textures/technic_light.png diff --git a/textures/technic_lv_cable.png b/technic/technic/textures/technic_lv_cable.pngBinary files differ index 87076c9..87076c9 100644 --- a/textures/technic_lv_cable.png +++ b/technic/technic/textures/technic_lv_cable.png diff --git a/textures/technic_lv_cable_wield.png b/technic/technic/textures/technic_lv_cable_wield.pngBinary files differ index c4ada04..c4ada04 100644 --- a/textures/technic_lv_cable_wield.png +++ b/technic/technic/textures/technic_lv_cable_wield.png diff --git a/textures/technic_machine_bottom.png b/technic/technic/textures/technic_machine_bottom.pngBinary files differ index 48a47b0..48a47b0 100644 --- a/textures/technic_machine_bottom.png +++ b/technic/technic/textures/technic_machine_bottom.png diff --git a/textures/technic_marble.png b/technic/technic/textures/technic_marble.pngBinary files differ index 846a170..846a170 100644 --- a/textures/technic_marble.png +++ b/technic/technic/textures/technic_marble.png diff --git a/textures/technic_marble_bricks.png b/technic/technic/textures/technic_marble_bricks.pngBinary files differ index 2ea1e42..2ea1e42 100644 --- a/textures/technic_marble_bricks.png +++ b/technic/technic/textures/technic_marble_bricks.png diff --git a/textures/technic_menu_bg.png b/technic/technic/textures/technic_menu_bg.pngBinary files differ index 18e6a56..18e6a56 100644 --- a/textures/technic_menu_bg.png +++ b/technic/technic/textures/technic_menu_bg.png diff --git a/textures/technic_mineral_chromium.png b/technic/technic/textures/technic_mineral_chromium.pngBinary files differ index c66f1c5..c66f1c5 100644 --- a/textures/technic_mineral_chromium.png +++ b/technic/technic/textures/technic_mineral_chromium.png diff --git a/textures/technic_mineral_diamond.png b/technic/technic/textures/technic_mineral_diamond.pngBinary files differ index 2d91505..2d91505 100644 --- a/textures/technic_mineral_diamond.png +++ b/technic/technic/textures/technic_mineral_diamond.png diff --git a/textures/technic_mineral_uranium.png b/technic/technic/textures/technic_mineral_uranium.pngBinary files differ index aad9c07..aad9c07 100644 --- a/textures/technic_mineral_uranium.png +++ b/technic/technic/textures/technic_mineral_uranium.png diff --git a/textures/technic_mineral_zinc.png b/technic/technic/textures/technic_mineral_zinc.pngBinary files differ index 598efeb..598efeb 100644 --- a/textures/technic_mineral_zinc.png +++ b/technic/technic/textures/technic_mineral_zinc.png diff --git a/textures/technic_mining_drill.png b/technic/technic/textures/technic_mining_drill.pngBinary files differ index 171888d..171888d 100644 --- a/textures/technic_mining_drill.png +++ b/technic/technic/textures/technic_mining_drill.png diff --git a/textures/technic_mining_laser_mk1.png b/technic/technic/textures/technic_mining_laser_mk1.pngBinary files differ index acde392..acde392 100644 --- a/textures/technic_mining_laser_mk1.png +++ b/technic/technic/textures/technic_mining_laser_mk1.png diff --git a/textures/technic_mithril_chest_front.png b/technic/technic/textures/technic_mithril_chest_front.pngBinary files differ index 9f7ca7e..9f7ca7e 100644 --- a/textures/technic_mithril_chest_front.png +++ b/technic/technic/textures/technic_mithril_chest_front.png diff --git a/textures/technic_mithril_chest_locked.png b/technic/technic/textures/technic_mithril_chest_locked.pngBinary files differ index abff384..abff384 100644 --- a/textures/technic_mithril_chest_locked.png +++ b/technic/technic/textures/technic_mithril_chest_locked.png diff --git a/textures/technic_mithril_chest_side.png b/technic/technic/textures/technic_mithril_chest_side.pngBinary files differ index 0763511..0763511 100644 --- a/textures/technic_mithril_chest_side.png +++ b/technic/technic/textures/technic_mithril_chest_side.png diff --git a/textures/technic_mithril_chest_top.png b/technic/technic/textures/technic_mithril_chest_top.pngBinary files differ index 2429576..2429576 100644 --- a/textures/technic_mithril_chest_top.png +++ b/technic/technic/textures/technic_mithril_chest_top.png diff --git a/textures/technic_mithril_dust.png b/technic/technic/textures/technic_mithril_dust.pngBinary files differ index 988e449..988e449 100644 --- a/textures/technic_mithril_dust.png +++ b/technic/technic/textures/technic_mithril_dust.png diff --git a/textures/technic_motor.png b/technic/technic/textures/technic_motor.pngBinary files differ index 77d4b91..77d4b91 100644 --- a/textures/technic_motor.png +++ b/technic/technic/textures/technic_motor.png diff --git a/textures/technic_music_player_bottom.png b/technic/technic/textures/technic_music_player_bottom.pngBinary files differ index bd8fd55..bd8fd55 100644 --- a/textures/technic_music_player_bottom.png +++ b/technic/technic/textures/technic_music_player_bottom.png diff --git a/textures/technic_music_player_side.png b/technic/technic/textures/technic_music_player_side.pngBinary files differ index 6c34fea..6c34fea 100644 --- a/textures/technic_music_player_side.png +++ b/technic/technic/textures/technic_music_player_side.png diff --git a/textures/technic_music_player_top.png b/technic/technic/textures/technic_music_player_top.pngBinary files differ index 0d34563..0d34563 100644 --- a/textures/technic_music_player_top.png +++ b/technic/technic/textures/technic_music_player_top.png diff --git a/textures/technic_mv_battery_box_bottom.png b/technic/technic/textures/technic_mv_battery_box_bottom.pngBinary files differ index 2a9b292..2a9b292 100644 --- a/textures/technic_mv_battery_box_bottom.png +++ b/technic/technic/textures/technic_mv_battery_box_bottom.png diff --git a/textures/technic_mv_battery_box_side0.png b/technic/technic/textures/technic_mv_battery_box_side0.pngBinary files differ index 39d8986..39d8986 100644 --- a/textures/technic_mv_battery_box_side0.png +++ b/technic/technic/textures/technic_mv_battery_box_side0.png diff --git a/textures/technic_mv_battery_box_top.png b/technic/technic/textures/technic_mv_battery_box_top.pngBinary files differ index f7f1ea9..f7f1ea9 100644 --- a/textures/technic_mv_battery_box_top.png +++ b/technic/technic/textures/technic_mv_battery_box_top.png diff --git a/textures/technic_mv_cable.png b/technic/technic/textures/technic_mv_cable.pngBinary files differ index 2819d2b..2819d2b 100644 --- a/textures/technic_mv_cable.png +++ b/technic/technic/textures/technic_mv_cable.png diff --git a/textures/technic_mv_cable_wield.png b/technic/technic/textures/technic_mv_cable_wield.pngBinary files differ index aca9fd4..aca9fd4 100644 --- a/textures/technic_mv_cable_wield.png +++ b/technic/technic/textures/technic_mv_cable_wield.png diff --git a/textures/technic_mv_solar_panel_bottom.png b/technic/technic/textures/technic_mv_solar_panel_bottom.pngBinary files differ index 94c8222..94c8222 100644 --- a/textures/technic_mv_solar_panel_bottom.png +++ b/technic/technic/textures/technic_mv_solar_panel_bottom.png diff --git a/textures/technic_mv_solar_panel_side.png b/technic/technic/textures/technic_mv_solar_panel_side.pngBinary files differ index d39d3d8..d39d3d8 100644 --- a/textures/technic_mv_solar_panel_side.png +++ b/technic/technic/textures/technic_mv_solar_panel_side.png diff --git a/textures/technic_mv_solar_panel_top.png b/technic/technic/textures/technic_mv_solar_panel_top.pngBinary files differ index 3d8c7ab..3d8c7ab 100644 --- a/textures/technic_mv_solar_panel_top.png +++ b/technic/technic/textures/technic_mv_solar_panel_top.png diff --git a/textures/technic_mv_transformer.png b/technic/technic/textures/technic_mv_transformer.pngBinary files differ index 7c4688e..7c4688e 100644 --- a/textures/technic_mv_transformer.png +++ b/technic/technic/textures/technic_mv_transformer.png diff --git a/textures/technic_nodebreaker_back.png b/technic/technic/textures/technic_nodebreaker_back.pngBinary files differ index b669ef6..b669ef6 100644 --- a/textures/technic_nodebreaker_back.png +++ b/technic/technic/textures/technic_nodebreaker_back.png diff --git a/textures/technic_nodebreaker_bottom.png b/technic/technic/textures/technic_nodebreaker_bottom.pngBinary files differ index ff1a2c6..ff1a2c6 100644 --- a/textures/technic_nodebreaker_bottom.png +++ b/technic/technic/textures/technic_nodebreaker_bottom.png diff --git a/textures/technic_nodebreaker_bottom_off.png b/technic/technic/textures/technic_nodebreaker_bottom_off.pngBinary files differ index 410617a..410617a 100644 --- a/textures/technic_nodebreaker_bottom_off.png +++ b/technic/technic/textures/technic_nodebreaker_bottom_off.png diff --git a/textures/technic_nodebreaker_bottom_on.png b/technic/technic/textures/technic_nodebreaker_bottom_on.pngBinary files differ index d6da4d8..d6da4d8 100644 --- a/textures/technic_nodebreaker_bottom_on.png +++ b/technic/technic/textures/technic_nodebreaker_bottom_on.png diff --git a/textures/technic_nodebreaker_front_off.png b/technic/technic/textures/technic_nodebreaker_front_off.pngBinary files differ index 5a25b4c..5a25b4c 100644 --- a/textures/technic_nodebreaker_front_off.png +++ b/technic/technic/textures/technic_nodebreaker_front_off.png diff --git a/textures/technic_nodebreaker_front_on.png b/technic/technic/textures/technic_nodebreaker_front_on.pngBinary files differ index 97d22c3..97d22c3 100644 --- a/textures/technic_nodebreaker_front_on.png +++ b/technic/technic/textures/technic_nodebreaker_front_on.png diff --git a/textures/technic_nodebreaker_side.png b/technic/technic/textures/technic_nodebreaker_side.pngBinary files differ index aefd7c8..aefd7c8 100644 --- a/textures/technic_nodebreaker_side.png +++ b/technic/technic/textures/technic_nodebreaker_side.png diff --git a/textures/technic_nodebreaker_side1.png b/technic/technic/textures/technic_nodebreaker_side1.pngBinary files differ index 8cb8634..8cb8634 100644 --- a/textures/technic_nodebreaker_side1.png +++ b/technic/technic/textures/technic_nodebreaker_side1.png diff --git a/textures/technic_nodebreaker_side1_off.png b/technic/technic/textures/technic_nodebreaker_side1_off.pngBinary files differ index 5e36d3a..5e36d3a 100644 --- a/textures/technic_nodebreaker_side1_off.png +++ b/technic/technic/textures/technic_nodebreaker_side1_off.png diff --git a/textures/technic_nodebreaker_side1_on.png b/technic/technic/textures/technic_nodebreaker_side1_on.pngBinary files differ index c76ccff..c76ccff 100644 --- a/textures/technic_nodebreaker_side1_on.png +++ b/technic/technic/textures/technic_nodebreaker_side1_on.png diff --git a/textures/technic_nodebreaker_side2.png b/technic/technic/textures/technic_nodebreaker_side2.pngBinary files differ index c2855d0..c2855d0 100644 --- a/textures/technic_nodebreaker_side2.png +++ b/technic/technic/textures/technic_nodebreaker_side2.png diff --git a/textures/technic_nodebreaker_side2_off.png b/technic/technic/textures/technic_nodebreaker_side2_off.pngBinary files differ index 622ff7c..622ff7c 100644 --- a/textures/technic_nodebreaker_side2_off.png +++ b/technic/technic/textures/technic_nodebreaker_side2_off.png diff --git a/textures/technic_nodebreaker_side2_on.png b/technic/technic/textures/technic_nodebreaker_side2_on.pngBinary files differ index c54e467..c54e467 100644 --- a/textures/technic_nodebreaker_side2_on.png +++ b/technic/technic/textures/technic_nodebreaker_side2_on.png diff --git a/textures/technic_nodebreaker_top.png b/technic/technic/textures/technic_nodebreaker_top.pngBinary files differ index 941d333..941d333 100644 --- a/textures/technic_nodebreaker_top.png +++ b/technic/technic/textures/technic_nodebreaker_top.png diff --git a/textures/technic_nodebreaker_top_off.png b/technic/technic/textures/technic_nodebreaker_top_off.pngBinary files differ index 1f9b361..1f9b361 100644 --- a/textures/technic_nodebreaker_top_off.png +++ b/technic/technic/textures/technic_nodebreaker_top_off.png diff --git a/textures/technic_nodebreaker_top_on.png b/technic/technic/textures/technic_nodebreaker_top_on.pngBinary files differ index d02ed10..d02ed10 100644 --- a/textures/technic_nodebreaker_top_on.png +++ b/technic/technic/textures/technic_nodebreaker_top_on.png diff --git a/textures/technic_power_meter.png b/technic/technic/textures/technic_power_meter.pngBinary files differ index f1e5120..f1e5120 100644 --- a/textures/technic_power_meter.png +++ b/technic/technic/textures/technic_power_meter.png diff --git a/textures/technic_power_meter1.png b/technic/technic/textures/technic_power_meter1.pngBinary files differ index 0542c7b..0542c7b 100644 --- a/textures/technic_power_meter1.png +++ b/technic/technic/textures/technic_power_meter1.png diff --git a/textures/technic_power_meter2.png b/technic/technic/textures/technic_power_meter2.pngBinary files differ index bf5703c..bf5703c 100644 --- a/textures/technic_power_meter2.png +++ b/technic/technic/textures/technic_power_meter2.png diff --git a/textures/technic_power_meter3.png b/technic/technic/textures/technic_power_meter3.pngBinary files differ index 4204815..4204815 100644 --- a/textures/technic_power_meter3.png +++ b/technic/technic/textures/technic_power_meter3.png diff --git a/textures/technic_power_meter4.png b/technic/technic/textures/technic_power_meter4.pngBinary files differ index 82a0148..82a0148 100644 --- a/textures/technic_power_meter4.png +++ b/technic/technic/textures/technic_power_meter4.png diff --git a/textures/technic_power_meter5.png b/technic/technic/textures/technic_power_meter5.pngBinary files differ index af783ca..af783ca 100644 --- a/textures/technic_power_meter5.png +++ b/technic/technic/textures/technic_power_meter5.png diff --git a/textures/technic_power_meter6.png b/technic/technic/textures/technic_power_meter6.pngBinary files differ index 44feff4..44feff4 100644 --- a/textures/technic_power_meter6.png +++ b/technic/technic/textures/technic_power_meter6.png diff --git a/textures/technic_power_meter7.png b/technic/technic/textures/technic_power_meter7.pngBinary files differ index 554baa2..554baa2 100644 --- a/textures/technic_power_meter7.png +++ b/technic/technic/textures/technic_power_meter7.png diff --git a/textures/technic_power_meter8.png b/technic/technic/textures/technic_power_meter8.pngBinary files differ index 8c4f4a8..8c4f4a8 100644 --- a/textures/technic_power_meter8.png +++ b/technic/technic/textures/technic_power_meter8.png diff --git a/textures/technic_power_meter_bg.png b/technic/technic/textures/technic_power_meter_bg.pngBinary files differ index 9667cda..9667cda 100644 --- a/textures/technic_power_meter_bg.png +++ b/technic/technic/textures/technic_power_meter_bg.png diff --git a/textures/technic_power_meter_fg.png b/technic/technic/textures/technic_power_meter_fg.pngBinary files differ index 7f2dde8..7f2dde8 100644 --- a/textures/technic_power_meter_fg.png +++ b/technic/technic/textures/technic_power_meter_fg.png diff --git a/textures/technic_raw_latex.png b/technic/technic/textures/technic_raw_latex.pngBinary files differ index 7fbbe64..7fbbe64 100644 --- a/textures/technic_raw_latex.png +++ b/technic/technic/textures/technic_raw_latex.png diff --git a/textures/technic_rebar.png b/technic/technic/textures/technic_rebar.pngBinary files differ index 16d1fc5..16d1fc5 100644 --- a/textures/technic_rebar.png +++ b/technic/technic/textures/technic_rebar.png diff --git a/textures/technic_rubber.png b/technic/technic/textures/technic_rubber.pngBinary files differ index 9ed4a9d..9ed4a9d 100644 --- a/textures/technic_rubber.png +++ b/technic/technic/textures/technic_rubber.png diff --git a/textures/technic_rubber_sapling.png b/technic/technic/textures/technic_rubber_sapling.pngBinary files differ index e5c9f5d..e5c9f5d 100644 --- a/textures/technic_rubber_sapling.png +++ b/technic/technic/textures/technic_rubber_sapling.png diff --git a/textures/technic_rubber_tree_empty.png b/technic/technic/textures/technic_rubber_tree_empty.pngBinary files differ index 1792951..1792951 100644 --- a/textures/technic_rubber_tree_empty.png +++ b/technic/technic/textures/technic_rubber_tree_empty.png diff --git a/textures/technic_rubber_tree_full.png b/technic/technic/textures/technic_rubber_tree_full.pngBinary files differ index 08067ef..08067ef 100644 --- a/textures/technic_rubber_tree_full.png +++ b/technic/technic/textures/technic_rubber_tree_full.png diff --git a/textures/technic_screwdriver.png b/technic/technic/textures/technic_screwdriver.pngBinary files differ index bd2da22..bd2da22 100644 --- a/textures/technic_screwdriver.png +++ b/technic/technic/textures/technic_screwdriver.png diff --git a/textures/technic_silicon_wafer.png b/technic/technic/textures/technic_silicon_wafer.pngBinary files differ index 78aef20..78aef20 100644 --- a/textures/technic_silicon_wafer.png +++ b/technic/technic/textures/technic_silicon_wafer.png diff --git a/textures/technic_silver_chest_front.png b/technic/technic/textures/technic_silver_chest_front.pngBinary files differ index fe5ce2c..fe5ce2c 100644 --- a/textures/technic_silver_chest_front.png +++ b/technic/technic/textures/technic_silver_chest_front.png diff --git a/textures/technic_silver_chest_locked.png b/technic/technic/textures/technic_silver_chest_locked.pngBinary files differ index 0f8b1f0..0f8b1f0 100644 --- a/textures/technic_silver_chest_locked.png +++ b/technic/technic/textures/technic_silver_chest_locked.png diff --git a/textures/technic_silver_chest_side.png b/technic/technic/textures/technic_silver_chest_side.pngBinary files differ index 3a2ed4a..3a2ed4a 100644 --- a/textures/technic_silver_chest_side.png +++ b/technic/technic/textures/technic_silver_chest_side.png diff --git a/textures/technic_silver_chest_top.png b/technic/technic/textures/technic_silver_chest_top.pngBinary files differ index 353a11c..353a11c 100644 --- a/textures/technic_silver_chest_top.png +++ b/technic/technic/textures/technic_silver_chest_top.png diff --git a/textures/technic_silver_dust.png b/technic/technic/textures/technic_silver_dust.pngBinary files differ index 9092c90..9092c90 100644 --- a/textures/technic_silver_dust.png +++ b/technic/technic/textures/technic_silver_dust.png diff --git a/textures/technic_solar_panel_bottom.png b/technic/technic/textures/technic_solar_panel_bottom.pngBinary files differ index b0ad82f..b0ad82f 100644 --- a/textures/technic_solar_panel_bottom.png +++ b/technic/technic/textures/technic_solar_panel_bottom.png diff --git a/textures/technic_solar_panel_side.png b/technic/technic/textures/technic_solar_panel_side.pngBinary files differ index b22447e..b22447e 100644 --- a/textures/technic_solar_panel_side.png +++ b/technic/technic/textures/technic_solar_panel_side.png diff --git a/textures/technic_solar_panel_top.png b/technic/technic/textures/technic_solar_panel_top.pngBinary files differ index 492764b..492764b 100644 --- a/textures/technic_solar_panel_top.png +++ b/technic/technic/textures/technic_solar_panel_top.png diff --git a/textures/technic_sonic_screwdriver.png b/technic/technic/textures/technic_sonic_screwdriver.pngBinary files differ index fb61d96..fb61d96 100644 --- a/textures/technic_sonic_screwdriver.png +++ b/technic/technic/textures/technic_sonic_screwdriver.png diff --git a/textures/technic_stainless_steel_dust.png b/technic/technic/textures/technic_stainless_steel_dust.pngBinary files differ index 450e2bb..450e2bb 100644 --- a/textures/technic_stainless_steel_dust.png +++ b/technic/technic/textures/technic_stainless_steel_dust.png diff --git a/textures/technic_stainless_steel_ingot.png b/technic/technic/textures/technic_stainless_steel_ingot.pngBinary files differ index 46fa296..46fa296 100644 --- a/textures/technic_stainless_steel_ingot.png +++ b/technic/technic/textures/technic_stainless_steel_ingot.png diff --git a/textures/technic_tin_dust.png b/technic/technic/textures/technic_tin_dust.pngBinary files differ index 4e94e00..4e94e00 100644 --- a/textures/technic_tin_dust.png +++ b/technic/technic/textures/technic_tin_dust.png diff --git a/textures/technic_tree_tap.png b/technic/technic/textures/technic_tree_tap.pngBinary files differ index 542f30f..542f30f 100644 --- a/textures/technic_tree_tap.png +++ b/technic/technic/textures/technic_tree_tap.png diff --git a/textures/technic_uranium.png b/technic/technic/textures/technic_uranium.pngBinary files differ index 54225f8..54225f8 100644 --- a/textures/technic_uranium.png +++ b/technic/technic/textures/technic_uranium.png diff --git a/textures/technic_water_can.png b/technic/technic/textures/technic_water_can.pngBinary files differ index 18e0225..18e0225 100644 --- a/textures/technic_water_can.png +++ b/technic/technic/textures/technic_water_can.png diff --git a/textures/technic_water_mill_side.png b/technic/technic/textures/technic_water_mill_side.pngBinary files differ index f4bdb16..f4bdb16 100644 --- a/textures/technic_water_mill_side.png +++ b/technic/technic/textures/technic_water_mill_side.png diff --git a/textures/technic_water_mill_top.png b/technic/technic/textures/technic_water_mill_top.pngBinary files differ index 601ff15..601ff15 100644 --- a/textures/technic_water_mill_top.png +++ b/technic/technic/textures/technic_water_mill_top.png diff --git a/textures/technic_water_mill_top_active.png b/technic/technic/textures/technic_water_mill_top_active.pngBinary files differ index f02bec6..f02bec6 100644 --- a/textures/technic_water_mill_top_active.png +++ b/technic/technic/textures/technic_water_mill_top_active.png diff --git a/textures/technic_workshop_bottom.png b/technic/technic/textures/technic_workshop_bottom.pngBinary files differ index bd8fd55..bd8fd55 100644 --- a/textures/technic_workshop_bottom.png +++ b/technic/technic/textures/technic_workshop_bottom.png diff --git a/textures/technic_workshop_side.png b/technic/technic/textures/technic_workshop_side.pngBinary files differ index 9e3e7a7..9e3e7a7 100644 --- a/textures/technic_workshop_side.png +++ b/technic/technic/textures/technic_workshop_side.png diff --git a/textures/technic_workshop_top.png b/technic/technic/textures/technic_workshop_top.pngBinary files differ index feae141..feae141 100644 --- a/textures/technic_workshop_top.png +++ b/technic/technic/textures/technic_workshop_top.png diff --git a/textures/technic_zinc_dust.png b/technic/technic/textures/technic_zinc_dust.pngBinary files differ index 0d2f75a..0d2f75a 100644 --- a/textures/technic_zinc_dust.png +++ b/technic/technic/textures/technic_zinc_dust.png diff --git a/textures/technic_zinc_ingot.png b/technic/technic/textures/technic_zinc_ingot.pngBinary files differ index 096ff9c..096ff9c 100644 --- a/textures/technic_zinc_ingot.png +++ b/technic/technic/textures/technic_zinc_ingot.png diff --git a/textures/technic_zinc_lump.png b/technic/technic/textures/technic_zinc_lump.pngBinary files differ index d28a6dc..d28a6dc 100644 --- a/textures/technic_zinc_lump.png +++ b/technic/technic/textures/technic_zinc_lump.png diff --git a/technic/technic/textures/tetris_machine_front1.png b/technic/technic/textures/tetris_machine_front1.pngBinary files differ new file mode 100644 index 0000000..747bdd2 --- /dev/null +++ b/technic/technic/textures/tetris_machine_front1.png diff --git a/technic/technic/textures/tetris_machine_front2.png b/technic/technic/textures/tetris_machine_front2.pngBinary files differ new file mode 100644 index 0000000..3ad0908 --- /dev/null +++ b/technic/technic/textures/tetris_machine_front2.png diff --git a/technic/technic/textures/tetris_machine_side1B.png b/technic/technic/textures/tetris_machine_side1B.pngBinary files differ new file mode 100644 index 0000000..de1e034 --- /dev/null +++ b/technic/technic/textures/tetris_machine_side1B.png diff --git a/technic/technic/textures/tetris_machine_side1L.png b/technic/technic/textures/tetris_machine_side1L.pngBinary files differ new file mode 100644 index 0000000..73942cf --- /dev/null +++ b/technic/technic/textures/tetris_machine_side1L.png diff --git a/technic/technic/textures/tetris_machine_side1P.png b/technic/technic/textures/tetris_machine_side1P.pngBinary files differ new file mode 100644 index 0000000..73942cf --- /dev/null +++ b/technic/technic/textures/tetris_machine_side1P.png diff --git a/technic/technic/textures/tetris_machine_side2B.png b/technic/technic/textures/tetris_machine_side2B.pngBinary files differ new file mode 100644 index 0000000..e8e42fe --- /dev/null +++ b/technic/technic/textures/tetris_machine_side2B.png diff --git a/technic/technic/textures/tetris_machine_side2L.png b/technic/technic/textures/tetris_machine_side2L.pngBinary files differ new file mode 100644 index 0000000..a619eb3 --- /dev/null +++ b/technic/technic/textures/tetris_machine_side2L.png diff --git a/technic/technic/textures/tetris_machine_side2P.png b/technic/technic/textures/tetris_machine_side2P.pngBinary files differ new file mode 100644 index 0000000..650fc3b --- /dev/null +++ b/technic/technic/textures/tetris_machine_side2P.png diff --git a/technic/technic/textures/tetris_machine_top.png b/technic/technic/textures/tetris_machine_top.pngBinary files differ new file mode 100644 index 0000000..f1c3ac2 --- /dev/null +++ b/technic/technic/textures/tetris_machine_top.png diff --git a/tool_workshop.lua b/technic/technic/tool_workshop.lua index 86130ff..86130ff 100644 --- a/tool_workshop.lua +++ b/technic/technic/tool_workshop.lua diff --git a/tree_tap.lua b/technic/technic/tree_tap.lua index 76f50ef..107faed 100644 --- a/tree_tap.lua +++ b/technic/technic/tree_tap.lua @@ -7,7 +7,7 @@                              local pos=minetest.get_pointed_thing_position(pointed_thing,above)                              local node=minetest.env:get_node(pos)                              local node_name=node.name -                            if node_name == "farming_plus:rubber_tree_full" then +                            if node_name == "farming_plus:rubber_tree_full" or node_name == "farming:rubber_tree_full" or node_name == "technic:rubber_tree_full" then                                      user:get_inventory():add_item("main",ItemStack("technic:raw_latex"))                                      minetest.env:set_node(pos,node)                                      local item=itemstack:to_table() diff --git a/technic/technic/water.lua b/technic/technic/water.lua new file mode 100644 index 0000000..6ddaa46 --- /dev/null +++ b/technic/technic/water.lua @@ -0,0 +1,588 @@ +minetest.register_alias("battery", "technic:battery") +minetest.register_alias("battery_box", "technic:battery_box") +minetest.register_alias("electric_furnace", "technic:electric_furnace") + + +minetest.register_craft({ +	output = 'technic:battery 1', +	recipe = { +		{'default:wood', 'moreores:copper_ingot', 'default:wood'}, +		{'default:wood', 'moreores:tin_ingot', 'default:wood'}, +		{'default:wood', 'moreores:copper_ingot', 'default:wood'}, +	} +})  + +minetest.register_craft({ +	output = 'technic:battery_box 1', +	recipe = { +		{'technic:battery', 'default:wood', 'technic:battery'}, +		{'technic:battery', 'moreores:copper_ingot', 'technic:battery'}, +		{'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'}, +	} +})  + +minetest.register_craft({ +	output = 'technic:electric_furnace', +	recipe = { +		{'default:brick', 'default:brick', 'default:brick'}, +		{'default:brick', '', 'default:brick'}, +		{'default:steel_ingot', 'moreores:copper_ingot', 'default:steel_ingot'}, +	} +}) + + +--minetest.register_craftitem("technic:battery", { +--	description = "Recharcheable battery", +--	inventory_image = "technic_battery.png", +--	stack_max = 1, +--})  + +minetest.register_tool("technic:battery", +{description = "RE Battery", +inventory_image = "technic_battery.png", +energy_charge = 0, +tool_capabilities = {max_drop_level=0, groupcaps={fleshy={times={}, uses=10000, maxlevel=0}}}})  + +minetest.register_craftitem("technic:battery_box", { +	description = "Battery box", +	stack_max = 99, +})  + + + +battery_box_formspec = +	"invsize[8,9;]".. +	"image[1,1;1,2;technic_power_meter_bg.png]".. +	"list[current_name;src;3,1;1,1;]".. +	"image[4,1;1,1;technic_battery_reload.png]".. +	"list[current_name;dst;5,1;1,1;]".. +	"label[0,0;Battery box]".. +	"label[3,0;Charge]".. +	"label[5,0;Discharge]".. +	"label[1,3;Power level]".. +	"list[current_player;main;0,5;8,4;]" + +minetest.register_node("technic:battery_box", { +	description = "Battery box", +	tiles = {"technic_battery_box_top.png", "technic_battery_box_bottom.png", "technic_battery_box_side.png", +		"technic_battery_box_side.png", "technic_battery_box_side.png", "technic_battery_box_side.png"}, +	groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, +	sounds = default.node_sound_wood_defaults(), +	technic_power_machine=1, +	on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_string("infotext", "Battery box") +		meta:set_float("technic_power_machine", 1) +		meta:set_string("formspec", battery_box_formspec) +		local inv = meta:get_inventory() +		inv:set_size("src", 1) +		inv:set_size("dst", 1) +		battery_charge = 0 +		max_charge = 60000 +		end,	 +	can_dig = function(pos,player) +		local meta = minetest.env:get_meta(pos); +		local inv = meta:get_inventory() +		if not inv:is_empty("dst") then +			return false +		elseif not inv:is_empty("src") then +			return false +		end +		return true +	end, +}) + +electric_furnace_formspec = +	"invsize[8,9;]".. +	"image[1,1;1,2;technic_power_meter_bg.png]".. +	"list[current_name;src;3,1;1,1;]".. +	"list[current_name;dst;5,1;2,2;]".. +	"list[current_player;main;0,5;8,4;]".. +	"label[0,0;Electric Furnace]".. +	"label[1,3;Power level]" +	 +minetest.register_node("technic:electric_furnace", { +	description = "Electric furnace", +	tiles = {"technic_electric_furnace_top.png", "technic_electric_furnace_bottom.png", "technic_electric_furnace_side.png", +		"technic_electric_furnace_side.png", "technic_electric_furnace_side.png", "technic_electric_furnace_front.png"}, +	paramtype2 = "facedir", +	groups = {cracky=2}, +	legacy_facedir_simple = true, +	sounds = default.node_sound_stone_defaults(), +	technic_power_machine=1, +	internal_EU_buffer=0; +	interal_EU_buffer_size=2000; +	on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_float("technic_power_machine", 1) +		meta:set_string("formspec", electric_furnace_formspec) +		meta:set_string("infotext", "Electric furnace") +		local inv = meta:get_inventory() +		inv:set_size("src", 1) +		inv:set_size("dst", 4) +		local EU_used  = 0 +		local furnace_is_cookin = 0 +		local cooked = nil +		meta:set_float("internal_EU_buffer",0) +		meta:set_float("internal_EU_buffer_size",2000) + +	end, +	can_dig = function(pos,player) +		local meta = minetest.env:get_meta(pos); +		local inv = meta:get_inventory() +		if not inv:is_empty("dst") then +			return false +		elseif not inv:is_empty("src") then +			return false +		end +		return true +	end, +}) + +minetest.register_node("technic:electric_furnace_active", { +	description = "Electric Furnace", +	tiles = {"technic_electric_furnace_top.png", "technic_electric_furnace_bottom.png", "technic_electric_furnace_side.png", +		"technic_electric_furnace_side.png", "technic_electric_furnace_side.png", "technic_electric_furnace_front_active.png"}, +	paramtype2 = "facedir", +	light_source = 8, +	drop = "technic:electric_furnace", +	groups = {cracky=2, not_in_creative_inventory=1}, +	legacy_facedir_simple = true, +	sounds = default.node_sound_stone_defaults(), +	internal_EU_buffer=0; +	interal_EU_buffer_size=2000; +	technic_power_machine=1, +	on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_float("technic_power_machine", 1) +		meta:set_string("formspec", electric_furnace_formspec) +		meta:set_string("infotext", "Electric furnace"); +		local inv = meta:get_inventory() +		inv:set_size("src", 1) +		inv:set_size("dst", 4) +		local EU_used  = 0 +		local furnace_is_cookin = 0 +		local cooked = nil +	end, +	can_dig = function(pos,player) +		local meta = minetest.env:get_meta(pos); +		local inv = meta:get_inventory() +		if not inv:is_empty("dst") then +			return false +		elseif not inv:is_empty("src") then +			return false +		end +		return true +	end, +}) + +minetest.register_abm({ +	nodenames = {"technic:electric_furnace","technic:electric_furnace_active"}, +	interval = 1, +	chance = 1, +	 +	action = function(pos, node, active_object_count, active_object_count_wider) + +		local meta = minetest.env:get_meta(pos) +		internal_EU_buffer=meta:get_float("internal_EU_buffer") +		internal_EU_buffer_size=meta:get_float("internal_EU_buffer") +		local load = math.floor(internal_EU_buffer/2000 * 100) +		meta:set_string("formspec", +				"invsize[8,9;]".. +				"image[1,1;1,2;technic_power_meter_bg.png^[lowpart:".. +						(load)..":technic_power_meter_fg.png]".. +				"list[current_name;src;3,1;1,1;]".. +				"list[current_name;dst;5,1;2,2;]".. +				"list[current_player;main;0,5;8,4;]".. +				"label[0,0;Electric Furnace]".. +				"label[1,3;Power level]") + +		local inv = meta:get_inventory() +		 +		local furnace_is_cookin = meta:get_float("furnace_is_cookin") +		 +		 +		local srclist = inv:get_list("src") +		local cooked=nil  + +		if srclist then +		 cooked = minetest.get_craft_result({method = "cooking", width = 1, items = srclist}) +		end +		 +		 +		if (furnace_is_cookin == 1) then +			if internal_EU_buffer>=150 then +			internal_EU_buffer=internal_EU_buffer-150; +			meta:set_float("internal_EU_buffer",internal_EU_buffer) +			meta:set_float("src_time", meta:get_float("src_time") + 3) +			if cooked and cooked.item and meta:get_float("src_time") >= cooked.time then +				-- check if there's room for output in "dst" list +				if inv:room_for_item("dst",cooked.item) then +					-- Put result in "dst" list +					inv:add_item("dst", cooked.item) +					-- take stuff from "src" list +					srcstack = inv:get_stack("src", 1) +					srcstack:take_item() +					inv:set_stack("src", 1, srcstack) +				else +					print("Furnace inventory full!") +				end +				meta:set_string("src_time", 0) +			end +			end		 +		end +		 +		 + +		 +		if srclist then +			cooked = minetest.get_craft_result({method = "cooking", width = 1, items = srclist}) +			if cooked.time>0 then  +			hacky_swap_node(pos,"technic:electric_furnace_active") +			meta:set_string("infotext","Furnace active") +			meta:set_string("furnace_is_cookin",1) +		--	meta:set_string("formspec", electric_furnace_formspec) +			meta:set_string("src_time", 0) +			return +			end + +		end +	 +				hacky_swap_node(pos,"technic:electric_furnace") +				meta:set_string("infotext","Furnace inactive") +				meta:set_string("furnace_is_cookin",0) +		--		meta:set_string("formspec", electric_furnace_formspec) +				meta:set_string("src_time", 0) +		 +	 +end,		 +}) + + + + +function take_EU_from_net(pos, EU_to_take) +	local meta = minetest.env:get_meta(pos) +	local pos1=pos +	pos1.z=pos1.z +1 +	local meta1 = minetest.env:get_meta(pos1) +	charge=meta1:get_float("battery_charge") +	charge=charge - EU_to_take +	meta1:set_float("battery_charge",charge) +end + +	LV_nodes_visited = {} + +function get_RE_item_load (load1,max_load) +if load1==0 then load1=65535 end +local temp = 65536-load1 +temp= temp/65535*max_load +return math.floor(temp + 0.5) +end + +function set_RE_item_load (load1,max_load) +if load1 == 0 then return 65535 end +local temp=load1/max_load*65535 +temp=65536-temp +return math.floor(temp) +end + +minetest.register_abm({ +	nodenames = {"technic:battery_box"}, +	interval = 1, +	chance = 1, +	action = function(pos, node, active_object_count, active_object_count_wider) +	local meta = minetest.env:get_meta(pos) +	charge= meta:get_float("battery_charge") +	max_charge= 60000 +		 +		local inv = meta:get_inventory() +		if inv:is_empty("src")==false  then  +		srcstack = inv:get_stack("src", 1) +		src_item=srcstack:to_table() +		if src_item["name"]== "technic:battery" then +		local load1=tonumber((src_item["wear"]))  +		load1=get_RE_item_load(load1,10000) +		load_step=1000 +		if load1<10000 and charge>0 then  +		 if charge-load_step<0 then load_step=charge end +		 if load1+load_step>10000 then load_step=10000-load1 end +		load1=load1+load_step +		charge=charge-load_step +	 +		load1=set_RE_item_load(load1,10000) +		src_item["wear"]=tostring(load1) +		inv:set_stack("src", 1, src_item) +		end		 +		end +		end +		meta:set_float("battery_charge",charge) +		 +	 +		if inv:is_empty("src")==false  then  +		srcstack = inv:get_stack("src", 1) +		src_item=srcstack:to_table() +		if src_item["name"]== "technic:laser_mk1" then +		local load1=tonumber((src_item["wear"]))  +		load1=get_RE_item_load(load1,40000) +		load_step=1000 +		if load1<40000 and charge>0 then  +		 if charge-load_step<0 then load_step=charge end +		 if load1+load_step>40000 then load_step=40000-load1 end +		load1=load1+load_step +		charge=charge-load_step +		load1=set_RE_item_load(load1,40000) +		src_item["wear"]=tostring(load1) +		inv:set_stack("src", 1, src_item) +		end		 +		end +		end +		meta:set_float("battery_charge",charge) + + +		if inv:is_empty("dst") == false then  +		srcstack = inv:get_stack("dst", 1) +		src_item=srcstack:to_table() +		if src_item["name"]== "technic:battery" then +		local load1=tonumber((src_item["wear"]))  +		load1=get_RE_item_load(load1,10000) +		load_step=1000 +		if load1>0 and charge<max_charge then  +			 if charge+load_step>max_charge then load_step=max_charge-charge end +		  	 if load1-load_step<0 then load_step=load1 end +		load1=load1-load_step +		charge=charge+load_step +	 +		load1=set_RE_item_load(load1,10000) +		src_item["wear"]=tostring(load1) +		inv:set_stack("dst", 1, src_item) +		end		 +		end +		end +		 + +	meta:set_float("battery_charge",charge) +	meta:set_string("infotext", "Battery box: "..charge.."/"..max_charge); + +	local load = math.floor(charge/60000 * 100) +	meta:set_string("formspec", +				"invsize[8,9;]".. +				"image[1,1;1,2;technic_power_meter_bg.png^[lowpart:".. +						(load)..":technic_power_meter_fg.png]".. +				"list[current_name;src;3,1;1,1;]".. +				"image[4,1;1,1;technic_battery_reload.png]".. +				"list[current_name;dst;5,1;1,1;]".. +				"label[0,0;Battery box]".. +				"label[3,0;Charge]".. +				"label[5,0;Discharge]".. +				"label[1,3;Power level]".. +				"list[current_player;main;0,5;8,4;]") +		 +	local pos1={} + +	pos1.y=pos.y-1 +	pos1.x=pos.x +	pos1.z=pos.z + + +	meta1 = minetest.env:get_meta(pos1) +	if meta1:get_float("cablelike")~=1 then return end + +		local LV_nodes = {} +		local PR_nodes = {} +		local RE_nodes = {} + +	 	LV_nodes[1]={} +	 	LV_nodes[1].x=pos1.x +		LV_nodes[1].y=pos1.y +		LV_nodes[1].z=pos1.z +		LV_nodes[1].visited=false + + +table_index=1 +	repeat +	check_LV_node (PR_nodes,RE_nodes,LV_nodes,table_index) +	table_index=table_index+1 +	if LV_nodes[table_index]==nil then break end +	until false + + +local pos1={} +i=1 +	repeat +	if PR_nodes[i]==nil then break end +		pos1.x=PR_nodes[i].x +		pos1.y=PR_nodes[i].y +		pos1.z=PR_nodes[i].z +	local meta1 = minetest.env:get_meta(pos1) +	local active=meta1:get_float("active") +	if active==1 then charge=charge+80 end +	i=i+1 +	until false + +if charge>max_charge then charge=max_charge end + +i=1 +	repeat +	if RE_nodes[i]==nil then break end +		pos1.x=RE_nodes[i].x         -- loading all conected machines buffers +		pos1.y=RE_nodes[i].y +		pos1.z=RE_nodes[i].z +	local meta1 = minetest.env:get_meta(pos1) +	local internal_EU_buffer=meta1:get_float("internal_EU_buffer") +	local internal_EU_buffer_size=meta1:get_float("internal_EU_buffer_size") + +	local charge_to_give=200 +	if internal_EU_buffer+charge_to_give>internal_EU_buffer_size then +		charge_to_give=internal_EU_buffer_size-internal_EU_buffer +	end +	if charge-charge_to_give<0 then charge_to_give=charge end + +	internal_EU_buffer=internal_EU_buffer+charge_to_give +	meta1:set_float("internal_EU_buffer",internal_EU_buffer) +	charge=charge-charge_to_give; +	 +	i=i+1 +	until false +	 +	meta:set_float("battery_charge",charge) +	meta:set_string("infotext", "Battery box: "..charge.."/"..max_charge); + + +end +}) + +function add_new_cable_node (LV_nodes,pos1) +local i=1 +	repeat +		if LV_nodes[i]==nil then break end +		if pos1.x==LV_nodes[i].x and pos1.y==LV_nodes[i].y and pos1.z==LV_nodes[i].z then return false end +		i=i+1 +	until false +LV_nodes[i]={} +LV_nodes[i].x=pos1.x +LV_nodes[i].y=pos1.y +LV_nodes[i].z=pos1.z +LV_nodes[i].visited=false +return true +end + +function check_LV_node (PR_nodes,RE_nodes,LV_nodes,i) +		local pos1={} +		pos1.x=LV_nodes[i].x +		pos1.y=LV_nodes[i].y +		pos1.z=LV_nodes[i].z +		LV_nodes[i].visited=true +		new_node_added=false +	 +		pos1.x=pos1.x+1 +		check_LV_node_subp (PR_nodes,RE_nodes,LV_nodes,pos1) +		pos1.x=pos1.x-2 +		check_LV_node_subp (PR_nodes,RE_nodes,LV_nodes,pos1) +		pos1.x=pos1.x+1 +		 +		pos1.y=pos1.y+1 +		check_LV_node_subp (PR_nodes,RE_nodes,LV_nodes,pos1) +		pos1.y=pos1.y-2 +		check_LV_node_subp (PR_nodes,RE_nodes,LV_nodes,pos1) +		pos1.y=pos1.y+1 + +		pos1.z=pos1.z+1 +		check_LV_node_subp (PR_nodes,RE_nodes,LV_nodes,pos1) +		pos1.z=pos1.z-2 +		check_LV_node_subp (PR_nodes,RE_nodes,LV_nodes,pos1) +		pos1.z=pos1.z+1 +return new_node_added +end + +function check_LV_node_subp (PR_nodes,RE_nodes,LV_nodes,pos1) +meta = minetest.env:get_meta(pos1) +if meta:get_float("cablelike")==1 then new_node_added=add_new_cable_node(LV_nodes,pos1) end +if minetest.env:get_node(pos1).name == "technic:solar_panel" then 	new_node_added=add_new_cable_node(PR_nodes,pos1) end		 +if minetest.env:get_node(pos1).name == "technic:electric_furnace" then 	new_node_added=add_new_cable_node(RE_nodes,pos1) end		 +if minetest.env:get_node(pos1).name == "technic:electric_furnace_active" then 	new_node_added=add_new_cable_node(RE_nodes,pos1) end		 +if minetest.env:get_node(pos1).name == "technic:tool_workshop" then 	new_node_added=add_new_cable_node(RE_nodes,pos1) end		 +if minetest.env:get_node(pos1).name == "technic:music_player" then 	new_node_added=add_new_cable_node(RE_nodes,pos1) end		 +if minetest.env:get_node(pos1).name == "technic:grinder" then 	new_node_added=add_new_cable_node(RE_nodes,pos1) end		 +end +		 + +function get_connected_charge (charge,pos1) +	local charge1=0 +	local meta={} +	if minetest.env:get_node(pos1).name == "technic:battery_box" then +	print ("found batbox") +	meta = minetest.env:get_meta(pos1) +	return meta:get_float("cable_OUT")  +	end + +	if minetest.env:get_node(pos1).name == "technic:lv_cable" then +	meta = minetest.env:get_meta(pos1) +	charge1=meta:get_float("cable_OUT") +		if charge1>charge then +		charge=charge1 +		end +	end +return charge +end + +minetest.register_node("technic:solar_panel", { +	tiles = {"technic_solar_panel_top.png", "technic_solar_panel_side.png", "technic_solar_panel_side.png", +		"technic_solar_panel_side.png", "technic_solar_panel_side.png", "technic_solar_panel_side.png"}, +	groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, +	sounds = default.node_sound_wood_defaults(), +    	description="Solar Panel", +	active = false, +	technic_power_machine=1, +	drawtype = "nodebox", +	paramtype = "light", +	is_ground_content = true,	 +	node_box = { +			type = "fixed", +			fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5}, +		}, +		selection_box = { +			type = "fixed", +			fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5}, +		}, +	on_construct = function(pos) +		local meta = minetest.env:get_meta(pos) +		meta:set_float("technic_power_machine", 1) +		meta:set_string("infotext", "Solar Panel") +		meta:set_float("active", false) +	end, +}) + +minetest.register_craft({ +	output = 'technic:solar_panel 1', +	recipe = { +		{'default:sand', 'default:sand','default:sand'}, +		{'default:sand', 'moreores:copper_ingot','default:sand'}, +		{'default:sand', 'default:sand','default:sand'}, + +	} +}) + +minetest.register_abm( +	{nodenames = {"technic:solar_panel"}, +	interval = 1, +	chance = 1, +	action = function(pos, node, active_object_count, active_object_count_wider) +		 +		local pos1={} +		pos1.y=pos.y+1 +		pos1.x=pos.x +		pos1.z=pos.z + +		local light = minetest.env:get_node_light(pos1, nil) +		local meta = minetest.env:get_meta(pos) +		if light == nil then light = 0 end +		if light >= 12 then +			meta:set_string("infotext", "Solar Panel is active ") +			meta:set_float("active",1) +		else +			meta:set_string("infotext", "Solar Panel is inactive"); +			meta:set_float("active",0) +		end +	end, +}) 
\ No newline at end of file diff --git a/water_mill.lua b/technic/technic/water_mill.lua index 6e0120d..6e0120d 100644 --- a/water_mill.lua +++ b/technic/technic/water_mill.lua diff --git a/wires.lua b/technic/technic/wires.lua index e09fc2a..e09fc2a 100644 --- a/wires.lua +++ b/technic/technic/wires.lua diff --git a/wires_mv.lua b/technic/technic/wires_mv.lua index 7924956..7924956 100644 --- a/wires_mv.lua +++ b/technic/technic/wires_mv.lua | 
