|
---|
|
Ядро Здесь форум по базе, но иногда случается, что вопросы пересекаются. Но это форум не по ядру Мангос! |
|
Опции темы | Поиск в этой теме | Опции просмотра |
17.02.2010, 06:14 | #1 |
Trinity User
Регистрация: 07.02.2010
Сообщений: 4
Сказал(а) спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
|
Расовые тотемы
С версии 3.3.0 вроде у шаманов каждой расы свой внешний вид тотемов. На чистом ядре и базе это не реализовано. Это необходимо реализовать в базе или в самом ядре?
|
17.02.2010, 08:20 | #2 |
Not a member, is a noob
Регистрация: 05.11.2009
Адрес: Азерот, Штормвинд
Сообщений: 530
Сказал(а) спасибо: 153
Поблагодарили 453 раз(а) в 170 сообщениях
|
В ядре. Разные шкурки друидов тоже пока не реализованы.
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки. |
17.02.2010, 08:30 | #3 |
Guest
Сообщений: n/a
|
А внешний вид и т.д. разве не к базе должен иметь отношение?
|
17.02.2010, 08:50 | #4 |
YTDB dev
Регистрация: 05.11.2009
Адрес: Thunder Bluff
Сообщений: 3,625
Сказал(а) спасибо: 7,839
Поблагодарили 3,255 раз(а) в 498 сообщениях
|
Не внешний вид, а модельки, выборочно глянул несколько по кешу 3.3.2 - что в базе, что в кеше 1в1.
|
17.02.2010, 20:31 | #5 |
Not a member, is a noob
Регистрация: 05.11.2009
Адрес: Азерот, Штормвинд
Сообщений: 530
Сказал(а) спасибо: 153
Поблагодарили 453 раз(а) в 170 сообщениях
|
Внешний вид имеет отношение только к клиенту, а никак не к базе или серверу. А вот выбор модели моба или перса делается в ядре. Именно сервер сообщает клиенту, какую модель вывести для данного моба или перса.
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки. |
3 пользователя(ей) сказали cпасибо: | ZliS (18.02.2010) |
18.02.2010, 00:03 | #6 |
Guest
Сообщений: n/a
|
вообще-то работает, у тауренов деревянные по виду, у дренеев каменные "баночки"
если нужно: MaNGOS/0.16.0 (* * Revision 9356 - *) for Linux_x64 (little-endian) Using script library: ScriptDev2 (for MaNGOS 986e5b76ae8758d8c895edce483c8cb84801c57d +) Revision 1573 (Unix) Using World DB: YTDB_0.11.0_R534_MaNGOS_R9356_SD2_R1573_ACID_R303_ RuDB_R34.9 клиент 3.3.2 enGB |
18.02.2010, 04:16 | #7 |
Trinity User
Регистрация: 07.02.2010
Сообщений: 4
Сказал(а) спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
|
Про дренеев и тауренов всё давно ясно, а вот то, что теперь там же должны выдаваться отдельные модельки для троллей, орков и в перспективе дворфов - это да. Надо поковырять-поискать, где там оно происходит в ядре.
|
18.02.2010, 07:24 | #8 |
YTDB dev, histori
Регистрация: 05.11.2009
Сообщений: 1,597
Сказал(а) спасибо: 1
Поблагодарили 1,093 раз(а) в 971 сообщениях
|
Поковыряйтесь и результаты нам сюда
__________________
ars longa vita brevis |
20.02.2010, 08:41 | #9 |
Trinity User
Регистрация: 07.02.2010
Сообщений: 4
Сказал(а) спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
|
Где ломать - найдено, а вот как - большой и долгий вопрос, учитывая глубину моих сишных познаний)))
./src/game/Totem.cpp Код:
// select totem model in dependent from owner team CreatureInfo const *cinfo = GetCreatureInfo(); if(owner->GetTypeId() == TYPEID_PLAYER && cinfo) { uint32 display_id = sObjectMgr.ChooseDisplayId(((Player*)owner)->GetTeam(), cinfo); CreatureModelInfo const *minfo = sObjectMgr.GetCreatureModelRandomGender(display_id); if (minfo) display_id = minfo->modelid; SetDisplayId(display_id); } Код:
uint32 ObjectMgr::ChooseDisplayId(uint32 team, const CreatureInfo *cinfo, const CreatureData *data /*= NULL*/) { // Load creature model (display id) if (data && data->displayid) return data->displayid; // use defaults from the template uint32 display_id; // DisplayID_A is used if no team is given if (team == HORDE) { if(cinfo->DisplayID_H[0]) display_id = cinfo->DisplayID_H[1] ? cinfo->DisplayID_H[urand(0,1)] : cinfo->DisplayID_H[0]; else display_id = cinfo->DisplayID_H[1]; if(!display_id) display_id = cinfo->DisplayID_A[0] ? cinfo->DisplayID_A[0] : cinfo->DisplayID_A[1]; } else { if(cinfo->DisplayID_A[0]) display_id = cinfo->DisplayID_A[1] ? cinfo->DisplayID_A[urand(0,1)] : cinfo->DisplayID_A[0]; else display_id = cinfo->DisplayID_A[1]; if(!display_id) display_id = cinfo->DisplayID_H[0] ? cinfo->DisplayID_H[0] : cinfo->DisplayID_H[1]; } return display_id; } |
20.02.2010, 09:56 | #10 |
YTDB dev, histori
Регистрация: 05.11.2009
Сообщений: 1,597
Сказал(а) спасибо: 1
Поблагодарили 1,093 раз(а) в 971 сообщениях
|
В крайнем случаем добавить
sObjectMgr.ChooseDisplayIdTotem функцию например и в ней уже делать по расам Например мобы используют выбор модели
__________________
ars longa vita brevis |
20.02.2010, 14:57 | #11 |
Trinity User
Регистрация: 07.02.2010
Сообщений: 4
Сказал(а) спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
|
Да, пожалуй новая функция будет правильней, что там ещё мэйнтейнеры придумают непонятно, а как времянку можно жестко прописать для рас дисплеиды. Теперь шукаем моделвьювер)
|
Метки |
орки, раса, тотемы, тролли, шаман |
|
|