Skip to content

Commit

Permalink
Merge branch 'main' into fix-subscribe
Browse files Browse the repository at this point in the history
  • Loading branch information
mergify[bot] authored Sep 27, 2023
2 parents 1b0d5b0 + 3feaa9f commit fc8ae65
Show file tree
Hide file tree
Showing 57 changed files with 851 additions and 904 deletions.
7 changes: 4 additions & 3 deletions .run/Python tests in test_level.run.xml
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Python tests in test_level" type="tests" factoryName="Autodetect" nameIsGenerated="true">
<module name="hedyorg" />
<module name="hedy" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<option name="SDK_HOME" value="" />
<option name="SDK_HOME" value="$PROJECT_DIR$/venv/bin/python" />
<option name="SDK_NAME" value="Python 3.9 (hedy)" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="IS_MODULE_SDK" value="false" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<option name="_new_additionalArguments" value="&quot;&quot;" />
Expand Down
4 changes: 2 additions & 2 deletions app.py
Original file line number Diff line number Diff line change
Expand Up @@ -553,13 +553,13 @@ def parse():

with querylog.log_time('detect_sleep'):
try:
response['has_sleep'] = 'sleep' in hedy.all_commands(code, level, lang)
response['has_sleep'] = 'sleep' in transpile_result.commands
except BaseException:
pass

