2015-03-17 1 views
0

Я хочу создать игру, в которой я должен нажать изображение на основе изображения, которое появляется. Если изображение вверху красное, я хочу, чтобы игрок нажал красный символ, и если изображение синее, я хочу, чтобы игрок нажал синий символ. Если человек набрал неправильный символ, я хочу, чтобы игра закончилась. Проблема с моим кодом заключается в том, что всякий раз, когда изображение в верхней части меняет цвет, я бы хотел, чтобы персонаж тоже нажал на изменение. В случае, если это не имело никакого смысла ... скажите, что когда я начал игру, красное изображение появилось наверху. Поскольку красное изображение находится наверху, игрок должен нажать красный символ. Когда изображение в верхней части меняется с красного на синее, я хочу, чтобы человек нажал синий символ вместо красного символа. Проблема в том, что если я коснусь синего символа в этом случае, игрок проиграет игру. Как исправить эту проблему?Как создать цикл между двумя функциями

function scene:createScene (event) 
local group = self.view 

local tap = display.newText("Tap:", 0, 0, "Helvetica", 36) 
tap.x = 100 
tap.y = screenTop + 20 
group:insert(tap) 

local imageFiles = {"redbox.png", "bluebox.png"} 
local imageFile = imageFiles[math.random(2)] 
local randomImage = display.newImage(imageFile, centerX, screenTop + 20) 

local button1 = display.newImage("redbox.png") 
button1.x = centerX 
button1.y = centerY 
group:insert(button1) 

local button2 = display.newImage("bluebox.png") 
button2.x = centerX 
button2.y = centerY - 100 
group:insert(button2) 

local function endGame(event) 
if imageFile == "redbox.png" then 
button1.x = math.random(55, 300) 
button1.y = math.random(55, 300) 
button2.x = math.random(55, 300) 
button2.y = math.random(55, 300) 
local imageFile = imageFiles[math.random(2)] 
local randomImage = display.newImage(imageFile, centerX, screenTop + 20) 
else 
storyboard.gotoScene("restartEasy") 

end 
end 

local function endGame2(event) 
if imageFile == "bluebox.png" then 
button1.x = math.random(55, 300) 
button1.y = math.random(55, 300) 
button2.x = math.random(55, 300) 
button2.y = math.random(55, 300) 
local imageFile = imageFiles[math.random(2)] 
local randomImage = display.newImage(imageFile, centerX, screenTop + 20) 
else 
storyboard.gotoScene("restartEasy") 

end 
end 

button1:addEventListener("tap", endGame) 
button2:addEventListener("tap", endGame2) 

ответ

1

согласно моему пониманию, вы используете imageFile var для представления типа, который пользователь будет использовать. использование кнопка1 как красный коробка, кнопка2 как синий коробка. и после каждого нажатия, если нажать правую кнопку, переместить кнопку 1 и кнопку2 и сбросить изображение в новый случайный тип?

если да, то вам просто нужно удалить местного ключевое слово в EndGame и endGame2 функции. imageFile var ref внешний, но когда вы объявляете локальный imageFile, он перезаписывает внешний var и не работает.

+0

Большое вам спасибо! –