如何在lua中获得最大数值?

时间:2013-02-14 11:15:20

标签: lua corona

我正在研究应用程序以观察您的运行速度,为此我需要一个显示您的最高速度的功能。但是找不到我的方式。

local speedText = string.format( '%.3f', event.speed )
speed.y = 250
speed.x = 125
local numValue = tonumber(speedText)*3.6
if numValue ~= nil then
    speed.text = math.round( numValue )
end

我已将speedText设为您在上面看到的数字。

我在Conora SDK / Lua中编程

1 个答案:

答案 0 :(得分:2)

当您在Stack Overflow上提出问题时,您应该提供更多信息,但无论如何我们都会尽力帮助您。

您的代码可能位于事件侦听器中,如下所示:

local listener = function(event)
  local speedText = string.format( '%.3f', event.speed )
  speed.y = 250
  speed.x = 125
  local numValue = tonumber(speedText)*3.6
  if numValue ~= nil then
      speed.text = math.round( numValue )
  end
end

显示当前速度。如果您想显示最大速度,请执行以下操作:

local maxSpeed = 0
local listener = function(event)
  local speedText = string.format( '%.3f', event.speed )
  speed.y = 250
  speed.x = 125
  local numValue = tonumber(speedText)*3.6 or 0
  if numValue > maxSpeed then
      maxSpeed = numValue
      speed.text = math.round( numValue )
  end
end

这个想法是:你需要一个变量定义外部监听器(或全局)来存储先前的最大速度。每次调用事件监听器时,如果当前速度高于先前的最大速度,则它是新的最大速度,因此您保存并显示它。