75af34beb5
Added support for nested dialogue trees. Trade: (WIP) Refactor code to support dedicated trading.
39 lines
879 B
Lua
Executable File
39 lines
879 B
Lua
Executable File
-- Advanced NPC mod by Zorman2000
|
|
local path = minetest.get_modpath("advanced_npc")
|
|
|
|
-- Intllib
|
|
local S
|
|
if minetest.get_modpath("intllib") then
|
|
S = intllib.Getter()
|
|
else
|
|
S = function(s, a, ...)
|
|
if a == nil then
|
|
return s
|
|
end
|
|
a = {a, ...}
|
|
return s:gsub("(@?)@(%(?)(%d+)(%)?)",
|
|
function(e, o, n, c)
|
|
if e == ""then
|
|
return a[tonumber(n)] .. (o == "" and c or "")
|
|
else
|
|
return "@" .. o .. n .. c
|
|
end
|
|
end)
|
|
end
|
|
end
|
|
mobs.intllib = S
|
|
|
|
-- NPC
|
|
dofile(path .. "/npc.lua")
|
|
dofile(path .. "/relationships.lua")
|
|
dofile(path .. "/dialogue.lua")
|
|
dofile(path .. "/trade/trade.lua")
|
|
dofile(path .. "/trade/prices.lua")
|
|
dofile(path .. "/actions/actions.lua")
|
|
dofile(path .. "/actions/places.lua")
|
|
dofile(path .. "/actions/pathfinder.lua")
|
|
dofile(path .. "/random_data.lua")
|
|
dofile(path .. "/actions/node_registry.lua")
|
|
|
|
print (S("[Mod] Advanced NPC loaded"))
|