mt-mods / technic

Technic mod for Minetest
18 stars 25 forks source link

Disable repair recipes for crystals and batteries #205

Closed S-S-X closed 3 years ago

S-S-X commented 3 years ago

Should probably test a bit, I've not done any testing. Changes are simply based on Lua API documentation.

Also maybe test better how those actually behave in game before these changes, I've also not tested that at all.

github-actions[bot] commented 3 years ago
Click for detailed source code test coverage report ### Test coverage report for Technic CNC 79.43% in 8/8 files: ``` File Hits Missed Coverage ----------------------------------------------------- api.lua 157 83 65.42% cnc.lua 50 3 94.34% digilines.lua 39 8 82.98% formspec.lua 103 8 92.79% init.lua 19 6 76.00% materials.lua 174 94 64.93% pipeworks.lua 25 13 65.79% programs.lua 263 0 100.00% ``` ### Test coverage report for technic 9.62% in 10/102 files: ``` File Hits Missed Coverage -------------------------------------------------------------- config.lua 47 4 92.16% crafts.lua 0 86 0.00% effects.lua 0 3 0.00% helpers.lua 0 116 0.00% init.lua 0 30 0.00% integration_test.lua 0 24 0.00% items.lua 0 51 0.00% legacy.lua 0 7 0.00% machines/HV/battery_box.lua 0 6 0.00% machines/HV/cables.lua 9 11 45.00% machines/HV/compressor.lua 0 6 0.00% machines/HV/electric_furnace.lua 0 6 0.00% machines/HV/forcefield.lua 0 213 0.00% machines/HV/generator.lua 9 0 100.00% machines/HV/grinder.lua 0 6 0.00% machines/HV/init.lua 0 12 0.00% machines/HV/nuclear_reactor.lua 0 266 0.00% machines/HV/quarry.lua 0 306 0.00% machines/HV/solar_array.lua 0 6 0.00% machines/LV/alloy_furnace.lua 0 6 0.00% machines/LV/battery_box.lua 0 6 0.00% machines/LV/cables.lua 10 11 47.62% machines/LV/compressor.lua 0 10 0.00% machines/LV/electric_furnace.lua 0 6 0.00% machines/LV/extractor.lua 0 13 0.00% machines/LV/generator.lua 0 7 0.00% machines/LV/geothermal.lua 0 56 0.00% machines/LV/grinder.lua 0 7 0.00% machines/LV/init.lua 0 16 0.00% machines/LV/lamp.lua 0 107 0.00% machines/LV/music_player.lua 0 81 0.00% machines/LV/solar_array.lua 0 6 0.00% machines/LV/solar_panel.lua 0 27 0.00% machines/LV/water_mill.lua 0 47 0.00% machines/MV/alloy_furnace.lua 0 6 0.00% machines/MV/battery_box.lua 0 6 0.00% machines/MV/cables.lua 10 11 47.62% machines/MV/centrifuge.lua 0 6 0.00% machines/MV/compressor.lua 0 6 0.00% machines/MV/electric_furnace.lua 0 6 0.00% machines/MV/extractor.lua 0 6 0.00% machines/MV/freezer.lua 0 6 0.00% machines/MV/generator.lua 0 7 0.00% machines/MV/grinder.lua 0 6 0.00% machines/MV/hydro_turbine.lua 0 44 0.00% machines/MV/init.lua 0 17 0.00% machines/MV/lighting.lua 0 170 0.00% machines/MV/power_radiator.lua 0 96 0.00% machines/MV/solar_array.lua 0 7 0.00% machines/MV/tool_workshop.lua 0 73 0.00% machines/MV/wind_mill.lua 0 45 0.00% machines/compat/digtron.lua 0 13 0.00% machines/init.lua 0 85 0.00% machines/network.lua 193 163 54.21% machines/other/anchor.lua 0 79 0.00% machines/other/coal_alloy_furnace.lua 0 94 0.00% machines/other/coal_furnace.lua 0 3 0.00% machines/other/constructor.lua 0 103 0.00% machines/other/frames.lua 0 551 0.00% machines/other/init.lua 0 8 0.00% machines/other/injector.lua 0 85 0.00% machines/power_monitor.lua 0 57 0.00% machines/register/alloy_furnace.lua 0 30 0.00% machines/register/alloy_recipes.lua 0 40 0.00% machines/register/battery_box.lua 0 238 0.00% machines/register/cables.lua 168 49 77.42% machines/register/centrifuge.lua 0 6 0.00% machines/register/centrifuge_recipes.lua 0 25 0.00% machines/register/common.lua 0 114 0.00% machines/register/compressor.lua 0 6 0.00% machines/register/compressor_recipes.lua 0 33 0.00% machines/register/electric_furnace.lua 0 6 0.00% machines/register/extractor.lua 0 6 0.00% machines/register/extractor_recipes.lua 0 71 0.00% machines/register/freezer.lua 0 6 0.00% machines/register/freezer_recipes.lua 0 12 0.00% machines/register/generator.lua 91 114 44.39% machines/register/grinder.lua 0 6 0.00% machines/register/grinder_recipes.lua 0 100 0.00% machines/register/grindings.lua 0 39 0.00% machines/register/init.lua 0 22 0.00% machines/register/machine_base.lua 0 166 0.00% machines/register/recipes.lua 0 78 0.00% machines/register/solar_array.lua 0 30 0.00% machines/supply_converter.lua 75 66 53.19% machines/switching_station.lua 0 79 0.00% machines/switching_station_globalstep.lua 0 58 0.00% max_lag.lua 0 12 0.00% radiation.lua 0 138 0.00% register.lua 20 20 50.00% tools/cans.lua 0 71 0.00% tools/chainsaw.lua 0 115 0.00% tools/flashlight.lua 0 68 0.00% tools/init.lua 0 14 0.00% tools/mining_drill.lua 0 268 0.00% tools/mining_lasers.lua 0 65 0.00% tools/multimeter.lua 0 208 0.00% tools/prospector.lua 0 101 0.00% tools/sonic_screwdriver.lua 0 51 0.00% tools/tree_tap.lua 0 38 0.00% tools/vacuum.lua 0 32 0.00% util/throttle.lua 0 11 0.00% ``` ### Raw test runner output for geeks: CNC: ``` ●●●●●●W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results ●W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results ●●●●●●●W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results ●W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results ●W: InvRef:get_list returning list src as reference, this can lead to unxpected results ●●●●W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list src as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results W: InvRef:get_list returning list dst as reference, this can lead to unxpected results ●● 22 successes / 0 failures / 0 errors / 0 pending : 0.204554 seconds ``` Technic: ``` ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●◌●●●●● 57 successes / 0 failures / 0 errors / 1 pending : 0.164549 seconds Pending → spec/supply_converter_spec.lua @ 99 Supply converter building overloads network spec/supply_converter_spec.lua:99: overload does not work with supply converter ```
S-S-X commented 3 years ago

Huhhila: SX: Well batteries' one was actually working (but dunno why anyone would want to use it)

So for some reason before these changes repair recipe does not work for crystals but still does work for batteries...

FeXoR-o-Illuria commented 3 years ago

I tested and RC Batteries and Energy Crystals can no longer be crafted from 2 of the same kind.

S-S-X commented 3 years ago

I tested and RC Batteries and Energy Crystals can no longer be crafted from 2 of the same kind.

Thanks, did you happen to test any normal functions like charging and discharging batteries / crystals?

After thinking about this a bit my opinion is that tool repair recipes should be disabled for batteries and energy crystals even if there would be some weird use case for these tool repair recipes.

Any sane use cases for these recipes if they would work correctly?

FeXoR-o-Illuria commented 3 years ago

Charging/discharging works as normal in HV Battery Box. Jumpdrive increased EU capacity also works as usual.