2016-05-14 7 views
1

私は自分のゲームに効果を出そうとしていますが、プレイヤーがそれを使用するとキャラクターはより速く走りますが、ソーダエフェクトを一定の時間持続させたいのですが、その方法はわかりません。私はSlick2DとLWJGLを使ってゲームを作っています。あなたは追加のライブラリを必要としない、このアプローチではブール値を一定時間持続させる方法を教えてください。

public class InventoryClass { 
    private final static long SODA_DURATION = 5000L; 
    private static long sodaStartTime; 

    public static void startSodaEffect() { 
     sodaStartTime = System.currentTimeMillis(); 
    } 

    public static boolean hasSodaEffect() { 
     return (System.currentTimeMillis() - sodaStartTime) < SODA_DURATION; 
    } 
} 

:exactelyあなたInventoryClassが何をするのか知らず

public class MainMap extends BasicGameState { 

    if(input.isKeyPressed(Input.KEY_I)) { 
     sbg.enterState(5); 
    } 
    if(InventoryClass.sodaEffect == true) { 
     InventoryClass.characterSpeed = 1f; 
    } 
    else{ 
     InventoryClass.characterSpeed = .1f; 
    }} 

    public class InventoryClass { 

    public static boolean sodaEffect = false; 
    } 
+0

タイマーを調べます。 JavaにはJavaが組み込まれていますが、あなたのライブラリは何かを提供するかもしれません。 – computerfreaker

答えて

2

は、私はこのような何かをするだろう。

関連する問題