Текущее время: Пт 10 май 2024 14:22

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 527 ]  На страницу Пред.  1 ... 8, 9, 10, 11, 12, 13, 14 ... 18  След.
Автор Сообщение
 Сообщение Ср 20 авг 2008 21:58
Профиль  
Техногенный
Сообщения: 8299
Зарегистрирован: Пт 29 дек 2006 17:31
Вот и убери вопрос с вариантами. :roll:

_________________
thrusting squares through circles


 Сообщение Ср 20 авг 2008 23:15
Профиль  
Механоид 5 поколения
Аватара пользователя
Сообщения: 1043
Откуда: Планета Земля
Зарегистрирован: Ср 3 май 2006 10:37
Или ковыряй скрипты Метрополитена Полигона-4, они на твоём искомом принципе и основаны. Если что, я говорю о подземных коммуникациях, доступ к которым осуществляется через Добывающие Установки. Правда, где искать этот скрипт я хз.


 Сообщение Ср 20 авг 2008 23:48
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
Чего там "ковырять"? Одна строчка в одном событии. :roll:

Добавлено спустя 2 минуты 17 секунд:

Достаточно быть внимательным в топиках (а еще лучше - ознакомиться с aim.cpp).


 Сообщение Ср 27 авг 2008 18:52
Профиль  
Активный участник
Аватара пользователя
Сообщения: 83
Зарегистрирован: Пт 4 июл 2008 21:16
Вот чего я так и не понял, так это, как и где нужно прописать, что бы на локации появились генерируемые квесты?

_________________
Хотел бы я себе этот глайдер, жаль его придтся уничтожить!


 Сообщение Сб 30 авг 2008 12:23
Профиль  
Участник
Сообщения: 41
Зарегистрирован: Сб 30 авг 2008 12:04
Нужен скрипт, для создания такой фени. Залетаем в дание, оставляем там свой глайд и в другой сектор отправляемся на заданном. Потом обратно ныряем в здание и назад в это т же сектор. Короче, как сменить два глайдера и при этом деньги, ничего не исчезало и как-бы не начиналось все заново?

Добавлено спустя 4 минуты 1 секунду:

И вот ещё кое, что, где надо прописывать корни задания, где нужно прописывать, что бы оно потом появилось в здании и вобще, кто знает, отпишите все названия и их принадлежность. Что куда нужно прописывать? Самые главные если можно.


 Сообщение Сб 30 авг 2008 14:14
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
2 Algoritm
1.
//СЕКТОР 1
void proc OnEnterBuild(char item)
{
PushConfig("НОВАЯ КОНФИГУРАЦИЯ");
MoveToLocation("СЕКТОР 2");
}

//СЕКТОР 2
void proc OnEnterBuild(char item)
{
PopConfig();
MoveToLocation("СЕКТОР 1");
}

2.
Просмотри Scripts\Clans\...src. Там скрипт соответствует клановому заданию. В каждом есть локальный OnEnterBuild, через который они добавляются.


 Сообщение Сб 30 авг 2008 15:11
Профиль  
Участник
Сообщения: 41
Зарегистрирован: Сб 30 авг 2008 12:04
А насчет второго вопроса ничего нету?

Добавлено спустя 28 минут 24 секунды:

Что, неужели никто не знает, что и где нужно прописывать, что бы сделать задание, кто нибуть, хоть приблизительно мне скажите. А то в игровых скриптах я запутался. Там почти в каждом скрипте про задание написано... :roll:


 Сообщение Сб 30 авг 2008 15:29
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
2 Algoritm
На примере квестов Меркаторов (Mercators.src): в OnEnterBuild производится процедура CheckQuest, которая выдает награду, если задание выполнено. Там же в зависимости от порядка через Quest("...") выводится в правом верхнем окошке задание. При нажатии на появившееся задание срабатывает событие OnQuest. У разработчиков он сразу вызывает take_quest, но нам он, в принципе, не так нужен. В OnQuest через Text выводится соответственно текст задания, в котором есть кнопочка "Принять задание". При нажатии на нее срабатывает процедура Yes, через которую квест окончательно принимается и нам выдают необходимое снаряжение.


 Сообщение Вс 31 авг 2008 5:33
Профиль  
Участник
Сообщения: 41
Зарегистрирован: Сб 30 авг 2008 12:04
А само задание нужно писать в отдельном скрипте и для каждого объекта тоже нужно делать свой скрипт, относящийся к заданию, или все в одном скрипте можно сделать?


 Сообщение Вс 31 авг 2008 14:28
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
2 Algoritm
Лучше все в одном, конечно.


 Сообщение Вс 31 авг 2008 14:45
