加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

华容道01--分析

发布时间:2020-12-14 21:05:11 所属栏目:百科 来源:网络整理
导读:一直想写一个华容道的游戏,现在就通过学习 Cocos 2D3.x 写一个华容道的游戏吧。 这个游戏的要求是,最后生成安卓项目,安装到自己的手机上玩玩吧! 开发周期初步定在 2-3 天。 玩法: 华容道的玩法非常简单,在地图中通过移动角色,最后让曹操移动到特定位

一直想写一个华容道的游戏,现在就通过学习Cocos2D3.x写一个华容道的游戏吧。

这个游戏的要求是,最后生成安卓项目,安装到自己的手机上玩玩吧!

开发周期初步定在2-3天。

玩法:

华容道的玩法非常简单,在地图中通过移动角色,最后让曹操移动到特定位置游戏就算结束了。

需要实现的东东:

1. 界面:

菜单界面,选关界面,游戏界面,结算界面

2. 数据:

a) 角色数据

b) 关卡数据

基本功能的分析:

游戏中有三类角色:曹操,将军(赵云等),小兵。他们在整个棋盘中分别占4,2,1个格子。而且,将军有横向和竖向之分。

华容道的棋盘是5行4列的,如下图:

代码:

GameLayer.h

#ifndef _GAME_LAYER_H_
#define _GAME_LAYER_H_

#include "cocos2d.h"

class GameLayer : public cocos2d::Layer
{
public:
	 static cocos2d::Scene* createScene();
	 CREATE_FUNC(GameLayer);
public:
	GameLayer();
	~GameLayer();
	virtual bool init();

private:
};
#endif


GameLayer.cpp

#include "GameLayer.h"

USING_NS_CC ;
Scene* GameLayer::createScene()
{
	auto scene = Scene::create() ;
	auto layer = GameLayer::create() ;
	scene->addChild(layer);
	return scene ;
}
GameLayer::GameLayer()
{
}

GameLayer::~GameLayer()
{
}
bool GameLayer::init()
{
	Size size = Director::getInstance()->getWinSize();
	//添加一张背景图片
	auto bgSprite = Sprite::create("main_bg0.png") ;
	bgSprite->setPosition(size.width / 2,size.height / 2) ;
	addChild(bgSprite);

	return true ;
}


AppDelegate中的修改:

游戏中用到的图是320x480的,所以,改下窗口大小

AppDelegate.cpp

    auto director = Director::getInstance();
    auto glview = director->getOpenGLView();
    if(!glview) {
        glview = GLViewImpl::createWithRect("HuaRong",Rect(0,320,480));//设置下窗口尺寸
        director->setOpenGLView(glview);
    }


资源和源码:http://download.csdn.net/detail/c_boy_lu/8594823

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读