标签: coronasdk

如何在自来水功能中对电晕进行连续动作

如何在水龙头功能中对电晕进行连续动作?我的意思是event.phase="began"直到它的动作重复直到它结束.

我的代码:

function upArrowtap(event)
  if (event.phase == "began") then
    if ( ball.y > 45 ) then
      transition.cancel(trans1)
      transition.cancel(trans2)
      --ball.y = ball.y-15
      start()
    end
  end
end

upArrow:addEventListener("touch", upArrowtap)
Run Code Online (Sandbox Code Playgroud)

希望你理解我的问题.

lua coronasdk

2
推荐指数
1
解决办法
2349
查看次数

Corona SDK - 我们如何将外部函数连接到main.lua?

现在我们将所有代码都收集在main.lua中.我们不想使用面向对象的代码,但仍然找到一种将不同对象拆分为单独文件的简单方法.

在我们的main.lua文件中,我们有像水,船,男孩,岛屿和云这样的对象 - 所有这些都创造了一大堆代码.我们希望在它自己的lua文件中有"BEGIN WATER 3",并且能够使用简单的函数在main.lua中执行该代码.我们怎么做?

这是一个来自main.lua文件的例子,显示"water3":

--------------- BEGIN WATER 3 ---------------------------------------------------------

local watere = display.newImage( "water3.png", true )
game:insert( watere )
watere.y = 619
watere.x = 500
watere.xScale = 2

--water sound
local wavesound5 = media.newEventSound("waves.wav")

local function playWave5 (event)
  media.playEventSound(wavesound5)
end

local w,h = display.contentWidth, display.contentHeight

local function callbackFunc()
  print( "Transition 1 completed" )
end

local function mainwater(watere)
end

function loopar()
  local myTween = transition.to(watere, {time=2300, x=(400), y=(h-140), transition=easing.inOutQuad, onComplete=loopar2})
end

