• Новые темы в этом разделе публикуются автоматически при добавлении файла в менеджер ресурсов.
    Ручное создание новых тем невозможно.
Иконка ресурса

[TrinityCore] Многофункциональный питомец

webdes27

Легендарный
Проверенный
Победитель в номинации 2021
Победитель в номинации 2020
Победитель в номинации 2019
Светоч знаний
На страже закона
Часть системы
За заслуги перед форумом
Клиент разработчик
За веру и верность форуму
Сообщения
1 369
Розыгрыши
0
Решения
3
Репутация
3 894
Реакции
806
Баллы
1 733
Многофункциональный питомец


Код:
update creature_template set gossip_menu_id = 64000, /*name = 'Multi-functional pet', subname = 'Assistant',*/ AIName = 'SmartAI', npcflag = 2301939 where entry = 23909;

set
@npc    = 23909, -- Can not be changed
@spell  = 42609, -- Can not be changed
@main   = 64000, -- Can be changed       -- gossip_menu_id    -- If you change this value, change it in the update request.
@tel    = 64001, -- Can be changed
@A_tel  = 64002, -- Can be changed
@H_tel  = 64003, -- Can be changed
@AR_tel = 64004, -- Can be changed
@Buff   = 64005; -- Can be changed

/*
delete from gossip_menu where MenuID between @main and @Buff;
delete from gossip_menu_option where MenuID between @main and @Buff;
delete from gossip_menu_option_locale where MenuID between @main and @Buff;
delete from conditions where SourceGroup between @main and @tel;
delete from disables where entry = @spell;
delete from smart_scripts where entryorguid = @npc;
*/

insert into `gossip_menu_option` (`MenuID`, `optionid`, `optionicon`, `optiontext`, `optiontype`, `optionnpcflag`, `actionmenuid`, `actionpoiid`, `boxcoded`, `boxmoney`, `boxtext`) values
(@main, 1, 2, 'Teleport Menu', 1, 1, @tel, 0, 0, 0, null),
(@tel, 1, 3, 'Cities Alliance', 1, 1, @A_tel, 1, 0, 0, null),
(@A_tel, 1, 2, '1. Stormwind', 1, 1, @A_tel, 0, 0, 0, 'You sure?'),
(@A_tel, 2, 2, '2. Ironforge', 1, 1, @A_tel, 0, 0, 0, 'You sure?'),                 
(@A_tel, 3, 2, '3. Darnassus', 1, 1, @A_tel, 0, 0, 0, 'You sure?'),                 
(@A_tel, 4, 2, '4. Exodar', 1, 1, @A_tel, 0, 0, 0, 'You sure?'),
(@A_tel, 5, 2, '5. Shattrath', 1, 1, @A_tel, 0, 0, 0, 'You sure?'),                 
(@A_tel, 6, 2, '6. Isle of Quel Danas', 1, 1, @A_tel, 0, 0, 0, 'You sure?'),                 
(@A_tel, 7, 2, '7. Dalaran', 1, 1, @A_tel, 0, 0, 0, 'You sure?'),                 

(@tel, 2, 3, 'Cities Horde', 1, 1, @H_tel, 0, 0, 0, null),
(@H_tel, 1, 2, '1. Orgrimmar', 1, 1, @H_tel, 0, 0, 0, 'You sure?'),                 
(@H_tel, 2, 2, '2. Thunder Bluff', 1, 1, @H_tel, 0, 0, 0, 'You sure?'),                 
(@H_tel, 3, 2, '3. Undercity', 1, 1, @H_tel, 0, 0, 0, 'You sure?'),                 
(@H_tel, 4, 2, '4. Silvermoon City', 1, 1, @H_tel, 0, 0, 0, 'You sure?'),                 
(@H_tel, 5, 2, '5. Shattrath', 1, 1, @H_tel, 0, 0, 0, 'You sure?'),                 
(@H_tel, 6, 2, '6. Isle of Quel Danas', 1, 1, @H_tel, 0, 0, 0, 'You sure?'),                 
(@H_tel, 7, 2, '7. Dalaran', 1, 1, @H_tel, 0, 0, 0, 'You sure?'),                 

