luiscobo

Taller_09_Mundo

Oct 24th, 2019
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
JSON 3.56 KB | None | 0 0
  1. {
  2.   "robots": [
  3.     {
  4.       "x": 1,
  5.       "y": 1,
  6.       "_prev_x": 1,
  7.       "_prev_y": 1,
  8.       "_prev_orientation": 0,
  9.       "objects": {
  10.         "token": 99
  11.       },
  12.       "_orientation": 0,
  13.       "_is_leaky": true,
  14.       "_trace_history": [],
  15.       "_trace_style": "default",
  16.       "_trace_color": "seagreen",
  17.       "__id": 3,
  18.       "model": "classic",
  19.       "initial_position": [
  20.         1,
  21.         1
  22.       ]
  23.     }
  24.   ],
  25.   "description": [
  26.     "<h1>Reeborg, el constructor</h1>",
  27.     "<p>",
  28.     "    Reeborg tiene la necesidad de cubrir un camino de piedras que se encuentra",
  29.     "    en algún lugar de su patio, detrás de un muro. El camino de piedras tiene",
  30.     "    la misma altura que el muro y siempre está a dos posiciones a la derecha",
  31.     "    del muro. El camino debe estar rodeado de paredes construidas con el comando",
  32.     "    <code>build_wall()</code> de Reeborg. Encima del camino de piedra colocaremos",
  33.     "    una cantidad de tokens igual a la altura del muro.",
  34.     "</p>",
  35.     "<h3>Estrategia a seguir</h3>",
  36.     "<ul>",
  37.     "    <li>Construya la función <code>encontrar_muro()</code> el cual recorre la primera",
  38.     "        calle del mundo hasta encontrar el muro. Deja a Reeborg frente al muro en",
  39.     "        cuestión.</li>",
  40.     "    <li>Construya una función <code>altura_muro()</code> el cual <b>retorna</> cuántas ",
  41.     "        casillas mide el muro. Deja a Reeborg al otro lado del muro, en la parte inferior",
  42.     "        mirando hacia la derecha.</li>",
  43.     "    <li>Ahora escriba la función <code>construir_paredes_izquierda(n)</code> el cual",
  44.     "        coloca paredes en la parte izquierda del camino de piedras. <code>n</code> representa",
  45.     "        el número de paredes a construir, el cual será en el programa igual a la altura",
  46.     "        del muro.</li>",
  47.     "    <li>También escriba la función <code>construir_paredes_derecha(n)</code> con una",
  48.     "        misión similar a la anterior.</li>",
  49.     "    <li>Finalmente, escriba la función <code>dejar_tokens_parte_superior(n)</code> la",
  50.     "        cual deja <code>n</code> tokens en la parte superior del camino de piedra a",
  51.     "        encerrar y también construya una pared en la parte superior del camino de piedra.</li>",
  52.     "</ul>",
  53.     "DIFFICULTY5",
  54.     ""
  55.   ],
  56.   "small_tiles": false,
  57.   "rows": 16,
  58.   "cols": 7,
  59.   "onload": [
  60.     "/* Generación del mundo */",
  61.     "var ancho = 2;",
  62.     "var alto = 2;",
  63.     "var y;",
  64.     "",
  65.     "ancho = RUR.randint(6, 17);",
  66.     "alto = RUR.randint(3, 17);",
  67.     "    ",
  68.     "RUR.set_world_size(ancho, alto);",
  69.     "RUR.fill_background(\"grass\");",
  70.     "",
  71.     "pos_muro = RUR.randint(2, ancho - 2);",
  72.     "while (pos_muro >= ancho - 2) {",
  73.     "    pos_muro = RUR.randint(2, ancho - 2);",
  74.     "}",
  75.     "",
  76.     "alto_muro = RUR.randint(1, alto - 1);",
  77.     "",
  78.     "opciones = { \"goal\": true };",
  79.     "",
  80.     "for (y = 1; y <= alto_muro; y++) {",
  81.     "    RUR.add_background_tile(\"bricks\", pos_muro, y);",
  82.     "    RUR.add_background_tile(\"gravel\", pos_muro+2, y);",
  83.     "    RUR.add_wall('west', pos_muro + 2, y, opciones);",
  84.     "    RUR.add_wall('east', pos_muro + 2, y, opciones);",
  85.     "}",
  86.     "RUR.add_wall('south', pos_muro + 2, alto_muro+1, opciones);",
  87.     "RUR.add_object(\"token\", pos_muro + 2, alto_muro + 1, { 'goal': true, 'number': alto_muro });",
  88.     "RUR.give_object_to_robot(\"token\", 99);",
  89.     "",
  90.     ""
  91.   ],
  92.   "library": [
  93.     "# Para voltear a la derecha",
  94.     "def turn_right():",
  95.     "    repeat 3:",
  96.     "        turn_left()"
  97.   ]
  98. }
Advertisement
Add Comment
Please, Sign In to add comment