Вот тут подумал и придумал, как создать нормальных, рабочих вендоров. В отличие от стандартных они отличаются тем, что создать можно только одного вендора в области экрана т.е. вендоры не перекроют друг друга, а то по умолчанию можно поставить сколько угодно вендоров в одном и том же месте:
[ITEMDEF i_deed_vendor] ID=i_deed NAME=Deed to a Vendor VALUE=15000 CATEGORY=Provisions - Deeds SUBSECTION=Vendor Deeds DESCRIPTION=Player Vendor Deed ON=@DClick
FORCHARS 18 // цикл в области экрана IF (<NPC>) // если НПС src.sysmessage NPC on screen! return 1 // выход из оператора ENDIF ENDFOR
// создаём вендора по умолчанию! SRC.MESSAGE Your vendor has been created. SERV.newnpc { c_h_vendor 1 c_h_vendor_f 1 } REF1=<NEW> REF1.P=<SRC.P> SRC.UPDATE // give the vendor some starting gold. SERV.NEWITEM=i_bankbox NEW.MORE1=500 NEW.CONT=<REF1> // tell him he works for you. SERV.NEWITEM=i_memory NEW.COLOR=memory_ipet NEW.LINK=<SRC.UID> NEW.LAYER=layer_special NEW.CONT=<REF1> // get rid of the deed. REMOVE RETURN 1
Надеюсь идея понятна. Извеняюсь, но скрипт я не тестил, но должен работать.