aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/ClientSideMerchant.cpp
blob: ba179300728beb57cefc3fc44e58286c56b60dac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include "stdafx.h"
#include "net.minecraft.world.item.trading.h"
#include "net.minecraft.world.inventory.h"
#include "ClientSideMerchant.h"

ClientSideMerchant::ClientSideMerchant(shared_ptr<Player> source, const wstring &name)
{
	this->source = source;
	// 4J Stu - Need to do this after creating as a shared_ptr
	container = NULL; //new MerchantContainer(source, this);
	currentOffers = NULL;
	m_name = name;
}

ClientSideMerchant::~ClientSideMerchant()
{
	delete container;
	delete currentOffers;
}

void ClientSideMerchant::createContainer()
{
	container = new MerchantContainer(source, shared_from_this());
}

Container *ClientSideMerchant::getContainer()
{
	return container;
}

shared_ptr<Player> ClientSideMerchant::getTradingPlayer()
{
	return source;
}

void ClientSideMerchant::setTradingPlayer(shared_ptr<Player> player)
{

}

MerchantRecipeList *ClientSideMerchant::getOffers(shared_ptr<Player> forPlayer)
{
	return currentOffers;
}

void ClientSideMerchant::overrideOffers(MerchantRecipeList *recipeList)
{
	delete currentOffers;
	currentOffers = recipeList;
}

void ClientSideMerchant::notifyTrade(MerchantRecipe *activeRecipe)
{
	activeRecipe->increaseUses();
}

void ClientSideMerchant::notifyTradeUpdated(shared_ptr<ItemInstance> item)
{
}

wstring ClientSideMerchant::getDisplayName()
{
	return m_name;
}