0

Scribed Developer ChallengeでJavScriptとHackを少し学ぼうとしていますが、最も基本的なことすら機能させることができません。

これが私が持っているJavascriptです:

function new_game() {
}

function make_move() {

  var board = get_board();
  var lat = get_my_x();
  var longt = get_my_y();
  trace("("+ lat + "," + longt + ")")

   // we found an item! take it!
   if (board[get_my_x()][get_my_y()] > 0) {
       return TAKE;
   }

   var rand = Math.random() * 4;

   if (rand < 1) return NORTH;
   if (rand < 2) return SOUTH;
   if (rand < 3) return EAST;
   if (rand < 4) return WEST;

   return PASS;

}

そして、私の出力は次のようになります。

ここに画像の説明を入力してください

奇妙なことに、ロボットはまっすぐに並んでいたので、彼(緑色のロボット)は現在、私が位置(1,9)と呼んでいる位置にいます。ただし、出力は(4,0)を読み取ります。これがそれらのマッピング方法です。

(4,0)=>(1,7)(5,0)=>(1,8)(4,0)=>(1,9)

私には何の対応もないようで、ランダムに見えます。さらに必要な場合は、APIをオンラインで見つけることができます。また、githubでテストフレームワークを見つけることもできます。

get_my_xとget_my_yを正しく呼び出していますか?

前もって感謝します。

編集:

ここに画像の説明を入力してください

私の緑色のロボットは、紫色のロボットと同じタイルで起動しました。最初の動きは上向きで、出力は(2,2)でした。2番目のボブはバックダウンで、出力は(2,1)でした。次に左に移動し、出力は(2,2)でした。どうすればいいの?同じ座標を持つ2つのグリッドタイル!

4

1 に答える 1

0

少し恥ずかしいですが、私はこれに答えます:

基本的に、最後の位置ではなく、出力番号に自分がどこにいるかを教えてもらいたいと思っていました。私は間違った期待を持っていました、そしてそれが解決されるとそれはすべて理にかなっています。

于 2012-05-26T22:45:50.067 に答える