私はプラットフォームに当たったときにジャンプするプレイヤーを持っています。落書きのようなもの。スコアは、y軸で移動した距離に基づいています。問題は、プレイヤーがジャンプすると、距離値(スコア)が増加するが、プレイヤーがプラットホームに戻ったとき、距離値が減少し、スコアも減少することである。私はスコアが減少するのを止めたい。あなたが到達した最大高さを超えて行けば、最大高さと更新のみスコアを設定し逆方向に移動すると、プレイヤーの距離値が減少しますか?
public GameObject player;
float beginPos;
float curPos;
public int Multiplier;
void Start() {
beginPos = player.transform.position.y;
}
void Update() {
curPos = player.transform.position.y - beginPos;
int Distance = Mathf.RoundToInt(curPos * Multiplier);
Debug.log(Distance);
}
彼がジャンプしているかどうかを示すプロパティをプレイヤーに追加できますか?もしそうなら、スコアを差し引くことはできません。 – MushyPeas
頂点のような追加の変数が必要な場合や、その周りに計算を組み立てたい場合は、 – Yepher
プレーヤーは絶えずジャンプしています!動きはありません。彼はプラットフォームに触れ、+ y方向に飛び跳ねる。彼はプラットフォームを逃し、ゲームオーバーです。他のアイデア?私は別の変数、距離を格納し、以前の値と比較するmaxDistを作ろうとしましたが、動作させることはできません。 –