Главная | Форум | Статьи | Фaйлы| Картинки WoW | Профиль | Регистрация | Вход

[ Новые сообщения · Правила форума · Поиск · RSS ]

WoW-Info — информационный World of Warcraft портал

Пособие для создания скриптов ядра Trinity(spells,creature, - Форум

  • Сторінка 1 з 1
  • 1
Пособие для создания скриптов ядра Trinity(spells,creature,
pro[100]DeadlyДата: Неділя, 05.12.2010, 19:51 | Сообщение # 1



pro[100]Deadly
Группа: Видалені

Замечания:






Хочу обратить ваше внимание!
Создатели данного пособия предполагают, что люди которые его будут читать уже знакомы с основами языка с/с++. Если вы как минимум не знаете что такое типы данных, условные операторы, константы, функции, мы рекомендуем вам сначала ознакомится с основами языка, прежде чем читать.

И так, для начала нам нужно понять что такое скрипт в ядре тринити. Для облегчения создания скриптов в ядре создан специальный класс. Этот класс называется ScriptedAI. Объекты, свойства и поля этого класса используются в каждом скрипте.
Теперь перейдем к созданию скриптов с эскортом. Что означает словосочетание "скрипт с эскортом"? Это означает, что существо, которое будет использовать данный скрипт будет идти/бежать по заданному маршруту, выполняя определенные действия в зависимости от ситуации. Для создания скриптов с эскортом используются объекты подкласса класса ScriptedAI, который называется npc_escortAI. Так как основная задача скрипта - заставить существо путешествовать по заданному маршруту, то в первую очередь рассмотрим как создать этот маршрут и попробуем понять как именно происходит процесс путешествия существа по миру игры. Возможно вы знаете что игровой мир это своеобразная трехмерная карта. Каждая точка мира имеет свои координаты. Эти координаты - x,y,z отвечают так же за текущее положение существа в мире. Что бы создать путь для существа, нужно сначала найти точки с координатами x,y,z, по которым это существо будет идти. После чего существо будет идти по прямой линии от первой точки пути до второй и так до самого конца. После того как мы нашли нужные нам точки нам следует привязать их к скрипту существа. Для этого существует несколько способов. Наиболее распространенный и рациональный - заполнение таблицы script_waypoint в базе данных World. Существует вики, где есть подробное описание полей этой таблицы. Тем не менее я приведу описание таблицы в этом пособии.
script_waypoint.bmp
На рисунке вы можете увидеть структуру таблицы. Она имеет 7 полей:
entry
pointid
location_x
location_y
location_z
waittime
point_comment
Первое поле entry - в этом нам нужно занести entry существа, для которого создается маршрут. entry должно совпадать с entry этого существа в таблице creature_template.
Второе поле pointid - это номер точки на карте в которую будет идти существо. Обычно нумерация точек идет от 0 или 1.
Далее следуют поля location_x, location_y, location_z. В эти поля нам нужно занести координаты каждой точки маршрута существа.
Шестое поле waittime. В этом поле можно записать время в миллисекундах (1000 = 1 секунде). Это время паузы, которую существо сделает, прежде чем снова идти, по достижению определенной точки пути.
Седьмое поле использует для описания/расшифровки. В нем программист может написать подсказку. Например, что по достижению определенной точки будет выполнено определенное действие (например существо что-то скажет).
Рассмотрим пример:
Код:

Code
DELETE FROM `script_waypoint` WHERE `entry`=18760;
INSERT INTO `script_waypoint` VALUES
    (18760 ,0,-2265.21,3091.14,13.91,0, ''),
    (18760 ,1,-2266.80,3091.33,13.82,1000, ''),
    (18760 ,2,-2268.20,3091.14,13.82,7000, 'progress1');

Если существо с entry = 18760 будет использовать скрипт эскорта, то во время старта эскорта, существо с места спавна сначала пойдет в точку 0 с координатами -2265.21,3091.14,13.91, после чего существо начнет идти в точку 1 с координатами -2266.80,3091.33,13.82. Когда существо достигнет точки 1, оно сделает паузу в 1 секунду, после чего пойдет в точку 2. Так как точка 2 является последней точкой то по достижение этой точки существо выждет 7 секунд, после чего прекратит идти.
В следующем урывке мы рассмотрим случаи, когда средств базы недостаточно для создания маршрута существу.

 
InuyashaДата: Понеділок, 06.12.2010, 19:50 | Сообщение # 2



Inuyasha
Капрал
Группа: Пользователи
Сообщений: 76

Замечания:

Оффлайн
pro[100]Deadly,
Есть копипастишь, копипасти со скринами ... dry dry


 
pro[100]DeadlyДата: П`ятниця, 17.12.2010, 19:26 | Сообщение # 3



pro[100]Deadly
Группа: Видалені

Замечания:






Inuyasha да я не отрицаю что я копипаст для данного раздела но там на ткрк нету скринов где я это брал!
 
  • Сторінка 1 з 1
  • 1
Пошук:

Новые сообщения в темах
Сдам в аренду сервер и хостинг · (Хост Предложения)
Автор: redlaine
Последнее сообщение в 23:53
[Гайд] - Ездовые животные · (Гайды по WoW)
Автор: Darkensand
Последнее сообщение в 12:59
▃ ▅ █ STRIKE-DEATH | WOTL... · (Обычные сервера WoW)
Автор: Pensukdeath
Последнее сообщение в 05:18
Уход и забота за воинами: прок... · (Воин)
Автор: UncontesteD
Последнее сообщение в 17:34
Очень хороший зароботок!!! · (Флудилка)
Автор: Hordcore
Последнее сообщение в 12:57
Основы Sql · (Sql)
Автор: No-One
Последнее сообщение в 01:45
Баг на 30к крита 5.4.8 · (Баги WoW)
Автор: Darkensand
Последнее сообщение в 18:46
Баг на дамаг · (Баги WoW)
Автор: nikitadevil
Последнее сообщение в 18:44
Неуязвимость · (Баги WoW)
Автор: Darkensand
Последнее сообщение в 18:43
Бесконечный сокет · (Баги WoW)
Автор: Darkensand
Последнее сообщение в 18:42
Баг на ледянные баджи на uwow · (Баги WoW)
Автор: Darkensand
Последнее сообщение в 18:31
Новейший баг на дамаг ханта · (Баги WoW)
Автор: Act1mel
Последнее сообщение в 18:23
[БАГ] + к Урону для всех класс... · (Баги WoW)
Автор: Darkensand
Последнее сообщение в 18:22
Ретро паладин 4.3 · (Паладин)
Автор: Darkensand
Последнее сообщение в 02:05
Hellscream.ORG - Азиатский WoW... · (Обычные сервера WoW)
Автор: Alexstrasza007
Последнее сообщение в 10:30

Контакты Контакты Copyright WoW-Info — World of Warcraft портал © 2026 | Условия и правила использования ресурса | Реклама / Услуги
WoW-Info портал.World of Warcraft портал — готовые сервера, сайты, картинки, аддоны, патчи, читы, баги, mangos, ArcEmu, TrinityCore, Warcraft 3, новости, Cataclysm...
Яндекс.Метрика Хостинг від uCoz