Профиль  
Участник
Сообщения: 41
Зарегистрирован: Сб 30 авг 2008 12:04
А, что нужно прописать, что бы это задание появилось в здании? В скрипте здания? И как оно должно выглядеть?


 Сообщение Вс 31 авг 2008 15:53
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
Ну я же написал. :neutral: Квест появляется после Quest("..."); Так двумя словами не объяснишь - самому посмотреть надо и сперва сделать по образцу. :roll:


 Сообщение Вс 31 авг 2008 16:54
Профиль  
Участник
Сообщения: 41
Зарегистрирован: Сб 30 авг 2008 12:04
Да я там все скрипты посмотрел и так и не понял, что и где надо сохдавать. Стоило мне в Events/ы заглянуть и в Include.
Почти в каждом скрипте написано об определенном квесте, вот из- за этого я ошибся. Я не вижу материнский скрипт.


 Сообщение Вс 31 авг 2008 16:59
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
2 Algoritm
Материнским тут служит глобальный, если можно так выразиться, OnEnterBuild, который Clans\Events\EnterBuild.src, который вызывает клановые скрипты (квесты каждого клана - отдельный скрипт) в зависимости от значения item в событии OnEnterBuild. В свою очередь он вызывается Events\EnterBuild.src.


 Сообщение Вт 30 сен 2008 14:37
Профиль  
Механоид 2 поколения
Аватара пользователя
Сообщения: 279
Откуда: П-камчатский
Зарегистрирован: Пт 31 авг 2007 5:53
Я знаю, что тема вся давно тёрта-перетёрта, но объясните мне, посредством чего прикрепляются операции к скриптам?

На сколько я понял все пути к этим операция м прописаны в файлах E:\Program Files\1C\AIM II\Data\CONFIG\objects.ini и
E:\Program Files\1C\AIM II\Data\Mods\ имя мода.src
Например там описаны команды OnEnterSensor и прочее.
Можно ли создать свою операцию? например
Код:
OnNew( char sensorID)


Я пытался менять направление путей к событию OnEnterSensor
в документе своего мода( E:\Program Files\1C\AIM II\Data\Mods\ proba.ini), перенаправлял его в папку Clans\Events\New.src, но он упорно использует изначальный файл
Clans\Events\EnterSensor.src

И еще, в папке Scripts\Events расположены только ссылки на рабочий скрипт в соответствующей Clans\Events, если так, то зачем это?

Добавлено спустя 5 минут 44 секунды:

Я еще хотел спросить, например, я хочу занести в переменную значание функции char proc GetMechClan(char gliderID), т.е я хочу, чтобы переменная носила значение клана игрока.

Допустим, я ставлю проверку механоидов на принадлежность к клану, и если он в клане Н я отключаю поле между эммитерами и пропускаю его, а если в другом, не пропускаю.

Добавлено спустя 7 минут 43 секунды:

У меня вышло следующее:
Код:
if( GetMechClan("ARIO")== "ORG_NARGOON")

{  SetBoundBetween( "1", "2", 0);
}

