trading post
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
/*
|
||||
* Copyright 2023 Algeth
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation; either version 2 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "Bag.h"
|
||||
#include "PerkProgramData.h"
|
||||
#include "PerkProgramMgr.h"
|
||||
#include "PerksProgramPacketsCommon.h"
|
||||
#include "Config.h"
|
||||
#include "DatabaseEnv.h"
|
||||
#include "ObjectMgr.h"
|
||||
#include "ScriptMgr.h"
|
||||
#include "Random.h"
|
||||
#include <sstream>
|
||||
|
||||
|
||||
void WorldSession::HandleGetPerkProgramRequest(WorldPackets::PerksProgram::PerksProgramStatusRequest& /*packet*/)
|
||||
{
|
||||
if (!_player)
|
||||
return;
|
||||
GetPerkProgramMgr()->SendPerksProgramActivities();
|
||||
}
|
||||
|
||||
void WorldSession::HandlePerkProgramRequestPurchase(WorldPackets::PerksProgram::PerksProgramRequestPurchase& packet)
|
||||
{
|
||||
if (!_player)
|
||||
return;
|
||||
|
||||
//GetPerkProgramMgr()->BuyItem(packet.PerksVendorItemID, packet.vendorGuid);
|
||||
}
|
||||
|
||||
void WorldSession::HandlePerkProgamSetForzenVendorItem(WorldPackets::PerksProgram::PerksProgramSetFrozenVendorItem& packet)
|
||||
{
|
||||
if (!_player)
|
||||
return;
|
||||
}
|
||||
|
||||
void WorldSession::HandlePerkProgramPendingReward(WorldPackets::PerksProgram::PerksProgramPendingReward& packet)
|
||||
{
|
||||
if (!_player)
|
||||
return;
|
||||
}
|
||||
@@ -110,6 +110,14 @@ public:
|
||||
Timestamp<> TimeUntilStart = 0;
|
||||
Timestamp<> TimeUntilEnd = 0;
|
||||
};
|
||||
|
||||
class PerksProgramPendingReward final : public ClientPacket
|
||||
{
|
||||
public:
|
||||
PerksProgramPendingReward(WorldPacket&& packet) : ClientPacket(CMSG_PERKS_PROGRAM_REQUEST_PENDING_REWARDS, std::move(packet)) {}
|
||||
|
||||
void Read() override {}
|
||||
};
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -879,8 +879,8 @@ void OpcodeTable::InitializeClientOpcodes()
|
||||
DEFINE_HANDLER(CMSG_PERKS_PROGRAM_GET_RECENT_PURCHASES, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL);
|
||||
DEFINE_HANDLER(CMSG_PERKS_PROGRAM_ITEMS_REFRESHED, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
|
||||
DEFINE_HANDLER(CMSG_PERKS_PROGRAM_REQUEST_CART_CHECKOUT, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
|
||||
DEFINE_HANDLER(CMSG_PERKS_PROGRAM_REQUEST_PENDING_REWARDS, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
|
||||
DEFINE_HANDLER(CMSG_PERKS_PROGRAM_REQUEST_PURCHASE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
|
||||
DEFINE_HANDLER(CMSG_PERKS_PROGRAM_REQUEST_PENDING_REWARDS, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandlePerkProgramPendingReward);
|
||||
DEFINE_HANDLER(CMSG_PERKS_PROGRAM_REQUEST_PURCHASE, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandlePerkProgramRequestPurchase);
|
||||
DEFINE_HANDLER(CMSG_PERKS_PROGRAM_REQUEST_REFUND, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
|
||||
DEFINE_HANDLER(CMSG_PERKS_PROGRAM_SET_FROZEN_VENDOR_ITEM, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
|
||||
DEFINE_HANDLER(CMSG_PERKS_PROGRAM_STATUS_REQUEST, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
|
||||
|
||||
@@ -37,6 +37,9 @@
|
||||
#include <map>
|
||||
#include <memory>
|
||||
#include <unordered_map>
|
||||
//WowCommunity
|
||||
#include "PerkProgramMgr.h"
|
||||
//WowCommunity
|
||||
|
||||
class BlackMarketEntry;
|
||||
class CollectionMgr;
|
||||
@@ -50,6 +53,7 @@ class Unit;
|
||||
class WorldPacket;
|
||||
class WorldSession;
|
||||
|
||||
class PerkProgramManager;
|
||||
namespace Playerbot {
|
||||
class BotSession;
|
||||
}
|
||||
@@ -743,7 +747,17 @@ namespace WorldPackets
|
||||
class GetCharacterCurrencyTransferLog;
|
||||
//WowCommunity
|
||||
}
|
||||
//WowCommunity
|
||||
|
||||
namespace PerksProgram
|
||||
{
|
||||
class PerksProgramStatusRequest;
|
||||
class PerksProgramRequestPurchase;
|
||||
class PerksProgramSetFrozenVendorItem;
|
||||
class PerksProgramPendingReward;
|
||||
}
|
||||
|
||||
//WowCommunity
|
||||
namespace Movement
|
||||
{
|
||||
class ClientPlayerMovement;
|
||||
@@ -1535,6 +1549,13 @@ class TC_GAME_API WorldSession
|
||||
void HandleMoveAddImpulseAck(WorldPackets::Movement::MoveAddImpulseAck& moveAddImpulseAck);
|
||||
void HandleMoveSetCanDriveAck(WorldPackets::Movement::MoveSetCanDriveAck& moveSetCanDriveAck);
|
||||
void HandleMoveStartDriveForward(WorldPackets::Movement::MoveStartDriveForward& moveStartDriveForward);
|
||||
|
||||
//PERKS
|
||||
void HandleGetPerkProgramRequest(WorldPackets::PerksProgram::PerksProgramStatusRequest& packet);
|
||||
void HandlePerkProgramRequestPurchase(WorldPackets::PerksProgram::PerksProgramRequestPurchase& packet);
|
||||
void HandlePerkProgamSetForzenVendorItem(WorldPackets::PerksProgram::PerksProgramSetFrozenVendorItem& packet);
|
||||
void HandlePerkProgramPendingReward(WorldPackets::PerksProgram::PerksProgramPendingReward& packet);
|
||||
|
||||
//wowcommunity
|
||||
|
||||
void HandleRepopRequest(WorldPackets::Misc::RepopRequest& packet);
|
||||
@@ -2510,6 +2531,13 @@ class TC_GAME_API WorldSession
|
||||
bool _isBot;
|
||||
#endif
|
||||
|
||||
//WowCommunity
|
||||
private:
|
||||
std::shared_ptr<PerkProgramManager> _perkProgramMgr;
|
||||
public:
|
||||
PerkProgramManager* GetPerkProgramMgr() const { return _perkProgramMgr.get(); }
|
||||
//WowCommunity
|
||||
|
||||
WorldSession(WorldSession const& right) = delete;
|
||||
WorldSession& operator=(WorldSession const& right) = delete;
|
||||
};
|
||||
|
||||
@@ -116,6 +116,7 @@
|
||||
#include "NeighborhoodMgr.h"
|
||||
#include "PetBattleMgr.h"
|
||||
#include "InitiativeManager.h"
|
||||
#include "PerkProgramData.h"
|
||||
|
||||
#ifdef BUILD_PLAYERBOT
|
||||
#include "Lifecycle/BotSpawner.h"
|
||||
|
||||
Reference in New Issue
Block a user