server/src/scripts/eressea.lua
Enno Rehling e936284347 Massive changes:
- 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
2006-02-11 16:11:16 +00:00

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