Warum so kompliziert? Bau doch einfach in dein Trank-Skript ne Mapabfrage ein, also:
Code:
<>Change Variable "Map ID" = [Hero: Map ID]
<> Fork Variable "Map ID" 1 different // Natürlich muss dann da statt 1 die Map ID deiner Weltkarte stehen (Rechtsklick auf die Weltkarte (unten Links im Map-Auswahl-Menü) oben steht dann die Map ID)
...
Hier jetzt einfach der Code von Dhan
Nun wird automatisch verhindert, dass der Held auf der Weltkarte diesen Trank trinkt. Natürlich muss dann in die Else dieser Fork ein "Add Item: Speedtrank" und ein z.B. "Show Massage: "Auf der Weltkarte kann ich keinen solchen Trank tinken!"" hin. Ansonsten sollte das so gehen...
Das die Wirkung dann auch endet kannst du ja so machen wie BuddyJ das gesagt hat. Sobald die Map ID = 1 (also die ID deiner Weltkarte) ist, setzt du die Variable "Wirkungsdauer" auf 0. Den Rest macht der Skript dann ja selber

mfg
Phönix Tear