如何根据速度改变档位?

时间:2015-10-19 06:45:25

标签: unity3d unityscript

我正在开发一款小型赛车游戏,并希望在速度方面增加装备。我没有把一个实际的齿轮系统放在我的车里。为了增加档位,我使用以下逻辑,我可以看到换档从0变为1,但不能再进一步。

var gr=0;
var sp=0;
sp=sp+(20*Time.deltaTime);

if(currentSpeed>=sp)
{
    gr++;
    gear.text="GEAR "+gr;//displaying gear          
}

以上,currentSpeed随着时间的推移逐渐增加。

1 个答案:

答案 0 :(得分:2)

我不建议使用该方法根据速度确定它的档位。看看这段代码:

    import Foundation

var stopAnimation = false
extension UILabel {


       func letterAnimation(newText:NSString?,completion:(finished:Bool) -> Void){
            self.text = ""
            if !stopAnimation {
            dispatch_async(dispatch_queue_create("backroundQ", nil)){

                if var text = newText {
                    text = (text as String) + " "
                    for(var i = 0; i < text.length;i++){
                        if stopAnimation {

                            break
                        }

                        dispatch_async(dispatch_get_main_queue()) {

                                let range = NSMakeRange(0,i)
                                self.text = text.substringWithRange(range)
                            }

                        NSThread.sleepForTimeInterval(0.05)

                    }
                    completion(finished:true)

                }

            }
        self.text = newText as? String
        }
        }



}

这是解决此问题的非常简单的方法,您可以轻松更改齿轮数量以及更改速度。