{
  "name": "Rio con compuerta: pared impermeable + reloj de la simulacion + sensor tortuga-parche",
  "savedAt": "2026-07-19T12:00:00.000000",
  "blocks": [
    { "def": {"template": "{0} = {1}", "category": "variables", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["filas", "12"], "children": [] },
    { "def": {"template": "{0} = {1}", "category": "variables", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["columnas", "18"], "children": [] },
    { "def": {"template": "{0} = {1}", "category": "variables", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["muroColumna", "9"], "children": [] },
    { "def": {"template": "{0} = {1}", "category": "variables", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["filaCompuerta", "6"], "children": [] },
    { "def": {"template": "{0} = Patches({1}, {2}, {3})", "category": "tortuga", "slots": [{"options": []}, {"options": []}, {"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["mundo", "filas", "columnas", "\"wall\""], "children": [] },

    { "def": {"template": "for {0} in range({1}):", "category": "control", "slots": [{"options": []}, {"options": []}], "isContainer": true, "isReporter": false}, "values": ["fila", "filas"], "children": [
      { "def": {"template": "if {0}:", "category": "control", "slots": [{"options": []}], "isContainer": true, "isReporter": false}, "values": ["fila != filaCompuerta"], "children": [
        { "def": {"template": "{0}.setsealed({1}, {2}, {3})", "category": "tortuga", "slots": [{"options": []}, {"options": []}, {"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["mundo", "fila", "muroColumna", "True"], "children": [] }
      ]}
    ]},

    { "def": {"template": "{0} = Turtle()", "category": "tortuga", "slots": [{"options": []}], "isContainer": false, "isReporter": false}, "values": ["medidor"], "children": [] },
    { "def": {"template": "{0}.shape({1})", "category": "tortuga", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["medidor", "\"point\""], "children": [] },
    { "def": {"template": "{0}.penup()", "category": "tortuga", "slots": [{"options": []}], "isContainer": false, "isReporter": false}, "values": ["medidor"], "children": [] },
    { "def": {"template": "{0}.color({1})", "category": "tortuga", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["medidor", "\"blue\""], "children": [] },

    { "def": {"template": "while {0}:", "category": "control", "slots": [{"options": []}], "isContainer": true, "isReporter": false}, "values": ["ticks() < 120"], "children": [
      { "def": {"template": "tick()", "category": "variables", "slots": [], "isContainer": false, "isReporter": false}, "values": [], "children": [] },

      { "def": {"template": "for {0} in range({1}):", "category": "control", "slots": [{"options": []}, {"options": []}], "isContainer": true, "isReporter": false}, "values": ["fila", "filas"], "children": [
        { "def": {"template": "{0}.setvalue({1}, {2}, {3})", "category": "tortuga", "slots": [{"options": []}, {"options": []}, {"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["mundo", "fila", "0", "100"], "children": [] }
      ]},

      { "def": {"template": "{0}.diffusevalue({1})", "category": "tortuga", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["mundo", "0.3"], "children": [] },

      { "def": {"template": "{0}.goto({1}, {2})", "category": "tortuga", "slots": [{"options": []}, {"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["medidor", "150", "sin(ticks() * 0.3) * 100"], "children": [] },
      { "def": {"template": "{0} = {1}", "category": "variables", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["f, c", "medidor.patch(mundo)"], "children": [] },
      { "def": {"template": "{0} = {1}", "category": "variables", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["nivelSensado", "mundo.value(f, c)"], "children": [] },

      { "def": {"template": "plot({0}, {1})", "category": "salida", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["\"nivel_en_sensor\"", "nivelSensado"], "children": [] },
      { "def": {"template": "monitor({0}, {1})", "category": "salida", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["\"ticks\"", "ticks()"], "children": [] },
      { "def": {"template": "monitor({0}, {1})", "category": "salida", "slots": [{"options": []}, {"options": []}], "isContainer": false, "isReporter": false}, "values": ["\"nivel en el sensor\"", "nivelSensado"], "children": [] }
    ]},

    { "def": {"template": "print({0})", "category": "salida", "slots": [{"options": []}], "isContainer": false, "isReporter": false}, "values": ["\"Listo, ticks finales: \" + str(ticks())"], "children": [] }
  ]
}
