【cocos2d-x lua】飞机大战小游戏1:主页面

【cocos2d-x lua】飞机大战小游戏1:主页面



前言

实践是检验真理的唯一标准。
初学cocos2d,感觉边学边用学得更快一点,编写一个简单的小游戏试试手。话不多说开始飞机大战~


一、前置资源

第一步,安装cocos2d-x,我安装的版本是3.17.2。
第二步,创建lua项目:命令行cocos new -l lua就可以创建新项目。
第三步,获取游戏图片、字体、音乐资源,这个在网上找或者自己制作。只想简单看看效果的可以用ppt画png图,怪好用的。

二、编写主界面

1.认识文件结构

在这里插入图片描述
res:存放游戏资源
src:存放代码

2.修改配置信息

打开config.json文件,修改init_cfg:

"init_cfg":{
       "isLandscape": false,
       "isWindowTop": false,
       "name": "Airplane",
       "width": 480,
       "height": 850,
       "entry": "src/main.lua",
       "consolePort": 6050,
       "uploadPort": 6060
    },

飞机大战为竖屏游戏,"isLandscape"设置为false。
模拟器窗口大小width、heigh则按需要配置。

3.主界面

打开src/app/views/MainScene,修改示例代码。

1.在onCreate函数中设置背景图片:

-- 加载精灵帧,设置背景
    display.loadSpriteFrames("ui/shoot_background.plist","ui/shoot_background.png")
    display.loadSpriteFrames("ui/shoot.plist","ui/shoot.png")
    display.loadSpriteFrames("ui/fruit.plist","ui/fruit.png")
    display.newSprite("#background.png")
        :move(display.center)
        :addTo(self)

    display.newSprite("#shoot_copyright.png")
        :move(display.cx,display.cy+200)
        :addTo(self)

现在有了背景图片,但略显寡淡,可以设置一个加载动画,增添一点动态效果。

2.设置加载动画

--设置加载动画
    local loading = display.newSprite("#game_loading1.png")
    local startPosition = cc.p(display.cx,display.cy)
    local endPosition = cc.p(display.cx+250,display.cy)
    loading:setPosition(startPosition)
    local speed = 5
    local move1 = cc.MoveTo:create(speed,endPosition)
    local move2 = cc.MoveTo:create(0,startPosition)
    local scale1 = cc.ScaleTo:create(speed,2)
    local scale2 = cc.ScaleTo:create(0,1)
    local mySpawn1 = CCSpawn:create(move1,scale1)
    local mySpawn2 = CCSpawn:create(move2,scale2)
    local sequence = CCSequence:create(mySpawn1,mySpawn2)
    local myRepeat = CCRepeatForever:create(sequence)
    loading:runAction(myRepeat)
    loading:addTo(self)

总结

这样主界面1.0版本就编写完成了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值