Теги форумов: Forth, программирование

Фильтр: JBForth, Java
Теги : Forth, JBForth, Java, программирование
 
Тема
1
2005-10-01, BLaS: ~~~:) забавно у меня уже был int : [code forth] : int 0 + ; [/code] а вот так сработает интересно, число в строку [code forth] : string "" S+ ; [/code]
2
2005-10-01, BLaS: ~~~зашибись )
5
2005-10-01, Vairus: все понял сенк
2
2005-10-01, Balancer: ~~~Кстати, не помню уже когда, но ввёл слово gm_ride. Оно перекрывает вызов слова ride при вызове //ride и выдаёт соответствующий диалог.
1
2005-10-01, Balancer: ~~~[b].trade ( "text" "sender" -- )[/b] - соответственно, вывод в торговый канал.
1
2005-10-01, Balancer: ~~~Введён аналог команды show под именем [b]pshow[/b]. Разница в том, что pshow требует ещё одного параметра - идентификатора игрока, для которого выводится окно. [code] "Test" player@ target@ pshow [/code] Вывести окно тому, кто выбран твоей целью.
0
2005-10-01, Balancer: ~~~[code] "2 2 * ." eval [/code] распечатает "4". [code] 5 "to xxx" eval [/code] полностью эквивалентно [code] 5 to xxx [/code] Соответственно, можно определять новые слова прямо из кода. (Написание программы программой): [code] ": test 123 . ;" eval test [/code]
0
2005-10-01, Balancer: ~~~Переменные, описанные как suvalue ("Savable User VALUE-переменные") при выходе пользователя сохраняются в БД автоматически. При старте его - загружаются. Синтаксис и использование идентичны VALUE-переменным, за исключением того, что значение, присваиваемое в описании переменной, устанавливается только один раз, если эта переменная в БД пользователя отсутствует. [code forth] false suvalue jailed? 0 suvalue jail-to-collect 0 suvalue jail-total-collected "0 0 0" suvalue jail-coords-back ... : jail-me ( items_count -- ) int to jail-to-collect jail-to-collect jail-total-collected + to jail-total-collected true to jailed? Эти переменные будут сохраняться на сервере автоматически ... ; [/code]
4
2005-09-25, Balancer: ~~~Тьфу, конечно же, //jbf_reload :) Вообще, об этом много на форуме писалось :)
2
2005-09-23, Balancer: ~~~[code] //true to event? //event-is-here [/code] Всё, после этого те, кто наберёт ".to_event" окажутся в этом месте. Для отключения: [code] //false to event? [/code]
0
2005-09-21, Balancer: ~~~[b]//bm+ [/b] - добавить закладку [b]//bm [/b] - перенестись на выбранное место. Чуть позже добавлю переход по списку (с выбором из меню) и удаление ненужных букмарков.
0
2005-09-21, Balancer: ~~~[code forth] : on-skill-1170-target ... ; [/code] Вызывается на каждое применение скилла по каждой из целей. Реализовал, например, на нём базовый Anchor. Но толку очень мало пока. Механизм AI в l2j стал совсем кошмарным и идиотским. Реально из Форта управлять гибко чем-то фиг выходит. На каждый чих нужно дописывать заглушку-переходник. Всё из-за того, что тот, кто разрабатывал систему, помешался на enum'ах. А это кранты для reflection. По крайней мере, я не нашёл ни одного способа получить enum по его имени :-/ Если кто знает - поделитесь. А то пока работа встала.
8
2005-09-18, Balancer: Выложил это решение в SVN
0
2005-09-18, Balancer: ~~~explode разбивает строку на элементы, разделённые пробелами. Возвращается список элементов. Например, получение двух первых слов из строки любой длины: [code] explode получаем список list> раскладываем список на отдельные элементы в стеке и их число 2 - ndrop сбрасываем из стека n-2 элементов всё, остались только первые два [/code]
0
2005-09-17, Balancer: ~~~Например, теперь "/main.f" при подключении подкаталогов указывать не обязательно. Исправлена работа слова Исправлен ndrop А вот в работе value-переменных при их переопределении заметил баг. Точнее сказать не могу, точно не вылавливал.
0
2005-09-17, Balancer: ~~~[code] { 1 2 3 2 2 * } [/code] Будет создан список из 4-х элементов, 1, 2, 3 и 4. Слово '{' запоминает состояние стека, а '}' формирует из того, что появилось в стеке, список. Понятное дело, что если внутри будет формирование других списков - то они тоже попадут как элементы нового списка. [code] { { "Player1" 12 } { "Player2" 14 } } " '.' do-list " do-list [/code] Слово [b]do-list ( list "code" -- )[/b] выполняет код "code" для каждого элемента списка.
1
2005-09-17, zabbix: вот спасибо теперь через телнет буду плюшки раздавать
1
2005-09-17, Balancer: ~~~[b]world[/b] Возвращает объект L2World сервера.
0
2005-09-17, Balancer: ~~~Кладёт на стек, соответственно, null :)
0
2005-09-17, Balancer: : find_player ( "name" -- player ) world "Player" get(s) ; Find player by his name ; Вызов xxx = world.getPlayer(name)
0
2005-09-17, Balancer: ~~~Если при обращени к html-файлу NPC с кодом NNNN, находится одно из сабжевых слов, то его вывод дописывается в конец нужного файла, перед тэгом . Позволяет строить динамическую реакцию NPC. Например, дописать строчку эвента только тогда, когда этот эвент активен: [code forth] : npc-7120-dialog-append ' ' . ' Event "Theft of Kamilla" ' . ; [/code] Если будет загружаться этот код, то при обращении к NPC 7120 (Maximilan) внизу его диалога появится соответствующая сточка.
0
2005-09-17, Balancer: ~~~Не проверено точно, но теперь нераспознанные админ-команды обрабатываются хитрее. Если при вызове [b]//command parameters[/b] находится слово [b]gm_command[/b], то оно вызывается без проверки доступа. Все проверки должно делать это слово. Если же такого слова нет, то тогда, как и раньше, выполняется Форт-код, если у игрока достаточный (GM_USE_FORTH) уровень доступа. Позволяет вводить новые админ-команды на Форте с тонким различием уровня доступа и переписывать старые команды. Полное тестирование будет чуть позже.
6
2005-09-17, TD_ALECS: ~~~Так, а у тебя написано дверь 2 её 12345678 или это не то ? Так, а будете реализовывать на Форте открываение дверей именно кланом.
0
2005-09-16, Balancer: ~~~Попробую тут собрать некоторое обобщение, а то не все знают, что к чему, и прикреплю эту тему :) Опять же, тут же можно делать заказы-хотелки. JBForth умеет: - Создавать, удалять, проверять наличие любых предметов или денег в инвентаре пользователя. - Проверять/изменять любые property любого объекта обращения к которым идет через getXxx()/setXxx(). Правда, не до всех объектов есть ещё доступ. - Телепортировать игрока, как по абсолютным координатам так и по относительным - Формировать HTML-диалоги - [http://balancer.ru/forums/viewt opic.php?id=3995|Вызывать слова на гибель NPC] - [http://balancer.ru/forums/viewt opic.php?id=3994|Открывать/закры вать двери] - Производить определённые операции на входе/выходе игрока, а при запуске сервера даже дважды - до начала всех инициализаций и после них. - [http://balancer.ru/forums/viewt opic.php?id=3331|Выполнять отложенный на произволное время вызов слова] (таймерные задачи) - Выполнять определённый код для всех игроков сервера - Выполнять SQL-запросы - Обеспечивать…
7
2005-09-16, Balancer: ~~~[quote=zabbix]а его проэксплоитить низя? выбрать непися, и байпасснуть слово из хелпа?[/quote] Нет. Я уже писал, что из bypass вызывать Форт-слова прямо сейчас нельзя. Не очень удобно, но такова жизнь. Точнее - кривь идеологии корейцев :D Было описано…
Смотри также

в начало страницы | новое
 
Поиск
Настройки
Статистика
Рейтинг@Mail.ru