Как порождать объекты в короне SDK
Эй, я новичок в мире Corona SDK, я хочу узнать, как создавать некоторые объекты и заставлять их перемещаться по экрану, я пробую все, и это никогда не работает, я читаю форум о том, как порождать правильный путь, и пробую его, но все равно получаю ошибка в моем коде справки это мой код
local mRandom = math.random
local mAbs = math.abs
local objects = {"rocket02" ,"rocket01","coin01"}
local function spawnObject()
local objIdx = mRandom(#objects)
local objName = objects[objIdx]
local object = display.newImage("image/object_"..objName..".png")
object.x = mRandom (screenLeft +30,screenRight-30)
object.y = screenTop
if objIdx < 4 then
object.type = "food"
else
object.type = "other"
end
end
Также может кто-нибудь сказать мне, как заставить его двигаться по экрану
Пожалуйста, помогите Спасибо
вот медиа-файл для вас, чтобы взглянуть на
1 ответ
Я покажу вам метод. Для этого я переписал ваш код следующим образом:
local mRandom = math.random
local objects = {"rocket02" ,"rocket01","coin01"}
local objectTag = 0
local object = {}
local function spawnObject()
objectTag = objectTag + 1
local objIdx = mRandom(#objects)
local objName = objects[objIdx]
object[objectTag] = display.newImage(objName..".png") -- see the difference here
object[objectTag].x = 30+mRandom(320)
object[objectTag].y = 200
object[objectTag].name = objectTag
print(objectTag)
end
timer.performWithDelay(1,spawnObject,3)
Здесь я использовал timer
для отображения объекта. Вы также можете использовать для цикла для той же цели. Здесь вы можете назвать любой объект с тегом как object[objectTag]
,
Довожу до вашего сведения:
display.newImage(objName..".png")
--[[ will display object named rocket02.png or rocket01.png or coin01.png
placed in the same folder where your main.lua resides --]]
А также
display.newImage("image/object_"..objName..".png")
--[[ will display object named object_rocket02.png or object_rocket01.png
or object_coin01.png placed in a folder named 'image'. And the folder
'image' should reside in the same folder where your main.lua is. --]]
А для перемещения вашего объекта сверху вниз вы можете использовать:
или
function moveDown()
object[objectTag].y = object[objectTag].y + 10
--replace 'objectTag' in above line with desired number (ir., 1 or 2 or 3)
end
timer.performWithDelay(100,moveDown,-1)
или же
transition.to(object[objectTag],{time=1000,y=480})
--[[ replace 'objectTag' in above line with desired number (ir., 1 or 2 or 3)
eg: transition.to(object[1],{time=1000,y=480}) --]]
Продолжайте кодировать..............:)