MyavGuards не компилятся на SD2 1597
Вложений: 1
mangos 9443, sd2 1597
Я тупой!!! надо что-то со мной делать... Сам патч в аттаче, ошибки при компиле: Код:
thrall.cpp Как я понимаю - Unit::HasAura как-то поменялась, и надо что-то тут поменять? Код:
if(!m_creature->HasAura(41447,0)) |
определение SpellEffectIndex поменяли вроде
|
Это я кое-как сообразить еще пытаюсь. Там что-то под интегер было, а сейчас вот этот самый индекс. Только что на что менять - это я осознать не могу.
|
Добавили перечисление:
Код:
enum SpellEffectIndex Код:
if(!m_creature->HasAura(41447, EFFECT_INDEX_0)) |
А! ВО!!! Вот теперь понял.
То есть теперь в "m_creature->HasAura(41447,0)" вместо последней цифры ставить "EFFECT_INDEX_" с последней цифрой! Это я смогу, это я уже умный! Как сделаю - обновлю в локальном хранилище. Патчи ядра там уже под 9439 лежат. Только у меня (кажется) следом еще вопросы пойдут - по остальным SD2 патчам... :) :) :) Я их еще не проверял - может и они с ошибками будут. |
Давайте их сюда, щас подгоним
|
а все. :) Остальные скомпилились без варнингов даже. :) Сейчас потру оттуда все временное, очищу, и повторно прогоню.
Файло в SD2 1597 рабочее. теперь в работе проверить - и афигеть от крашей. :) |
Цитата:
|
DoCast -> DoCastSpellIfCan (1568)
|
Цитата:
Цитата:
|
Везде, во всех файлах заменить первое на второе...
|
DoCast заменить на DoCastSpellIfCan - я правильно понимаю? А вот то, что в скобках - оно куда? у меня например на руках есть куски (вразброс по строкам):
Код:
DoCast (m_creature,HEALINGPOTION); Код:
DoCastSpellIfCan (m_creature,HEALINGPOTION); Прошу прощения, если выгляжу слишком уж тупым. Я и правда совершенно ничего в этом не понимаю. :( |
Все верно, я лично так и заменил, до скобок..))
|
Еще момент, вызывающий вопрос:
В файле (например) ancient_of_war.cpp есть закомментированный кусок: Код:
/* else Также закомментированные куски есть и в других файлах. И еще вопрос сразу: Как я помню, Myav закрыл свою работу до появления в BC двух новых столиц Алов и Орды. То есть работает только стража старых столиц. Что можно сделать для подключения новых столиц? Если это какая-то тупая рутинная шаблонная работа - я с ней наверное справлюсь - меня только в нужную сторону пнуть надо. Просто очень хочется иметь эти скрипты в полностью рабочем виде. Цитата:
|
Можно не спешить, после 1601 уже можно GetHealth()*100 / m_creature->GetMaxHealth() < 30 менять на GetHealthPercent() < 30.0f..)) Ну и циферки процентов менять по аналогии...
Коментировал код сам автор, остались у меня его первые оригиналы, что он хотел реализовать - так и кануло в пучину... (с) Сгинул Лом в этой кутерьме... |
Я как раз обновился - и как раз сейчас это смотрю. :(
И у меня, соответственно - очередной тупой вопрос: Код:
if(damage > m_creature->GetHealth()) Код:
if (m_creature->GetHealthPercent() < 30 && Potioncd<diff) И второй вопрос: в оригинальном guard_ai.cpp (кстати, при слиянии с 1601 мявский вызвал конфликты, сейчас разберусь какие) есть строки (например 58-59): Код:
if (SpellEntry const *spell = m_creature->reachWithSpellAttack(who)) Я вообще как-то хреново понимаю - вот guard_ai.cpp как-то обновляется и обновляется, а Мявским патчем там что-то удаляется и заменяется - ононе развалит нах сервер вообще? Я совершенно не представляю что там куда суется - потому и спрашиваю. Я ж как обезьянка - научили патчи делать, применять и откатывать - только это и делаю. А коде - полный ноль. |
короче я сделал вроде все по приведенному, выложено в папке 1601 for test и патчем.
Скомпилилось нормально, но я все равно не уверен в ровности своих рук, и если кто-то проверит - это супер круто будет. А я попробую обновиться.... :( |
Вот такого еще
Код:
..\scripts\custom\npc_ulduar_teleporter.cpp(54) : warning C4305: 'argument' : truncation from 'double' to 'float' Код:
player->TeleportTo(603, -706.122, -92.6024, 429.876, 0); |
f после каждой координаты поставь и все...
|
мангос 9450, скрипты 1601
база свежая утренняя 536 это расставил, там где GetHealthPercent() < 30.0f - тоже все расставил. пробую в рабочем режиме. диалоги у скриптованых НПС отвалились нах. как я понимаю - из-за перенесения диалогов в базу? или из-за цифирок в базе... вот такие строки ничего не выдают. Код:
player->ADD_GOSSIP_ITEM( 5, "Нанять Ящера Черного копья (2 золотых)", GOSSIP_SENDER_MAIN, 8842); Код:
INSERT INTO `creature_template` (`entry`, `difficulty_entry_1`, `difficulty_entry_2`, `difficulty_entry_3`, `KillCredit1`, `KillCredit2`, `modelid_A`, `modelid_A2`, `modelid_H`, `modelid_H2`, `name`, `subname`, `IconName`, `gossip_menu_id`, `minlevel`, `maxlevel`, `minhealth`, `maxhealth`, `minmana`, `maxmana`, `armor`, `faction_A`, `faction_H`, `npcflag`, `speed`, `scale`, `rank`, `mindmg`, `maxdmg`, `dmgschool`, `attackpower`, `dmg_multiplier`, `baseattacktime`, `rangeattacktime`, `unit_class`, `unit_flags`, `dynamicflags`, `family`, `trainer_type`, `trainer_spell`, `trainer_class`, `trainer_race`, `minrangedmg`, `maxrangedmg`, `rangedattackpower`, `type`, `type_flags`, `lootid`, `pickpocketloot`, `skinloot`, `resistance1`, `resistance2`, `resistance3`, `resistance4`, `resistance5`, `resistance6`, `spell1`, `spell2`, `spell3`, `spell4`, `PetSpellDataId`, `mingold`, `maxgold`, `AIName`, `MovementType`, `InhabitType`, `unk16`, `unk17`, `RacialLeader`, `questItem1`, `questItem2`, `questItem3`, `questItem4`, `questItem5`, `questItem6`, `movementId`, `RegenHealth`, `equipment_id`, `mechanic_immune_mask`, `flags_extra`, `ScriptName`) VALUES gossip_menu_id 0, npcflag 1, остальные флаги по нулям, ScriptName прописан Что, все меню в базу как-то переливать надобно? В игре открывается пустое окно диалога с текстом Greeting, а должно меню выдавать со всякими пунктами. Лог третьего уровня пишется в файл, там ничего полезного: Код:
2010-02-25 12:35:36 STORAGE_SIZE: 5 |
Вложений: 1
Ядро 9457, SD2 1605, База 536.
Применял Ваш, tempura, патч. В итоге нпц со мной общаются и меню у них есть, всё работает, но всё, что написано кириллицей, отображается криво. Приложил скрин диалога с ГильдХаус Кипером, остальные нпц по аналогии. |
Файл скрипта должен быть в кодировке utf-8
Но это уже не актуально: Надо делать через базу (таблицы *_gossip_*) вывод менюшек |
Кабы схемку, аль чертеж - мы б затеяли вертеж.
Ну а так - чаво искать-та? ЧортаЪ лысова найдешь. :( Примерчик бы - какую строку в cpp на что менять, чтобы какая строка в мускл начала выводиться? |
Функционал гвардов экскурсоводов давно перенесен в госсип меню базы, есть поддержка локалей - надо ли совмещать ?)
|
Я вообще советую из патчей с гвардами вынести все госсипы, они через базу идут все равно
|
Москва не сразу строилась....
А вообще Темпура чуть выше метко сказал.... Разберусь, сделаю через базу.... |
Так уже сделано..)) Просто если у гварда небоевой скрипт - то госсипменю из базы не учитывается, издержки сд2...
|
А следующим патчем мы добъем всех гвардов .... со стороны базы. =)
|
Цитата:
|
Темпура вроде хотел через госсип меню в базе сделать арендаторов маунтов..
|
Цитата:
http://ytdb.ru/Yuriy/patches/sd2/ У меня госсипы гвардов точно работают, а вот боевые скрипты - не знаю. |
Цитата:
только лучше не рассказ програмииста-программисту (как мне обычно timmit пишет, и я ничего не понимаю). :( |
Текущее время: 16:42. Часовой пояс GMT +4. |
YTDB - MaNGOS DataBase