|
|
Модератор форума: Dimitro |
Форум TrinityCore [TrinityCore] Help Наложение ауры (афк игрок) |
Наложение ауры |
Помогите, пытаюсь сделать скрипт который при афк на игрока накладывается аура. собственно вот что имеется
Код bool isAFK(Player* player) { if(player->HasFlag(PLAYER_FLAGS, PLAYER_FLAGS_AFK) == true) { player->AddAura(52982, player); return true; } else if(player->HasFlag(PLAYER_FLAGS, PLAYER_FLAGS_AFK) == false) { player->RemoveAura(52982); return false; } } }; но аура не вешается Добавлено (02.01.2014, 20:34)
Сообщение # 1 написано 02.01.2014 в 20:34
|
Во-первых,
Код if(player->HasFlag(PLAYER_FLAGS, PLAYER_FLAGS_AFK)) Во-вторых, что это вообще за метод такой? Откуда вы его взяли и куда пытаетесь запихнуть? Лично у меня в тринити этот метод выглядит так: Код bool isAFK() const { return HasFlag(PLAYER_FLAGS, PLAYER_FLAGS_AFK); } В-третьих, лично я, сделал бы так (не проверял, просто переписал код из первого поста и добавил в нужное место): Код diff -r 31c12d63b97d src/server/game/Entities/Player/Player.cpp --- a/src/server/game/Entities/Player/Player.cpp Tue Nov 05 15:10:12 2013 +0200 +++ b/src/server/game/Entities/Player/Player.cpp Fri Jan 03 13:52:10 2014 +0200 @@ -2058,6 +2058,11 @@ { ToggleFlag(PLAYER_FLAGS, PLAYER_FLAGS_AFK); + if (isAFK()) + AddAura(52982, this); + else + RemoveAura(52982); + // afk player not allowed in battleground if (isAFK() && InBattleground() && !InArena()) LeaveBattleground();
Arcanum Core © Dev.
Для запросов на выдачу наград/снятие замечаний есть темы в Работе Портала. Не пишите по этому поводу в личку. |
я пытался сделать в виде кустом скрипта) типо проверка на афк, но ведать совсем не правельно, смотрел на готовые функции но ведать не туда смотрел) Ваш вариант прекрасно работает, за что большое спасибо за помощь) а мне еще учиться и учиться) Добавлено (03.01.2014, 16:54)
Сообщение # 3 написано 03.01.2014 в 16:54
|
| |||
| |||