私は Unity と Javascript を初めて使用し、パズル ゲーム Cryptica をエンジンに慣れるための学習体験として再現しようとしています。OnGUI の 4 つのボタン (左、上、右、下) のいずれかを呼び出すときに、2 つのオブジェクトを同時に移動しようとしています。スクリプトは両方のオブジェクトにアタッチされていますが、移動するのは 1 つだけです。
空のゲーム オブジェクトを作成し、両方のオブジェクトをこれに追加し、スクリプトを空のオブジェクトに配置すると、両方が移動しますが、シナリオごとに異なる方法で各オブジェクトを移動するロジックを作成することはできません (つまり、1 つのオブジェクトがボードの端にある場合、その方向には移動できなくなりますが、別のオブジェクトはまだ移動する可能性があります)。これがコードです。画像がより役立つかどうか教えてください。
var cubeMovement = 11;
function Update () {
}
function OnGUI () {
//Move dynamic cubes
if (GUI.Button (Rect (250,150,50,50), "Up")) {
transform.Translate(cubeMovement,0,0);
}
if (GUI.Button (Rect (350,250,50,50), "Right")) {
transform.Translate(0,0,-cubeMovement);
}
if (GUI.Button (Rect (250,350,50,50), "Down")) {
transform.Translate(-cubeMovement,0,0);
}
if (GUI.Button (Rect (150,250,50,50), "Left")) {
transform.Translate(0,0,cubeMovement);
}
}