My inventory miniwindow won't popup I think it has something to do with "You are carrying:". It sends inventory to Aardwolf and Aardwolf shows me what is in my inventory, but the inventory miniwindow doesn't popup and after 10 seconds it says "Inventory Timeout".
require "wait"
wait.make(function () -- coroutine start
local win = GetPluginID () .. ":inventory"
local font = "f"
if not WindowInfo (win, 1) then
WindowCreate (win, 0, 0, 0, 0, 6, 0, 0)
WindowFont (win, font, "Lucida Console", 9)
end -- if
--request inventory
Send "inventory"
--wait for inventory
local x = wait.match ("You are carrying:", 10)
if not x then
ColourNote ("white", "blue", "Inventory Timeout")
return
end -- if
local inv = {}
local max_width = WindowTextWidth (win, font, "Inventory")
-- inventory loop
while true do
local line, wildcards, styles = wait.match ("*")
--check end of inventory
if not string.match (line, "^ ") then
break
end -- if
-- save inventory line
table.insert (inv, styles)
-- work out max width
max_width = math.max (max_width, WindowTextWidth (win, font, line))
end -- while loop
local font_height = WindowFontInfo (win, font, 1)
local window_width = max_width + 10
local window_height = font_height * (#inv + 2) + 10
-- make window size
WindowCreate (win, 0, 0, window_width, window_height, 6, 0, ColourNameToRGB "#373737")
WindowRectOp (win, 5, 0, 0, 0, 0, 5, 15 + 0x1000)
-- heading line
WindowText (win, font, "Inventory", 5, 5, 0, 0, ColourNameToRGB "yellow")
-- draw inventory lines
local y = font_height * 2 + 5
for i, styles in ipairs (inv) do
local x = 5
for _, style in ipairs (styles) do
x = x + WindowText (win, font, style.text, x, y, 0, 0, style.textcolour)
end -- for
y = y + font_height
end -- for
WindowShow (win, true)
end) -- coroutine end
Thanks for your help |