カメラ移動は横だけに…というとつまり、主人公の周りをを回るように移動させたい、という意味でしょうか?
kino さんが書いてくれたスクリプトでは思っていたのと違ったのですね?
toolscamera のソースから必要と思われる所を抜き出して、合体させてみました。
*Movecamera
k = 0
if keybuf.`X` = 1 : k += 1;Xキーでカメラを右に移動
if keybuf.`Z` = 1 : k += 4;Zキーでカメラを左に移動
E3DGetPos hsid1, saveposx, saveposy, saveposz
deg = 2.0
if k&1 : camdegxz += deg
if k&4 : camdegxz -= deg
if ( camdegxz > 360.0) {
camdegxz -= 360.0
}
if ( camdegxz < 0.0) {
camdegxz += 360.0
}
;三角関数を使ってカメラの位置を計算
E3DSin camdegxz, sinxz
E3DCos camdegxz, cosxz
backposx = saveposx + sinxz * 7000.0
backposy = saveposy + 5000.0
backposz = saveposz - cosxz * 7000.0
;カメラの位置を設定
E3DSetCameraPos backposx, backposy , backposz
;カメラの注視点を設定
E3DSetCameraTarget saveposx, saveposy , saveposz, 0.0, 1.0, 0.0
return
こうしたい、ここがわからない、といったことは、相手が正確に分かるように書きかたを工夫すると
回答してもらえやすくなりますし、時間も無駄にせずにすみますね。