-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathGameItemManager.cpp
125 lines (107 loc) · 2.77 KB
/
GameItemManager.cpp
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
#include "GameItemManager.h"
#include "GameMap.h"
#include "UIManager.h"
USING_NS_CC;
GameItemManager::GameItemManager()
{
int itemCount = CCUserDefault::sharedUserDefault()->getIntegerForKey("itemLolly");
m_pLolly = new GameItem( Item_Lolly , itemCount );
itemCount = CCUserDefault::sharedUserDefault()->getIntegerForKey("itemCandy");
m_pCandy = new GameItem( Item_Candy , itemCount);
itemCount = CCUserDefault::sharedUserDefault()->getIntegerForKey("itemRefresh");
m_pRefresh = new GameItem( Item_Refresh , itemCount);
itemCount = CCUserDefault::sharedUserDefault()->getIntegerForKey("itemReturn");
m_pReturn = new GameItem( Item_Return , itemCount);
}
bool GameItemManager::UseItem( int type )
{
bool isUse = false;
switch (type)
{
case Item_Lolly:
{
if(!(isUse = m_pLolly->use()))
isUse = GameMap::GetInstance()->Buy( 10 );
break;
}
case Item_Candy:
{
if(!(isUse = m_pCandy->use()))
isUse = GameMap::GetInstance()->Buy( 10 );
break;
}
case Item_Refresh:
{
if(!(isUse = m_pRefresh->use()))
isUse = GameMap::GetInstance()->Buy( 8 );
break;
}
case Item_Return:
{
if(!(isUse = m_pReturn->use()))
isUse = GameMap::GetInstance()->Buy( 6 );
break;
}
}
if(!isUse)
{
// TODO µ¯³öÖ§¸¶Ò³Ãæ
}
else
{
CCUserDefault::sharedUserDefault()->setIntegerForKey("itemLolly" , m_pLolly->getAmount());
CCUserDefault::sharedUserDefault()->setIntegerForKey("itemCandy" , m_pCandy->getAmount());
CCUserDefault::sharedUserDefault()->setIntegerForKey("itemRefresh" , m_pRefresh->getAmount());
CCUserDefault::sharedUserDefault()->setIntegerForKey("itemReturn" , m_pReturn->getAmount());
}
return isUse;
}
int GameItemManager::getItemCount( int type )
{
switch (type)
{
case Item_Lolly:
return m_pLolly->getAmount();
case Item_Candy:
return m_pCandy->getAmount();
case Item_Refresh:
return m_pRefresh->getAmount();
case Item_Return:
return m_pReturn->getAmount();
}
return 0;
}
void GameItemManager::BuyItem( int type )
{
int count = 0;
switch (type)
{
case Item_Lolly:
{
m_pLolly->buy();
CCUserDefault::sharedUserDefault()->setIntegerForKey("itemLolly" , m_pLolly->getAmount());
break;
}
case Item_Candy:
{
m_pCandy->buy();
CCUserDefault::sharedUserDefault()->setIntegerForKey("itemCandy" , m_pCandy->getAmount());
break;
}
case Item_Refresh:
{
m_pRefresh->buy();
CCUserDefault::sharedUserDefault()->setIntegerForKey("itemRefresh" , m_pRefresh->getAmount());
break;
}
case Item_Return:
{
m_pReturn->buy();
CCUserDefault::sharedUserDefault()->setIntegerForKey("itemReturn" , m_pReturn->getAmount());
break;
}
}
}
GameItemManager::~GameItemManager()
{
}