|
|
Модератор форума: INFERNOS |
Форум Корзина форума Патчи / Моды / Фиксы для SkyFire Трансмогификация. Скрипт для 3.3.5-4.0.6 (trinitycore, arkcore, skyfire transmogification) |
Трансмогификация. Скрипт для 3.3.5-4.0.6 |
В оригинале взято с форумов ace-web.
Code /******************************************************* * Name: Transmogrification NPC for Legendary Weapons * ScriptName:'npc_transmogweap' * (c)2012 - JunkyBulgaria * Website: www.Hysteria-Gaming.EU * E-Mail: developer@hysteria-gaming.eu * Skype: jenova_ff * script improve by wlasser *******************************************************/ шапка = [PLAYER_VISIBLE_ITEM_1_ENTRYID]; амулет = [PLAYER_VISIBLE_ITEM_2_ENTRYID]; плечи = [PLAYER_VISIBLE_ITEM_3_ENTRYID]; рубашка = [PLAYER_VISIBLE_ITEM_4_ENTRYID]; нагрудник = [PLAYER_VISIBLE_ITEM_5_ENTRYID]; пояс = [PLAYER_VISIBLE_ITEM_6_ENTRYID]; наголеники = [PLAYER_VISIBLE_ITEM_7_ENTRYID]; обувь = [PLAYER_VISIBLE_ITEM_8_ENTRYID]; наручники = [PLAYER_VISIBLE_ITEM_9_ENTRYID]; перчатки = [PLAYER_VISIBLE_ITEM_10_ENTRYID]; плащ = [PLAYER_VISIBLE_ITEM_15_ENTRYID]; основная рука (оружие) = [PLAYER_VISIBLE_ITEM_16_ENTRYID]; левая рука (оффхэнд) = [PLAYER_VISIBLE_ITEM_17_ENTRYID]; дальний бой = [PLAYER_VISIBLE_ITEM_18_ENTRYID]; табард = [PLAYER_VISIBLE_ITEM_19_ENTRYID]; */ #include "ScriptPCH.h" class npc_transmogweap : public CreatureScript { public: npc_transmogweap() : CreatureScript("npc_transmogweap") { } bool OnGossipHello(Player *player, Creature *_creature) { if (player->isInCombat()) { player->CLOSE_GOSSIP_MENU(); _creature->MonsterWhisper("Бой!", player->GetGUID()); return true; } else { player->ADD_GOSSIP_ITEM( 3, "|cffBB0000Легендарки (оружие)" , GOSSIP_SENDER_MAIN, 1); player->ADD_GOSSIP_ITEM( 3, "Экипировка (Комплект А3 - прист)" , GOSSIP_SENDER_MAIN, 2); player->ADD_GOSSIP_ITEM( 3, "Экипировка (Т3 - воин)" , GOSSIP_SENDER_MAIN, 3); player->ADD_GOSSIP_ITEM( 3, "Экипировка (Т6 - паладин)" , GOSSIP_SENDER_MAIN, 4); player->ADD_GOSSIP_ITEM( 3, "|cffFF0000Спасибо, воздержусь от трансмогификации." ,GOSSIP_SENDER_MAIN, 999); } player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID()); return true; } bool OnGossipSelect(Player *player, Creature *_creature, uint32 sender, uint32 uiAction) { if (sender == GOSSIP_SENDER_MAIN) { player->PlayerTalkClass->ClearMenus(); switch(uiAction) { case 999: player->CLOSE_GOSSIP_MENU(); _creature->MonsterWhisper("Заходи снова друг!", player->GetGUID()); break; case 1://weapons player->ADD_GOSSIP_ITEM( 3, "|cff3300FFГромовая Ярость, благословенный клинок Искателя Ветра" , GOSSIP_SENDER_MAIN, 100); player->ADD_GOSSIP_ITEM( 3, "|cff3300FFБоевой клинок Аззинота (левая рука)" , GOSSIP_SENDER_MAIN, 101); player->ADD_GOSSIP_ITEM( 3, "|cff3300FFБоевой клинок Аззинота (правая рука)" , GOSSIP_SENDER_MAIN, 102); player->ADD_GOSSIP_ITEM( 3, "|cff3300FFТори'дал, Звeздная Ярость (лук)" , GOSSIP_SENDER_MAIN, 103); player->ADD_GOSSIP_ITEM( 3, "|cff3300FFДлинный лук Края Пустоты" , GOSSIP_SENDER_MAIN, 104); player->ADD_GOSSIP_ITEM( 3, "|cff3300FFСокрушитель" , GOSSIP_SENDER_MAIN, 105); player->ADD_GOSSIP_ITEM( 3, "|cff3300FFВал'анир, молот древних королей" , GOSSIP_SENDER_MAIN, 106); player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID()); break; case 2://a3 priest player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_1_ENTRYID, 33718); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_3_ENTRYID, 33720); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_5_ENTRYID, 33721); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_10_ENTRYID, 33717); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_7_ENTRYID, 33719); _creature->MonsterWhisper("Экипировка сменилась на А3 жреца", player->GetGUID()); break; case 3://t2 war player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_1_ENTRYID, 16963); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_3_ENTRYID, 16961); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_5_ENTRYID, 16966); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_10_ENTRYID, 16964); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_7_ENTRYID, 16962); player->CLOSE_GOSSIP_MENU(); _creature->MonsterWhisper("Экипировка сменилась на Т2 воина", player->GetGUID()); break; case 4://t6 pal player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_1_ENTRYID, 30989); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_3_ENTRYID, 30997); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_5_ENTRYID, 30990); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_10_ENTRYID, 30982); player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_7_ENTRYID, 30993); player->CLOSE_GOSSIP_MENU(); _creature->MonsterWhisper("Экипировка сменилась на Т6 паладина", player->GetGUID()); break; case 100: player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_16_ENTRYID, 19019); player->CLOSE_GOSSIP_MENU(); _creature->MonsterWhisper("Оружие трансмогифицировано!", player->GetGUID()); break; case 101: player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_16_ENTRYID, 32837); player->CLOSE_GOSSIP_MENU(); _creature->MonsterWhisper("Оружие трансмогифицировано!", player->GetGUID()); break; case 102: player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_17_ENTRYID, 32838); player->CLOSE_GOSSIP_MENU(); _creature->MonsterWhisper("Оружие трансмогифицировано!", player->GetGUID()); break; case 103: player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_18_ENTRYID, 34334); player->CLOSE_GOSSIP_MENU(); _creature->MonsterWhisper("Оружие трансмогифицировано!", player->GetGUID()); break; case 104: player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_18_ENTRYID, 30318); player->CLOSE_GOSSIP_MENU(); _creature->MonsterWhisper("Оружие трансмогифицировано!", player->GetGUID()); break; case 105: player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_16_ENTRYID, 30316); player->CLOSE_GOSSIP_MENU(); _creature->MonsterWhisper("Оружие трансмогифицировано!", player->GetGUID()); break; case 106: player->UpdateUInt32Value(PLAYER_VISIBLE_ITEM_16_ENTRYID, 46017); player->CLOSE_GOSSIP_MENU(); _creature->MonsterWhisper("Оружие трансмогифицировано!", player->GetGUID()); break; default: break; } } return true; } }; void AddSC_npc_transmogweap() { new npc_transmogweap(); } Файл скрипта необходимо обозвать npc_trans.cpp и поместить в src/scripts/Custom После чего в ScriptLoader.cpp добавить следующие строчки после Code /* This is where custom scripts' loading functions should be declared. */ Code void AddSC_npc_transmogweap(); и после Code /* This is where custom scripts should be added. */ Code AddSC_npc_transmogweap(); Патч в базу: |
Это не трасмогрификация.
Скрипт изменяет модельку вещи на заранее прописанную в скрипте (то есть, если захотите добавить другие модели, придется пересобирать ядро) до первой операции со слотом в котором находится вещь. Вывод -> скрипт бесполезен.
Arcanum Core © Dev.
Для запросов на выдачу наград/снятие замечаний есть темы в Работе Портала. Не пишите по этому поводу в личку.
Сообщение # 3 написано 07.07.2012 в 13:26
|
Так а кто мешает включить мозг и допилить?
видео |
Мне, лично, ничего не мешает кроме того, что скрипт давно лежит уже допиленный.
А вот тема названа неправильно, это не трансмогрификация, это временная смена модели вещей.
Arcanum Core © Dev.
Для запросов на выдачу наград/снятие замечаний есть темы в Работе Портала. Не пишите по этому поводу в личку.
Сообщение # 6 написано 10.07.2012 в 22:37
|
Мне даже сказать нечего. Вы воистину гениальны.
Сообщение # 7 написано 11.07.2012 в 12:14
|
| |||
| |||