用Quick3.3简单开发微信打飞机01

楼主也是初学quick,想写几个简单的小项目入门,想想最简单的还是“微信打飞机”了(之前学cocos2d-js的时候也是从这个项目开始入手的)。

这里只是写一个微信打飞机的Demo,所以,不需要有太多的功能。先简单的分析下:

大概分为四个部分来实现:

1.先新建项目实现一个飞机在屏幕中移动

自定义场景,

精灵的定义

屏幕点击事件

2.在游戏中添加敌人和子弹

数组,

计时器

3.添加碰撞检测

数组中元素的删除,

动画

分数的实现

4.游戏结算

界面的切换,

这里先实现第一部分:

写一个MainScene和一个GameScen,MainScene作为菜单界面,点击菜单界面进入GameScene(游戏主界面),这里需要用到精灵的创建,触屏事件的添加,界面的切换。

下面上代码:

MainScene:

local MainScene = class("MainScene", function()
    return display.newScene("MainScene")
end)

function MainScene:ctor()
    --添加一个背景精灵
    self.bgSprite = display.newSprite("game_bg.jpg"):addTo(self)
    self.bgSprite:pos(display.cx,display.cy)
    --添加一个TouchLayer
    self.touchLayer = display.newColorLayer(cc.c4b(255,255,255,0)):addTo(self)
    self.touchLayer:setTouchEnabled(true)
    self.touchLayer:addNodeEventListener(cc.NODE_TOUCH_EVENT,function(event)
        if event.name == "ended" then
            --切换界面
            local nextScene = require("src.app.scenes.GameScene").new()
            display.replaceScene(nextScene, "fade", 0.5, cc.c3b(0, 0, 0))
        end
        return true
    end)
end

function MainScene:onEnter()
end

function MainScene:onExit()
end

return MainScene

GameScene代码:

local GameScene = class("GameScene",function ()
    return display.newScene("GameScene")
end)

function GameScene:ctor()
    --添加Player精灵
    self.player = display.newSprite("hero_1.png"):addTo(self)
    self.player:pos(display.cx,display.cy)
    self.player:setLocalZOrder(10)
    self.touchPos = cc.p(0,0)

    --添加一个TouchLayer接收点击事件
    self.touchLayer = display.newColorLayer(cc.c4b(255,0,0,255)):addTo(self)
    self.touchLayer:setTouchEnabled(true)
    self.touchLayer:addNodeEventListener(cc.NODE_TOUCH_EVENT,function(event)
        print(event.name)
        if event.name == "began" then
            self.touchPos = cc.p(event.x,event.y)
        elseif event.name == "moved" then
            local x = event.x - self.touchPos.x ;
            local y = event.y - self.touchPos.y ;
            self.touchPos = cc.p(event.x,event.y) ;
            self:onTouch(x,y) ;
        else
            self.touchPos = cc.p(0,0)
        end
        return true
    end)
end

function GameScene:onTouch(x,y)
     --更新飞机的位置,没有对飞机是否会触屏做限制
    self.player:pos(self.player:getPositionX() + x,self.player:getPositionY() + y)
end

function GameScene:onEnter()
end

function GameScene:onExit()
end

return GameScene
时间: 2024-11-23 20:44:53

用Quick3.3简单开发微信打飞机01的相关文章

用Quick3.3简单开发微信打飞机 (三)----------------------------- 添加爆炸动画和子弹与敌机的碰撞

用Quick3.3简单开发微信打飞机03 添加爆炸动画和子弹与敌机的碰撞 这个就作为最后一篇吧,当然,可以扩展的方面还有很多,比如分数的记录,结算界面还有一些小道具等,就不添加了.这只是当作一个简单的入门,而在这个入门中确实学到了不少东西.而那些没添加的东西呢,其实,就没那么重要了.没有太难的知识点.所以,就没必要纠结太长时间了. 碰撞检测: 碰撞检测重新写了一个计时器,这个计时器是每帧调用的,也就是每秒调用60次.但是,没有用updata. 检测碰撞的函数如下: [plain] view pl

用Quick3.3简单开发微信打飞机03 添加爆炸动画和子弹与敌机的碰撞

这个就作为最后一篇吧,当然,可以扩展的方面还有很多,比如分数的记录,结算界面还有一些小道具等,就不添加了.这只是当作一个简单的入门,而在这个入门中确实学到了不少东西.而那些没添加的东西呢,其实,就没那么重要了.没有太难的知识点.所以,就没必要纠结太长时间了. 碰撞检测: 碰撞检测重新写了一个计时器,这个计时器是每帧调用的,也就是每秒调用60次.但是,没有用updata. 检测碰撞的函数如下: function GameScene:checkCollision() --这个方法处理碰撞检测,子弹和

