如何在 Corona SDK 中使对象每隔几个点增加一定速度?

我想在达到5个点后增加球的速度,直到达到一定速度为止。如何高效地做到这一点?

假设

       local speed=0
       local score=0
       local ball
点赞
用户7216570
用户7216570

如果有人遇到同样的问题,那么也许这段小代码可以帮助你:

if(score % 5 == 0) then

speed = speed + 0.2

end
2017-01-30 18:40:08
用户7026995
用户7026995

尝试以下代码。Speed 根据 score 计算。

local mFloor = math.floor               -- 取整函数
local mMin = math.min                   -- 取最小值函数

local pointStep = 5                     -- 得分分数步长
local speedStep = 0.2                   -- 速度步长
local startSpeed = 0                    -- 起始速度
local speedLimit = 4                    -- 最大速度值
local times = mFloor( score / pointStep )    -- 根据得分计算次数

speed = times * speedStep + startSpeed     -- 计算速度
speed = mMin( speed, speedLimit )          -- 确保速度不超过最大速度值
2017-01-30 20:43:10