(@tel, 3, 3, 'Arena', 1, 1, @AR_tel, 0, 0, 0, null),                 
(@AR_tel, 1, 2, '1. Gurubashi Arena', 1, 1, @AR_tel, 0, 0, 0, 'You sure?'),                 
(@AR_tel, 2, 2, '2. Arena in the Circle of Blood', 1, 1, @AR_tel, 0, 0, 0, 'You sure?'),                 
(@AR_tel, 3, 2, '3. Round of tests', 1, 1, @AR_tel, 0, 0, 0, 'You sure?'),                 
(@AR_tel, 4, 2, '4. Stadium', 1, 1, @AR_tel, 0, 0, 0, 'You sure?'),

(@main, 2, 3, 'Buffer', 1, 1, @Buff, 0, 0, 0, null),                 
(@Buff, 1, 3, '|TInterface/ICONS/Spell_holy_prayeroffortitude:20|t Prayer of Fortitude', 1, 1, @Buff, 0, 0, 0, null),
(@Buff, 2, 3, '|TInterface/ICONS/Spell_magic_greaterblessingofkings:20|t Blessing of Kings', 1, 1, @Buff, 0, 0, 0, null),                 
(@Buff, 3, 3, '|TInterface/ICONS/Spell_holy_excorcism:20|t Protection from fear', 1, 1, @Buff, 0, 0, 0, null),                 
(@Buff, 4, 3, '|TInterface/ICONS/Spell_holy_greaterblessingofkings:20|t Blessing of Might', 1, 1, @Buff, 0, 0, 0, null),                 
(@Buff, 5, 3, '|TInterface/ICONS/Spell_holy_prayerofspirit:20|t Prayer of Spirit', 1, 1, @Buff, 0, 0, 0, null),                 
(@Buff, 6, 3, '|TInterface/ICONS/Spell_holy_greaterblessingofsanctuary:20|t Blessing of Sanctuary', 1, 1, @Buff, 0, 0, 0, null),                 
(@Buff, 7, 3, '|TInterface/ICONS/Spell_nature_thorns:20|t Thorns', 1, 1, @Buff, 0, 0, 0, null),                 
(@Buff, 8, 3, '|TInterface/ICONS/Spell_nature_regeneration:20|t Mark of the Wild', 1, 1, @Buff, 0, 0, 0, null),                 
(@Buff, 9, 3, '|TInterface/ICONS/Spell_holy_arcaneintellect:20|t Arcane Brilliance', 1, 1, @Buff, 0, 0, 0, null),
(@Buff, 10, 3, '|TInterface/ICONS/Spell_holy_greaterblessingofwisdom:20|t Blessing of Wisdom', 1, 1, @Buff, 0, 0, 0, null),                 
(@Buff, 11, 3, '|TInterface/ICONS/Spell_holy_prayerofshadowprotection:20|t Shadow Protection', 1, 1, @Buff, 0, 0, 0, null),

(@main, 3, 1, 'Shop', 3, 128, 0, 0, 0, 0, null),                 
(@main, 4, 6, 'Bank', 9, 131072, 0, 0, 0, 0, null),
(@main, 5, 6, 'Auction', 13, 2097152, 0, 0, 0, 0, null),

(@tel, 999, 7, 'Back...', 1, 1, @main, 0, 0, 0, null),                 
(@A_tel, 999, 7, 'Back...', 1, 1, @tel, 0, 0, 0, null),                 
(@H_tel, 999, 7, 'Back...', 1, 1, @tel, 0, 0, 0, null),                 
(@AR_tel, 999, 7, 'Back...', 1, 1, @tel, 0, 0, 0, null),                 
(@Buff, 999, 7, 'Back...', 1, 1, @main, 0, 0, 0, null);