用Quick3.3简单开发微信打飞机02

这次将实现子弹的配置文件,敌人的配置文件,子弹的精灵和敌人的精灵.以及子弹的发射和敌人的产生. 子弹的分析: 游戏中不可能只有一种子弹,这样子弹就需要一个配置文件,配置文件中有子弹的类型,子弹的贴图,子弹的生命以及子弹的移动速度. 敌人的分析: 同样,游戏中会出现多种敌人,所以,也需要一个敌人的配置文件,其中包括敌人的类型,贴图,速度,生命等属性. 在这里新建了一个目录(data)来存放配置文件. data中有两个配置文件,一个是子弹的配置文件,一个是敌人的配置文件. BulletConfig.

用Quick3.3开发微信打飞机 (一) ----------------- 场景切换

用Quick3.3简单开发微信打飞机01 楼主也是初学quick,想写几个简单的小项目入门,想想最简单的还是“微信打飞机”了(之前学cocos2d-js的时候也是从这个项目开始入手的). 这里只是写一个微信打飞机的Demo,所以,不需要有太多的功能.先简单的分析下: 大概分为四个部分来实现: 1.先新建项目实现一个飞机在屏幕中移动 自定义场景, 精灵的定义 屏幕点击事件 2.在游戏中添加敌人和子弹 数组, 计时器 3.添加碰撞检测 数组中元素的删除, 动画 分数的实现 4.游戏结算 界面的切换,

用Quick3.3开发微信打飞机 (二) -------------------- 子弹和敌人的配置和创建

用Quick3.3简单开发微信打飞机02 [plain] view plaincopyprint? 这次将实现子弹的配置文件,敌人的配置文件,子弹的精灵和敌人的精灵.以及子弹的发射和敌人的产生. 子弹的分析: 游戏中不可能只有一种子弹,这样子弹就需要一个配置文件,配置文件中有子弹的类型,子弹的贴图,子弹的生命以及子弹的移动速度. 敌人的分析: 同样,游戏中会出现多种敌人,所以,也需要一个敌人的配置文件,其中包括敌人的类型,贴图,速度,生命等属性. 在这里新建了一个目录(data)来存放配置文件.

cocos2dx游戏开发——微信打飞机学习笔记(一)——开发准备

一.环境的搭建 1.Windows开发准备: (1)软件下载及安装 •下载Cocos2d-x 最新版本:http://www.cocos2d-x.org/download 或者从Cocos2d-x GitHub主页中克隆Develop分支:https://github.com/cocos2d/cocos2d-x •配置Python 2.7 环境:http://www.python.org/download/releases/ •建议IDE:Visual Studio 2013 •运行cocos2

cocos2dx游戏开发——微信打飞机学习笔记(三)——WelcomeScene的搭建

一.场景与层的关系: cocos2dx的框架可以说主要由导演,场景,层,精灵来构成: 1.其中导演,意如其名,就是操控整个游戏的一个单例,管理着整个游戏. 2.场景就像电影的一幕剧情,所以说,懂得如何划分好游戏的场景,是开始动手做游戏的第一步. 3.一个场景会有很多层,用来处理场景不同的功能. 4.而精灵则是最小的单位,比如子弹,飞机,敌机都是一个个的精灵所组成的.   二.WelcomeScene的搭建: 1.场景和层的二种搭建方法: (1)一种就是跟HelloWorld示例一样的方法,以一个

cocos2dx游戏开发——微信打飞机学习笔记(二)——游戏框架

一.游戏的基本框架: WelcomeScene    ——>    GameScene   ——>   GameOverScene ||                                       ||                                    || ∨                                      ∨                                   ∨ WelcomeLayer            

cocos2dx游戏开发——微信打飞机学习笔记(五)——BackgroundLayer的搭建

一.创建文件~        文件名:BackgroundLayer.h                      BackgroundLayer.cpp        架构就跟前面的一样,我就直接进入正题 啦,而且github有完整代码,欢迎下载~ 二.创建滚动的背景        为毛要创建滚动的背景呢= =,因为我们要控制飞机,但总得有往前飞的感觉,所以呢~你懂的~ 然后方法就很简单啦,就是用2张图片,当然是上下能对接起来的那种,然后不停的滚那滚就好啦~ 方法呢,首先在.h文件中进行声明