Menu
CoddyTech

Riepilogo - Parser di comandi

Fa parte della sezione Logica e flusso del percorso GDScript di Coddy. Lezione 11 di 78.

challenge icon

Sfida

Facile

Scrivi il parser dei comandi di un'avventura testuale. Il programma legge un comando per riga, fino al comando quit. Pulisci prima ogni riga: rimuovi gli spazi da entrambe le estremità, converti il testo in minuscolo e dividilo in parole usando gli spazi, escludendo le parti vuote.

Rispondi a ogni comando con una riga, usando match sull'array di parole:

  • Nessuna parola: Type a command.
  • help: Commands: go, take, inventory, quit
  • go e una direzione tra DIRECTIONS: You go DIRECTION.
  • go e qualsiasi altra parola: You can't go WORD.
  • take e un oggetto già presente in inventory: You already have the ITEM.
  • take e qualsiasi altro oggetto: aggiungilo a inventory e stampa You take the ITEM.
  • inventory: Inventory: seguito dagli oggetti separati da una virgola e uno spazio, oppure Inventory: empty
  • quit: Goodbye! e il programma smette di leggere
  • Qualsiasi altra cosa: Unknown command.

Per l'input seguente

help
Go North
go up
take lamp
inventory
quit

l'output è:

Commands: go, take, inventory, quit
You go north.
You can't go up.
You take the lamp.
Inventory: lamp
Goodbye!

Provalo tu

extends Node

func _ready():
	const DIRECTIONS = ["north", "south", "east", "west"]
	var inventory: Array[String] = []
	# Leggi i comandi e rispondi finché il giocatore non digita quit

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore GDScript online