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;
}
タイマーを調べます。 JavaにはJavaが組み込まれていますが、あなたのライブラリは何かを提供するかもしれません。 – computerfreaker