cocos-lua 학습 노트(9) 동작
4652 단어 #[cocos2d-lua]
순간 동작:
1. place: 노드를 위치에 배치
2.Flipx 및 Flipy: 요정에만 사용 가능, x 또는 y 축을 따라 반전
3. Show 및 Hide 노드 표시 및 숨기기
4. CallFunc 동작이 끝났고 시작된 논리
제한 시간 동작
1. MoveTo 및 MoveBy
2. JumTo 및 JumpBy
3. BezierTo 및 BezierBy
4.ScaleTo 및 ScaleBy
5. RotateTo 및 RotateBy
6.FadeIn, FadeOut 및 FadeTo
7. TintTo 및 TintBy
8.Blink
9.Animation
복합 동작
1.DelayTime
2. Repeat 및 RepeatForever
3.Spawn
4.Sequence
5.Follow
변속 동작
1.Speed
2. ActionBase -> 여기 그림이 많아요.
노드 동작 인터페이스
node:runAction()
node:stopAction()
node:stopAllActions
node:stopAction(action)
node:stopActionByTag(tag)
node:setTag(tag)
action:setTag(tag)
node:getActionByTag(tag)
action:stopActionByTag(tag)
구체적인 인터페이스를 어떻게 사용하는지 바로 이전 데모에서 보여주세요
local MainScene = class("MainScene", function()
return display.newScene("MainScene")
end)
function MainScene:ctor()
self.backgroundLayer = display.newColorLayer(cc.c4f(128,128,128,255))
self.backgroundLayer:addTo(self)
-- preload frames to cache
display.addSpriteFrames("grossini-aliases.plist", "grossini-aliases.png")
-- run actions: 1 to 9
self:run(1)
end
function MainScene:run(actionNum)
self["action" .. actionNum](self)
end
--[[
Follow
]]
function MainScene:action1()
-- ,
local sprite1 = display.newSprite("1.png")
sprite1:center()
local move_left = cc.MoveBy:create(1.5, cc.p(display.width / 2, 0))
local move_right = cc.MoveBy:create(3, cc.p(- display.width, 0))
local seq = cc.Sequence:create(move_left, move_right, move_left)
local rep = cc.RepeatForever:create(seq)
sprite1:runAction(rep)
sprite1:addTo(self.backgroundLayer)
self.backgroundLayer:runAction(cc.Follow:create(sprite1))
end
--[[
MoveBy
]]
function MainScene:action2()
local sprite2 = display.newSprite("2.png")
:center()
:addTo(self.backgroundLayer)
-- true ,false
local flipxAction = cc.FlipX:create(true)
local moveTo = cc.MoveBy:create(1, cc.p(-300, 0))
local action = cc.Sequence:create(moveTo, flipxAction, moveTo:reverse())
sprite2:runAction(action)
end
--[[
Hide
]]
function MainScene:action3()
local hideAction = cc.Hide:create()
local moveTo = cc.MoveTo:create(1.5, cc.p(60, 60))
local action = cc.Sequence:create(moveTo, hideAction)
local sprite1 = display.newSprite("1.png")
:center()
:addTo(self.backgroundLayer)
:runAction(action)
end
--[[
CallFunc
]]
function MainScene:action4()
--
local callback = cc.CallFunc:create(function() print("In callback function") end)
local moveTo = cc.MoveTo:create(2, cc.p(0, 0))
local action = cc.Sequence:create(moveTo, callback)
local sprite1 = display.newSprite("1.png")
:center()
:addTo(self.backgroundLayer)
:runAction(action)
end
--[[
]]
function MainScene:action5()
local action = cc.BezierTo:create(2, {cc.p(display.right, display.top), cc.p(200, 200), cc.p(50, 100)})
local sprite1 = display.newSprite("1.png")
:pos(0, 0)
:addTo(self.backgroundLayer)
:runAction(action)
end
--[[
FadeTo
]]
function MainScene:action6()
local action = cc.FadeTo:create(2, 0)
local sprite1 = display.newSprite("1.png")
:center()
:addTo(self.backgroundLayer)
:runAction(action)
end
--[[
]]
function MainScene:action7()
local frames = display.newFrames("grossini_dance_%02d.png", 1, 14)
local animation = display.newAnimation(frames, 0.2)
local animate = cc.Animate:create(animation)
local sprite1 = display.newSprite("#grossini_dance_01.png")
:center()
:addTo(self.backgroundLayer)
:runAction(animate)
end
--[[
]]
function MainScene:action8()
local move = cc.MoveBy:create(1, cc.vertex2F(150,0))
local action = cc.Sequence:create(move, cc.DelayTime:create(2), move:reverse())
local sprite1 = display.newSprite("1.png")
:center()
:addTo(self.backgroundLayer)
:runAction(action)
end
--[[
]]
function MainScene:action9()
local action = cc.EaseSineOut:create(cc.MoveBy:create(2, cc.p(300, 0)))
local sprite1 = display.newSprite("1.png")
:center()
:addTo(self.backgroundLayer)
:runAction(action)
end
function MainScene:onEnter()
end
function MainScene:onExit()
end
return MainScene
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Rails Turbolinks를 페이지 단위로 비활성화하는 방법원래 Turobolinks란? Turbolinks는 링크를 생성하는 요소인 a 요소의 클릭을 후크로 하고, 이동한 페이지를 Ajax에서 가져옵니다. 그 후, 취득 페이지의 데이터가 천이 전의 페이지와 동일한 것이 있...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.