I’m currently trying to get a sprite’s dance animation to play when either the left or right arrow on screen is touched. The player moves in response to the touch but the animation doesn’t execute. Any thoughts?
display.setStatusBar(display.HiddenStatusBar);
local sky = display.newImage(“Assets/Sky Sprite.png”, 0, 150);
local sun = display.newImage(“Assets/Sun Sprite.png”, 275, 20);
local grassBlock1 = display.newImage(“Assets/Grass Block.png”, 25, 488);
local grassBlock2 = display.newImage(“Assets/Grass Block.png”, 75, 488);
local grassBlock3 = display.newImage(“Assets/Grass Block.png”, 125, 488);
local grassBlock4 = display.newImage(“Assets/Grass Block.png”, 175, 488);
local grassBlock5 = display.newImage(“Assets/Grass Block.png”, 225, 488);
local grassBlock6 = display.newImage(“Assets/Grass Block.png”, 275, 488);
local grassBlock7 = display.newImage(“Assets/Grass Block.png”, 325, 488);
local leftArrow = display.newImage(“Assets/Left Arrow.png”, 50, 475);
local rightArrow = display.newImage(“Assets/Right Arrow.png”, 275, 475);
–local lavaBlock = display.newImage(“Assets/Lava Block.png”, 0, 0);
sun.width = 300;
sun.height = 300;
grassBlock1.width = 50;
grassBlock1.height = 50;
grassBlock2.width = 50;
grassBlock2.height = 50;
grassBlock3.width = 50;
grassBlock3.height = 50;
grassBlock4.width = 50;
grassBlock4.height = 50;
grassBlock5.width = 50;
grassBlock5.height = 50;
grassBlock6.width = 50;
grassBlock6.height = 50;
grassBlock7.width = 50;
grassBlock7.height = 50;
leftArrow.width = 50;
leftArrow.height = 50;
rightArrow.width = 50;
rightArrow.height = 50;
–ANIMATION
local sloth
local sheetOptions =
{
width = 64,
height = 64,
numFrames = 6
}
local sheetOptions2 =
{
width = 60,
height = 102,
numFrames = 1
}
local sheet_idleAnimation = graphics.newImageSheet( “Assets/Sloth Idle 1.png”, sheetOptions2)
local sheet_danceAnimation = graphics.newImageSheet( “Assets/Sloth Dance Sprite Sheet.png”, sheetOptions)
local sequences_dance = {
– non-consecutive frames sequence
{
name = “dance”,
frames = { 1,2,3,4,5,6,5,4,3,2 },
time = 1000,
--loopCount = 5
loopDirection = “forward”
}
}
local sequences_idle = {
– non-consecutive frames sequence
{
name = “idle”,
frames = { 1 },
time = 1000,
loopDirection = “forward”
}
}
sloth = display.newSprite(sheet_idleAnimation, sequences_idle);
–local dance = display.newSprite( sheet_idleAnimation, sequences_dance );
–local idle = display.newSprite( sheet_idleAnimation, sequences_idle );
sloth.x = 200
sloth.y = 415
sloth:setSequence(“idle”)
sloth:play()
–AUDIO
local soundTable = {
--CelebrationMusic = audio.loadSound( “.mp3” ),
}
–GAME LOOP
function gameLoop(event)
end
–TOUCH CONTROLS
function leftArrow:touch( event )
if event.phase == “began” then
sloth:setSequence(“dance”)
sloth:play()
sloth.x = sloth.x-2
return true
end
end
function rightArrow:touch( event )
if event.phase == “began” then
sloth:setSequence(“dance”)
sloth:play()
sloth.x = sloth.x+2
return true
end
end
–function danceButton:touch( event )
– if event.phase == “began” then
– whipDance:setSequence(“whip”)
--whipDance:play()
– return true
--end
–end
–Runtime:addEventListener(“enterFrame”, gameLoop);
leftArrow:addEventListener( “touch”, leftArrow );
rightArrow:addEventListener( “touch”, rightArrow );
–sloth:addEventListener( “sprite”, spriteListener )
–danceButton:addEventListener( “touch”, danceButton );