cocos2dx lua脱坑之旅 史上最牛 贪吃蛇

本文介绍了使用cocos2d-x和Lua开发的一款创新版贪吃蛇游戏,全由作者独立完成,具有独特的设计。文章期望获得读者的支持,并预告下期将分享关于魔塔的开发内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

古诗贪吃蛇,再改改可以当作毕业设计了。

全都是自己写的,保证之前没人写过。

点赞,投币,收藏过三万,下期更新魔塔,原创不易 三连支持。加油奥里给。

 

 

local MainLayer = class("MainLayer")

function MainLayer.showUI()
    local layer = cc.LayerColor:create(cc.c4b(0,0,0,255))
    local snake = require("app.game.snake.snake")
    snake.showUI(layer)
    -- print(nil == false)
    -- local someTest = require("app.game.snake.someTest")
    -- someTest.showUI(layer)
    -- require("app.jzq")
    -- jzq.init(layer)
    return layer
end

return MainLayer

 

 

--made in jzq
local snake = class("snake")
local scheduler = cc.Director:getInstance():getScheduler()

function snake.showUI(layer)
    snake.gameLayer = layer
    snake:initkeyboard()
    snake:initBtn()
    snake:initGame()
end

function snake:initkeyboard()
    local function keyboardPressed(keyCode, event) 
        if keyCode == 146 or keyCode == 142 or keyCode == 124 or keyCode == 127 then
            self:revKeyCode(keyCode)
        end
    end 
 
     --键盘按键松开回调函数
    --  local function keyboardReleased(keyCode, event)
    --  end
    local keyBoardListen = cc.EventListenerKeyboard:create()
    keyBoardListen:registerScriptHandler(keyboardPressed, cc.Handler.EVENT_KEYBOARD_PRESSED)
 
    --keyBoardListen:registerScriptHandler(keyboardReleased, cc.Handler.EVENT_KEYBOARD_RELEASED)
 
    snake.gameLayer:getEventDispatcher():addEventListenerWithSceneGraphPriority(keyBoardListen, snake.gameLayer) 
end

function snake:initBtn()
    local btn_w = ccui.Button:create()
    btn_w:loadTextures("dpad-key.png","dpad-key.png")
    btn_w:setPressedActionEnabled(true)
    btn_w:setScale(1.5)
    btn_w:addTo(snake.gameLayer,1):move(150,200)
    btn_w:addTouchEventListener(function(Sender,Event)
        if Event == 0 then
            Sender:setColor(cc.c3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值