Здравствуйте, гость ( Вход | Регистрация )

> bandageself - почему не работает?
ikorus
сообщение 3.11.2014, 14:27
Сообщение #1


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.948
Возраст: 36



В клиенте встроенный макрос bandageself не работает. Допускаю, конечно, что я просто не разобрался, как правильно его использовать, но информации по тому, как правильно я не нашел, поэтому можно считать, что не работает.

Кто-нибудь знает, как этот макрос работает?

Как альтернативу я пробую написать скрипт на хил, срабатывающий от текстовой команды, но уперся в проблему: чтобы скрипт запустить, нужен даблклик по объекту (IMG:style_emoticons/default/sad.gif) Каким еще образом можно запустить скрипт, а еще лучше - каким образом можно даблклик эмулировать в скрипте?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
RL_ka
сообщение 3.11.2014, 21:24
Сообщение #2


*****

Разработчик Injection
Сообщений: 474
Регистрация: 13.7.2013
Группа: Модераторы
Наличность: 14979
Из: Екатеринбург
Пользователь №: 16.211



Ну не удивительно.
У тебя вообще ни в одном месте скрипта нет ни единого упоминания о бинтах(IMG:style_emoticons/default/smile.gif)
Скрипт просто хилит и создаёт грязный бинт(IMG:style_emoticons/default/smile.gif)

Нужно сначала бинты найти в бекпаке.
Я намеренно не буду писать тебе что и как, чтобы ты сам хоть немного "вливался" в это (IMG:style_emoticons/default/smile.gif)
Простейшая проверка на наличие бинтов пишется вот так:
Код

var binti;
foreach item in ( EnumerateItemsInContainer( who.backpack ) )
    if (item.objtype == 0x0e20) // или любой другой тип бинтов
        binti := item;
    endif
endforeach

if (!binti)
    SendSysMessage(who, "You have no bandages....");
    return 0;
endif


С помощью этой проверки ты во-первых устанавливаешь наличие бинтов в бекпаке, а во-вторых получаешь на них ссылку, для дальнейшего использования в скрипте (удаления 1 штуки)
Подумай сам куда это лучше всего вставить(IMG:style_emoticons/default/smile.gif)
Все использованные функции стандартные, отсюда http://docs.polserver.com/pol099/index.php
Как забрать 1 бинт можешь найти по той же ссылке(IMG:style_emoticons/default/smile.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ikorus
сообщение 5.11.2014, 15:17
Сообщение #3


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.948
Возраст: 36



Цитата(RL_ka @ 4.11.2014, 0:24) *

Ну не удивительно.
У тебя вообще ни в одном месте скрипта нет ни единого упоминания о бинтах(IMG:style_emoticons/default/smile.gif)
Скрипт просто хилит и создаёт грязный бинт(IMG:style_emoticons/default/smile.gif)

Нужно сначала бинты найти в бекпаке.
Я намеренно не буду писать тебе что и как, чтобы ты сам хоть немного "вливался" в это (IMG:style_emoticons/default/smile.gif)
Простейшая проверка на наличие бинтов пишется вот так:
Код

var binti;
foreach item in ( EnumerateItemsInContainer( who.backpack ) )
    if (item.objtype == 0x0e20) // или любой другой тип бинтов
        binti := item;
    endif
endforeach

if (!binti)
    SendSysMessage(who, "You have no bandages....");
    return 0;
endif


С помощью этой проверки ты во-первых устанавливаешь наличие бинтов в бекпаке, а во-вторых получаешь на них ссылeку, для дальнейшего использования в скрипте (удаления 1 штуки)
Подумай сам куда это лучше всего вставить(IMG:style_emoticons/default/smile.gif)
Все использованные функции стандартные, отсюда http://docs.polserver.com/pol099/index.php
Как забрать 1 бинт можешь найти по той же ссылке(IMG:style_emoticons/default/smile.gif)


Скрипт воо ще читерский вышел - не только бинты не проверяются, но и занятость перса тоже. Можно вызывать хил даже во время другого хила, можно во время хайда и медитации (IMG:style_emoticons/default/biggrin.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Сообщений в этой теме
ikorus   bandageself - почему не работает?   3.11.2014, 14:27
Juzzver   для работы макрос команды bandageself нужно создат...   3.11.2014, 14:37
ikorus   для работы макрос команды bandageself нужно созда...   3.11.2014, 16:54
RL_ka   Как альтернативу я пробую написать скрипт на хил,...   3.11.2014, 17:03
ikorus   Вот такой скрипт успешно работает, но как видно - ...   3.11.2014, 20:46
ikorus   Простейшая проверка на наличие бинтов пишется вот...   5.11.2014, 21:58
RL_ka   Ну... тебе всё-таки придётся начать погружаться в ...   5.11.2014, 16:27
ikorus   [code] if (who.attached) SendSysMessage...   5.11.2014, 23:04
pager   этот атрибут блокирует использование хила только,...   6.11.2014, 6:49
RL_ka   Ну тогда остаётся последний вариант фикса "из...   6.11.2014, 2:25
ikorus   Отладил вариант с навешиванием пропертисов - все р...   6.11.2014, 22:18
RL_ka   Слабое место: если в момент задержки, между начало...   7.11.2014, 0:33
ikorus   Слабое место: если в момент задержки, между начал...   7.11.2014, 20:24
RL_ka   Молодец, быстро учишься :) Следующая твоя задача,...   7.11.2014, 22:58
PolDev   А что за два скрипта? А то я не уловил ))   12.11.2014, 21:44
RL_ka   А что за два скрипта? А то я не уловил )) обычн...   13.11.2014, 12:05


Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 6.11.2025, 20:03
Designed by Nickostyle