I'm going well on doing my own scripts... But today I saw that sometimes my char doesn't resupply. He just say "hi, trade" then follow to the next waypoint. So I turn walker off > go for resupply label again and then he resupply correctly.. But i'm not watching 100% of time to see when he buy or not... Any idea?

local HealthPOT = "Ultimate Spirit Potion"
local HealthMAX = 150
local HealthMIN = 50
local HealthToBuy = math.abs(HealthMAX-Self.ItemCount(HealthPOT))

local ManaPOT = "Strong Mana Potion"
local ManaMAX = 400
local ManaMIN = 100
local ManaToBuy = math.abs(ManaMAX-Self.ItemCount(ManaPOT))

elseif (labelName == "Resupply") then
Walker.Stop() -- Wait if 5000 because I was trying to delay some to see if it works properly.
Self.SayToNpc({"hi", "trade"}) wait(5000)
Self.ShopBuyItem(HealthPOT, HealthToBuy)wait(5000)
Self.SayToNpc({"bye", "hi", "trade"}) wait(5000) -- I used this way because sometimes he skips HealthPOT and buy only ManaPOT.
Self.ShopBuyItem(ManaPOT, ManaToBuy) wait(5000)
Walker.Start()