Как изменить в патче подарки за отыгранное время.
В общем есть патч на подарки за отыгранное время. Выдается голд , хонор и арена так вот можете мне помочь, я хочу заменить арену на эмблемы доблести. буду благодарен за помощь.
From 7945bad99138b51122a4952f4677407d3646fb74 Mon Sep 17 00:00:00 2001 From: LordPsyan <realmsofwarcraft@gmail.com> Date: Mon, 29 Feb 2016 08:45:14 -0600 Subject: [PATCH] 2016_02_29-PlayedTime --- src/server/game/Entities/Player/Player.cpp | 21 +++++++++++++++++++++ src/server/game/Entities/Player/Player.h | 6 ++++++ src/server/worldserver/worldserver.conf.dist | 9 +++++++++ 3 files changed, 36 insertions(+) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 7190a80..b4d0f05 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -418,6 +418,12 @@ Player::Player(WorldSession* session): Unit(true) m_bgBattlegroundQueueID[j].invitedToInstance = 0; } + // PlayedTimeReward + ptr_Interval = sConfigMgr->GetIntDefault("PlayedTimeReward.Interval", 0); + ptr_Money = sConfigMgr->GetIntDefault("PlayedTimeReward.Money", 0); + ptr_Honor = sConfigMgr->GetIntDefault("PlayedTimeReward.Honor", 0); + ptr_Arena = sConfigMgr->GetIntDefault("PlayedTimeReward.Arena", 0); + m_logintime = time(NULL); m_Last_tick = m_logintime; m_Played_time[PLAYED_TIME_TOTAL] = 0; @@ -1290,6 +1296,21 @@ void Player::Update(uint32 p_time) LoginDatabase.Execute(stmt); } + // PlayedTimeReward + if (ptr_Interval > 0) + { + if (ptr_Interval <= p_time) + { + GetSession()->SendAreaTriggerMessage("Bonus for played time."); + ModifyMoney(ptr_Money); + ModifyHonorPoints(ptr_Honor); + ModifyArenaPoints(ptr_Arena); + ptr_Interval = sConfigMgr->GetIntDefault("PlayedTimeReward.Interval", 0); + } + else + ptr_Interval -= p_time; + } + if (!m_timedquests.empty()) { QuestSet::iterator iter = m_timedquests.begin(); diff --git a/src/server/game/Entities/Player/Player.h b/src/server/game/Entities/Player/Player.h index f59994d..9a3a865 100644 --- a/src/server/game/Entities/Player/Player.h +++ b/src/server/game/Entities/Player/Player.h @@ -1113,6 +1113,12 @@ class Player : public Unit, public GridObject<Player> void SetCommandStatusOn(uint32 command) { _activeCheats |= command; } void SetCommandStatusOff(uint32 command) { _activeCheats &= ~command; } + // PlayedTimeReward + uint32 ptr_Interval; + uint32 ptr_Money; + uint32 ptr_Honor; + uint32 ptr_Arena; + // Played Time Stuff time_t m_logintime; time_t m_Last_tick; diff --git a/src/server/worldserver/worldserver.conf.dist b/src/server/worldserver/worldserver.conf.dist index 4837a24..1dbcccf 100644 --- a/src/server/worldserver/worldserver.conf.dist +++ b/src/server/worldserver/worldserver.conf.dist @@ -3565,6 +3565,15 @@ PacketSpoof.BanDuration = 86400 # ################################################################################################### +# + +PlayedTimeReward.Interval = 0 +PlayedTimeReward.Money = 0 +PlayedTimeReward.Honor = 0 +PlayedTimeReward.Arena = 0 + +# +################################################################################################### # # Prepatch by LordPsyan. -- 2.1.4
Прошу прощения за ошибки! С русским не дружу(
Сообщение #
1 написано 04.04.2016 в 01:53
ockap , ДержиКод
From 7945bad99138b51122a4952f4677407d3646fb74 Mon Sep 17 00:00:00 2001 From: LordPsyan <realmsofwarcraft@gmail.com> Date: Mon, 29 Feb 2016 08:45:14 -0600 Subject: [PATCH]2016_02_29-PlayedTime --- src/server/game/Entities/Player/Player.cpp | 21 +++++++++++++++++++++ src/server/game/Entities/Player/Player.h | 6 ++++++ src/server/worldserver/worldserver.conf.dist | 9 +++++++++ 3 files changed, 36 insertions(+) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 7190a80..b4d0f05 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -418,6 +418,12 @@ Player::Player(WorldSession* session): Unit(true) m_bgBattlegroundQueueID[j].invitedToInstance = 0; } + // PlayedTimeReward + ptr_Interval = sConfigMgr->GetIntDefault("PlayedTimeReward.Interval", 0); + ptr_Money = sConfigMgr->GetIntDefault("PlayedTimeReward.Money", 0); + ptr_Honor = sConfigMgr->GetIntDefault("PlayedTimeReward.Honor", 0); + ptr_Token = sConfigMgr->GetIntDefault("PlayedTimeReward.Token", 0); + TokenID = sConfigMgr->GetIntDefault("PlayedTimeReward.TokenID", 0); + m_logintime = time(NULL); m_Last_tick = m_logintime; m_Played_time[PLAYED_TIME_TOTAL] = 0; @@ -1290,6 +1296,21 @@ void Player::Update(uint32 p_time) LoginDatabase.Execute(stmt); } + // PlayedTimeReward + if (ptr_Interval > 0) + { + if (ptr_Interval <= p_time) + { + GetSession()->SendAreaTriggerMessage("Bonus for played time."); + ModifyMoney(ptr_Money); + ModifyHonorPoints(ptr_Honor); + AddItem(TokenID,ptr_Token); + ptr_Interval = sConfigMgr->GetIntDefault("PlayedTimeReward.Interval", 0); + } + else + ptr_Interval -= p_time; + } + if (!m_timedquests.empty()) { QuestSet::iterator iter = m_timedquests.begin(); diff --git a/src/server/game/Entities/Player/Player.h b/src/server/game/Entities/Player/Player.h index f59994d..9a3a865 100644 --- a/src/server/game/Entities/Player/Player.h +++ b/src/server/game/Entities/Player/Player.h @@ -1113,6 +1113,12 @@ class Player : public Unit, public GridObject<Player> void SetCommandStatusOn(uint32 command) { _activeCheats |= command; } void SetCommandStatusOff(uint32 command) { _activeCheats &= ~command; } + // PlayedTimeReward + uint32 ptr_Interval; + uint32 ptr_Money; + uint32 ptr_Honor; + uint32 ptr_Token; + uint32 TokenID; + // Played Time Stuff time_t m_logintime; time_t m_Last_tick; diff --git a/src/server/worldserver/worldserver.conf.dist b/src/server/worldserver/worldserver.conf.dist index 4837a24..1dbcccf 100644 --- a/src/server/worldserver/worldserver.conf.dist +++ b/src/server/worldserver/worldserver.conf.dist @@ -3565,6 +3565,15 @@ PacketSpoof.BanDuration = 86400 # ################################################################################################### +# + +PlayedTimeReward.Interval = 0 +PlayedTimeReward.Money = 0 +PlayedTimeReward.Honor = 0 +PlayedTimeReward.TokenID = 0 +PlayedTimeReward.Token = 0 + +# +################################################################################################### # # Prepatch by LordPsyan. -- 2.1.4
+PlayedTimeReward.TokenID = 0 Тут ид токена +PlayedTimeReward.Token = 0 Тут количество
Сообщение #
2 отредактировано
r0m1ntik -
Понедельник, 04.04.2016, 03:01
У меня ошибка, использую последние исходы.
Прошу прощения за ошибки! С русским не дружу(
Сообщение #
3 написано 04.04.2016 в 12:51
sConfigMgr->GetIntDefault замени на sWorld->getIntConfig
Сообщение #
4 отредактировано
r0m1ntik -
Понедельник, 04.04.2016, 13:22
Стало больше ошибок
Прошу прощения за ошибки! С русским не дружу(
Сообщение #
5 написано 04.04.2016 в 13:52
Пробуйте таким образом: Код
ptr_Interval = uint32(sConfigMgr->GetIntDefault("PlayedTimeReward.Interval", 0));
Работаю в программах, таких как: 4D Cinema, Autodesk, 3D Max, Photoshop, InDesing, Illustrator C# and C++ Developer.
Сообщение #
6 отредактировано
Прокурор -
Понедельник, 04.04.2016, 14:53
Цитата Прокурор (
)
Пробуйте таким образом: Код ptr_Interval = uint32(sConfigMgr->GetIntDefault("PlayedTimeReward.Interval", 0));
Пробую как ты написал 1 сообщения!Добавлено (04.04.2016, 15:48) --------------------------------------------- Всё та же ошибка(
Прошу прощения за ошибки! С русским не дружу(
Сообщение #
7 написано 04.04.2016 в 15:48
ockap , в скайп добавь меня: dev-diversant
Сообщение #
8 написано 04.04.2016 в 16:36
Всем спасибо, все сделали.
Прошу прощения за ошибки! С русским не дружу(
Сообщение #
9 написано 04.04.2016 в 17:58