try:
if username and not body.get('tutorial') and ACHIEVEMENTS.verify_run_achievements(
username, code, level, response):
username, code, level, response, transpile_result.commands):
response['achievements'] = ACHIEVEMENTS.get_earned_achievements()
except Exception as E:
print(f"error determining achievements for {code} with {E}")
Expand Down
2 changes: 1 addition & 1 deletion content/achievements/ca.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ achievements:
title: Full House
text: "Have a class with more than 20 students\n"
well_begun_is_half_done:
title: Ben començat està mig fet
title: Un bon començament és fet a mitges
text: "Acaba el tutorial de Hedy\n"
adventure_is_worthwhile:
title: L'aventura val la pena
Expand Down
4 changes: 2 additions & 2 deletions content/adventures/ar.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -252,9 +252,9 @@ adventures:
```
{print} حقيبة الظهر خاصته أصبحت ثقيلة للغاية.
{print} كان داخلها زجاجة ماء و مصباح و طعام.
المحتويات هي ماء، مصباح، طعام
المحتويات {is} ماء، مصباح، طعام
الزائد {is} {ask} ما الذي عليه التخلص منه؟
{remove} الزائد {from} المحتويات
{remove} الزائد {from} المحتويات
```
start_code: "{print} قصتك"
13:
Expand Down
64 changes: 32 additions & 32 deletions content/adventures/ca.yaml

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions content/adventures/cs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -304,9 +304,9 @@ adventures:
example_code_2: |
```
{print} Slyší zvuk
zvirata {is} 🐿, 🦔, 🦇, 🦉
zvířata {is} 🐿, 🦔, 🦇, 🦉
zvire {is} {ask} Co si myslíš, že to je?
{add} zvire {to_list} zvirata
{add} zvire {to_list} zvířata
{print} to byla zvířata {at} {random}
```
story_text_3: |
Expand Down
2 changes: 1 addition & 1 deletion content/adventures/cy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ adventures:
story_text_2: "The command `{add}` can also come in handy in your story.\n"
story_text_3: "This is an example of the `{remove}` command in your story\n\n### Exercise\nCan you use the 3 new commands `{at} {random}` , `{add} {to}` and `{remove} {from}` in your own story?\n"
example_code: "```\nanimals {is} 🦔, 🐿, 🦉, 🦇\n{print} He now hears the sound of an animals {at} {random}\n```\n"
example_code_2: "```\n{print} He hears a sound\nanimals {is} 🐿, 🦔, 🦇, 🦉\nanimal {is} {ask} What do you think it is?\n{add} animal {to_list} animals\n{print} it was an animal {at} {random}\n```\n"
example_code_2: "```\n{print} He hears a sound\nanimals {is} 🐿, 🦔, 🦇, 🦉\nanimal {is} {ask} What do you think it is?\n{add} animal {to_list} animals\n{print} it was an animals {at} {random}\n```\n"
example_code_3: "```\n{print} His backpack got way too heavy.\n{print} Inside were a bottle of water, a flashlight and a brick.\nbag {is} water, flashlight, brick\ndump {is} {ask} Which item should he dump?\n{remove} dump {from} bag\n```\n"
start_code: '{print} Your story'
4:
Expand Down
2 changes: 1 addition & 1 deletion content/adventures/de.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -381,7 +381,7 @@ adventures:
Füge neue Zeilen Code zu deiner Geschichte hinzu, sodass alle neuen Befehle mindestens ein Mal in deiner Geschichte vorkommen.
example_code_3: |
```
{print} Sein Rucksack wurde viel zu schwer.
{print} Sein Ruck sack wurde viel zu schwer.
{print} Drinnen waren eine Flasche Wasser, eine Taschenlampe und ein Ziegelstein.
Rucksack {is} Wasser, Taschenlampe, Ziegelstein
rauswerfen {is} {ask} Welchen Gegenstand soll er rauswerfen?
Expand Down
8 changes: 4 additions & 4 deletions content/adventures/en.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -406,12 +406,12 @@ adventures:
story_text_2: |
### Exercise
Time to make your own variables!
In the example code we made an example of the variable `favorite_animals`. In line 1 the variable is set, and in line 2 we haved used the variable in a `{print}` command.
In the example code we made an example of the variable `favorite_animals`. In line 1 the variable is set, and in line 2 we used the variable in a `{print}` command.
Firstly, finish our example by filling in your favorite animal in the blanks. Then make at least 3 of these codes yourself. Pick a variable, and set the variable with the `{is}` command. Then use it with a `{print}` command, just like we did.
example_code_2: |
```
favorite_animals is _
favorite_animals {is} _
{print} I like favorite_animals
```
start_code: |-
Expand Down Expand Up @@ -1126,7 +1126,7 @@ adventures:
animals {is} 🐿, 🦔, 🦇, 🦉
animal {is} {ask} What do you think it is?
{add} animal {to_list} animals
{print} it was an animal {at} {random}
{print} it was an animals {at} {random}
```
story_text_3: |
This is an example of the `{remove}` command in your story
Expand Down Expand Up @@ -2176,7 +2176,7 @@ adventures:
levels:
2:
story_text: |
Now that you have learned how to use the `{ask} command, you can make your rock, paper, scissors code interavtive too!
Now that you have learned how to use the `{ask}` command, you can make your rock, paper, scissors code interavtive too!
### Exercise
Make the rock, paper, scissors code interactive by adding the `{ask}` command and a question to your rock, paper, scissors code.
Expand Down
2 changes: 1 addition & 1 deletion content/adventures/eo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -323,7 +323,7 @@ adventures:
story_text: "En ĉi tiu nivelo, vi lernos kiel facile peti (per `{ask}`) la mendojn de viaj gastoj en mallonga kodo.\n"
example_code: "```\npladoj = entreo, ĉefplado, deserto\n{for} plado {in} pladoj\n manĝaĵo = {ask} 'Kion vi volas manĝi por via ' plado '?'\n {print} manĝaĵo ' estos via ' plado\n```\n"
story_text_2: "\nKompreneble, vi ankaŭ povus mendi por pluraj homoj!\n"
example_code_2: "```\npladoj = entreo, ĉefplado, deserto\nnomoj = Timoteo, Omaro\n{for} nomo {in} nomoj\n {for} plado {in} pladoj\n manĝaĵo = {ask} nomo ', kion vi volas manĝi por via ' plado '?'\n {print} nomo ' mendas ' food 'n por sia ' plado\n```\n"
example_code_2: "```\npladoj = entreo, ĉefplado, deserto\nnomoj = Timoteo, Omaro\n{for} nomo {in} nomoj\n {for} plado {in} pladoj\n manĝaĵo = {ask} nomo ', kion vi volas manĝi por via ' plado '?'\n {print} nomo ' mendas ' manĝaĵo 'n por sia ' plado\n```\n"
start_code: pladoj = entreo, ĉefplado, deserto
11:
story_text: "Oni povas uzi `{for} i {in} {range} 1 {to} 5` por orde presi (kune kun `{print}`) la mendojn de pluraj klientoj.\n"
Expand Down
6 changes: 3 additions & 3 deletions content/adventures/es.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,7 @@ adventures:
animales {is} 🐿, 🦔, 🦇, 🦉
animal {is} {ask} ¿Qué piensas qué es?
{add} animal {to_list} animales
{print} fue un animal {at} {random}
{print} fue un animales {at} {random}
```
story_text_3: |
Este es un ejemplo del comando `{remove}` en tu historia
Expand Down Expand Up @@ -1399,7 +1399,7 @@ adventures:
story_text: "## Variables\nPuedes nombrar una palabra con `{is}`. A esto se le llama **variable**. En este ejemplo creamos una variable llamada nombre y una variable llamada edad. Puedes usar la palabra nombre en cualquier parte de tu código y será reemplazada por Hedy, tal que así:\n"
example_code: "```\nnombre {is} Hedy\nedad {is} 15\n{print} nombre tiene edad años\n```\n"
story_text_2: "### Ejercicio\n¡Hora de crear tus propias variables!\nEn el código de ejemplo hicimos un ejemplo de la variable `favorite_animals`. En la línea 1 se crea la variable, y en la línea 2 usamos la variable en un comando `{print}`.\nLo primero de todo, termina nuestro ejemplo rellenando tu animal favorito en el hueco en blanco. Después haz 3 códigos como estos por ti mismo. Elige una variable, y establece la variable con el comando `{is}`. Entonces úsala con un comando `{print}`, como hicimos.\n"
example_code_2: "```\nanimales_favoritos es _\n{print} me gusta animales_favoritos\n```\n"
example_code_2: "```\nanimales_favoritos {is} _\n{print} me gusta animales_favoritos\n```\n"
start_code: "nombre {is} Hedy\nedad {is} 15\n{print} nombre tiene edad años"
14:
start_code: "edad = {ask} '¿Cuántos años tienes?'\n{if} edad < 13\n {print} '¡Eres más joven que yo!'\n{else}\n {print} '¡Eres mayor que yo!'"
Expand Down Expand Up @@ -1513,7 +1513,7 @@ adventures:
default_save_name: piedra_2
levels:
2:
story_text: "Ahora que has aprendido como usar el comando `{ask}, ¡también puedes hacer tu código interactivo de piedra, papel, tijeras!\n\n### Ejercicio\nHaz el código interactivo de piedra, papel, tijeras añadiendo el comando `{ask}` y una pregunta a tu código de piedra, papel, tijeras.\n"
story_text: "Ahora que has aprendido como usar el comando `{ask}`, ¡también puedes hacer tu código interactivo de piedra, papel, tijeras!\n\n### Ejercicio\nHaz el código interactivo de piedra, papel, tijeras añadiendo el comando `{ask}` y una pregunta a tu código de piedra, papel, tijeras.\n"
example_code: "```\nopción {is} _\n{print} Yo elijo opción\n```\n"
start_code: "# pon tu código aquí"
harry_potter:
Expand Down
2 changes: 1 addition & 1 deletion content/adventures/fi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ adventures:
story_text: "In level 3 you can make your story more fun. You can use randomness for any monster, animal or other obstacle, like this:\n"
example_code: "```\nanimals {is} 🦔, 🐿, 🦉, 🦇\n{print} He now hears the sound of an animals {at} {random}\n```\n"
story_text_2: "The command `{add}` can also come in handy in your story.\n"
example_code_2: "```\n{print} He hears a sound\nanimals {is} 🐿, 🦔, 🦇, 🦉\nanimal {is} {ask} What do you think it is?\n{add} animal {to_list} animals\n{print} it was an animal {at} {random}\n```\n"
example_code_2: "```\n{print} He hears a sound\nanimals {is} 🐿, 🦔, 🦇, 🦉\nanimal {is} {ask} What do you think it is?\n{add} animal {to_list} animals\n{print} it was an animals {at} {random}\n```\n"
story_text_3: "This is an example of the `{remove}` command in your story\n\n### Exercise\nCan you use the 3 new commands `{at} {random}` , `{add} {to}` and `{remove} {from}` in your own story?\n"
example_code_3: "```\n{print} His backpack got way too heavy.\n{print} Inside were a bottle of water, a flashlight and a brick.\nbag {is} water, flashlight, brick\ndump {is} {ask} Which item should he dump?\n{remove} dump {from} bag\n```\n"
15:
Expand Down
14 changes: 7 additions & 7 deletions content/adventures/fr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ adventures:
start_code: "{print} bonjour le monde !"
2:
story_text: |
Bravo ! Tu as atteint le niveau 2. Avec un peu de chance, tu as déjà écrit des super codes!
Bravo ! Tu as atteint le niveau 2. Avec un peu de chance, tu as déjà écrit des super codes !
Dans le premier niveau, tu as peut-être remarqué que la commande `{echo}` ne peut se rappeler qu'une seule information à la fois.
Par exemple, dans l'aventure du restaurant, tu peux re-dire ce que le client voulait manger ou ce qu'il voulait boire, mais pas les deux en une seule phrase.
start_code: "{print} bonjour le monde !"
Expand Down Expand Up @@ -212,9 +212,9 @@ adventures:
```
{print} Son sac à dos est beaucoup trop lourd.
{print} Il y a dedans une bouteille d'eau, une lampe torche et une brique.
sac {is} eau, torche, brique
sac_à_dos {is} eau, torche, brique
jeté {is} {ask} Quel objet devrions-nous jeter ?
{remove} jeté {from} sac
{remove} jeté {from} sac_à_dos
```
start_code: "{print} Ton histoire"
4:
Expand Down Expand Up @@ -621,7 +621,7 @@ adventures:
start_code: "{forward} 50\n{turn} {left}"
2:
story_text: |
À ce niveau, tu peux utiliser des variables pour rendre la tortue interactive. Par exemple, tu peux demander au joueur combien de pas la tortue doit avancer.
À ce niveau, tu peux utiliser des variables pour rendre la tortue interactive. Par exemple, tu peux demander au joueur de combien de pas la tortue doit avancer.
example_code: |
```
réponse {is} {ask} De combien de pas la tortue doit-elle avancer ?
Expand Down Expand Up @@ -1251,7 +1251,7 @@ adventures:
levels:
1:
story_text: |
Au niveau 1 tu peux faire ton propre restaurant virtuel et prendre les commandes de tes invités.
Au niveau 1 tu peux faire ton propre restaurant virtuel et prendre les commandes de tes clients.
example_code: |
```
{print} Bienvenu au restaurant Chez Hedy 🍟
Expand Down Expand Up @@ -2493,7 +2493,7 @@ adventures:
2:
story_text_2: "### Exercice\nDans l'onglet précédent tu t'es entraîné à attribuer des valeurs aux variables avec la commande `{is}`.\nTu as créé au moins 3 variables et les a utilisées avec la commande `{print}`.\nMaintenant, au lieu de simplement attribuer une valeur fixe aux variables, nous voulons les rendre interactives, comme dans l'exemple.\n\nCopie le code de l'onglet précédent et rend les variables interactives en utilisant la commande `{ask}`.\n"
example_code_2: "```\nanimaux_préférés {is} {ask} Quel est ton animal préféré ?\n{print} J'aime les animaux_préférés\n```\n"
story_text: "## La commande `{ask}`\nMaintenant que l'on peut utiliser les **variables** dans nos codes, la commande `{echo}` n'est plus utile.\nOn peut utiliser les variables pour stocker les réponses à nos questions et ainsi utiliser la réponse à plusieurs questions dans nos codes.\nVérifie-le :\n\nDe cette façon notre code devient interactif !\n"
story_text: "## La commande `{ask}`\nMaintenant que l'on peut utiliser les **variables** dans nos codes, la commande `{echo}` n'est plus utile.\nOn peut utiliser les variables pour stocker les réponses à nos questions et ainsi utiliser la réponse à plusieurs questions dans nos codes.\nVérifie-le :\n\nDe cette façon ton code devient interactif !\n"
example_code: "```\nnom {is} {ask} Quel est ton nom ?\n{print} Bonjour nom\nâge {is} {ask} Quel âge as-tu ?\n{print} nom a âge ans.\n```\n"
start_code: "nom {is} {ask} Quel est ton nom ?\n{print} Bonjour nom\nâge {is} {ask} Quel âge as-tu ?\n{print} nom a âge ans."
1:
Expand All @@ -2514,7 +2514,7 @@ adventures:
story_text: "## Les variables\nTu peux donner une valeur à un mot avec `{is}`. C'est ce que l'on appelle une **variable**. Dans cet exemple, nous avons défini une variable qui s'appelle « nom » et une variable qui s'appelle « âge ». Tu peux utiliser le mot « nom » n'importe où dans ton code et il sera remplacé par « Hedy », comme ceci :\n"
example_code: "```\nnom {is} Hedy\nâge {is} 15\n{print} nom a âge ans\n```\n"
story_text_2: "### Exercice\nIl est temps de faire tes propres variables !\nDans le code d'exemple, nous avons défini la variable `animaux_favoris`. En ligne 1, la variable reçoit une valeur, et en ligne 2 nous avons utilisé la variable dans une commande `{print}`.\nPour commencer, termine notre exemple en remplissant l'espace blanc avec le nom de ton animal favori. Ensuite, essaye d'écrire 3 autres codes toi-même. Choisi un mot, donne-lui une valeur avec la commande `{is}`. Ensuite, utilise ta nouvelle variable dans une commande `{print}`, comme nous venons de le faire.\n"
example_code_2: "```\nanimaux_préférés is _\n{print} J'aime les animaux_préférés\n```\n"
example_code_2: "```\nanimaux_préférés {is} _\n{print} J'aime les animaux_préférés\n```\n"
start_code: "nom {is} Hedy\nâge {is} 15\n{print} nom a âge ans"
14:
start_code: "âge = {ask} \"Quel âge as-tu ?\"\n{if} âge < 13\n {print} \"Tu es plus jeune que moi !\"\n{else}\n {print} \"Tu es plus âgé que moi !\""
Expand Down
8 changes: 4 additions & 4 deletions content/adventures/hi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -276,16 +276,16 @@ adventures:
example_code_2: |-
```
{print} वह एक आवाज सुनता है
जानवरों {is}🐿, 🦔, 🦇, 🦉
जानवर {is} {ask} आपको क्या लगता है कि यह क्या है?
{add} जानवर {to_list} जानवरों
जानवरों {is} 🐿, 🦔, 🦇, 🦉
जानवर_extra {is} {ask} आपको क्या लगता है कि यह क्या है?
{add} जानवर_extra {to_list} जानवरों
{print} यह एक था जानवरों {at} {random}
```
story_text_3: |-
यह आपकी कहानी में `{remove}` आदेश का एक उदाहरण है
example_code_3: |
```
{print} उनका बैग बहुत भारी हो गया था।
{print} उनका बै ग बहुत भारी हो गया था।
{print} अंदर पानी की एक बोतल, एक टॉर्च और एक ईंट थी।
बैग {is} पानी, टॉर्च, ईंट
डंप {is} {ask} उसे कौन सी वस्तु गिराना चाहिए?
Expand Down
Loading

0 comments on commit fc8ae65

Please sign in to comment.