Teacher's Guide
move_forward()
Sintassi
player.move_forward([numero di passi])
Questa funzione viene usata per far muovere il giocatore in avanti nella direzione in cui si sta orientando, a condizione che non vi sia una collisione che blocchi la traiettoria del giocatore. Puoi specificare il numero di passi da eseguire oppure lasciarlo vuoto e l'azione verrà eseguita una sola volta.
Se alla funzione non vengono forniti argomenti, il giocatore si muoverà in avanti di un solo passo.
Esempio
player.move_forward(3)
Questo codice farà muovere il giocatore di tre passi in avanti nella mappa.

turn_left()
Sintassi
player.turn_left()
Questa funzione viene usata per far girare il giocatore a sinistra, modificando la sua direzione verso il lato sinistro rispetto alla direzione attuale.
Esempio
player.turn_left()
player.move_forward()
Questo codice farà girare il giocatore verso sinistra rispetto alla direzione in cui è rivolto e farlo avanzare in quella direzione con il codice successivo.

turn_right()
Sintassi
player.turn_right()
Questa funzione viene usata per far girare il giocatore a destra, modificando la sua direzione verso il lato destro rispetto alla direzione attuale.
Esempio
player.turn_right()
player.move_forward()
Questo codice farà girare il giocatore verso destra rispetto alla direzione in cui è rivolto e farlo avanzare in quella direzione con il codice successivo.

push()
Sintassi
player.push()
Questa funzione viene usata per far spingere un oggetto dal giocatore nella direzione in cui è orientato, a condizione che non vi sia una collisione che blocchi la traiettoria dell'oggetto.
Esempio
player.turn_left()
player.push()
Questo codice farà girare il giocatore a sinistra e spingerà un oggetto mobile nella direzione in cui si sta orientando.

speak()
Sintassi
player.speak([stringa da pronunciare])
Questa funzione viene usata per far pronunciare al giocatore una stringa specificata nell'argomento della funzione. Nel gioco, ciò si traduce con la stringa disegnata sullo schermo sopra la testa del giocatore.
Esempio
player.speak("Hello World")
Questo codice farà apparire la frase “Hello World” sopra la testa del giocatore.

build()
Sintassi
player.build([oggetto da costruire])
Questa funzione viene usata per far costruire al giocatore un oggetto specificato nell'argomento della funzione. C'è una selezione limitata di oggetti che il giocatore può costruire usando questa funzione e ci sono requisiti specifici legati alla costruzione di ogni oggetto. Gli oggetti verranno costruiti di fronte alla direzione in cui si guarda il giocatore, a condizione che l'area non sia occupata da un altro oggetto o che l'oggetto non possa essere costruito sul tipo di terreno su cui si trova.
| Oggetto | Costo | Argomento | Descrizione |
|---|---|---|---|
| Bridge | 4 tronchi | "bridge" | Costruisce un ponte per attraversare |
| Grain Stack | 4 grani | Nome della Classe Oggetto | Produce un mucchio di grano |
| Wood Road | 4 assi | Nome della Classe Oggetto | Aggiunge una striscia di percorso in legno |
| Stone Road | 4 pietre | Nome della Classe Oggetto | Aggiunge una striscia di percorso in pietra |
| Big Green house | 4 assi | Nome della Classe Oggetto | Costruisce una Casa per Galline |
| Small Blue house | 4 assi | Nome della Classe Oggetto | Costruisce una Casa per Galline |
| Big Orange house | 4 assi | Nome della Classe Oggetto | Costruisce una Casa per Galline |
| Small Red house | 4 assi | Nome della Classe Oggetto | Costruisce una Casa per Galline |
Esempio
player.build("bridge")
Questo codice farà costruire al giocatore un ponte di fronte a lui nella direzione in cui è orientato.

water()
Sintassi
player.water()
La funzione può essere usata per innaffiare oggetti nel gioco, come ad esempio innaffiare i raccolti e riempire le vasche d'acqua. Nel gioco, questo viene generalmente utilizzato per l'agricoltura e l'allevamento.
Esempio
player.water()
Usando questo codice, il giocatore può innaffiare un oggetto nella direzione in cui si trova.

collect()
Sintassi
player.collect(stringa)
Questa funzione viene usata per raccogliere risorse che non possono essere aggiunte al tuo inventario. Di solito viene usata per rifornire gli oggetti dell'inventario che possono esaurirsi, per esempio riempire una borraccia d'acqua.
Esempio
player.collect("water")
player.turn_left()
player.water()
Questo codice farà sì che il giocatore raccolga acqua da una fonte d'acqua nella direzione in cui si trova, poi giri a sinistra per innaffiare un oggetto.

