Files
OzgGameRPG/Classes/RPGMapItemsMenuLayer.h

76 lines
2.2 KiB
C++

//
// RPGMapItemsMenuLayer.h
// OzgGameRPG
//
// Created by ozg on 14-4-10.
//
//
#ifndef __OzgGameRPG__RPGMapItemsMenuLayer__
#define __OzgGameRPG__RPGMapItemsMenuLayer__
#include "cocos2d.h"
#include "cocos-ext.h"
#include "CppSQLite3.h"
#include "JsonBox.h"
#include "RPGMapRoleSprite.h"
#include "RPGBaseSceneLayer.h"
#include "RPGMapChoicePlayerMenuLayer.h"
USING_NS_CC;
USING_NS_CC_EXT;
enum RPGMapItemsMenuLayerTag
{
kRPGMapItemsMenuLayerTagMainMenu = 1,
kRPGMapItemsMenuLayerTagMainMenuBack = 2,
kRPGMapItemsMenuLayerTagBg = 3,
kRPGMapItemsMenuLayerTagItemListTable = 4,
kRPGMapItemsMenuLayerTagDialogOK = 5,
kRPGMapItemsMenuLayerTagDialog = 86,
kRPGMapItemsMenuLayerTagBtnDiscard = 85
};
class RPGMapItemsMenuLayer : public CCLayerColor, CCTableViewDelegate, CCTableViewDataSource
{
private:
CCDictionary* m_stringList;
CppSQLite3DB* m_db;
CCArray* m_itemsList;
RPGExistingItems* m_selectedItems; //选中的道具
void loadItemsData(); //读取道具的数据
void onMenu(cocos2d::CCObject *pObject);
void onDialog(cocos2d::CCObject *pObject);
void onButton(CCObject* pSender, CCControlEvent event); //点击了items列表的其中一个后触发
void onChoicePlayer(CCObject* pObject); //在player选择框中,选中一个player后触发
public:
RPGMapItemsMenuLayer();
virtual ~RPGMapItemsMenuLayer();
bool init(CCDictionary* stringList, CppSQLite3DB* db, float width, float height);
static RPGMapItemsMenuLayer* create(CCDictionary* stringList, CppSQLite3DB* db, float width, float height);
//CCTableViewDelegate继承自CCScrollViewDelegate
virtual void scrollViewDidScroll(CCScrollView* scrollView);
virtual void scrollViewDidZoom(CCScrollView* scrollView);
//点击哪个cell
virtual void tableCellTouched(CCTableView* tableView, CCTableViewCell* cell);
//每个cell的size
virtual CCSize cellSizeForTable(CCTableView *tableView);
//生成cell
virtual CCTableViewCell* tableCellAtIndex(CCTableView *tableView, unsigned int idx);
//cell的数量
virtual unsigned int numberOfCellsInTableView(CCTableView *tableView);
};
#endif /* defined(__OzgGameRPG__RPGMapItemsMenuLayer__) */