Ru-MaNGOS

Ru-MaNGOS (http://ru-mangos.ru/index.php)
-   Моды (http://ru-mangos.ru/forumdisplay.php?f=8)
-   -   [mod] Non PvP Area (http://ru-mangos.ru/showthread.php?t=1120)

Hantet 16.05.2010 19:30

[mod] Non PvP Area
 
Вложений: 2
Данный мод позволяет менять фракцию персонажей в определённой области.
Это очень удобно, когда необходимо отвести некую местность, где орда и альянс не смогли бы друг друга бить.

В архиве представлен патч на ядро и sql для базы mangos.
Автор (вероятно): evilstar


Пример для реализации дружеской (фракция 35) области "Гарадар" (Награнд).
Код:

INSERT INTO `area_faction` (`area_id`,`faction_id`) VALUES ('3613','35');
Для того, чтобы узнать id области, необходимо ввести команду .gps.
Мод подогнан под последнюю ревизию ядра MaNGOS [9914]

Hantet 17.05.2010 19:47

Появились какие-то странности, мод то работает, то не работает :read:
Есть подозрение, что это зависит от некой "фазы" (показывается при команде .gps), ибо она так же периодически меняется. Однако, в функцию, которая вызывает данный мод, передаётся только переменная "newArea" (id области). Есть ещё вариант, что где-то там, где вызывается родительская функция UpdateAreaDependentAuras(uint32 newArea), стоит какое-то ограничение (например, по той же фазе), и эта функция попросту не вызывается. Хотя понимаю, что сморозил бред, ибо каким образом фаза может относиться к области (область, это ведь просто кусок карты). В любом случае, сейчас буду исследовать таинственную переменность данного мода. Если у кого появятся идеи - пожалуйста отпишитесь.

upd:
Оказалось, всё это - странности моего мозга. :)
Файл в аттаче перезалил.

BLAZEROS 19.03.2011 15:04

патч работает - на его основе написал еще несколько модов под себя.

Для новых ревизий - в начале патча добавьте
Код:

uint32 newarea = GetAreaId();
Иначе ругается на необьявленный идентификатор при компиле.

Автору спасибо за патч.


Текущее время: 18:07. Часовой пояс GMT +3.

ru-mangos.ru - Русское сообщество MaNGOS