insert into `gossip_menu` (`MenuID`, `TextId`) values                   
(@main, @main),                   
(@tel, @tel),                   
(@A_tel, @A_tel),                   
(@H_tel, @H_tel),                   
(@AR_tel, @AR_tel),                   
(@Buff, @Buff);

insert into conditions (SourceTypeOrReferenceId, SourceGroup, SourceEntry, ConditionTypeOrReference, ConditionValue1, Comment) values           
(14, @main, 1, 25, @spell, 'Spell'),
(15, @tel, 1, 16, 1101, 'Allianse'),
(15, @tel, 2, 16, 690, 'Horde');

insert into `disables` (`entry`, `flags`, `params_0`, `comment`) values         
(@spell, 49, '30,489,529,562,566,559,572,607,617,618,628', 'Ban on BG and arena');

insert into `gossip_menu_option_locale` (`MenuID`, `OptionID`, `Locale`, `OptionText`, `BoxText`) values
(@main, 1, 'ruRU', 'Телепорт Меню', null),
(@tel, 1, 'ruRU', 'Города Альянса', null),
(@A_tel, 1, 'ruRU', '1. Штормград', 'Вы уверены?'),
(@A_tel, 2, 'ruRU', '2. Стальгорн', 'Вы уверены?'),
(@A_tel, 3, 'ruRU', '3. Дарнас', 'Вы уверены?'),
(@A_tel, 4, 'ruRU', '4. Экзодар', 'Вы уверены?'),
(@A_tel, 5, 'ruRU', '5. Шаттрат', 'Вы уверены?'),
(@A_tel, 6, 'ruRU', '6. Остров Кель Данас', 'Вы уверены?'),
(@A_tel, 7, 'ruRU', '7. Даларан', 'Вы уверены?'),

(@tel, 2, 'ruRU', 'Города орды', null),
(@H_tel, 1, 'ruRU', '1. Оргриммар', 'Вы уверены?'),
(@H_tel, 2, 'ruRU', '2. Громовой Утес', 'Вы уверены?'),
(@H_tel, 3, 'ruRU', '3. Подгород', 'Вы уверены?'),
(@H_tel, 4, 'ruRU', '4. Луносвет', 'Вы уверены?'),
(@H_tel, 5, 'ruRU', '5. Шаттрат', 'Вы уверены?'),
(@H_tel, 6, 'ruRU', '6. Остров Кель Данас', 'Вы уверены?'),
(@H_tel, 7, 'ruRU', '7. Даларан', 'Вы уверены?'),

(@tel, 3, 'ruRU', 'Арены', null),
(@AR_tel, 1, 'ruRU', '1. Арена Гурубаши', 'Вы уверены?'),
(@AR_tel, 2, 'ruRU', '2. Арена в Круге Крови', 'Вы уверены?'),
(@AR_tel, 3, 'ruRU', '3. Круг испытаний', 'Вы уверены?'),
(@AR_tel, 4, 'ruRU', '4. Ристалище', 'Вы уверены?'),

(@main, 2, 'ruRU', 'Баффер', null),
(@Buff, 1, 'ruRU', '|TInterface/ICONS/Spell_holy_prayeroffortitude:20|t Молитва стойкости', null),
(@Buff, 2, 'ruRU', '|TInterface/ICONS/Spell_magic_greaterblessingofkings:20|t Благословение королей', null),
(@Buff, 3, 'ruRU', '|TInterface/ICONS/Spell_holy_excorcism:20|t Защита от страха', null),
(@Buff, 4, 'ruRU', '|TInterface/ICONS/Spell_holy_greaterblessingofkings:20|t Благословение могущества', null),
(@Buff, 5, 'ruRU', '|TInterface/ICONS/Spell_holy_prayerofspirit:20|t Молитва духа', null),
(@Buff, 6, 'ruRU', '|TInterface/ICONS/Spell_holy_greaterblessingofsanctuary:20|t Благословение неприкосновенности', null),
(@Buff, 7, 'ruRU', '|TInterface/ICONS/Spell_nature_thorns:20|t Шипи', null),
(@Buff, 8, 'ruRU', '|TInterface/ICONS/Spell_nature_regeneration:20|t Знак дикой природы', null),
(@Buff, 9, 'ruRU', '|TInterface/ICONS/Spell_holy_arcaneintellect:20|t Чародейская гениальность', null),
(@Buff, 10, 'ruRU', '|TInterface/ICONS/Spell_holy_greaterblessingofwisdom:20|t Благословение мудрости', null),
(@Buff, 11, 'ruRU', '|TInterface/ICONS/Spell_holy_prayerofshadowprotection:20|t Защита от темной магии', null),

