cocos2dx 之背包系统开发
来源:互联网 发布:招标业务管理系统源码 编辑:程序博客网 时间:2024/06/04 18:46
大家好我这次呢要给大家讲的是cocos2dx游戏开发实战项目值背包系统的开发,大家都知道背包是什么都不用我仔细说明了,好废话不多说了看客户端代码,
这里我是继承的cocos 里面的TableView来开发的,我为什么用这个而不自己写,这个嘛我不好意思说有点,应为我比较害懒了。
#ifndef __BAG_H__#define __BAG_H__#include "cocos2d.h"//#include "ui/UIWidget.h"#include "cocostudio/CocoStudio.h"/*#include "ui/CocosGUI.h"#include "ui/UIScrollView.h"#include "ui/UIScale9Sprite.h"*/#include "extensions/cocos-ext.h"USING_NS_CC;USING_NS_CC_EXT;using namespace cocos2d::ui;//class Bag : public Layer, public ScrollView, public ScrollViewDelegate //, public cocos2d::extension::ScrollViewDelegateclass Bag : public Layer, public cocos2d::extension::TableViewDataSource , public cocos2d::extension::TableViewDelegate{public: Bag(); ~Bag(); static cocos2d::Scene* bagScene(); virtual bool init(); //virtual void BagRollView(cocos2d::extension::ScrollView* view){}; virtual void //scrollViewDidZoom(cocos2d::extension::ScrollView* view) {} //点击哪个cell; virtual void tableCellTouched(cocos2d::extension::TableView* table, cocos2d::extension::TableViewCell* cell); //每个cell的size; virtual cocos2d::Size tableCellSizeForIndex(cocos2d::extension::TableView *table, ssize_t idx); //生成cell; virtual cocos2d::extension::TableViewCell* tableCellAtIndex(cocos2d::extension::TableView *table, ssize_t idx); //cell的数量; virtual ssize_t numberOfCellsInTableView(cocos2d::extension::TableView *table); //背包里面的物品按钮的监听; void BagtouchEvent(Ref *pSender, Widget::TouchEventType type); Sprite* Bag_sprite; CREATE_FUNC(Bag);};#endif // !__BAG_H__
CPP
#include "Bag.h"Bag::Bag(){}Bag::~Bag(){}Scene* Bag::bagScene(){ auto scene = Scene::create(); auto layer = Bag::create(); scene->addChild(layer); return scene;}bool Bag::init(){ if (!Layer::init()) { return false; } Size size = Director::getInstance()->getVisibleSize(); Vec2 origin = Director::getInstance()->getVisibleOrigin(); Bag_sprite = Sprite::create("BagCrete/Bag_Image.png"); Bag_sprite->setPosition(Vec2(size.width / 2, size.height / 2)); this->addChild(Bag_sprite); TableView* tableView = TableView::create(this, Size(440, 416));// tableView = TableView::create(this, Size(100, 100)); tableView->setDirection(ScrollView::Direction::VERTICAL); tableView->setPosition(Vec2( 296, 150)); tableView->setDelegate(this); tableView->setVerticalFillOrder(TableView::VerticalFillOrder::TOP_DOWN); this->addChild(tableView); tableView->reloadData(); return true;}void Bag::tableCellTouched(cocos2d::extension::TableView* table, cocos2d::extension::TableViewCell* cell){ CCLOG("cell touched at index: %ld", cell->getIdx());}cocos2d::Size Bag::tableCellSizeForIndex(cocos2d::extension::TableView *table, ssize_t idx){ return Size(300,130);}TableViewCell* Bag::tableCellAtIndex(cocos2d::extension::TableView *table, ssize_t idx){ Size size = Director::getInstance()->getVisibleSize(); TableViewCell *cell = table->dequeueCell(); if (!cell) { cell = new (std::nothrow)TableViewCell(); cell->autorelease(); for (int i = 0; i < 4; i++) { auto image_sprite = Sprite::create("BagCrete/icon.png"); image_sprite->setPosition(Vec2(10 * (10 * i + 6), 45)); cell->addChild(image_sprite); // = Button::create("",""); } } return cell;}//设置个数;ssize_t Bag::numberOfCellsInTableView(cocos2d::extension::TableView *table){ return 30;}//void Bag::BagtouchEvent(Ref *pSender, Widget::TouchEventType type){ switch (type) { case cocos2d::ui::Widget::TouchEventType::BEGAN: break; case cocos2d::ui::Widget::TouchEventType::MOVED: break; case cocos2d::ui::Widget::TouchEventType::ENDED: break; case cocos2d::ui::Widget::TouchEventType::CANCELED: break; default: break; }}
待续 还没写完下次继续
0 0
- cocos2dx 之背包系统开发
- Cocos2dx---之粒子系统
- cocos2dx之粒子系统
- cocos2dx游戏任务系统开发之服务端数据库
- cocos2dx游戏开发学习笔记(六)之坐标系统
- 背包系统 游戏开发
- cocos2dx之HTTP开发
- Unity3D游戏开发之背包系统(三)
- cocos2dx游戏任务系统开发
- NGUI之背包系统
- 七、cocos2dx之粒子系统
- Cocos2dx开发之锚点
- COCOS2DX-游戏开发之 坐标系
- 23、Cocos2dx 3.0游戏开发找小三之粒子系统:你那里下雪了吗?
- unity学习之背包系统
- 【COCOS2DX-游戏开发之二四】 quick-cocos2dx
- cocos2dx游戏开发之安装cocos2dx-3.13(一)
- 游戏特效之Cocos2dx中的粒子系统
- 判断一个数是否是周期数字,并输出一个周期的数字及个数
- Cocos2d-x-3.4 从零开始之 AppDelegate.cpp
- Hash表
- 求最大公约数
- 字符串Hash函数
- cocos2dx 之背包系统开发
- Win8Metro(C#)数字图像处理--2.27图像加法运算
- 前端篇——2015.3 第一次练手项目 被自己蠢哭!
- 第六周项目二—我的数组类
- 装饰模式
- 【转】Java习惯用法总结
- 大数据处理
- 第六周项目1.2 深复制体验
- GridBagLayoutDemo