weather: re-add val_override, minor cleanup

develop
lethosor 2016-01-01 11:46:40 -05:00
parent 81b055ee93
commit 51690b4ba2
1 changed files with 20 additions and 9 deletions

@ -9,26 +9,37 @@ Prints a map of the local weather, or with arguments ``clear``,
=end]]
local args = {...}
if args[1] == "help" or args[1] == "?" then
local cmd
local val_override = tonumber(args[1])
if args[1] then
cmd = args[1]:sub(1, 1)
end
if cmd == "h" or cmd == "?" then
print("The current weather is "..df.weather_type[dfhack.world.ReadCurrentWeather()])
print((helpstr:gsub('=[a-z]+', '')))
elseif args[1] == "clear" then
dfhack.world.SetCurrentWeather(df.weather_type["None"])
elseif cmd == "c" then
dfhack.world.SetCurrentWeather(df.weather_type.None)
print("The weather has cleared.")
elseif args[1] == "rain" then
dfhack.world.SetCurrentWeather(df.weather_type["Rain"])
elseif cmd == "r" then
dfhack.world.SetCurrentWeather(df.weather_type.Rain)
print("It is now raining.")
elseif args[1] == "snow" then
dfhack.world.SetCurrentWeather(df.weather_type["Snow"])
elseif cmd == "s" then
dfhack.world.SetCurrentWeather(df.weather_type.Snow)
print("It is now snowing.")
elseif val_override then
dfhack.world.SetCurrentWeather(val_override)
print("Set weather to " .. val_override)
elseif args[1] then
qerror("Unrecognized argument: " .. args[1])
else
-- df.global.current_weather is arranged in columns, not rows
kind = {[0]="C ", "R ", "S "}
kind = {[0]="C", "R", "S"}
print("Weather map (C = clear, R = rain, S = snow):")
for y=0, 4 do
s = ""
for x=0, 4 do
s = s..kind[df.global.current_weather[x][y]]
local cur = df.global.current_weather[x][y]
s = s .. (kind[cur] or cur) .. ' '
end
print(s)
end