Knowledge Base

Preserving for the future: Shell scripts, AoC, and more

diff-villager.patch (Source)

Date: 2026-08-11
Message: The difference between Mineclonia villager.lua and mcl_villager_cheats villager.lua
Last-Version: 0.123.0
Author: bgstack15
Command: diff -aur ~/.minetest/games/mineclonia/mods/ENTITIES/mobs_mc/villager.lua ~/.minetest/mods/mcl_villager_cheats/villager.lua
--- .minetest/games/mineclonia/mods/ENTITIES/mobs_mc/villager.lua 2026-07-26 14:20:37.152618130 -0400
+++ .minetest/mods/mcl_villager_cheats/villager.lua                 2026-08-11 11:52:24.416485282 -0400
@@ -711,6 +711,12 @@
list[current_player;main;3.97,7.98;9,1;]
]]
+-- stackrpms,6
+fs_footer_template = fs_footer_template ..
+ "image_button[4.0,0.2;1.0,1.0;mcl_villager_cheats_reload.png;reload;]" ..
+ "tooltip[reload;Randomize available trades" ..
+ core.colorize("#47f424","\n(" .. core.get_current_modname() .. ")") ..
+ ";#000000;#ffffff]"
-- arg 1 = %s = wanted
-- arg 2 = %s = wanted tooltip
@@ -903,6 +909,15 @@
core.register_on_player_receive_fields (function (player, formname, fields)
if formname == "mobs_mc:trading_formspec" then
+ --stackrpms,9
+ if fields.reload then
+ local trader = trading_players[player]
+ if trader and is_valid (trader) then
+ mcl_villager_cheats.reload_trades(trader)
+ local entity = trader:get_luaentity ()
+ entity:reload_trades()
+ end
+ end
if fields.quit then
return_fields (player)
local trader = trading_players[player]
@@ -942,6 +957,11 @@
type = "detached",
name = inv_name,
})
+ -- stackrpms,5 Need to remove the previous inventory, so this new inventory
+ if inv then
+ core.remove_detached_inventory(inv_name)
+ inv = nil
+ end
if not inv then
inv = core.create_detached_inventory (inv_name, inv_class,
  playername)
@@ -6783,4 +6803,5 @@
-- Villager spawning.
------------------------------------------------------------------------
-mcl_mobs.register_egg ("mobs_mc:villager", S("Villager"), "#563d33", "#bc8b72", 0)
+-- stackrpms,2 Do not run this again
+--mcl_mobs.register_egg ("mobs_mc:villager", S("Villager"), "#563d33", "#bc8b72", 0)