Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

UoKit.com Форумы _ Sphere Server 0.54 - 0.55i _ Ошибка

Автор: tytyrion 5.1.2019, 3:39

Ребята, подскажите, пожалуйста, в чем здесь ошибка?

Цитата
[itemdef i_cape_moon]
ID=i_cape
NAME=Moon cloak
RESOURCES=100 i_cloth, 10 i_hides_cut, 10 i_leather_daemon, 10 i_leather_dragon, 50 i_spool_wire, 5 i_potion_mana
SKILLMAKE=TAILORING 90.0, MAGERY 90.0, MEDITATION 90.0, i_diamond_sk
dye=1
on=@create
hitpoints={5 10}
on=@equip
timer=1
on=@timer
if (<cont.meditation><80.0) || (<cont.magery><80.0)
cont.sysmessage You lack the required skill in magery/meditation to wear this
cont=<cont.findlayer(21).uid>
timer=1
return 1
endif
if <cont.sector.light><=7
timer=1
return 1
endif
cont.mana=<cont.mana>+2
if <cont.mana>><cont.int>
cont.mana=<cont.int>
endif
timer=1
return 1


Сфера (55i) пишет вот это:
Цитата
ERROR:(tailoring_rare.scp,134)Invalid container 00


Спасибо

Автор: Re-Active 5.1.2019, 10:53

if !<cont.uid>
return 1
endif

on=@unequip
timer = -1

Автор: tytyrion 12.1.2019, 0:18

Все равно не могу понять.

Есть 2 итэма:

1.

Цитата
[itemdef i_cape_sun]
ID=i_cape
NAME=Sun cloak
RESOURCES=100 i_cloth, 10 i_leather_ophidian, 10 i_leather_dragon, 20 i_bandage, 50 i_spool_wire
SKILLMAKE=TAILORING 90.0,ANATOMY 90.0, HEALING 90.0, i_diamond_sk
dye=1
on=@create
hitpoints={5 10}
on=@equip
timer=1
on=@timer
if (<cont.healing><80.0) || (<cont.anatomy><80.0)
cont.sysmessage You lack the required skill in healing/anatomy to wear this
cont=<cont.findlayer(21).uid>
timer=1
return 1
endif
if <cont.sector.light>>7
timer=1
return 1
endif
cont.hits=<cont.hits>+1
if <cont.hits>><cont.str>
cont.hits=<cont.str>
endif
timer=1
return 1


2.
Цитата
[itemdef i_cape_moon]
ID=i_cape
NAME=Moon cloak
RESOURCES=100 i_cloth, 10 i_hides_cut, 10 i_leather_daemon, 10 i_leather_dragon, 50 i_spool_wire, 5 i_potion_mana
SKILLMAKE=TAILORING 90.0, MAGERY 90.0, MEDITATION 90.0, i_diamond_sk
dye=1
on=@create
hitpoints={5 10}
on=@equip
timer=1
on=@timer
if (<cont.meditation><80.0) || (<cont.magery><80.0)
cont.sysmessage You lack the required skill in magery/meditation to wear this
cont=<cont.findlayer(21).uid>
timer=1
return 1
endif
if <cont.sector.light><=7
timer=1
return 1
endif
cont.mana=<cont.mana>+2
if <cont.mana>><cont.int>
cont.mana=<cont.int>
endif
timer=1
return 1


Но ошибка возникает только во втором итэме.
Если убрать это:
Цитата

if (<cont.meditation><80.0) || (<cont.magery><80.0)
cont.sysmessage You lack the required skill in magery/meditation to wear this
cont=<cont.findlayer(21).uid>
timer=1
return 1
endif

то ошибка исчезает.

При чем в первом итэме сфера не видит никакой ошибки. А во втором - видит. wacko.gif

Автор: Re-Active 12.1.2019, 0:46

есть такая классная функция
SAY... она тебе поможет.

я лично знаю ответы на вопросы, но придерживаюсь правила, что если дать человеку леща.

Автор: Ozzy Osbourne 12.1.2019, 14:26

Цитата(Re-Active @ 11.1.2019, 23:46) *
есть такая классная функция. SAY... она тебе поможет. я лично знаю ответы на вопросы, но придерживаюсь правила, что если дать человеку леща.

