forked from github/server
e936284347
- removed all hadcoded weapons - added code to put resources like iron&wood in XML - added laen & wood to XML - fixed damage for mallorn lance - removed the old entrise code - added new ent code in lua, eressea-only
113 lines
2.3 KiB
Lua
113 lines
2.3 KiB
Lua
function loadscript(name)
|
|
local script = scriptpath .. "/" .. name
|
|
print("- loading " .. script)
|
|
if pcall(dofile, script)==0 then
|
|
print("Could not load " .. script)
|
|
end
|
|
end
|
|
|
|
function change_locales()
|
|
-- local localechange = { }
|
|
local localechange = { de = { "bLub" } }
|
|
|
|
for loc, flist in localechange do
|
|
for index, name in flist do
|
|
f = get_faction(atoi36(name))
|
|
if f ~= nil then
|
|
f.locale = loc
|
|
print("LOCALECHANGE ", f, loc)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
function run_scripts()
|
|
scripts = {
|
|
"spells.lua",
|
|
"extensions.lua",
|
|
"write_emails.lua",
|
|
"eressea/eternath.lua",
|
|
"eressea/wedding-jadee.lua",
|
|
"eressea/ponnuki.lua",
|
|
"eressea/xmas2004.lua",
|
|
"eressea/xmas2005.lua",
|
|
"eressea/embassy.lua",
|
|
"eressea/ents.lua"
|
|
}
|
|
for index in scripts do
|
|
loadscript(scripts[index])
|
|
end
|
|
end
|
|
|
|
function process(orders)
|
|
-- initialize starting equipment for new players
|
|
equipment_setitem("new_faction", "conquesttoken", "1");
|
|
equipment_setitem("new_faction", "log", "30");
|
|
equipment_setitem("new_faction", "stone", "30");
|
|
equipment_setitem("new_faction", "money", "4200");
|
|
|
|
file = "" .. get_turn()
|
|
if read_game(file)~=0 then
|
|
print("could not read game")
|
|
return -1
|
|
end
|
|
init_summary()
|
|
|
|
-- kill multi-players (external script)
|
|
loadscript("eressea/multis.lua")
|
|
|
|
-- run the turn:
|
|
if read_orders(orders) ~= 0 then
|
|
print("could not read " .. orders)
|
|
return -1
|
|
end
|
|
run_scripts()
|
|
|
|
-- create new monsters:
|
|
spawn_dragons()
|
|
spawn_undead()
|
|
spawn_braineaters(0.25)
|
|
spawn_ents()
|
|
|
|
plan_monsters()
|
|
process_orders()
|
|
|
|
-- post-turn updates:
|
|
update_embassies()
|
|
update_guards()
|
|
update_scores()
|
|
|
|
change_locales()
|
|
|
|
-- use newfactions file to place out new players
|
|
autoseed(basepath .. "/newfactions", false)
|
|
|
|
write_passwords()
|
|
write_reports()
|
|
write_emails()
|
|
write_summary()
|
|
|
|
file = "" .. get_turn()
|
|
if write_game(file)~=0 then
|
|
print("could not write game")
|
|
return -1
|
|
end
|
|
end
|
|
|
|
-- demo: how to add a special familiars-constructor
|
|
function initfamiliar_lynx(u)
|
|
print("a lynx is born ;-)")
|
|
end
|
|
|
|
|
|
--
|
|
-- main body of script
|
|
--
|
|
|
|
-- orderfile: contains the name of the orders.
|
|
if orderfile==nil then
|
|
print "you must specify an orderfile"
|
|
else
|
|
process(orderfile)
|
|
end
|
|
|