科罗纳sdk:场景结构



我搜索了几个小时,仍然不明白
这是我的问题,我做了一个小游戏,它正在运行,但现在我需要一个菜单,高核心屏幕等等。这意味着我的游戏是完全制作的,没有使用故事板/场景功能。

这是我的结构:

简介
我在里面放了所有首先需要启动的东西,比如物理函数。

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

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

功能
我把所有的功能都放在那里,比如:

local function functionName (event)
end


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

functionName:addEventListener("eventType", functionName)


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

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

如果在我的函数中创建对象呢?这会扰乱现场吗?分数呢,我在为高核心切换场景时需要它,等等,有没有办法不让分数不仅是本地的,而且是公开的?

我希望我足够清楚,你会理解我需要什么!:)作为结构示例,有一个名为"涂鸦跳跃"的游戏,我的游戏结构应该看起来有点一样。

创建好代码的一部分来自于您选择如何组织和格式化它

这就是我喜欢做的事情:

我有一个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.loa

场景对日冕中的事件作出反应。这些事件是:

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

小贴士

我建议你遵循这个教程

并将此模板用于所有场景:

一个小建议:

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

最新更新