Скриптор ошибки не нашел, но это только для ARIO, получается, чтобы проверять любого механоида, независимо от имени, я должен назначить переменную, в которую заносится имя меха, так как функция GetMechClan() ребует в качестве параметра переменную.Так?


 Сообщение Ср 1 окт 2008 13:07
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
coolerOK писал(а):
Можно ли создать свою операцию?
Нет, там просто ссылки глобальных событий на твой скрипт. Т.е. если где-то произойдет, скажем, OnTryConvict, то он сразу сошлется на указанный тобой скрипт и произойдет то, что тебе надо в этот момент. В данном (Convict) случае, это принятие механоида в клан.
coolerOK писал(а):
так как функция GetMechClan() ребует в качестве параметра переменную.Так?
Нет, указано может быть как угодно, главное, чтоб правильно. Каждый глайдер имеет имя (такие как ARIO, INFERION, TARANTOG) и идентификацию (TS_GRP_ARIO, TS_GRP_INFERION, TS_GRP_TARANTOG). Идентификация может быть задана какая угодно в соответствии с соображениями разработчика. Применять надо ее.
Собственно:
if (GetMechClan("TS_GRP_ARIO...


 Сообщение Ср 1 окт 2008 13:14
Профиль  
Механоид 2 поколения
Аватара пользователя
Сообщения: 279
Откуда: П-камчатский
Зарегистрирован: Пт 31 авг 2007 5:53
То есть, как бы я не хотел, он будет ссылаться на скрипты в папке Clans\Events все нужно прописывать именно в этих скриптах. Так получается?


 Сообщение Ср 1 окт 2008 13:18
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
Он будет ссылаться туда, куда написано в Objects.ini. А изначально там прописаны Clans\Events.


 Сообщение Ср 1 окт 2008 13:21
Профиль  
Механоид 2 поколения
Аватара пользователя
Сообщения: 279
Откуда: П-камчатский
Зарегистрирован: Пт 31 авг 2007 5:53
Но как мне тогда получать идентификаторы каждого механоида, подлетающего к сенсору? Покажи пожалуйста.


 Сообщение Ср 1 окт 2008 13:27
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
Ээ... В смысле, любого из локации? Ну.. в этом я не уверен. Что-то такое пробовал, но не особо получилось. Вешаешь на OnEnterSensor вбивание в переменную item'а. Только толку.
А ИД сюжетных механоидов можно узнать через скрипты Locations, где создаются их глайдеры (см. в поиске CreateGroup).


 Сообщение Ср 1 окт 2008 13:33
Профиль  
Механоид 2 поколения
Аватара пользователя
Сообщения: 279
Откуда: П-камчатский
Зарегистрирован: Пт 31 авг 2007 5:53
Нет, мне нужны имена механоидов, любых, то есть мне нужен параметр gliderID для операции GetMechClan, она ведь по имени проверяет принадлежность механоида к клану, мне нужны имена не уникальных мехов, а любого меха.


 Сообщение Ср 1 окт 2008 13:36
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
А где должен быть механоид в тот момент, когда ты будешь узнавать, в каком он клане?


 Сообщение Ср 1 окт 2008 13:41
Профиль  
Механоид 2 поколения
Аватара пользователя
Сообщения: 279
Откуда: П-камчатский
Зарегистрирован: Пт 31 авг 2007 5:53
Подлетать к сенсору.


 Сообщение Ср 1 окт 2008 13:45
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
С любым механоидом это не получится. :roll:


 Сообщение Ср 1 окт 2008 13:47
Профиль  
Механоид 2 поколения
Аватара пользователя
Сообщения: 279
Откуда: П-камчатский
Зарегистрирован: Пт 31 авг 2007 5:53
Почему?


 Сообщение Ср 1 окт 2008 14:13
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
Для того, чтобы сработал сенсор, необходимо установить его посредством SetSensorNPC с указанием механоида, который должен попасть в него, но т.к. механоид случайный и его ИД нам неизвестен, мы должны узнать его посредством SetSensorNPC. Замкнутый круг выходит.)))


Последний раз редактировалось Krogoth Ср 1 окт 2008 18:37, всего редактировалось 1 раз.

 Сообщение Ср 1 окт 2008 14:18
Профиль  
Механоид 2 поколения
Аватара пользователя
Сообщения: 279
Откуда: П-камчатский
Зарегистрирован: Пт 31 авг 2007 5:53
Я ничего не понял :neutral:


 Сообщение Ср 1 окт 2008 14:41
Профиль  
Скриптизёр
Сообщения: 10646
Откуда: Мариуполь
Зарегистрирован: Пт 13 апр 2007 17:15
Для того, чтобы сенсор сработал, необходимо применить SetSensorNPC к конкретному механоиду, но а как ты можешь знать его?


 Сообщение Ср 1 окт 2008 16:35
Профиль  
Механоид 2 поколения
Аватара пользователя
Сообщения: 279
Откуда: П-камчатский
Зарегистрирован: Пт 31 авг 2007 5:53
Доперло


 Сообщение Пн 5 янв 2009 7:39
Профиль  
Механоид 2 поколения
Аватара пользователя
Сообщения: 279
Откуда: П-камчатский
Зарегистрирован: Пт 31 авг 2007 5:53
Когда-то Razum уже задавал этот вопрос, но ответа на него не дали, почему при создании нового скрипта в нем срабатывает только процедура OnEnterLocation( char locID) а для работы остальных приходится лезть в скрипты, например Clans\events\EnterSensor.src и описывать действия уже там. Почему функции не срабатывают?


Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 527 ]  На страницу Пред.  1 ... 8, 9, 10, 11, 12, 13, 14 ... 18  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB