Kamrad.ru
 
 
дневники | кабинет | регистрация | календарь | участники | faq | правила | поиск | фотоальбом | каська | выйти
Kamrad.ru Kamrad.ru » Тематические форумы » CRPG на основе правил AD&D » Снова скрипты, нужна помощь в написании
новая тема  ответить следующая тема | предыдущая тема
Автор
 
AleS Key
Question17-05-2001 06:30 URL сообщения             Редактировать
Guest



Снова скрипты, нужна помощь в написании

Задача: Написать скрипт, который:
1. заставляет барда петь, когда тот ничем не занят.
2. заставляет барда бежать _обязательно горланя песню_ за персонажем (если тот отходит слишком далеко от барда), который находтится в первой позиции (по кнопке 1 выделяется).
С первой задачей справился без проблем взяв скрипт thief3 и переправив поиск ловушек (функцию и модалу) на соответсвующие песне. Но вот со второй возникла одна проблема - как определить персонажа в первой позиции. LeaderOf(Myself), Player1, Player1Fill определяют протагониста. Сейчас он бегает только за ним. Есть конечно вариант зашить на кнопки переключение плееров с 1-го по 6-й, но коряво это как то, хотелось бы попроще.
В описании есть далеко не все. Может кто-нибуть что подскажет или хотя бы дайте ссылку на более полное описание ресурсов или интересных примеров с комментариями.

Sergul'a - offline Sergul'a
Question17-05-2001 19:57 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Помочь не могу, а вот спросить - спрошу.
Это какой же командой этот придурок поет песню?

AleS Key
Smile18-05-2001 06:46 URL сообщения             Редактировать
Guest



Так я же вроде написал. В двух строчках копии скрипта thief3 от БГ2 поменять надо: в условии поставить BATTLESONG место DETECTTRAP (в этом названии могу напутать) и в теле после THEN поставить BattleSong() место ловушек.

Sergul'a - offline Sergul'a
Smile18-05-2001 20:57 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



Дык не работал у меня этот самый BattleSong(), о чем и пишу. Я, правда, сам писал скрипт, с нуля, но не думаю, что сделал где-то ошибку.
Ладно, попробую именно изменять thief3, спасибо.

Dom - offline Dom
Smile19-05-2001 02:32 URL сообщения      K-Mail    Профиль    Поиск    Контакт-лист   Редактировать
Камрад



У меня встал примерно такой же вопрос, но его я решить не смог. Тогда я поставил вопрос по другому. За кем должны бегать персонажи? Ответ прост - за тем, кто сражается в рукопашную. Поэтому в свои скрипты я вставил выбор первого (по номеру) персонажа, имеющего класс воин, паладин или рейнджер.
Выглядит это так:

IF
!See(NearestEnemyOf(Myself))
!GlobalGT("psсript_fr","LOCALS",0)
Exists(Player1)
OR(3)
Class(Player1,FIGHTER)
Class(Player1,PALADIN)
Class(Player1,RANGER)
THEN
RESPONSE #100
SetGlobal("psсript_fr","LOCALS",6)
END

Тоже самое для остальных (со 2 по 6) персонажей, присваивая переменной psсript_fr значения от 5 до 1.
Тогда приказ следовать за персонажем будет выглядеть так:

IF
ActionListEmpty()
Global("psсript_fr","LOCALS",6)
Exists(Player1)
!Range(Player1,25)
!See(NearestEnemyOf(Myself))
THEN
RESPONSE #100
MoveToObject(Player1)
END

Повторяем это условие еще 5 раз меняя значение переменной psсript_fr и номер персонажа.
Так как значение переменной psсript_fr будет записано в сейвах, то при изменении состава группы следует его обнулить, используя другой скрипт, включающий в себя следующее:

IF
GlobalGT("psсript_fr","LOCALS",0)
THEN
RESPONSE #100
SetGlobal("psсript_fr","LOCALS",0)
END

Если после этого включить исходный скрипт, то выбор персонажа, за которым следовать, будет сделан заново.

AleS Key
Smile21-05-2001 04:21 URL сообщения             Редактировать
Guest



2Dom: Спасибо.
В принципе идея ясна. НО, все же мне нужно, чтобы бард держался именно 1-го в линейке, а не на первого присоединенного воина. Я примерно так себе этот скрит и представлял, только переключение на персонажа делать не автоматом на первого воина (можно наверное еще поставить условие на оружие - рукопашное или дистанционное), а все же на кнопки - выбирать при помощи их соответствующий глобальный скрипт для Player1-6. Можно конечно вообще заставить барда метаться между всеми партейцами.
Еще один вопрос: Командой MoveToObject скриптуемый бежит вплотную к объекту. Нет ли возможности не добегать шагов эдак пять? Если добавим в конце этой команды ...Follow, то скриптуемый будет держать нужную дистанцию, НО при этом все модальные действия (песня, поиск ловушек, изгнание) завершаются.
А общем то идея с бардом простая:
1. Желательно накрывать песней большее количество партейцев.
2. НО, если перый в линейке сильно отрывается вперед, то следовать за ним.
3. Пытаться при этом не подходить к битве вплотную и стараться находить золотую середину (для обеспечения п.1)

p.s. А более подробного описания команд нигде нет?

Текущее время: 00:50
новая тема  ответить следующая тема | предыдущая тема
 
Перейти:

версия для печати   отправить эту страницу по e-mail   подписаться на эту тему

 
Powered by: vBulletin Version 2.0.1
Copyright ©2000, 2001, Jelsoft Enterprises Limited.
Любое использование материалов сайта
возможно только с разрешения его администрации.


 

Рейтинг@Mail.ru
Рейтинг@Mail.ru