(@main, 3, 'ruRU', 'Магазин', null),
(@main, 4, 'ruRU', 'Банк', null),
(@main, 5, 'ruRU', 'Аукцион', null),

(@tel, 999, 'ruRU', 'Назад...', null),
(@A_tel, 999, 'ruRU', 'Назад...', null),
(@H_tel, 999, 'ruRU', 'Назад...', null),
(@AR_tel, 999, 'ruRU', 'Назад...', null),
(@Buff, 999, 'ruRU', 'Назад...', null);

insert into `smart_scripts` (`entryorguid`, `id`, `event_type`, `event_chance`, `event_param1`, `event_param2`, `action_type`, `action_param1`, `target_type`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) values
(@npc, 1, 62, 100, @A_tel, 1, 62, 0, 7, -8960.14, 516.266, 96.3568, 11, 'Stormwind'),
(@npc, 2, 62, 100, @A_tel, 2, 62, 0, 7, -4991.78, -870.59, 496.98, 5.30771, 'Ironforge'),
(@npc, 3, 62, 100, @A_tel, 3, 62, 1, 7, 8781, 965, 30, 11, 'Darnassus'),
(@npc, 4, 62, 100, @A_tel, 4, 62, 530, 7, -4073, -12020, -1, 11, 'Exodar'),
(@npc, 15, 62, 100, @A_tel, 5, 62, 530, 7, -1850.21, 5435.82, -10.9614, 3.40391, 'Shattrath'),
(@npc, 16, 62, 100, @A_tel, 6, 62, 530, 7, 12947.4, -6893.31, 5.68398, 3.09154, 'Isle of Quel Danas'),
(@npc, 17, 62, 100, @A_tel, 7, 62, 571, 7, 5807.67, 588.207, 660.93, 1.70185, 'Dalaran'),

(@npc, 8, 62, 100, @H_tel, 1, 62, 1, 7, 1377.78, -4369.87, 26.0264, 0.15315, 'Orgrimmar'),
(@npc, 9, 62, 100, @H_tel, 2, 62, 1, 7, -1290, 147.034, 129.682, 4.919, 'Thunder Bluff'),
(@npc, 10, 62, 100, @H_tel, 3, 62, 0, 7, 1642.13, 239.71, 62.5916, 3.15534, 'Undercity'),
(@npc, 11, 62, 100, @H_tel, 4, 62, 530, 7, 9338.74, -7277.27, 13.7895, 11, 'Silvermoon City'),
(@npc, 12, 62, 100, @H_tel, 5, 62, 530, 7, -1850.21, 5435.82, -10.9614, 3.40391, 'Shattrath'),
(@npc, 13, 62, 100, @H_tel, 6, 62, 530, 7, 12947.4, -6893.31, 5.68398, 3.09154, 'Isle of Quel Danas'),
(@npc, 14, 62, 100, @H_tel, 7, 62, 571, 7, 5807.67, 588.207, 660.93, 1.70185, 'Dalaran'),

