|
|
|
@ -9,18 +9,28 @@ 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"}
|
|
|
|
@ -28,7 +38,8 @@ else
|
|
|
|
|
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
|
|
|
|
|