open()
Sintassi
player.open()
Questa funzione viene usata per aprire porte e contenitori, ed è utile per attraversare ingressi o per aprire contenitori al fine di raccogliere o posizionare oggetti.
Esempio
player.turn_left()
player.open()
player.move_forward()
Questo codice farà girare il giocatore a sinistra per aprire una porta e poi attraversarla.

close()
Sintassi
player.close()
Questa funzione viene usata per chiudere porte e contenitori, ed è utile per chiudere le porte dietro di te o per chiudere un contenitore dopo avervi collocato qualcosa all'interno.
Esempio
player.open()
player.collect("item")
player.close()
Questo codice farà in modo che il giocatore apra un forziere, raccolga un oggetto e poi chiuda il forziere.

place()
Sintassi
player.place(object)
Questa funzione viene usata per posizionare un oggetto, un elemento o una variabile in una posizione in cui è permesso collocarli. Di solito viene usata per riporre oggetti in un contenitore o per depositare oggetti in posizioni specificate.
Esempio
wheat = 6
player.place(wheat)
Questo codice illustra come il giocatore memorizzi un numero all'interno di una variabile chiamata wheat e poi usi la funzione place() per posizionare la variabile in una locazione designata.

combine()
Sintassi
player.combine(mixture)
Questa funzione viene usata per far combinare al giocatore oggetti diversi per produrre un oggetto completamente nuovo. Di solito viene usata per combinare ingredienti per preparare cibi, bevande o sostanze.
| Combinazione | Ingredienti |
|---|---|
| Radish Dressing | 3 milk, 2 cream, 3 lettuce, 5 radish |
| Fruit Juice | 1 water, 1 empty jar, 1 orange, 1 peach, 1 pear, 1 apple |
| Grape Juice | 1 grape, 1 empty jar |
| Berry Milk | 1 milk, (1 red berry or 1 strawberry) |
| Salad | 2 carrot, 2 tomato, 6 lettuce, 2 cucumber |
Esempio
player.combine(jar)
Questo codice farà in modo che il giocatore prenda tutto ciò che è presente in una lista chiamata “jar” e li combini per formare un nuovo oggetto.

plant()
Sintassi
player.plant(dictionary,key)
Questa funzione viene usata per piantare oggetti nel terreno; di solito è riservata alla semina dei raccolti. Questa funzione utilizza dizionari, accetta 2 argomenti, il nome del dizionario e la chiave del dizionario.
Esempio
player.plant(seeds, "Eggplant")
player.water()
Nel codice sopra, il giocatore pianta dei semi di melanzana nel terreno e poi li innaffia.

write()
Sintassi
await player.write(message)
Consente di visualizzare un messaggio; questa è una funzione async che permette di mostrare un popup con un messaggio caricato nella funzione. Il programma viene messo in pausa finché il messaggio non viene chiuso.
Esempio
await player.write("Hello World")
Nel codice sopra, viene visualizzato un messaggio popup con il messaggio "Hello World", mettendo in pausa il programma finché il giocatore non chiude il messaggio.

read()
Sintassi
await player.read()
Consente di visualizzare un messaggio; questa è una funzione async che permette di mostrare un popup con un messaggio pre-registrato nel livello. Il programma viene messo in pausa finché il messaggio non viene chiuso.
Esempio
await player.read()
Nel codice sopra, viene visualizzato un messaggio popup con un messaggio pre-registrato incorporato manualmente nel livello, mettendo in pausa il programma finché il giocatore non chiude il messaggio.

question()
Sintassi
await player.question(question)
Consente di visualizzare un messaggio con una domanda a sì o no; questa è una funzione async che permette di mostrare un popup con un messaggio fornito e produce una variabile booleana in base all'input.
Esempio
async def question_function():
answer = await player.question("Question you would like to ask")
if answer:
# Azioni da intraprendere se la risposta è Sì
else:
# Azioni da intraprendere se la risposta è No
Nel codice sopra, viene visualizzato un popup con una domanda dotata di pulsanti per sì e no, mettendo in pausa il programma finché il giocatore non effettua una scelta.

display()
Sintassi
await player.display("message")
Consente di visualizzare un messaggio; questa è una funzione async che permette di mostrare un popup con un messaggio privo di dati pre-registrati. È pensata per essere usata nella visualizzazione di dati grezzi che non possono essere adeguatamente scriptati. Il programma viene messo in pausa finché il messaggio non viene chiuso. Quando configurato internamente, non può essere incluso del contenuto scriptato, in modo da consentire di visualizzare qualsiasi cosa.
Esempio
await player.display("Whatever I want to put here")
Nel codice sopra, viene visualizzato un popup con il messaggio che desideri inserire, qualunque esso sia. In questo caso, visualizza "Whatever I want to put here".
