Corona sdk:场景结构

时间:2014-02-15 16:19:44

标签: lua corona corona-storyboard

我搜索了几个小时但仍然不理解 这是我的问题,我做了一个小小的游戏它正在工作,但现在我需要一个菜单​​,高分屏幕等等。这意味着我的游戏完全不使用故事板/场景功能。

这是我的结构:

简介
在那里我把最需要开始的东西放在物理功能上。

变量
在那里,我有我所有的变量,如:

local object = 0 <or>
local object = display.newObject(param)

功能 我在那里放了我所有的功能,如:

local function functionName (event)
end


事件监听器
在那里,我有每个事件监听器,如:

functionName:addEventListener("eventType", functionName)


所以这就是我所拥有的,我在研究中发现的是我需要一些功能来创建我的场景,进入我的场景,退出我的场景并摧毁我的场景。问题是我不知道在哪里放这些场景以及在哪里放置我的其余代码。基本上我需要的是:

  • 带有播放按钮和高分按钮的菜单。
  • 当点击我的播放按钮时,它会跳到我的游戏场景(它总是同一个游戏,它不包含任何级别左右),如果失去然后跳转到另一个看起来像的场景,重启或转到菜单
  • 点击高分按钮时,它会显示最佳分数。

如果在我的函数中创建对象会怎么样?它会打扰现场吗?那么得分,我在切换高分等场景时需要它,有没有办法不让得分不仅是本地的而且是公开的?

我希望我足够清楚,你会明白我的需要! :)作为结构示例,有一个名为“涂鸦跳转”的游戏,我的游戏结构应该看起来有点相同。

2 个答案:

答案 0 :(得分:2)

创建优秀代码的部分原因在于您选择如何组织和格式化代码。

这就是我喜欢做的事情:

我有一个main.lua文件+一个scenes目录,里面有我的所有场景。我为每个场景使用lua文件。

-> ProjectName/
     - main.lua
     -> scenes/
        - mainMenu.lua
        - highScores.lua
        - game.lua
        - pauseMenu.lua
        - etc ...

main.lua

在main.lua里面我设置了游戏和所有设置。设置完成后,我调用mainMenu场景。

local composer = require("composer")

-- Setup game here:
composer.mySettings = "Some settings that can be accessed in any scene (highscores, volume settings, etc)"
composer.myVolume = 100


-- Use composer to go to our first game scene
composer.goToScene("scenes.mainMenu")

的场景/ someScene.lua

场景响应日冕事件。这些事件是:

scene:create()
scene:show()
scene:hide()
scene:destroy()

提示

我建议您按照此tutorial

进行操作

并为所有场景使用this template

答案 1 :(得分:0)

一点建议:

请在命名场景的根文件夹时不要使用大写字母,否则它会显示错误消息。只是不要使用它,一切都会没问题。)