纯粹知识点
1.添加图片缓存
display.addSpriteFrames(.plist文件名, .png文件名)
例:display.addSpriteFrames(GAME_TEXTURE_DATA_FILENAME, GAME_TEXTURE_IMAGE_FILENAME)
2.预加载音频文件
audio.preloadSound(文件名)
3.切换场景
self:enterScene(场景类名, 传递的参数, 切换效果,0.6,场景颜色)
例:
self:enterScene("MenuScene", nil, "fade", 0.6, display.COLOR_WHITE)
4.创建场景
local selfScene = class("场景名", function(){
return display.newScene("场景名")
end)
5.添加精灵
display.newSrite("图片名", x坐标, y坐标)
:addTo(self)或者:addChild(self)
6.添加按钮
cc.ui.new({normal = 图片名})
7.按钮添加坚挺
button:onButtonClicked(function(tag)
doSomeThing
end)
8.执行动作
transition.moeTo(控件,{具体动作参数})
例如:transition.moveTo(button, {y = y + offset, time = time / 2})
transition.scaleTo(button, {
scaleX = 1.0,
scaleY = 1.0,
time = time,
})
9.设置按钮是否有效,可点击
button:setButtonEnabled(true)
10.#号的作用
如果使用的图片是以#开头的话表示是从SpriteFrameCache中读取,如果没有使用#开头的话表示是直接从文件读取
11.创建文本
cc.ui.UILabel.new({
UILabelType = 1, // 类型1 是字体文本 2.是位图文本
text = string.format("Level: %s", tostring(levelIndex)),
font = "UIFont.fnt", // 字体名称
x = display.left + 10,
y = display.bottom + 120,
align = cc.ui.TEXT_ALIGN_LEFT,
))
12 创建并播放动画
local frames = display.newFrames("Coin%04d.png", 1, 8, not self.isWhite) //从缓存中加载精灵帧
local animation = display.newAnimation(frames, 0.3 / 8)
self:playAnimationOnce(animation, false, onComplete)
13 组合动作
self:runAction(transition.sequence({
cc.ScaleTo:create(0.15, 1.5),
cc.ScaleTo:create(0.1, 1.0),
cc.CallFunc:create(function()
local actions = {}
local scale = 1.1
local time = 0.04
for i = 1, 5 do
actions[#actions + 1] = cc.ScaleTo:create(time, scale, 1.0)
actions[#actions + 1] = cc.ScaleTo:create(time, 1.0, scale)
scale = scale * 0.95
time = time * 0.8
end
actions[#actions + 1] = cc.ScaleTo:create(0, 1.0, 1.0)
self:runAction(transition.sequence(actions))
end)
}))