(@npc, 18, 62, 100, @AR_tel, 1, 62, 1, 7, -13261.3, 168.294, 35.0792, 1.00688, 'Gurubashi Arena'),
(@npc, 19, 62, 100, @AR_tel, 2, 62, 530, 7, 2839.44, 5930.17, 11.1002, 3.16284, 'Arena in the Circle of Blood'),
(@npc, 20, 62, 100, @AR_tel, 3, 62, 530, 7, -1999.94, 6581.71, 11.32, 2.3, 'Round of tests'),
(@npc, 21, 62, 100, @AR_tel, 4, 62, 1, 7, -3739.86, 1093.8, 131.968, 0.155619, 'Stadium'),

(@npc, 200, 62, 100, @Buff, 1, 11, 48162, 7, 0, 0, 0, 0, 'Prayer of Fortitude'),
(@npc, 201, 62, 100, @Buff, 2, 11, 25898, 7, 0, 0, 0, 0, 'Blessing of Kings'),
(@npc, 202, 62, 100, @Buff, 3, 11, 6346, 7, 0, 0, 0, 0, 'Protection from fear'),
(@npc, 204, 62, 100, @Buff, 4, 11, 48934, 7, 0, 0, 0, 0, 'Blessing of Might'),
(@npc, 206, 62, 100, @Buff, 5, 11, 48074, 7, 0, 0, 0, 0, 'Prayer of Spirit'),
(@npc, 207, 62, 100, @Buff, 6, 11, 25899, 7, 0, 0, 0, 0, 'Blessing of Sanctuary'),
(@npc, 209, 62, 100, @Buff, 8, 11, 48469, 7, 0, 0, 0, 0, 'Thorns'),
(@npc, 208, 62, 100, @Buff, 7, 11, 53307, 7, 0, 0, 0, 0, 'Mark of the Wild'),
(@npc, 210, 62, 100, @Buff, 9, 11, 43002, 7, 0, 0, 0, 0, 'Arcane Brilliance'),
(@npc, 211, 62, 100, @Buff, 10, 11, 48938, 7, 0, 0, 0, 0, 'Blessing of Wisdom'),
(@npc, 212, 62, 100, @Buff, 11,11, 48170, 7, 0, 0, 0, 0, 'Shadow Protection');

Если будете менять @npc, то вам надо так же изменить id спела 42609 на ваш, а так же нужно будет изменить entry = 23909 в update запросе.

Если будете менять Main, то вам так же надо будет изменить gossip_menu_id = 64000 на новый в update запросе.
Все остальные параметры можно менять как угодно, они не на что не повлияют.

Раскомментируя запросы на удаления, будьте осторожны, удалены будут все строки от Main до @Buff
Если вы установите свои значение допустим Main = 35000 а @Buff = 65000, то всё что между ними будет удалено.

В запросе закомментированы строки на удаление, если у вас возникла ошибка во время выполнения sql запросов типа "Duplicate entry '64000-1' for key 'PRIMARY'" или ей подобная, значит какие-то из использованных в запросе ид уже используются в вашей бд.

Решается это двумя способами.
Первый для бесстрашных, ну или знающих что произойдет, просто раскомментируйте строки с запросом на удаление и выполнение sql запросов пройдет на ура.
Второй более безопасный, замените все ид на другие, благо сделать это легко, нужно заменить шесть цифр в начале запроса на уникальные, не использующиеся в вашей бд.
Если будете менять ид, обязательно посмотрите пункт Нюансы

1) Открыть spell.dbc
2) Найти
3) Заменить пятый столбец на 0x18000100
4) Сохранить файл и перезагрузить сервер
(Желательно проделать всё выше описанное в ручную, так как dbc файл может не подойти под вашу сборку сервера.)

Так же вы можете разукрасить текст в самом нпц на ваше усмотрение.

|cff008000[Easy]|r
|cffB80A0A[Hard]|r
Что бы поменять цвет текста вам нужно заменить 6 символов (это цвет в формате rgb)
Цвет вы можете взять от

ID предмета - 33154

(TDB335.53)
(TDB335.53)
(TDB335.64)
 

Назад
Сверху Снизу