function loopar2()
  local myTween = transition.to(watere, {time=2200, …
Run Code Online (Sandbox Code Playgroud)

mobile lua function coronasdk

2
推荐指数
1
解决办法
5427
查看次数

如何在Corona SDK中检测TouchOut事件?

在Corona游戏中,我在屏幕的一角放置了一个操纵杆图形.

当用户触摸操纵杆并将其从一侧拉到另一侧时,它会移动角色.然而,如果用户从操纵杆的中间一直拖到侧面,然后移开他/她的手指,则角色继续移动.我希望角色在触摸时停止,即使操纵杆图形上不再有触摸.

操纵杆图像订阅"触摸"监听器control:addEventListener( "touch", onTouch ).

操纵杆代码如下:

-- Constants
local playerSpeed = 300
local playerDamping = 15

-- Player controls
local onTouch = function( event )

    -- Player rotation
    local deltaX = event.x - control.x
    local deltaY = event.y - control.y
    local magnitude = math.sqrt( deltaX * deltaX + deltaY * deltaY )

    player.rotation = math.deg( math.atan2 ( deltaY, deltaX ) )

    -- Player speed
    if event.phase == "ended" then
        player.linearDamping = playerDamping
    else …
Run Code Online (Sandbox Code Playgroud)

sdk lua touch coronasdk

2
推荐指数
1
解决办法
2584
查看次数

如何在Lua中显示数组元素?

我在使用Lua编程语言显示数组元素时出现问题.基本上,我创建了一个包含3个元素的数组,我试图在电晕sdk模拟器上的for循环中显示其内容.如果我显示各个数组元素(没有循环),它们会显示正常; 一旦我将它们放入for循环中,屏幕上就不再显示任何内容了

这是我的代码:

myText = {"hello", "world", "there"}

for i = 1, myText do
     local myText = display.newText( myText[i], 0, 0, native.systemFont, 35 )
end  
Run Code Online (Sandbox Code Playgroud)

sdk lua coronasdk

2
推荐指数
3
解决办法
2万
查看次数

Corona SDK:从左到右填充一个栏

我正在学习Corona SDK,也是lua的新手(我主要做ruby和一些javascript).

我有一个酒吧,我想填写用户做的东西.我把它设置如下:

            --outer rectangle
    powerBar = display.newRect(210, 6, 24, 9)
    powerBar.strokeWidth = 1
    powerBar:setStrokeColor(254,203,50) 
    powerBar:setFillColor(0,0,0,0)  

            --inner rectangle which fills up
    powerBarFill = display.newRect(211,7,0,7)
    powerBarFill:setFillColor(234,183,30)       
Run Code Online (Sandbox Code Playgroud)

当"东西"发生时,我将1添加到powerBarFill.width,我认为这会使它从左向右增长.但是,它实际上是从中心生长出来的,即它的x位于中心,宽度从那里向两侧延伸.

什么是保持左侧静止并增长右侧的最佳方法?我可以设置它的x位置实际上是在左侧而不是在中间吗?似乎可能会这样做.

提前喝彩

lua coronasdk

2
推荐指数
1
解决办法
2549
查看次数

如何使用动态变量名?

我按以下方式设置本地动态变量名称 _local["cracks"..brick.index] = ...

我怎么能访问变量来做例如removeSelf?我试过的 _local["cracks"..brick.index]:removeSelf()

lua coronasdk

2
推荐指数
1
解决办法
907
查看次数

Corona SDK event.target touch/tap

我正在尝试使用event.target来查看已触发的对象.我有一个由本地事件监听器调用的函数:

local param1 = 0

function changeParams(event)
  if( event.target == "op1Up" ) then
    param1 = param1 + 1
  elseif( event.target == "op1Down" ) then
    param1 = param1 - 1
  end
  dispMyParams1.text = ( "Param 1: "..param1 )
end

local op1Up = display.newRect( --[[rect parameters]]-- )
op1Up:addEventListener( "tap", changeParams )
local op1Down = display.newRect( --[[rect parameters]]-- )
op1Down:addEventListener( "tap", changeParams )
Run Code Online (Sandbox Code Playgroud)

events lua tap touch coronasdk

2
推荐指数
1
解决办法
1226
查看次数

不同的屏幕尺寸与电晕sdk

我正在使用电晕sdk制作我的第一款iphone游戏,并希望它能在尽可能多的设备上运行(手机+平板电脑).但是我不知道如何处理不同的屏幕尺寸和分辨率.我使用电晕模拟器为iPhone 5开发了我的游戏,它在该设备上运行良好.当我在像iPhone 4这样的低分辨率设备上尝试时,我会在每侧获得2个黑色矩形.我尝试使用不同的分辨率创建2个不同的背景,并在我的config.lua中添加:

imageSuffix = {
       ["@2x"] = 2
}
Run Code Online (Sandbox Code Playgroud)

然而,这似乎没有改变任何东西......我不确定我应该在config.lua文件中的内容中设置的高度和宽度以及我应该为背景设置的高度和宽度.如果这些问题很愚蠢,我很抱歉,我刚刚开始.提前致谢!

size lua resolution screen coronasdk

2
推荐指数
1
解决办法
3682
查看次数

Lua Math.random和if语句

代码的目的是产生一个随机数并基于na生成的数字来做某件事.

local x = math.random(1,2)
if x = 1 then
  print("x = 1")
  else
    print("x > 1")
  end
Run Code Online (Sandbox Code Playgroud)

但是,当我运行代码时,我得到以下错误"''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

math lua if-statement coronasdk

2
推荐指数
1
解决办法
247
查看次数

如何隔离Lua中星星分隔的数字?

在某些网络服务中,我收到了这个

"时间": "0.301*0.869*1.387*2.93*3.653*3.956*4.344*6.268*6.805*7.712*9.099*9.784*11.071*11.921*13.347*14.253*14.965*16.313*16.563*17.426*17.62*18.114"

我想分开数字并将它们插入这样的表中,怎么样?

0.301
0.869
1.387
2.93
3.653
3.956
4.344
6.268
6.805
7.712
9.099
9.784
11.071
11.921
13.347
14.253
14.965
16.313
16.563
17.426
17.62
18.114
Run Code Online (Sandbox Code Playgroud)

arrays string lua coronasdk

2
推荐指数
1
解决办法
63
查看次数

标签 统计

coronasdk ×10

lua ×10

sdk ×2

touch ×2

arrays ×1

events ×1

function ×1

if-statement ×1

math ×1

mobile ×1

resolution ×1

screen ×1

size ×1

string ×1

tap ×1