UoKit.com Форумы > Ultima Online : Dev > Sphere Server > Sphere Server 0.55R
BangBang
Всем привет.
У меня есть вот такой вот столбик, в нем выдается Лама и сразу одевается на чара. Как же сделать так что бы она дохла когда с нее слезаешь? Объясните пожалуйста на наглядном скрипте.
Хотелось бы сделать так что бы все живки сдыхали как только с них слезаешь... Но не понимаю в какую сторону копать.

Выдаю лошадь вот так:
Код

ONBUTTON=1
    IF (<SRC.FINDLAYER(25)>==0)
    src.newitem 07d41
    src.act.name=a llama
    src.act.equip
    src.resync
    else
    src.sysmessage У вас уже есть лошадь.
    endif
    return 1


Удаляю лошадь вот так:
Код

ONTRIGGER=TARGON_CHAR

    if (<src.targ.findlayer(25).ib>>0)
    src.targ.findlayer(25).remove
    src.sysmessage Horse was removed
else
    src.sysmessage Nothing to remove!
endif


Уважаемые знатоки, вопрос:
Как сделать так что бы лошадь удалялась ИМЕННО КОГДА ЧАР С НЕЕ СЛЕЗАЕТ, а не удалять ее через столб.

Вверх
corso
повешай на лошадь на саму:

Код
ON=@CLICK 
remove
RETURN 1

ON=@SKILLSTART
remove
RETURN 1

ON=@NPCRESTOCK
remove
RETURN 1

Вверх
$yst3m_3rr0r
Переходи на 56b ... Меньше гемора, да и подсказчиков больше будет
Вверх
BangBang
https://forum.uokit.com/index.php?showtopic=26770 вот решение.
Вверх
d`ArcZeal
Код

[DEFNAME ETHY_SETTINGS]
MOUNT_DELAY=1

[FUNCTION MOUNT_ETHY]
IF <CANT_MOUNT>
RETURN 1
ELSE
NEWNPC <ARGS>
REF1=<NEW.UID>
SERV.NEWITEM=I_MEMORY
NEW.COLOR=MEMORY_IPET
NEW.LINK=<SRC.UID>
NEW.CONT=<REF1.UID>
REF1.COLOR=<COLOR>
REF1.TAG.ETHEREAL_MOUNT=<BASEID>
REF1.MOUNT <SRC>
CONSUME
ENDIF

[FUNCTION CANT_MOUNT]
IF (<TOPOBJ.ISPLAYER>)
    IF (<TOPOBJ.UID> != <SRC.UID>)
    SRC.SYSMESSAGE @0486,,1 Это не Ваше.
    RETURN 1
    ELIF (<SRC.FLAGS> & STATF_DEAD)
    SRC.SYSMESSAGE @0486,,1 Вы не в том состоянии, чтобы вызвать помошника.
    RETURN 1
    ELIF (<SRC.FLAGS> & STATF_POLYMORPH)
    SRC.SYSMESSAGE @0486,,1 Вы не в том состоянии, чтобы вызвать помошника.
    RETURN 1
    ELIF (<SRC.FINDLAYER.25.UID>)
    SRC.SYSMESSAGE @0486,,1 Уже верхом.
    RETURN 1
    ELSE
    RETURN 0
    ENDIF
ELSE
SRC.SYSMESSAGE @0486,,1 Невозможно вызвать.
RETURN 1
ENDIF

[FUNCTION LOOP_ANIM]
IF <ARGV[1]>>1
FOR <EVAL (<ARGV[1]>-1)>
TIMERF <EVAL (<LOCAL._FOR>*<ARGV[2]>)>,ANIM <EVAL <ARGV[0]>>
ENDFOR
ENDIF
ANIM <ARGV[0]>

[ITEMDEF I_GM_MOUNT]
NAME=Valar mount
ID=I_PET_OSTARD_ZOSTRICH
TYPE=T_ETHEREAL_STATUETTE
TDATA1=C_OSTARD_ZOSTRICH

ON=@CREATE
COLOR=COLOR_O_VALAR
ATTR=04

ON=@CLICK
MESSAGE @0487,,1 Небесный помошник
RETURN 1

Вверх
Invision Power Board © 2001-2024 Invision Power Services, Inc.
Version for Pocket PC © 2006-2024, IPBest Studio.