Я вот больше за SYSMESSAGE для дебага ибо ненадо открывать журнал, но наверное SAY покороче для таки мелочей как выше.
Так что автор, выбирайте что по вкусу и вперед smile.gif

Автор: Re-Active 12.1.2019, 18:12

да я уже все написал что нужно сделать... но если человеку даже прямой ответ не помогает...

Автор: $yst3m_3rr0r 12.1.2019, 20:50

По пробуй так ... простенький плащик регена маны ... раз в 1сек +2 маны ...

Код
[ITEMDEF i_cape_moon]
DEFNAME=i_cape_moon
NAME=Moon Cloak
ID=i_cape
TYPE=t_clothing
RESOURCES=100 i_cloth, 10 i_hides_cut, 10 i_leather_daemon, 10 i_leather_dragon, 50 i_spool_wire, 5 i_potion_mana
SKILLMAKE=TAILORING 90.0, MAGERY 90.0, MEDITATION 90.0, i_diamond_sk
DYE=1

On=@Create
    HITPOINTS = {5 10}
    
On=@Equip
    IF (<SRC.MEDITATION><80.0) || (<SRC.MAGERY><80.0)
        SRC.SYSMESSAGE You lack the required skill in magery/meditation to wear this
        UNEQUIP
        RETURN 1
    ENDIF
    TIMER = 1
    
    
On=@UneQuip
    TIMER = -1

On=@Timer
    IF (<CONT.MANA> < <CONT.MaxMANA>)
        CONT.MANA = (<CONT.MANA> + 2)
        CONT.MANA = <QVAL (<CONT.MaxMANA> < <CONT.MANA>)?<CONT.MaxMANA>:<CONT.MANA>>
    ENDIF
    TIMER = 1
    RETURN 1

Автор: Re-Active 12.1.2019, 21:56

Фуууу... отвратительно.

ELSE
TIMER = 1


еще хуже
MaxMANA

Автор: $yst3m_3rr0r 12.1.2019, 23:49

Цитата(Re-Active @ 5.1.2019, 10:53) *

on=@uneqip
timer = -1

Сказал человек ... который ТРИГГЕР On=@UneQuip написать правильно не может ...


Ну, сделай так ... проблема что ли ...

Код
On=@Equip
    IF (<SRC.MEDITATION><80.0) || (<SRC.MAGERY><80.0)
        SRC.SYSMESSAGE You lack the required skill in magery/meditation to wear this
        UNEQUIP
        RETURN 1
    ENDIF
    TIMER = 1

Автор: Re-Active 13.1.2019, 0:01

мои опечатки хоть notepad+ исправит
а твой скрипт в принципе работать не будет.

Автор: $yst3m_3rr0r 13.1.2019, 13:13

Цитата(Re-Active @ 13.1.2019, 0:01) *
а твой скрипт в принципе работать не будет.
Может мозги твои не работают в принципе ? Скрипт как Швейцарские часы работает ...

Автор: Re-Active 13.1.2019, 14:34

Ты опять вылез не в тот раздел ...
src.kill += 10
не помнишь?

Автор: Llirik 13.1.2019, 20:33

Не ссорьтесь девочки!)

Автор: tytyrion 14.1.2019, 1:03

Ну, скажем так, что работает все правильно в том варианте, что я написал. И мана регенится ночью, и если скил ниже, чем нужно - вещь не одевается.
Вот только не могу понять, какую ошибку видит сфера в строчке

Код
cont=<cont.findlayer(21).uid>
.
Пишет
Код
ERROR:(tailoring_rare.scp,134)Invalid container 00

При этом плащ падает пак. То есть все работает.


Причем в других идентичных итемах сфера не видит никакой ошибки (пример другого итема написал выше). Только здесь.

Автор: Sirocco 14.1.2019, 9:49

да ты снимаешь вещь. а таймер продолжает идти
и нет у него никакого контейнера.

Автор: Llirik 14.1.2019, 14:30

Цитата(Sirocco @ 14.1.2019, 9:49) *

да ты снимаешь вещь. а таймер продолжает идти
и нет у него никакого контейнера.

Совершенно верно!

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)