From 85003b1627ed36b98e0cb42f5bf89bc4ac0c80a0 Mon Sep 17 00:00:00 2001 From: Nathan Lovato <12694995+NathanLovato@users.noreply.github.com> Date: Wed, 17 May 2023 13:44:15 +0200 Subject: [PATCH] content: add complete Italian translations, add Italian language --- autoload/TranslationManager.gd | 1 + i18n/it/application.po | 774 ++++++++++++++++ i18n/it/classref_database.po | 189 ++++ i18n/it/error_database.po | 837 ++++++++++++++++++ i18n/it/glossary_database.po | 645 ++++++++++++++ i18n/it/lesson-1-what-code-is-like.po | 441 +++++++++ i18n/it/lesson-10-the-game-loop.po | 257 ++++++ i18n/it/lesson-11-time-delta.po | 447 ++++++++++ i18n/it/lesson-12-using-variables.po | 298 +++++++ i18n/it/lesson-13-conditions.po | 435 +++++++++ i18n/it/lesson-14-multiplying.po | 324 +++++++ i18n/it/lesson-15-modulo.po | 347 ++++++++ i18n/it/lesson-16-2d-vectors.po | 305 +++++++ i18n/it/lesson-17-while-loops.po | 335 +++++++ i18n/it/lesson-18-for-loops.po | 318 +++++++ i18n/it/lesson-19-creating-arrays.po | 307 +++++++ i18n/it/lesson-2-your-first-error.po | 186 ++++ i18n/it/lesson-20-looping-over-arrays.po | 309 +++++++ i18n/it/lesson-21-strings.po | 216 +++++ i18n/it/lesson-22-functions-return-values.po | 259 ++++++ i18n/it/lesson-23-append-to-arrays.po | 316 +++++++ i18n/it/lesson-24-access-array-indices.po | 272 ++++++ i18n/it/lesson-25-creating-dictionaries.po | 321 +++++++ .../it/lesson-26-looping-over-dictionaries.po | 210 +++++ i18n/it/lesson-27-value-types.po | 341 +++++++ i18n/it/lesson-28-specifying-types.po | 300 +++++++ ...esson-3-standing-on-shoulders-of-giants.po | 520 +++++++++++ i18n/it/lesson-4-drawing-a-rectangle.po | 317 +++++++ i18n/it/lesson-5-your-first-function.po | 421 +++++++++ .../lesson-6-multiple-function-parameters.po | 539 +++++++++++ i18n/it/lesson-7-member-variables.po | 436 +++++++++ i18n/it/lesson-8-defining-variables.po | 325 +++++++ i18n/it/lesson-9-adding-and-subtracting.po | 221 +++++ 33 files changed, 11769 insertions(+) create mode 100644 i18n/it/application.po create mode 100644 i18n/it/classref_database.po create mode 100644 i18n/it/error_database.po create mode 100644 i18n/it/glossary_database.po create mode 100644 i18n/it/lesson-1-what-code-is-like.po create mode 100644 i18n/it/lesson-10-the-game-loop.po create mode 100644 i18n/it/lesson-11-time-delta.po create mode 100644 i18n/it/lesson-12-using-variables.po create mode 100644 i18n/it/lesson-13-conditions.po create mode 100644 i18n/it/lesson-14-multiplying.po create mode 100644 i18n/it/lesson-15-modulo.po create mode 100644 i18n/it/lesson-16-2d-vectors.po create mode 100644 i18n/it/lesson-17-while-loops.po create mode 100644 i18n/it/lesson-18-for-loops.po create mode 100644 i18n/it/lesson-19-creating-arrays.po create mode 100644 i18n/it/lesson-2-your-first-error.po create mode 100644 i18n/it/lesson-20-looping-over-arrays.po create mode 100644 i18n/it/lesson-21-strings.po create mode 100644 i18n/it/lesson-22-functions-return-values.po create mode 100644 i18n/it/lesson-23-append-to-arrays.po create mode 100644 i18n/it/lesson-24-access-array-indices.po create mode 100644 i18n/it/lesson-25-creating-dictionaries.po create mode 100644 i18n/it/lesson-26-looping-over-dictionaries.po create mode 100644 i18n/it/lesson-27-value-types.po create mode 100644 i18n/it/lesson-28-specifying-types.po create mode 100644 i18n/it/lesson-3-standing-on-shoulders-of-giants.po create mode 100644 i18n/it/lesson-4-drawing-a-rectangle.po create mode 100644 i18n/it/lesson-5-your-first-function.po create mode 100644 i18n/it/lesson-6-multiple-function-parameters.po create mode 100644 i18n/it/lesson-7-member-variables.po create mode 100644 i18n/it/lesson-8-defining-variables.po create mode 100644 i18n/it/lesson-9-adding-and-subtracting.po diff --git a/autoload/TranslationManager.gd b/autoload/TranslationManager.gd index 2d6292c4..fdec6dab 100644 --- a/autoload/TranslationManager.gd +++ b/autoload/TranslationManager.gd @@ -9,6 +9,7 @@ const DEFAULT_LOCALE := "en" const SUPPORTED_LOCALES := [ "en", "es", + "it", ] var current_language := DEFAULT_LOCALE setget set_language diff --git a/i18n/it/application.po b/i18n/it/application.po new file mode 100644 index 00000000..7ca39dba --- /dev/null +++ b/i18n/it/application.po @@ -0,0 +1,774 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# FIRST AUTHOR , 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 09:52+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: resources/QuizInputField.gd:17 +msgid "You need to type a whole number for this answer. Example: 42" +msgstr "Devi inserire un numero intero per questa risposta. Esempio:42" + +#: resources/QuizInputField.gd:22 +msgid "" +"You need to type a decimal for this answer. Use a \".\" to separate the " +"decimal part. Example: 3.14" +msgstr "" +"Devi inserire un numero decimale per questa risposta. Usa \".\" per separare " +"la parte decimale. Esempio: 3.14" + +#: ui/UILesson.tscn:90 +msgid "Title" +msgstr "Titolo" + +#: ui/UILesson.tscn:125 +msgid "Practices" +msgstr "Pratiche" + +#: ui/UINavigator.gd:365 +msgid "Go back in your navigation history" +msgstr "Ritorna alla tua cronologia di navigazione" + +#: ui/UINavigator.gd:368 +msgid "(no previous history)" +msgstr "(nessuna cronologia)" + +#: ui/UINavigator.tscn:103 +msgid "CHRISTMAS SALE - 50% OFF" +msgstr "SCONTO NATALIZIO - 50% OFF" + +#: ui/UINavigator.tscn:163 +msgid "CHRISTMAS SALE" +msgstr "SALDI NATALIZI" + +#: ui/UIPractice.gd:154 ui/UIPractice.gd:220 +#, python-format +msgid "Hint %s" +msgstr "Suggerimento %s" + +#: ui/UIPractice.gd:248 +msgid "Validating Your Code..." +msgstr "Verificando Il Tuo Codice..." + +#: ui/UIPractice.gd:268 +#, python-format +msgid "The function `%s` calls itself, this creates an infinite loop" +msgstr "La funzione `%s` chiama se stessa, creando un ciclo infinito" + +#: ui/UIPractice.gd:301 +msgid "Running Your Code..." +msgstr "Eseguendo Il Tuo Codice..." + +#: ui/UIPractice.gd:328 +msgid "" +"There is a division by zero in your code. You cannot divide by zero in code. " +"Please ensure you have no \"/ 0\" or \"% 0\" in your code." +msgstr "" +"Nel codice è presente una divisione per zero. Nel codice non è possibile " +"dividere per zero. Assicurati di non avere \"/ 0\" o \"% 0\" nel tuo codice." + +#: ui/UIPractice.gd:343 +msgid "" +"Oh no! The script has an error, but the Script Verifier did not catch it" +msgstr "Oh no! Lo script ha un errore, ma lo Script Verifier non l'ha rilevato" + +#: ui/UIPractice.gd:369 +msgid "Running Tests..." +msgstr "Svolgendo Prove..." + +#: ui/UIPractice.tscn:138 +msgid "Suggested Solution" +msgstr "Soluzioni Consigliate" + +#: ui/UIPractice.tscn:189 +msgid "Use Solution" +msgstr "Usa Soluzione" + +#: ui/UIPractice.tscn:207 +msgid "Leave unfinished practice?" +msgstr "Lasciare prova incompleta?" + +#: ui/components/BigGreenButton.tscn:24 +msgid "Button" +msgstr "Tasto" + +#: ui/components/CodeEditor.tscn:144 +msgid "Run" +msgstr "Esegui" + +#: ui/components/CodeEditor.tscn:158 +msgid "Pause" +msgstr "Pausa" + +#: ui/components/CodeEditor.tscn:173 ui/components/RunnableCodeExample.tscn:87 +msgid "Reset" +msgstr "Resetta" + +#: ui/components/CodeEditor.tscn:195 +msgid "Solution" +msgstr "Soluzione" + +#: ui/components/CodeEditor.tscn:209 ui/components/OutputConsole.tscn:43 +msgid "Output" +msgstr "Risultato" + +#: ui/components/CodeEditor.tscn:224 +#: ui/components/popups/LessonDonePopup.tscn:198 +#: ui/components/popups/PracticeDonePopup.tscn:165 +msgid "Continue" +msgstr "Continua" + +#: ui/components/DebuggerConsoleMonitoredVariable.tscn:20 +#: ui/components/OutputConsolePrintMessage.tscn:23 +msgid "Value" +msgstr "Valore" + +#: ui/components/GameView.tscn:72 +msgid "Paused" +msgstr "In Pausa" + +#: ui/components/GlossaryPopup.tscn:37 +msgid "Term" +msgstr "Termine" + +#: ui/components/GlossaryPopup.tscn:53 +#: ui/components/popups/ErrorOverlayPopup.tscn:74 +msgid "Our error explanation." +msgstr "Nostra spiegazione dell'errore." + +#: ui/components/OutputConsoleErrorMessage.tscn:39 +msgid "ERROR:" +msgstr "ERRORE:" + +#: ui/components/OutputConsoleErrorMessage.tscn:47 +#: ui/components/ScrollableTextBox.tscn:43 +#: ui/screens/lesson/UIContentBlock.tscn:68 +msgid "Placeholder text" +msgstr "Testo tappabuchi" + +#: ui/components/OutputConsoleErrorMessage.tscn:62 +msgid "in" +msgstr "in" + +#: ui/components/OutputConsoleErrorMessage.tscn:68 +msgid "FileName" +msgstr "NomeFile" + +#: ui/components/OutputConsoleErrorMessage.tscn:75 +msgid "at" +msgstr "at" + +#: ui/components/OutputConsoleErrorMessage.tscn:82 +msgid "0:0" +msgstr "0:0" + +#: ui/components/OutputConsoleErrorMessage.tscn:92 +msgid "" +"Sometimes errors are reported outside of your code. Why does that happen?" +msgstr "" +"Certe volte gli errori sono segnalati al di fuori del tuo codice. Perché " +"succede questo?" + +#: ui/components/OutputConsoleErrorMessage.tscn:101 +msgid "Explain" +msgstr "Spiega" + +#: ui/components/Revealer.tscn:74 +msgid "Expand" +msgstr "Espandi" + +#: ui/components/RunnableCodeExample.tscn:105 +msgid "run()" +msgstr "run()" + +#: ui/components/RunnableCodeExample.tscn:123 +msgid "step" +msgstr "passo" + +#: ui/components/RunnableCodeExampleDebugger.tscn:44 +msgid "Debugger" +msgstr "Debugger" + +#: ui/components/SalePopup.tscn:121 +#, python-format +msgid "" +"[center]Get [b]50% off[/b] on all our Godot courses with the \n" +"coupon code [b]DISCOUNT50[/b][/center]" +msgstr "" +"[center]Ottieni il [b]50% di sconto[/b] su tutti i nostri corsi Godot con il " +"\n" +"codice coupon [b]SCONTO50[/b][/center]" + +#: ui/components/SalePopup.tscn:132 +msgid "Only until " +msgstr "Solo finché " + +#: ui/components/SalePopup.tscn:155 +msgid "CHECK OUT OUR COURSES" +msgstr "SCOPRI I NOSTRI CORSI" + +#: ui/components/SalePopup.tscn:180 +msgid "X" +msgstr "X" + +#: ui/components/popups/ConfirmPopup.tscn:115 +#: ui/components/popups/PracticeLeaveUnfinishedPopup.tscn:119 +msgid "Confirm" +msgstr "Conferma" + +#: ui/components/popups/ConfirmPopup.tscn:127 +#: ui/components/popups/PracticeLeaveUnfinishedPopup.tscn:131 +msgid "Cancel" +msgstr "Annulla" + +#: ui/components/popups/ErrorOverlayPopup.tscn:46 +msgid "Original error message" +msgstr "Messaggio di errore originario" + +#: ui/components/popups/ErrorOverlayPopup.tscn:65 +msgid "Why this happens" +msgstr "Perché succede questo" + +#: ui/components/popups/ErrorOverlayPopup.tscn:82 +msgid "How to fix this" +msgstr "Come sistemarlo" + +#: ui/components/popups/ErrorOverlayPopup.tscn:91 +msgid "Our suggestion on how to fix it." +msgstr "Il nostro suggerimento su come sistemarlo." + +#: ui/components/popups/ErrorOverlayPopup.tscn:102 +msgid "" +"Sorry, we don't have this particular error message covered yet!\n" +"\n" +"Please, use the [b]Report[/b] button in the top-right corner to tell us more " +"about how you've got it, and we will try to improve our knowledge base for " +"the next version of the application.\n" +"\n" +"[center]Thank you![/center]" +msgstr "" +"Ci dispiace, non abbiamo ancora trattato questo particolare messaggio di " +"errore!\n" +"\n" +"Per piacere, usa il tasto [b]Segnala[/b] nell'angolo in alto a destra per " +"dirci di più su come l'hai ottenuto, così da poterlo implementare nella " +"prossima versione dell'applicazione.\n" +"\n" +"[center]Grazie![/center]" + +#: ui/components/popups/ErrorOverlayPopup.tscn:128 +msgid "Hide" +msgstr "Nascondi" + +#: ui/components/popups/ExternalErrorPopup.tscn:66 +msgid "Where do external errors come from?" +msgstr "Da dove arrivano gli errori esterni?" + +#: ui/components/popups/ExternalErrorPopup.tscn:83 +msgid "" +"Lessons in this course are designed so you only need to edit the " +"[b]important bits[/b]. But there is much more code outside of what you see " +"that makes the project run.\n" +"\n" +"This means that sometimes changes you make can affect code you have no " +"control over. But don't worry, you can still fix all the issues yourself " +"with the code you [b]can[/b] edit!\n" +"\n" +"[i]This is like how game engines work too.[/i] There is a lot of hidden code " +"that they execute to ensure your project runs smoothly. And yet, an error in " +"your scripts can break them. We'll try to explain how to address each " +"individual error that you face. Quick, click the [b]Explain[/b] button next " +"to the error message!" +msgstr "" +"Le lezioni di questo corso sono costruite in modo tale che hai solo bisogno " +"di modificare le [b]parti importanti[/b]. Ma c'è molto più codice nascosto " +"alla tua vista che fa eseguire il progetto.\n" +"\n" +"Ciò significa che certe volte, i cambiamenti che fai possono incidere su " +"parti del codice su cui non hai alcun controllo. Ma non ti preoccupare, puoi " +"sistemare i problemi da te con il codice che tu [b]puoi[/b] modificare!\n" +"\n" +"[i]I motori di gioco funzionano un po' allo stesso modo.[/i] C'è un sacco di " +"codice nascosto che viene eseguito in modo tale che il tuo codice venga " +"eseguito senza intoppi. Eppure, un errore nei tuoi codici lo può bloccare. " +"Cercheremo di spiegare come risolvere ogni singolo errore che incontri. " +"Presto, clicca il tasto [b]Spiega[/b] vicino al messaggio di errore!" + +#: ui/components/popups/ExternalErrorPopup.tscn:119 +msgid "Got it!" +msgstr "Fatto!" + +#: ui/components/popups/LessonDonePopup.tscn:133 +msgid "Lesson complete!" +msgstr "Lezione completata!" + +#: ui/components/popups/LessonDonePopup.tscn:142 +msgid "" +"But there are still some practices\n" +"that you've skipped." +msgstr "" +"Ma ci sono ancora alcune pratiche\n" +"che hai saltato." + +#: ui/components/popups/LessonDonePopup.tscn:155 +msgid "" +"[center][b]Stay[/b] and revisit the study material,\n" +"or [b]continue[/b] the course.[/center]" +msgstr "" +"[center][b]Rimani[/b] e rivisita il materiale da studiare,\n" +"o [b]continua[/b] il corso.[/center]" + +#: ui/components/popups/LessonDonePopup.tscn:183 +#: ui/components/popups/PracticeDonePopup.tscn:144 +msgid "Stay" +msgstr "Rimani" + +#: ui/components/popups/PracticeDonePopup.tscn:89 +msgid "Well done!" +msgstr "Ben fatto!" + +#: ui/components/popups/PracticeDonePopup.tscn:98 +msgid "You completed the practice." +msgstr "Hai completato la pratica." + +#: ui/components/popups/PracticeDonePopup.tscn:110 +msgid "" +"[center][b]Stay[/b] and play around,\n" +"or [b]continue[/b] the course.[/center]" +msgstr "" +"[center][b]Rimani[/b] e sperimenta,\n" +"o [b]continua[/b] il corso.[/center]" + +#: ui/components/popups/PracticeListPopup.tscn:67 +msgid "Practice List" +msgstr "Lista Pratiche" + +#: ui/components/popups/PracticeListPopup.tscn:115 +#: ui/components/popups/SettingsPopup.tscn:244 +msgid "Close" +msgstr "Chiudi" + +#: ui/components/popups/ReportFormPopup.tscn:66 +msgid "Report an issue" +msgstr "Segnala un problema" + +#: ui/components/popups/ReportFormPopup.tscn:83 +msgid "" +"If you face an issue in the app, please click the link below to report it on " +"GitHub:\n" +"\n" +"[center][b][url=https://github.com/GDQuest/learn-gdscript/issues]GitHub.com " +"> GDQuest > learn-gdscript > Issues[/url][/b][/center]\n" +"\n" +"On that page, you can report any issues, whether something's not working or " +"there's an error in a lesson.\n" +"\n" +"You can generate a log to help us identify the problem. To do so, click " +"here: [b][url=download]generate error log[/url][/b].\n" +"\n" +"Please drag and drop the generated file onto your issue on GitHub to attach " +"it.\n" +"\n" +"[font=res://ui/theme/fonts/font_title.tres]What's GitHub[/font]\n" +"\n" +"GitHub is an online platform to host and manage open-source projects like " +"the GDScript Learn app. It helps developers organize their work and " +"collaborate online.\n" +"\n" +"You can use GitHub to study the source code of many open projects, report " +"issues, or even contribute code yourself.\n" +"\n" +"[font=res://ui/theme/fonts/font_title.tres]How to report an issue[/font]\n" +"\n" +"1. Click the link above to get to the [i]GitHub Issues[/i] page.\n" +"2. Click on the [i]New Issue[/i] button.\n" +"3. Fill out the form to tell us more about your problem.\n" +"\n" +"You will need a GitHub account to do so.\n" +"\n" +"Please add as much relevant information as possible, such as the kind of " +"device you're using to access the app, and maybe attach a screenshot or " +"video clip showcasing the issue.\n" +"\n" +"[center]Thank you for contributing to open source![/center]" +msgstr "" +"Se riscontri un problema nell'applicazione, per favore clicca il link qui " +"sotto per segnalarlo su GitHub:\n" +"\n" +"[center][b][url=https://github.com/GDQuest/learn-gdscript/issues]GitHub.com " +"> GDQuest > learn-gdscript > Issues(Problemi)[/url][/b][/center]\n" +"\n" +"Su quella pagina, puoi segnalare ogni problema, se qualcosa non funziona o " +"c'è un errore in una lezione.\n" +"\n" +"Puoi generare un log per aiutarci ad identificare il problema. Per fare ciò, " +"clicca qui: [b][url=download]genera log errore[/url][/b].\n" +"\n" +"Prendi e inserisci il file generato nel tuo issue su GitHub per allegarlo.\n" +"\n" +"[font=res://ui/theme/fonts/font_title.tres]Cos'è GitHub[/font]\n" +"\n" +"GitHub è una piattaforma online per mantenere e gestire progetti open-source " +"come l'applicazione GDScript Learn. Aiuta gli sviluppatori ad organizzare il " +"loro lavoro e per collaborare online.\n" +"\n" +"Puoi usare GitHub per studiare il codice sorgente di molti progetti " +"pubblici, segnalare problemi, o anche contribuire codice.\n" +"\n" +"[font=res://ui/theme/fonts/font_title.tres]Come segnalare un problema[/" +"font]\n" +"\n" +"1. Clicca il collegamento di sopra per andare alla pagina di [i]GitHub " +"Issues[/i] .\n" +"2. Clicca sul tasto [i]Nuovo Issue[/i].\n" +"3. Compila il modulo per spiegarci il tuo problema.\n" +"\n" +"Necessiterai un account GitHub per farlo.\n" +"\n" +"Aggiungi quante più informazioni possibili, come il tipo di dispositivo con " +"cui stai usando l'applicazione e magari anche allegare uno screenshot o una " +"clip video per farci vedere il problema.\n" +"\n" +"[center]Grazie per contribuire ai progetti open source![/center]" + +#: ui/components/popups/ReportFormPopup.tscn:158 +msgid "OK" +msgstr "OK" + +#: ui/components/popups/SettingsPopup.tscn:76 +msgid "Configure the App" +msgstr "Configura l'Applicazione" + +#: ui/components/popups/SettingsPopup.tscn:103 +msgid "Language" +msgstr "Lingua" + +#: ui/components/popups/SettingsPopup.tscn:123 +msgid "Text Size" +msgstr "Grandezza Testo" + +#: ui/components/popups/SettingsPopup.tscn:151 +msgid "Sample text" +msgstr "Testo esempio" + +#: ui/components/popups/SettingsPopup.tscn:164 +msgid "Scroll sensitivity" +msgstr "Sensitività di scorrimento" + +#: ui/components/popups/SettingsPopup.tscn:190 +msgid "Framerate cap" +msgstr "Limite di framerate" + +#: ui/components/popups/SettingsPopup.tscn:212 +msgid "Lower contrast" +msgstr "Contrasto inferiore" + +#: ui/components/popups/SettingsPopup.tscn:259 +msgid "Apply" +msgstr "Applica" + +#: ui/screens/course_outliner/CourseLessonDetails.gd:93 +msgid "Open Lesson" +msgstr "Apri Lezione" + +#: ui/screens/course_outliner/CourseLessonDetails.gd:95 +msgid "Continue Lesson" +msgstr "Continua Lezione" + +#: ui/screens/course_outliner/CourseLessonDetails.gd:97 +msgid "Start Lesson" +msgstr "Inizia Lezione" + +#: ui/screens/course_outliner/CourseLessonDetails.tscn:35 +msgid "Lesson Title Goes Here" +msgstr "Il Titolo Della Lezione Va Qui" + +#: ui/screens/course_outliner/CourseLessonDetails.tscn:48 +msgid "Lesson read" +msgstr "Leggi lezione" + +#: ui/screens/course_outliner/CourseLessonDetails.tscn:56 +msgid "0%" +msgstr "0%" + +#: ui/screens/course_outliner/CourseLessonDetails.tscn:79 +msgid "Quizzes completed" +msgstr "Quiz completati" + +#: ui/screens/course_outliner/CourseLessonDetails.tscn:87 +#: ui/screens/course_outliner/CourseLessonDetails.tscn:108 +msgid "0 / 0" +msgstr "0 / 0" + +#: ui/screens/course_outliner/CourseLessonDetails.tscn:100 +msgid "Practices completed" +msgstr "Pratiche completate" + +#: ui/screens/course_outliner/CourseLessonItem.tscn:36 +msgid "Lesson 0" +msgstr "Lezione 0" + +#: ui/screens/course_outliner/CourseLessonItem.tscn:44 +msgid "Lesson Title" +msgstr "Titolo Lezione" + +#: ui/screens/course_outliner/CourseOutliner.tscn:44 +msgid "Course Index - " +msgstr "Indice Corso - " + +#: ui/screens/course_outliner/CourseOutliner.tscn:51 +msgid "Course Title Goes Here" +msgstr "Il Titolo Del Corso Va Qui" + +#: ui/screens/course_outliner/CourseOutliner.tscn:83 +msgid "Reset Progress" +msgstr "Azzera Progresso" + +#: ui/screens/course_outliner/CourseOutliner.tscn:98 +msgid "Confirm Resetting Progress" +msgstr "Conferma Azzeramento Progresso" + +#: ui/screens/end_screen/EndScreen.tscn:229 +#: ui/screens/end_screen/SponsorlessEndScreen.tscn:196 +msgid "Congratulations!" +msgstr "Congratulazioni!" + +#: ui/screens/end_screen/EndScreen.tscn:236 +msgid "" +"You completed Learn GDScript From Zero. You now have the basics you need to " +"dive into game creation with the Godot game engine.\n" +"\n" +"If you're looking for a free series to keep learning the basics with us, you " +"can move on to [url=https://www.gdquest.com/tutorial/godot/learning-paths/" +"getting-started-in-2021/]Getting Started with Godot[/url]." +msgstr "" +"Hai completato Learn GDScript From Zero. Ora possiedi le basi per immergerti " +"nella creazione di giochi con il Godot game engine.\n" +"\n" +"Se stai cercando una serie gratuita per continuare ad imparare le basi con " +"noi, puoi continuare su [url=https://www.gdquest.com/tutorial/godot/learning-" +"paths/getting-started-in-2021/]Getting Started with Godot[/url]." + +#: ui/screens/end_screen/EndScreen.tscn:249 +msgid "Or level up faster by taking this shortcut" +msgstr "O avanza più velocemente prendendo questa scorciatoia" + +#: ui/screens/end_screen/EndScreen.tscn:256 +msgid "" +"There are loads of free game creation tutorials, but they don't form a clear " +"path.\n" +"\n" +"Worse, most of them are like step-by-step recipes. But as you learned, you " +"can't become a developer by just following recipes.\n" +"\n" +"Every project has unique challenges and requires [i]creative problem " +"solving[/i]. You need to [i]think like a programmer[/i].\n" +"\n" +"Learning that on your own can take years." +msgstr "" +"Ci sono tantissimi tutorial gratuiti sulla creazione di videogiochi, ma non " +"formano un percorso ben definito.\n" +"\n" +"Anzi peggio, la maggior parte sono come ricette passo-passo. Ma come sai, " +"non puoi diventare uno sviluppatore soltanto seguendo ricette.\n" +"\n" +"Ogni progetto ha le sue sfide uniche che richiedono [i]soluzioni creative[/" +"i]. Devi [i]pensare come un programmatore[/i].\n" +"\n" +"Sapendo che il tuo progetto può impiegare anni di sviluppo." + +#: ui/screens/end_screen/EndScreen.tscn:277 +msgid "Learn to Code From Zero, with Godot" +msgstr "Impara a Programmare Da Zero, con Godot" + +#: ui/screens/end_screen/EndScreen.tscn:284 +msgid "" +"This app is the free part of our in-depth course, [url=https://gdquest." +"mavenseed.com/courses/learn-to-code-from-zero-with-godot][b]Learn to Code " +"From Zero, with Godot[/b][/url].\n" +"\n" +"The course picks up right where this app ends to take you to the point where " +"you can make [i]your[/i] game.\n" +"\n" +"It's the only course that'll truly teach you [i]how to become a game " +"developer[/i] with Godot." +msgstr "" +"Questa app è la parte gratuita del nostro corso avanzato, [url=https://" +"gdquest.mavenseed.com/courses/learn-to-code-from-zero-with-godot][b]Impara a " +"Programmare Da Zero, con Godot[/b][/url].\n" +"\n" +"Il corso continua da dove questa applicazione finisce per aiutarti a " +"raggiungere le capacità per realizzare il [i]tuo[/i] gioco.\n" +"\n" +"Questo è l'unico corso che ti insegnerà veramente [i]come diventare uno " +"sviluppatore di videogiochi[/i] con Godot." + +#: ui/screens/end_screen/EndScreen.tscn:308 +#: ui/screens/lesson/UIContentBlock.gd:70 +#: ui/screens/lesson/UIContentBlock.gd:134 +msgid "Learn More" +msgstr "Impara Di Più" + +#: ui/screens/end_screen/SponsorlessEndScreen.tscn:203 +msgid "" +"You completed Learn GDScript From Zero. You now have the basics you need to " +"make games with the Godot game engine.\n" +"\n" +"You can keep learning with the free series [url=https://docs.godotengine.org/" +"en/stable/getting_started/step_by_step/index.html]Getting Started with " +"Godot[/url]." +msgstr "" +"Hai completato Learn GDScript From Zero. Ora possiedi le basi per immergerti " +"nella creazione di giochi con il Godot game engine.\n" +"\n" +"Se stai cercando una serie gratuita per continuare ad imparare le basi con " +"noi, puoi continuare su [url=https://www.gdquest.com/tutorial/godot/" +"learning-paths/getting-started-in-2021/]Getting Started with Godot[/url]." + +#: ui/screens/end_screen/SponsorlessEndScreen.tscn:216 +msgid "This is an Open-Source project!" +msgstr "Questo è un progetto Open-Source!" + +#: ui/screens/end_screen/SponsorlessEndScreen.tscn:223 +msgid "" +"Like Godot, this app and course is free and open-source. \n" +"\n" +"You can find the app's source code and contribute translations here: " +"[url=\"https://github.com/GDQuest/learn-gdscript\"]Learn GDScript From Zero " +"(Github repository)[/url]." +msgstr "" +"Come Godot, anche questa applicazione e questo corso sono gratuiti e open-" +"source. \n" +"\n" +"È possibile trovare il codice sorgente dell'applicazione e contribuire alle " +"traduzioni qui: [url=\"https://github.com/GDQuest/learn-gdscript\"]Imparare " +"GDScript da zero (repository Github)[/url]." + +#: ui/screens/lesson/UIBaseQuiz.tscn:56 +msgid "[b]Question[/b]" +msgstr "[b]Domanda[/b]" + +#: ui/screens/lesson/UIBaseQuiz.tscn:80 ui/screens/lesson/UIBaseQuiz.tscn:169 +msgid "Explanation" +msgstr "Spiegazione" + +#: ui/screens/lesson/UIBaseQuiz.tscn:107 +msgid "Skip" +msgstr "Salta" + +#: ui/screens/lesson/UIBaseQuiz.tscn:119 +msgid "Submit" +msgstr "Invia" + +#: ui/screens/lesson/UIBaseQuiz.tscn:150 +msgid "You're right!" +msgstr "Ben fatto!" + +#: ui/screens/lesson/UIBaseQuiz.tscn:160 +msgid "Answers here" +msgstr "Le risposte qui" + +#: ui/screens/lesson/UIContentBlock.tscn:47 +msgid "Placeholder heading" +msgstr "Intestazione tappabuchi" + +#: ui/screens/lesson/UIPracticeButton.tscn:52 +msgid "Practice title" +msgstr "Titolo pratica" + +#: ui/screens/lesson/UIPracticeButton.tscn:77 +msgid "next" +msgstr "prossimo" + +#: ui/screens/lesson/UIPracticeButton.tscn:100 +msgid "Practice" +msgstr "Pratica" + +#: ui/screens/lesson/UIPracticeButton.tscn:110 +msgid "You are here" +msgstr "Tu sei qui" + +#: ui/screens/lesson/quizzes/QuizAnswerButton.tscn:40 +msgid "Answer label" +msgstr "Nome della risposta" + +#: ui/screens/lesson/quizzes/UIQuizChoice.gd:26 +msgid "(select all that apply)" +msgstr "(seleziona tutto ciò che è pertinente)" + +#: ui/screens/practice/PracticeHint.tscn:8 +msgid "Show Hint" +msgstr "Mostra Suggerimento" + +#: ui/screens/practice/PracticeInfoPanel.gd:144 +msgid "Method descriptions" +msgstr "Descrizioni delle funzioni" + +#: ui/screens/practice/PracticeInfoPanel.gd:160 +msgid "Property descriptions" +msgstr "Descrizioni delle proprietà" + +#: ui/screens/practice/PracticeInfoPanel.tscn:63 +msgid "Summary - Lesson Name" +msgstr "Sommario - Nome Lezione" + +#: ui/screens/practice/PracticeInfoPanel.tscn:106 +msgid "Goals" +msgstr "Obiettivi" + +#: ui/screens/practice/PracticeInfoPanel.tscn:119 +msgid "Hints" +msgstr "Suggerimenti" + +#: ui/screens/practice/PracticeInfoPanel.tscn:126 +msgid "Checks" +msgstr "Controlli" + +#: ui/screens/practice/PracticeInfoPanel.tscn:134 +msgid "Documentation" +msgstr "Documentazione" + +#: ui/screens/practice/PracticeInfoPanel.tscn:175 +msgid "Open Practice List" +msgstr "Apri Lista Pratiche" + +#: ui/screens/practice/PracticeTestDisplay.tscn:40 +msgid "Test text" +msgstr "Testo di prova" + +#: ui/screens/welcome_screen/WelcomeScreen.gd:42 +msgid "CONTINUE" +msgstr "CONTINUA" + +#: ui/screens/welcome_screen/WelcomeScreen.gd:44 +#: ui/screens/welcome_screen/WelcomeScreen.tscn:627 +msgid "START" +msgstr "INZIA" + +#: ui/screens/welcome_screen/WelcomeScreen.tscn:645 +msgid "SELECT LESSON" +msgstr "SELEZIONA LEZIONE" + +#: ui/screens/welcome_screen/WelcomeScreen.tscn:659 +msgid "OPTIONS" +msgstr "OPZIONI" + +#: ui/screens/welcome_screen/WelcomeScreen.tscn:693 +msgid "QUIT" +msgstr "ESCI" diff --git a/i18n/it/classref_database.po b/i18n/it/classref_database.po new file mode 100644 index 00000000..8447b66e --- /dev/null +++ b/i18n/it/classref_database.po @@ -0,0 +1,189 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2022-06-20 15:19+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#. Reference: show +#: course/documentation.csv:2 +msgid "shows the current scene" +msgstr "mostra la scena corrente" + +#. Reference: hide +#: course/documentation.csv:3 +msgid "hides the current scene" +msgstr "nascondi la scena corrente" + +#. Reference: rotate +#: course/documentation.csv:4 +msgid "" +"Applies a rotation to the node, in radians, starting from its current " +"rotation." +msgstr "" +"Applica una rotazione in radianti al nodo, a partire dalla corrente " +"rotazione." + +#. Reference: move_forward +#: course/documentation.csv:5 +msgid "Moves the turtle in the direction it's facing by some pixels." +msgstr "" +"Muove la tartaruga nella direzione verso cui è rivolto di qualche pixel." + +#. Reference: turn_right +#: course/documentation.csv:6 +msgid "Rotates the turtle to the right by some degrees." +msgstr "Ruota la tartaruga verso destra di qualche grado." + +#. Reference: turn_left +#: course/documentation.csv:7 +msgid "Rotates the turtle to the left by some degrees." +msgstr "Ruota la tartaruga a sinistra di qualche grado." + +#. Reference: jump +#: course/documentation.csv:8 +msgid "Offsets the turtle's position by the given x and y amounts of pixels." +msgstr "" +"Sfalsa la posizione della tartaruga dalla data quantità di x e y pixel." + +#. Reference: draw_rectangle +#: course/documentation.csv:9 +msgid "Makes the turtle draw a rectangle starting at its current position." +msgstr "" +"Fa disegnare alla tartaruga un rettangolo che inizia dalla posizione " +"corrente." + +#. Reference: position.x +#: course/documentation.csv:10 +msgid "The position of the entity on the horizontal axis." +msgstr "La posizione dell'elemento sull'asse orizzontale." + +#. Reference: position.y +#: course/documentation.csv:11 +msgid "The position of the entity on the vertical axis." +msgstr "La posizione dell'elemento sull'asse verticale." + +#. Reference: move_local_x +#: course/documentation.csv:12 +msgid "" +"Applies a local translation on the node's X axis based on the [code]Node." +"_process[/code]'s [code]delta[/code]. If [code]scaled[/code] is false, " +"normalizes the movement." +msgstr "" +"Applica una traslazione locale sull'asse X del nodo, in base al [code]delta[/" +"code] di [code]Node._process[/code]. Se [code]scaled[/code] è falso, " +"normalizza il movimento." + +#. Reference: board_size +#: course/documentation.csv:13 +msgid "" +"Stores how many cells make up the width ([code]board_size.x[/code]) and " +"height ([code]board_size.y[/code]) of the board." +msgstr "" +"Memorizza quante celle costituiscono lo spessore ([code]board_size.x[/code]) " +"e l'altezza ([code]board_size.y[/code]) della tavola." + +#. Reference: cell +#: course/documentation.csv:14 +msgid "" +"The cell position of the robot on the board. [code]Vector2(0, 0)[/code] is " +"the square cell in the top left of the board." +msgstr "" +"La posizione della cella del robot sulla tavola. [code]Vector2(0, 0)[/code] " +"è la cella quadrata in alto a sinistra sulla tavola." + +#. Reference: range +#: course/documentation.csv:15 +msgid "" +"Creates a list of numbers from [code]0[/code] to [code]length - 1[/code]." +msgstr "Crea una lista di numeri da [code]0[/code] a [code]length - 1[/code]." + +#. Reference: play_animation +#: course/documentation.csv:16 +msgid "Orders the robot to play an animation." +msgstr "Ordina al robot di riprodurre un'animazione." + +#. Reference: select_units +#: course/documentation.csv:17 +msgid "" +"Selects units in the cell coordinates passed as the function's argument." +msgstr "" +"Seleziona unità nelle coordinate di cella passate nell'argomento della " +"funzione." + +#. Reference: robot.move_to +#: course/documentation.csv:18 +msgid "Queues a move animation towards the target cell." +msgstr "" +"Mette in attesa di riproduzione un'animazione di movimento verso la cella " +"obiettivo." + +#. Reference: array.append +#: course/documentation.csv:19 +msgid "Adds the value passed as an argument at the back of the array." +msgstr "Aggiunge il valore passato nell'argomento alla fine dell'array." + +#. Reference: array.pop_front +#: course/documentation.csv:20 +msgid "Removes the first value from the array and returns it." +msgstr "Rimuove il primo valore dall'array e lo riporta." + +#. Reference: array.pop_back +#: course/documentation.csv:21 +msgid "Removes the last value from the array and returns it." +msgstr "Rimuove l'ultimo valore dall'array e lo riporta." + +#. Reference: str +#: course/documentation.csv:22 +msgid "" +"Returns the argument converted into a [code]String[/code]. Works with the " +"majority of value types." +msgstr "" +"Riporta l'argomento convertito in una [code]String[/code]. Funziona con la " +"maggior parte delle tipologie di valori." + +#. Reference: int +#: course/documentation.csv:23 +msgid "" +"Returns the argument converted into an [code]int[/code] (whole number) [i]if " +"possible[/i]. Supports converting decimal numbers, strings, and booleans. " +"Useful to convert player text input into numbers." +msgstr "" +"Riporta l'argomento convertito in un [code]int[/code] (numero intero) [i]se " +"possibile[/i]. Può convertire numeri decimali, stringhe e valori booleani. " +"Utile per convertire parti del testo del giocatore in numeri." + +#. Reference: place_unit +#: course/documentation.csv:24 +msgid "" +"Creates a new unit matching the type parameter and places it at the desired " +"cell position on the game grid." +msgstr "" +"Crea una nuova unità che corrisponde al tipo di parametro e la piazza alla " +"posizione desiderata nelle celle della griglia di gioco." + +#. Reference: display_item +#: course/documentation.csv:25 +msgid "Creates a new item and displays it in the inventory." +msgstr "Crea un nuovo oggetto e lo mostra nell'inventario." + +#. Reference: add_item +#: course/documentation.csv:26 +msgid "Increases the item count by amount." +msgstr "Aumenta il numero di oggetti per la quantità." diff --git a/i18n/it/error_database.po b/i18n/it/error_database.po new file mode 100644 index 00000000..40e53f83 --- /dev/null +++ b/i18n/it/error_database.po @@ -0,0 +1,837 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 09:52+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#. Reference: IN_EXPECTED_AFTER_IDENTIFIER +#: script_checking/error_database.csv:40 +msgid "" +"You get this error when the name between the [code]for[/code] and [code]in[/" +"code] is not a valid variable name, or you are missing the [code]in[/code] " +"keyword.\n" +"\n" +"In a [code]for[/code] loop, the [code]in[/code] keyword only accepts a valid " +"temporary variable name to assign values in each loop iteration. The loop " +"creates a new variable with the desired name and assigns each element of the " +"array to it." +msgstr "" +"Si ottiene questo errore quando il nome tra il [code]for[/code] e " +"[code]in[/code] non è un nome di variabile valido, oppure manca la parola " +"chiave [code]in[/code].\n" +"\n" +"In un ciclo [code]for[/code], la parola chiave [code]in[/code] accetta solo " +"un nome di variabile temporanea valido per assegnare valori a ogni " +"iterazione del ciclo. Il ciclo crea una nuova variabile con il nome " +"desiderato e vi assegna ogni elemento dell'array." + +#. Reference: IN_EXPECTED_AFTER_IDENTIFIER +#: script_checking/error_database.csv:40 +msgid "" +"To fix this error, you need to ensure that the name between the [code]for[/" +"code] and [code]in[/code] keywords is a valid variable name with no " +"punctuation or spaces.\n" +"\n" +"For example, this code is invalid: [code]for cell_position.x in " +"cell_positions_array:[/code] because [code]cell_position.x[/code] isn't a " +"valid variable name.\n" +"\n" +"To access the [code]x[/code] sub-component of the variable, you need to do " +"that inside of the loop's body:\n" +"\n" +"[code]for cell_position in cell_positions_array:\n" +" cell_position.x += 1.0[/code]" +msgstr "" +"Per risolvere questo errore, è necessario assicurarsi che il nome tra le " +"parole chiave [code]for[/code] e [code]in[/code] sia un nome di variabile " +"valido, senza punteggiatura o spazi.\n" +"\n" +"Ad esempio, questo codice non è valido: [code]for cell_position.x in " +"cell_positions_array:[/code] perché [code]cell_position.x[/code] non è un " +"nome di variabile valido.\n" +"\n" +"Per accedere alla sotto-componente [code]x[/code] della variabile, è " +"necessario farlo all'interno del corpo del ciclo:\n" +"\n" +"[code]for cell_position in cell_positions_array:\n" +" cell_position.x += 1,0[/codice]" + +#. Reference: ASSIGNING_TO_EXPRESSION +#: script_checking/error_database.csv:47 +msgid "" +"If you get this error, you are most likely trying to assign a value to " +"something other than a variable, which is impossible. You can only assign " +"values to variables.\n" +"\n" +"Another possibility is that you want to check for equality in a condition " +"but wrote a single = instead of ==." +msgstr "" +"Se si ottiene questo errore, molto probabilmente si sta cercando di " +"assegnare un valore a qualcosa di diverso da una variabile, il che è " +"impossibile. Si possono assegnare valori solo alle variabili.\n" +"\n" +"Un'altra possibilità è che si voglia verificare l'uguaglianza in una " +"condizione, ma si sia scritto un singolo = invece di ==." + +#. Reference: ASSIGNING_TO_EXPRESSION +#: script_checking/error_database.csv:47 +msgid "" +"If you want to assign a value to a variable, double-check that what you have " +"on the left side of the = sign is a variable and not a function.\n" +"\n" +"You also need to ensure the syntax is correct. For example, there shouldn't " +"be parentheses on the left side of the equal sign.\n" +"\n" +"In the case of a condition, ensure that you are using two equal signs to " +"check for equality (==)." +msgstr "" +"Se si vuole assegnare un valore a una variabile, bisogna verificare che " +"quella che si trova a sinistra del segno = sia una variabile e non una " +"funzione.\n" +"\n" +"È inoltre necessario assicurarsi che la sintassi sia corretta. Ad esempio, " +"non dovrebbero esserci parentesi sul lato sinistro del segno di uguale.\n" +"\n" +"Nel caso di una condizione, assicuratevi di utilizzare due segni di uguale " +"per verificare l'uguaglianza (==)." + +#. Reference: CYCLIC_REFERENCE +#: script_checking/error_database.csv:57 +msgid "" +"A cyclic reference is when a class references itself, directly or " +"indirectly.\n" +"\n" +"It has two possible causes:\n" +"\n" +"1. You used the class name in the class itself.\n" +"2. Your code refers to another class that refers to this class, causing an " +"endless reference cycle.\n" +"\n" +"Either way, due to how GDScript works in Godot 3, unfortunately,you cannot " +"do this. Godot 4 should solve this problem, but you need to work around it " +"in the meantime." +msgstr "" +"Una referenza ciclica avviene quando una classe si riferisce a se stessa, " +"direttamente o indirettamente.\n" +"\n" +"Questo può avere due possibili cause:\n" +"\n" +"1. Ha usato il nome della classe all'interno di essa.\n" +"2. Il tuo codice fa riferimento ad un'altra classe che fa riferimento a " +"questa classe, causando una referenza ciclica senza fine.\n" +"\n" +"In ogni modo, a causa di come GDScript funziona in Godot 3, sfortunatamente, " +"non lo puoi fare. Godot 4 dovrebbe risolvere questo problema, ma per ora " +"avrai bisogno di un metodo alternativo." + +#. Reference: CYCLIC_REFERENCE +#: script_checking/error_database.csv:57 +msgid "" +"Erase the type hint in the error line, and the problem should disappear. \n" +"\n" +"At GDQuest, when we face this error, we remove the type hints on lines " +"causing cyclic references. It solves the problem in the vast majority of " +"cases." +msgstr "" +"Elimina il suggerimento di tipo nella riga di errore e il problema dovrebbe " +"scomparire. \n" +"\n" +"A GDQuest, quando incontriamo questo errore, rimuoviamo i suggerimenti di " +"tipo sulle righe che causano le referenze cicliche. Questo risolve il " +"problema nella maggior parte dei casi." + +#. Reference: INVALID_INDENTATION +#: script_checking/error_database.csv:64 +msgid "" +"The indentation of your code (the number of tab characters at the start of " +"the line) is incorrect.\n" +"\n" +"You are missing one or more tabs, or you inserted too many.\n" +"\n" +"The computer uses those leading tab characters on code lines to know which " +"lines of code are part of a code block, like a function." +msgstr "" +"L'indentazione del tuo codice (il numero di caratteri di tabbazione " +"all'inizio della riga) è incorretto.\n" +"\n" +"Ti manca uno o più simboli di tabbazione o ne ha inseriti troppi.\n" +"\n" +"Il computer usa quei caratteri iniziali per capire quali righe fanno parte " +"di un blocco di codice, come una funzione." + +#. Reference: INVALID_INDENTATION +#: script_checking/error_database.csv:64 +msgid "" +"If the line of code with the error is right after a line ending with a " +"colon, like a function definition, you need one extra indent level compared " +"to the previous line.\n" +"\n" +"In other words, your line should have one more leading tab character than " +"the function definition." +msgstr "" +"Se la riga di codice con l'errore è subito dopo una riga che finisce con dei " +"due punti, come una definizione di funzione, devi aggiungere un livello di " +"indentazione extra rispetto alla riga precedente.\n" +"\n" +"In altre parole, la tua riga dovrebbe avere un'indentazione iniziale " +"maggiore rispetto alla definizione della funzione." + +#. Reference: UNEXPECTED_CHARACTER +#: script_checking/error_database.csv:73 +msgid "" +"You get this error when you wrote something that is syntactically invalid, " +"or you are missing something to complete this line or previous lines of " +"code.\n" +"\n" +"You need to be extremely precise when you write code for the computer. This " +"kind of error is easy to get as all it takes is one wrong character.\n" +"\n" +"Note that this error can appear [b]after[/b] the line causing it due to how " +"the computer reads and analyzes your code." +msgstr "" +"Ricevi questo errore quando scrivi qualcosa di sintatticamente invalido o ti " +"manca qualcosa per completare questa riga o le righe precedenti del codice.\n" +"\n" +"Devi essere estremamente preciso quando scrivi codice per il computer. " +"Questi tipi di errore sono molto facili da ottenere poiché basta sbagliare " +"un solo carattere.\n" +"\n" +"Nota che questo errore si manifesta [b]dopo[/b] la riga che lo causa poiché " +"il computer legge e analizza il tuo codice in questo modo." + +#. Reference: UNEXPECTED_CHARACTER +#: script_checking/error_database.csv:73 +msgid "" +"The way to solve this kind of error is highly contextual. The error message " +"should tell you which character or element it's missing.\n" +"\n" +"If the error says \"expected,\" then you're likely missing something in one " +"of the [b]previous[/b] code lines. It could be a punctuation mark, a " +"parenthesis, or something else.\n" +"\n" +"If it says \"unterminated,\" you are missing some character at the end of an " +"expression, like a closing bracket. In this case, it most likely comes from " +"the line with the error." +msgstr "" +"Il modo per risolvere questo tipo di errori dipende fortemente dal contesto. " +"Il messaggio di errore ti dovrebbe dire quale carattere o elemento è " +"mancante.\n" +"\n" +"Se l'errore dice \"expected\", probabilmente ti manca qualcosa in una delle " +"righe di codice [b]precedenti[/b]. Potrebbe essere un simbolo di " +"punteggiatura, una parentesi o qualcos'altro.\n" +"\n" +"Se dice \"unterminated\", ti manca qualche carattere alla fine di " +"un'espressione, come una parentesi chiusa. In questo caso, molto " +"probabilmente l'errore viene dalla riga specificata." + +#. Reference: UNEXPECTED_CHARACTER_IN_KEYWORD +#: script_checking/error_database.csv:76 +msgid "" +"This error tells you that you are missing a parenthesis (or sometimes a " +"comma or a path).\n" +"\n" +"Three keywords in GDScript work like function calls and require parentheses: " +"[code]yield()[/code], [code]preload()[/code], and [code]assert()[/code]." +msgstr "" +"Questo errore ti dice ti manca una parentesi (o certe volte una virgola o un " +"percorso).\n" +"\n" +"Tre parole chiave in GDScript funzionano come delle chiamate di funzione e " +"richiedono delle parentesi: [code]yield()[/code], [code]preload()[/code] e " +"[code]assert()[/code]." + +#. Reference: UNEXPECTED_CHARACTER_IN_KEYWORD +#: script_checking/error_database.csv:76 +msgid "" +"To address the error, you want to add the missing opening parenthesis, the " +"closing parenthesis, or the comma." +msgstr "" +"Per risolvere l'errore, devi aggiungere le parentesi di apertura mancanti, " +"le parentesi di chiusura o la virgola." + +#. Reference: UNEXPECTED_CHARACTER_IN_EXPORT_HINT +#: script_checking/error_database.csv:77 +msgid "" +"This error tells you you are missing some parenthesis, a comma, or some " +"value in your export hint." +msgstr "" +"Questo errore ti dice che ti mancano delle parentesi, una virgola o qualche " +"valore nel tuo suggerimento di export." + +#. Reference: UNEXPECTED_CHARACTER_IN_EXPORT_HINT +#: script_checking/error_database.csv:77 +msgid "" +"You need to read the error message and add the missing character or value it " +"requests." +msgstr "" +"Devi leggere il messaggio di errore e aggiungere il carattere mancante o il " +"valore richiesto." + +#. Reference: MISPLACED_IDENTIFIER +#: script_checking/error_database.csv:86 +msgid "" +"This error happens in several cases:\n" +"\n" +"1. You wrote an identifier (variable or function name) in the wrong place.\n" +"2. You wrote a keyword like [code]var[/code], [code]func[/code], [code]for[/" +"code], or [code]signal[/code], and you did not follow it by a name.\n" +"3. You wrote a function definition but forgot the parentheses before the " +"colon." +msgstr "" +"Questo errore avviene in molti casi:\n" +"\n" +"1. Hai scritto un identificatore (il nome di una variabile o di una " +"funzione) nel posto sbagliato.\n" +"2. Hai scritto una parola chiave come [code]var[/code], [code]func[/code], " +"[code]for[/code] o [code]signal[/code] e non l'hai accompagnata con un " +"nome.\n" +"3. Hai scritto una definizione di funzione e hai dimenticato le parentesi " +"prima della virgola." + +#. Reference: MISPLACED_IDENTIFIER +#: script_checking/error_database.csv:86 +msgid "" +"If the error tells you it expected something, you likely forgot to write a " +"name after a keyword like [code]var[/code], [code]func[/code], [code]for[/" +"code], or [code]signal[/code], making your code invalid. Or you forgot " +"parentheses in a function definition. You can address the error by adding " +"the missing name or parentheses.\n" +"\n" +"If the error says you have something unexpected, you are likely missing a " +"keyword like [code]var[/code], [code]func[/code], [code]for[/code], etc.\n" +"\n" +"Another possibility is that you need to write a colon at the end of a " +"function definition, [code]for[/code] loop, or a line starting with " +"[code]if[/code], [code]elif[/code], or [code]else[/code]." +msgstr "" +"Se l'errore ti dice che si aspettava qualcosa, probabilmente hai dimenticato " +"di scrivere un nome dopo una parola chiave come [code]var[/code], " +"[code]func[/code], [code]for[/code] o [code]signal[/code], rendendo il tuo " +"codice non valido. Oppure hai dimenticato le parentesi nella definizione di " +"una funzione. Puoi risolvere l'errore aggiungendo il nome o le parentesi " +"mancanti.\n" +"\n" +"Se l'errore dice che c'è qualcosa di inaspettato, probabilmente ti manca un " +"una parola chiave come [code]var[/code], [code]func[/code], [code]for[/" +"code], ecc.\n" +"\n" +"Un'altra possibilità può essere che devi scrivere dei due punti alla fine " +"della definizione di una funzione, di un ciclo [code]for[/code] o di una " +"riga che inizia con [code]if[/code], [code]elif[/code] o [code]else[/code]." + +#. Reference: MISPLACED_TYPE_IDENTIFIER +#: script_checking/error_database.csv:91 +msgid "" +"This error tells you that you are missing a type somewhere. A type can be " +"[code]int[/code], [code]float[/code], [code]String[/code], [code]Array[/" +"code], [code]Vector2[/code], and many identifiers representing a data " +"structure.\n" +"\n" +"Most of the time, this error occurs when you wrote a colon after a variable " +"name but did not follow it with a type name.\n" +"\n" +"It also occurs when you write an arrow ([code]->[/code]) after the " +"parentheses of a function definition but do not follow it with a type name." +msgstr "" +"Questo errore ti dice che ti manca un tipo da qualche parte. Un tipo può " +"essere [code]int[/code], [code]float[/code], [code]String[/code], " +"[code]Array[/code], [code]Vector2[/code] e molti altri identificatori che " +"rappresentano strutture di dati.\n" +"\n" +"La maggior parte delle volte, questo errore si verifica quando scrivi dei " +"due punti dopo il nome di una variabile ma non li accompagni con il nome di " +"un tipo.\n" +"\n" +"Si verifica pure quando scrivi una freccia ([code]->[/code]) dopo le " +"parentesi di una funzione ma non la accompagni con il nome di un tipo." + +#. Reference: MISPLACED_TYPE_IDENTIFIER +#: script_checking/error_database.csv:91 +msgid "" +"To solve this, you need to write the name of the type after the colon, arrow " +"(in the case of function return types), inside parentheses (for export " +"types), or after the [code]as[/code] keyword." +msgstr "" +"Per risolverlo, devi scrivere il nome del tipo dopo i due punti, freccia " +"(nel caso di del tipo di ritorno di una funzione), dentro le parentesi (oer " +"i tipi da esportare) o dopo la parola chiave [code]as[/code]." + +#. Reference: NONEXISTENT_IDENTIFIER +#: script_checking/error_database.csv:100 +msgid "" +"The variable, function name, or class name you are trying to use does not " +"exist.\n" +"\n" +"You most often get this error when you make typos. Maybe you swapped two " +"letters, forgot a letter... sometimes, it's hard to spot.\n" +"\n" +"The other cause for this error is that you didn't define the variable, " +"function, or class you're trying to access." +msgstr "" +"La variabile, nome della funzione, o nome della classe che stai cercando di " +"usare non esiste.\n" +"\n" +"Spesso ottieni questo errore quando fai degli errori di battitura. Forse hai " +"scambiato due lettere, dimenticato lettere... certe volte è difficile da " +"trovare.\n" +"\n" +"L'altro caso in cui questo errore si verifica è quando non definisci la " +"variabile, la funzione o la classe che stai cercando di usare." + +#. Reference: NONEXISTENT_IDENTIFIER +#: script_checking/error_database.csv:100 +msgid "" +"To solve this error, triple-check that there is no typo in the line.\n" +"\n" +"If you can, try to go to the variable or function definition, double-click " +"the name, copy it, and paste it where you see the error.\n" +"\n" +"If you don't see any typo, then you need to ensure that you defined the " +"variable, function, or class you are referring to." +msgstr "" +"Per risolvere questo errore, controlla più volte che non ci siano errori di " +"battitura (typo) nella riga.\n" +"\n" +"Se puoi, cerca di andare alla definizione della variabile o della funzione, " +"clicca due volte il nome, copialo e incollalo dove vedi l'errore.\n" +"\n" +"Se non vedi alcun typo, allora ti devi assicurare che hai definito quella " +"variabile, funzione o classe a cui ti riferisci." + +#. Reference: MISPLACED_KEYWORD +#: script_checking/error_database.csv:105 +msgid "" +"You can only use keywords like [code]break[/code] or [code]continue[/code] " +"in a loop. Outside a loop, they are invalid.\n" +"\n" +"The [code]continue[/code] keyword means \"jump to the next iteration of the " +"loop.\" And the [code]break[/code] keyword means \"end the loop right now " +"and jump to the first line of code after the loop block." +msgstr "" +"Puoi solamente usare parole chiave come [code]break[/code] o [code]continue[/" +"code] in un ciclo. Fuori dal ciclo, sono invalide.\n" +"\n" +"La parola chiave [code]continue[/code] significa \"salta la prossima " +"iterazione del ciclo\". E la parola chiave [code]break[/code] significa " +"\"finisci il ciclo adesso e salta alla prima riga di codice dopo il blocco " +"del ciclo\"." + +#. Reference: MISPLACED_KEYWORD +#: script_checking/error_database.csv:105 +msgid "" +"If you wrote one of these keywords outside a loop, you need to remove it.\n" +"\n" +"If you are trying to use it inside a loop, your indentation is most likely " +"at fault. You may need to insert one or more leading tab characters to the " +"keyword." +msgstr "" +"Se scrivi una di queste parole chiave fuori da un ciclo, devi rimuoverla.\n" +"\n" +"Se stai cercando di usarlo all'interno di un ciclo, la tua indentazione è " +"probabilmente sbagliata. Potresti dover inserire uno o più caratteri di " +"tabbazione iniziali alla parola chiave." + +#. Reference: EXPECTED_CONSTANT_EXPRESSION +#: script_checking/error_database.csv:110 +msgid "" +"When the computer talks about a constant expression, it expects a fixed " +"value, a fixed calculation, or the name of an existing constant.\n" +"\n" +"In other words, it wants something that can never change. This is why the " +"computer will reject function calls and variables where it needs a constant " +"expression." +msgstr "" +"Quando il computer parla di un'espressione costante, si aspetta un valore " +"fisso, un calcolo fisso o un nome si una costante esistente.\n" +"\n" +"In altre parole, vuole qualcosa che non può mai cambiare. Questo è il motivo " +"pe cui il computer rifiuterà le chiamate di funzione e le variabili dove " +"necessita di un'espressione costante." + +#. Reference: EXPECTED_CONSTANT_EXPRESSION +#: script_checking/error_database.csv:110 +msgid "" +"You need to replace function calls or variables with a constant value like a " +"whole number, decimal number, string, vector, a predefined array, etc.\n" +"\n" +"You can also use arithmetic operators like multiplications (*), additions " +"(+), and so on." +msgstr "" +"Devi rimpiazzare le chiamate di funzione o le variabili con un valore " +"costante come un numero intero, stringa, vettore un array predefinito, ecc.\n" +"\n" +"Puoi pure usare un'operazione aritmetica come le moltiplicazioni (*), " +"addizioni (+) e così via." + +#. Reference: INVALID_CLASS_DECLARATION +#: script_checking/error_database.csv:115 +msgid "" +"When defining a new class, you need to follow a specific pattern. You must " +"write the name in plain text, starting with a letter.\n" +"\n" +"We typically write class names in PascalCase: with a capital letter at the " +"start of every word that composes the class name." +msgstr "" +"Quando definisci una nuova classe, devi seguire uno schema specifico. Devi " +"scrivere il nome in testo semplice, che inizi con una lettera.\n" +"\n" +"Tipicamente scriviamo il nome di una classe in PascalCase: con una lettera " +"maiuscola all'inizio di ogni parola che compone il nome della classe." + +#. Reference: INVALID_CLASS_DECLARATION +#: script_checking/error_database.csv:115 +msgid "" +"To fix this error, replace whatever you put after the 'extends' or " +"'class_name' keyword by a name without spaces and starting with a capital " +"letter.\n" +"\n" +"You can optionally use numbers in the name, but not in the first position." +msgstr "" +"Per risolvere questo errore, rimpiazza qualsiasi cosa tu abbia messo dopo le " +"parole chiave \"extends\" o \"class_name\" con un nome senza spazi e che " +"inizi con una lettera maiuscola.\n" +"\n" +"Volendo puoi inserire i numeri nel nome, ma non nella prima posizione." + +#. Reference: DUPLICATE_DECLARATION +#: script_checking/error_database.csv:120 +msgid "" +"You are trying to define a function or variable that already exists; You " +"can't do that.\n" +"\n" +"Perhaps the function or variable already exists in the current code file, " +"but it may also be in a parent class that this GDScript code extends." +msgstr "" +"Stai cercando di definire una funzione o una variabile che già esiste; Non " +"lo puoi fare.\n" +"\n" +"Forse la funzione o la variabile già esiste nel corrente file di codice, ma " +"potrebbe pure essere in una classe genitore che questo codice GDScript " +"estende." + +#. Reference: DUPLICATE_DECLARATION +#: script_checking/error_database.csv:120 +msgid "" +"In the app, your code extends some built-in Godot code that's not visible to " +"you.\n" +"\n" +"When that happens, you need to either rename your function or variable to " +"one that will not collide with an existing one or remove this line of code." +msgstr "" +"Nell'applicazione, il tuo codice estende alcuni codici integrati di Godot a " +"cui tu non puoi accedere.\n" +"\n" +"Quando questo succede, devi o rinominare la tua funzione o la variabile con " +"un nome che non entri in conflitto con uno già esistente o rimuovi questa " +"riga di codice." + +#. Reference: DUPLICATE_SIGNAL_DECLARATION +#: script_checking/error_database.csv:125 +msgid "" +"You are trying to define a signal that already exists; You can't do that.\n" +"\n" +"Perhaps the signal already exists in the current code file, but it may also " +"be in a parent class that this GDScript code extends." +msgstr "" +"Stai cercando di definire un segnale che già esiste; Non puoi farlo.\n" +"\n" +"Forse il segnale già esiste nel seguente file di codice, ma potrebbe pure " +"essere in una classe genitore che questo codice GDScript estende." + +#. Reference: DUPLICATE_SIGNAL_DECLARATION +#: script_checking/error_database.csv:125 +msgid "" +"In the app, your code extends some built-in Godot code that's not visible to " +"you.\n" +"\n" +"When that happens, you need to either rename your signal to one that will " +"not collide with an existing one or remove this line of code." +msgstr "" +"Nell'applicazione, il tuo codice estende alcuni codici integrati di Godot a " +"cui tu non puoi accedere.\n" +"\n" +"Quando questo succede, devi o rinominare il tuo segnale con un nome che non " +"entri in conflitto con uno già esistente o rimuovi questa riga di codice." + +#. Reference: SIGNATURE_MISMATCH +#: script_checking/error_database.csv:130 +msgid "" +"The function you're trying to define exists in a parent class, so your " +"definition overrides the parent class's function.\n" +"\n" +"When you override a parent class's function, the new function must match the " +"parent. The new function should have the same number and type of parameters " +"as the parent class.\n" +"\n" +"For example, if the parent has two arguments, you need your new function " +"also to have two arguments. If you use type hints in your function " +"definitions, the argument types must match the parent class." +msgstr "" +"La funzione che stai cercando di definire esiste in una classe genitore, " +"quindi la tua definizione sovrascrive la funzione della classe genitore.\n" +"\n" +"Quando sovrascrivi la funzione di una classe genitore, la nuova funzione " +"deve combaciare con quella genitore. La nuova funzione dovrebbe avere lo " +"stesso numero e tipo di parametri della classe genitore.\n" +"\n" +"Per esempio, se il genitore ha due argomenti, devi far sì che la tua nuova " +"funzione abbia due argomenti. Se usi i suggerimenti di tipo nella " +"definizione della tua funzione, i tipi dell'argomento devono combaciare la " +"classe genitore." + +#. Reference: SIGNATURE_MISMATCH +#: script_checking/error_database.csv:130 +msgid "" +"You need to check the parent class's function and its definition in the code " +"reference. Then, you need to edit your function definition to have the same " +"number and type of parameters as the parent class." +msgstr "" +"Devi controllare la funzione della classe genitore e la sua definizione nel " +"riferimento del codice. Poi, devi modificare la tua funzione di definizione " +"per far sì che abbia lo stesso numero e tipo di parametri della classe " +"genitore." + +#. Reference: INVALID_ARGUMENTS +#: script_checking/error_database.csv:131 +msgid "" +"This whole class of errors has to do with calling functions with either the " +"wrong number of arguments or the wrong kind of argument. You will need to " +"use the error message to see what is going wrong." +msgstr "" +"Questo intero insieme di errori ha a che fare con chiamate di funzioni che " +"hanno o il numero errato di argomenti o il tipo errato dell'argomento. " +"Dovrai usare il messaggio di errore per vedere cosa è andato storto." + +#. Reference: INVALID_ARGUMENTS +#: script_checking/error_database.csv:131 +msgid "" +"You need to either remove, add, or change the values you're trying to pass " +"to the function to solve this issue. To know exactly how many arguments you " +"need, you need to check the code reference. It will show you the function " +"definition and the mandatory arguments." +msgstr "" +"Devi rimuovere, aggiungere o cambiare i valori che stai cercando di passare " +"alla funzione per risolvere questo problema. Per sapere esattamente quanti " +"argomenti ti servono, devi controllare il rimando del codice. Ti mostrerà la " +"definizione della funzione e gli argomenti obbligatori." + +#. Reference: TYPE_MISMATCH +#: script_checking/error_database.csv:142 +msgid "" +"All the values in your code have a specific type. That type can be a whole " +"number (int), a decimal number (float), text (String), and so on. There are " +"tons of possible types, and you can even define your own!\n" +"\n" +"When you make any operation, the computer compares the types you are using.\n" +"\n" +"Some types are compatible, and some are not. For example, you cannot " +"directly add a whole number to a text string. You first need to convert the " +"number into text.\n" +"\n" +"You'll need to read the error message to see what is not matching because " +"there are many possible cases." +msgstr "" +"Tutti i valori nel tuo codice hanno dei tipi specifici. Questo tipo può " +"essere un numero intero (int), un numero decimale (float), testo (String) e " +"così via. Ci sono un sacco di possibili tipi e puoi anche definire il tuo!\n" +"\n" +"Quando fai ogni operazione, il computer compara i tipi che stai usando.\n" +"\n" +"Alcuni tipi sono compatibili e altri no. Per esempio, non puoi aggiungere " +"direttamente dei numeri interi ad una stringa di testo. Devi prima " +"convertirei numeri in testo.\n" +"\n" +"Devi leggere il messaggio di errore per vedere cosa non combacia perchè ci " +"sono molti casi possibili." + +#. Reference: TYPE_MISMATCH +#: script_checking/error_database.csv:142 +msgid "" +"If the error mentions the assigned value type not matching the variable, the " +"problem is on the right side of the equal sign (=).\n" +"\n" +"If the error talks about the return type not matching the function, then it " +"is the value after the return keyword that is problematic.\n" +"\n" +"If the computer talks about an invalid operand, then the issue is that the " +"operation does not exist for the type you're trying to use. For example, " +"while you can add two 2D vectors, you can't add a whole number or text to a " +"2D vector." +msgstr "" +"Se l'errore menziona il tipo di valore assegnato che non combacia con la " +"variabile, il problema è alla destra del segno di uguaglianza (=).\n" +"\n" +"Se l'errore parla di un tipo di valore di ritorno che non combacia con la " +"funzione, allora è il valore dopo la parola chiave return che dà problemi.\n" +"\n" +"Se il computer parla di un operando invalido, allora il problema è che " +"l'operazione non esiste per il tipo che stai cercando di usare. Per esempio: " +"puoi sommare due vettori 2D tra di loro, ma non puoi aggiungere un numero " +"intero o del testo ad un vettore 2D." + +#. Reference: TYPE_CANNOT_BE_INFERRED +#: script_checking/error_database.csv:147 +msgid "" +"GDScript supports type inference. The computer will automatically recognize " +"the type of value you are working with. In some cases, though, it can't " +"figure it out.\n" +"\n" +"When that happens, you need to specify the type yourself or remove type " +"inference altogether for this variable." +msgstr "" +"GDScript supporta l'inferenza del tipo. Il computer riconoscerà " +"automaticamente il tipo del valore con cui stai valorando. In alcuni casi, " +"tuttavia, non riesce a riconoscerlo.\n" +"\n" +"Quando questo succede, devi specificare tu stesso il tipo o rimuovere " +"l'inferenza del tipo per quella variabile." + +#. Reference: TYPE_CANNOT_BE_INFERRED +#: script_checking/error_database.csv:147 +msgid "" +"The simplest way to solve this error is to remove types for this variable or " +"this function's arguments. Otherwise, you can manually specify the value " +"type after the colon.\n" +"\n" +"We recommend specifying the type whenever possible to reap the typing " +"system's benefits." +msgstr "" +"Il modo più semplice per risolvere questo errore è quello di rimuovere i " +"tipi per questa variabile o per gli argomenti di questa funzione. " +"Altrimenti, puoi specificare manualmente il tipo di valore con dei due " +"punti.\n" +"\n" +"Ti consigliamo di specificare il tipo quando possibile per sfruttare i " +"vantaggi del sistema di scrittura." + +#. Reference: RETURN_VALUE_MISMATCH +#: script_checking/error_database.csv:153 +msgid "" +"There is an issue with the return value of your function. There are two main " +"cases here:\n" +"\n" +"1. Your function is a void function, thus it should not return a value. This " +"includes functions with the '-> void' syntax and class constructors " +"('_init()').\n" +"2. You specified a return type for your function, but you are not returning " +"a value in all possible branches (if, elif, and else blocks) or at the end." +msgstr "" +"C'è un problema con il valore di ritorno della tua funzione. I casi " +"possibili sono due:\n" +"\n" +"1. La tua funzione è una funzione void, dunque non dovrebbe ritornare alcun " +"valore. Questo include le funzioni con la sintassi \"-> void\" e i " +"costruttori di classi \"_init()\".\n" +"2. Hai specificato un tipo di ritorno per la tua funzione, ma non stai " +"ritornato un valore in ogni possibile ramificazione (blocchi if, elif e " +"else) o alla fine." + +#. Reference: RETURN_VALUE_MISMATCH +#: script_checking/error_database.csv:153 +msgid "" +"When your function is 'void', you should never return a value. You can use " +"the 'return' keyword to end the function early, but you should never write " +"anything after that.\n" +"\n" +"When you use a return type, you must always return something at the end of " +"the function or in every branch (if, elif, and else block) of the function." +msgstr "" +"Quando la tua funzione è \"void\", non dovresti mai ritornare un valore. " +"Puoi usare la parola chiave \"return\" per finire prima la funzione, ma non " +"dovresti mai scrivere niente dopo questa.\n" +"\n" +"Quando usi un tipo di ritorno, devi sempre ritornare qualcosa alla fine " +"della funzione o in ogni possibile ramificazione (blocchi if, elif e else) " +"della funzione." + +#. Reference: INVALID_NO_CATCH +#: script_checking/error_database.csv:154 +msgid "" +"Godot was unable to load your script, yet the language checker found nothing " +"wrong." +msgstr "" +"Godot non è riuscito a caricare il tuo script, ma il tuo correttore di " +"codice non ha trovato nulla di sbagliato." + +#. Reference: INVALID_NO_CATCH +#: script_checking/error_database.csv:154 +msgid "" +"Please click on the \"report\" button at the top and please let us know." +msgstr "Per favore clicca sul pulsante \"report\" in alto e facci sapere." + +#. Reference: RECURSIVE_FUNCTION +#: script_checking/error_database.csv:155 +msgid "You called a function inside itself. This will loop forever." +msgstr "" +"Hai chiamato una funzione dentro se stessa. Questo ciclerà all'infinito." + +#. Reference: RECURSIVE_FUNCTION +#: script_checking/error_database.csv:155 +msgid "" +"There are valid reasons for using recursive functions, but none of them are " +"part of this course, so this cannot be a valid solution." +msgstr "" +"Ci sono motivi validi per usare funzioni recursive, ma nessuna di queste è " +"parte di questo corso, quindi questa non può essere una soluzione valida." + +#. Reference: UNEXPECTED_EOL +#: script_checking/error_database.csv:157 +msgid "" +"The computer reached the end of the line of code, but the line had a syntax " +"error.\n" +"The most common case is when you forget to close a string: you have opening " +"quotes, but you forget to add a matching closing quote." +msgstr "" +"Il computer ha raggiunto la fine della riga di codice, ma la riga presenta " +"un errore di sintassi.\n" +"Il caso più comune è quando si dimentica di chiudere una stringa: si hanno " +"le virgolette di apertura, ma si dimentica di aggiungere le virgolette di " +"chiusura corrispondenti." + +#. Reference: UNEXPECTED_EOL +#: script_checking/error_database.csv:157 +msgid "" +"Double-check that you are not missing a quote character or that the quote " +"character you used to start the string is the same as the one you used to " +"close the string." +msgstr "" +"Verificate che non manchi un carattere di virgolette o che il carattere di " +"virgolette usato per iniziare la stringa sia lo stesso usato per chiuderla." + +#. Reference: CANT_GET_INDEX +#: script_checking/error_database.csv:160 +msgid "The sub-variable you are trying to access does not exist." +msgstr "La sotto variabile a cui si sta cercando di accedere non esiste." + +#. Reference: CANT_GET_INDEX +#: script_checking/error_database.csv:160 +msgid "" +"You probably have a typo in the name of the sub-variable that you are trying " +"to access.\n" +"\n" +"Ensure that you don't have a capital letter where you should have a " +"lowercase letter and vice versa." +msgstr "" +"Probabilmente c'è un errore di battitura nel nome della variabile secondaria " +"a cui si sta cercando di accedere.\n" +"\n" +"Assicurarsi che non ci sia una lettera maiuscola al posto di una minuscola e " +"viceversa." diff --git a/i18n/it/glossary_database.po b/i18n/it/glossary_database.po new file mode 100644 index 00000000..7b419025 --- /dev/null +++ b/i18n/it/glossary_database.po @@ -0,0 +1,645 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 09:52+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#. Reference: member function +#: course/glossary.csv:6 +msgid "member function" +msgstr "funzione membro" + +#. Reference: member function +#: course/glossary.csv:6 +msgid "member functions" +msgstr "funzioni membro" + +#. Reference: member function +#: course/glossary.csv:6 +msgid "" +"Member functions are functions attached to a specific value type, like " +"arrays, strings, or dictionaries. We also call them methods.\n" +"\n" +"For example, arrays have member functions like [code]array.append()[/code].\n" +"\n" +"You can only call the function on an array, using the access operator " +"([code].[/code]) to access it, as shown above." +msgstr "" +"Le funzioni membro sono funzioni collegate ad uno specifico tipo di valore, " +"come array, stringhe o dizionari. Le chiamiamo pure metodi.\n" +"\n" +"Per esempio, gli array hanno funzioni membro come [code]array.append()[/" +"code].\n" +"\n" +"Puoi chiamare questa funzione solo su un array, usando l'operatore di " +"accesso ([code].[/code]) per accedervi, come mostrato qui sopra." + +#. Reference: member variable +#: course/glossary.csv:9 +msgid "member variable" +msgstr "variabile membro" + +#. Reference: member variable +#: course/glossary.csv:9 +msgid "member variables" +msgstr "variabili membro" + +#. Reference: member variable +#: course/glossary.csv:9 +msgid "" +"Member variables are variables attached to a specific value type, like a " +"vector's [code]x[/code] and [code]y[/code] sub-variables. We also call them " +"[i]properties[/i] or [i]fields[/i] of the vector.\n" +"\n" +"To access a member variable, you must first write the value's name followed " +"by the access operator ([code].[/code]). For example, [code]position.x[/" +"code]." +msgstr "" +"Le variabili membro sono variabili collegate a un tipo di valore specifico, " +"come le sotto-variabili [code]x[/code] e [code]y[/code] di un vettore. Le " +"chiamiamo anche [i]proprietà[/i] o [i]campi[/i] del vettore.\n" +"\n" +"Per accedere a una variabile membro, è necessario scrivere prima il nome del " +"valore seguito dall'operatore di accesso ([code].[/code]). Ad esempio, " +"[code]position.x[/code]." + +#. Reference: parameter +#: course/glossary.csv:12 +msgid "parameter" +msgstr "parametro" + +#. Reference: parameter +#: course/glossary.csv:12 +msgid "parameters" +msgstr "parametri" + +#. Reference: parameter +#: course/glossary.csv:12 +msgid "" +"A parameter is a variable you create as part of a function definition.\n" +"\n" +"It allows you to reuse the function more by having values that vary in the " +"function's body." +msgstr "" +"Un parametro è una variabile che crei come parte della definizione di una " +"funzione.\n" +"\n" +"Ti consente di riutilizzare la funzione più volte avendo valori che cambiano " +"nel corpo della funzione." + +#. Reference: radian +#: course/glossary.csv:17 +msgid "radian" +msgstr "radiante" + +#. Reference: radian +#: course/glossary.csv:17 +msgid "radians" +msgstr "radianti" + +#. Reference: radian +#: course/glossary.csv:17 +msgid "" +"A radian is a unit of measurement of angles based on the circle's " +"circumference.\n" +"\n" +"We tend to use degrees more in our daily lives, but in computer programming, " +"and especially in games, radians are common.\n" +"\n" +"An angle of [code]2 * PI[/code] radians corresponds to 360 degrees. And an " +"angle of [code]PI[/code] radians corresponds to 180 degrees." +msgstr "" +"Un radiante è un'unità di misura degli angoli basata sulla circonferenza del " +"cerchio.\n" +"\n" +"Nella vita di tutti i giorni tendiamo ad usare i gradi, ma in programmazione " +"e specialmente nei videogiochi, i radianti sono più comuni.\n" +"\n" +"Un angolo di [code]2 * PI[/code] radianti corrisponde a 360 gradi. E un " +"angolo di [code]PI[/code] radianti corrisponde a 180 gradi." + +#. Reference: type +#: course/glossary.csv:20 +msgid "type" +msgstr "tipo" + +#. Reference: type +#: course/glossary.csv:20 +msgid "types" +msgstr "tipi" + +#. Reference: type +#: course/glossary.csv:20 +msgid "" +"In computer programming, a type is the class of a value. For example, whole " +"numbers like [code]3[/code], [code]11[/code], and [code]255462[/code] are " +"all of type [code]int[/code] (short for integer).\n" +"\n" +"The computer uses types to determine which operations are valid between two " +"values and when they're undefined." +msgstr "" +"In programmazione, un tipo è la classe di un valore. Per esempio, i numeri " +"interi come [code]4[/code], [code]8[/code], [code]15[/code], [code]1623[/" +"code] e [code]42[/code] sono tutti del tipo [code]int[/code] (diminutivo di " +"intero).\n" +"\n" +"Il computer usa i tipi per determinare quali operatori sono validi tra due " +"valori e quando sono indefiniti." + +#. Reference: iteration +#: course/glossary.csv:23 +msgid "iteration" +msgstr "iterazione" + +#. Reference: iteration +#: course/glossary.csv:23 +msgid "iterations" +msgstr "iterazioni" + +#. Reference: iteration +#: course/glossary.csv:23 +msgid "" +"In computer code, an iteration is one repetition of some process or code. We " +"typically use the term with loops, where one iteration is one run of the " +"loop's code.\n" +"\n" +"When talking of algorithms, an iteration can mean a full pass of the " +"algorithm on a data set." +msgstr "" +"In programmazione, un'iterazione è una ripetizione dello stesso processo o " +"codice. Di solito usiamo il temine con i cicli, dove un'iterazione è " +"un'esecuzione del codice nel ciclo.\n" +"\n" +"Quando parliamo di algoritmi, un'iterazione può significare un'intera " +"passata dell'algoritmo su un set di dati." + +#. Reference: vector +#: course/glossary.csv:28 +msgid "vector" +msgstr "vettore" + +#. Reference: vector +#: course/glossary.csv:28 +msgid "vectors" +msgstr "vettori" + +#. Reference: vector +#: course/glossary.csv:28 +msgid "" +"In math, a vector is a list of numbers. In games, we often use 2D and 3D " +"vectors: respectively, lists of two and three numbers.\n" +"\n" +"We use that to represent a direction and magnitude or intensity in space. " +"For example, you can use a vector to represent the direction and speed at " +"which a character or a vehicle moves.\n" +"\n" +"Vectors can seem daunting at first because they are pretty abstract, but as " +"you will see, they'll simplify code tremendously." +msgstr "" +"In matematica, un vettore è una lista di numeri. Nei videogiochi, usiamo " +"spesso vettori 2D e 3D: rispettivamente, liste di due e tre numeri.\n" +"\n" +"Li usiamo per rappresentare una direzione e intensità nello spazio. Per " +"esempio, puoi usare un vettore per rappresentare la direzione e la velocità " +"alla quale un personaggio o un velivolo si muove.\n" +"\n" +"I vettori possono sembrare impegnativi all'inizio perché sono un po' " +"astratti, ma come vedrai, semplificheranno estremamente il tuo codice." + +#. Reference: argument +#: course/glossary.csv:37 +msgid "argument" +msgstr "argomento" + +#. Reference: argument +#: course/glossary.csv:37 +msgid "arguments" +msgstr "argomenti" + +#. Reference: argument +#: course/glossary.csv:37 +msgid "" +"An argument is a value that you pass to a function when calling the " +"function. For example, in the call [code]rotate(0.5)[/code], the value " +"[code]0.5[/code] in the parentheses is an argument.\n" +"\n" +"A function can receive no arguments, one argument, or multiple arguments. " +"Arguments can be mandatory or optional.\n" +"\n" +"When a function takes multiple arguments, you separate the values with " +"commas, like in this function call: [code]jump(50, 100)[/code]\n" +"\n" +"When [i]calling[/i] a function, we name the values passed in parentheses " +"[i]arguments[/i].\n" +"\n" +"When writing a function definition, however, we talk about function " +"[i]parameters[/i]. In the following example, the names [code]x[/code] and " +"[code]y[/code] are [i]parameters[/i]." +msgstr "" +"Un argomento è un valore che passi ad una funzione quando la chiami. Per " +"esempio, quando chiami [code]rotate(0.5)[/code], il valore [code]0.5[/code] " +"tra parentesi è un argomento.\n" +"\n" +"Una funzione può anche non ricevere argomenti, riceverne uno o molteplici. " +"Gli argomenti possono essere obbligatori o opzionali.\n" +"\n" +"Quando una funzione necessità molteplici argomenti, separi i valori con " +"delle virgole, come nella chiamata seguente: [code]jump(50, 100)[/code].\n" +"\n" +"Quando [i]chiamiamo[/i] una funzione, chiamiamo i valori passati tra " +"parentesi [i]argomenti[/i].\n" +"\n" +"Tuttavia, quando definiamo una funzione, parliamo di [i]parametri[/i] della " +"funzione. Nel seguente esempio, i nomi [code]x[/code] e [code]y[/code] sono " +"[i]parametri[/i]." + +#. Reference: array +#: course/glossary.csv:44 +msgid "array" +msgstr "array" + +#. Reference: array +#: course/glossary.csv:44 +msgid "arrays" +msgstr "array" + +#. Reference: array +#: course/glossary.csv:44 +msgid "" +"An array is a list of values. In GDScript, arrays can contain [i]any[/i] " +"types of value.\n" +"\n" +"To create an array, you write comma-separated values in square brackets: " +"[code]var three_numbers = [1, 2, 3][/code]\n" +"\n" +"In games, we use arrays all the time to store lists of characters in a " +"party, lists of items in inventory, lists of spells the player unlocked, and " +"so on. They're everywhere.\n" +"\n" +"Arrays are a fundamental value type in computer programming. You'll find " +"arrays in pretty much any programming language." +msgstr "" +"Un array è una lista di valori. In GDScript, gli array possono contenere " +"[i]ogni[/i] tipo di valore.\n" +"\n" +"Per creare un array, scrivi i valori, separati da una virgola, all'interno " +"di parentesi quadre: [code]var three_numbers = [1, 2, 3][/code].\n" +"\n" +"Nei videogiochi, usiamo gli array praticamente sempre per conservare liste " +"di personaggi in un gruppo, liste di oggetti nell'inventario, liste di " +"incantesimi che il giocatore ha sbloccato e così via. Sono ovunque.\n" +"\n" +"Gli array sono una tipologia di valori fondamentale per la prgrammazione. " +"Troverai gli array in praticamente ogni linguaggio di programmazione." + +#. Reference: assign +#: course/glossary.csv:45 +msgid "assign" +msgstr "assegna" + +#. Reference: assign +#: course/glossary.csv:45 +msgid "" +"Assigning a value to a variable means that you store a value inside the " +"variable. You do this with the equal sign ([code]=[/code])." +msgstr "" +"Assegnare un valore ad una variabile significa conservare un valore " +"all'interno della variabile. Puoi fare questo con il simbolo di uguaglianza " +"([code]=[/code])." + +#. Reference: dictionary +#: course/glossary.csv:52 +msgid "dictionary" +msgstr "dizionario" + +#. Reference: dictionary +#: course/glossary.csv:52 +msgid "dictionaries" +msgstr "dizionari" + +#. Reference: dictionary +#: course/glossary.csv:52 +msgid "" +"A dictionary is a data structure that maps values with key-value pairs. When " +"you give the dictionary a key, it finds and gives you back the corresponding " +"value.\n" +"\n" +"In GDScript, keys can be many things. We often use text strings or numbers, " +"but you're not limited to that. A [code]Vector2[/code] can also be a valid " +"key, which is handy to map a grid cell to a unit or an item in a grid-based " +"game.\n" +"\n" +"You will often use dictionaries to associate bits of data in your games. For " +"example, we could use them to associate an equipment's name with its weapon " +"stats in a database.\n" +"\n" +"Like arrays, they are a fundamental data type that you will see in many " +"programming languages and use a lot." +msgstr "" +"Un dizionario è una struttura di dati che mappa valori in gruppi di chiave-" +"valore. Quando dai una chiave ad un dizionario, trova e ti restituisce il " +"valore corrispondente.\n" +"\n" +"In GDScript, le chiavi possono essere molte cose. Spesso usiamo stringhe di " +"testo o numeri, ma non sei limitato solo a questi. Anche un [code]Vector2[/" +"code] può essere usato come chiave, questo può tornare utile per mappare " +"un'unità ad una cella di una griglia o un'oggetto in un gioco basato su " +"griglia.\n" +"\n" +"Userai spesso i dizionari per associare bit di dati nei tuoi giochi. Per " +"esempio, li possiamo usare per associare il nome di un equipaggiamento con " +"il le sue statistiche in un database.\n" +"\n" +"Come gli array, sono una tipologia di dati fondamentale che vedrai in molti " +"linguaggi di programmazione essere usati molto." + +#. Reference: for loop +#: course/glossary.csv:59 +msgid "for loop" +msgstr "ciclo for" + +#. Reference: for loop +#: course/glossary.csv:59 +msgid "for loops" +msgstr "cicli for" + +#. Reference: for loop +#: course/glossary.csv:59 +msgid "" +"A for loop instructs the computer to repeat a set of instructions once for " +"each value in an array.\n" +"\n" +"In each loop iteration, the compiler extracts one value from the array and " +"gives you access to it in the loop's body.\n" +"\n" +"For loops run code a limited amount of times: one per value in the array. It " +"is different from while loops that keep repeating code until a condition is " +"met.\n" +"\n" +"We recommend favoring for loops when you can. They're safer and easier to " +"use than while loops." +msgstr "" +"Un ciclo for istruisce il computer a ripetere un insieme di istruzioni una " +"volta per ogni valore in un array.\n" +"\n" +"Ad ogni iterazione, il compilatore estrae un valore dall'array e te ne da " +"accesso nel corpo del ciclo.\n" +"\n" +"I cicli for eseguono il codice un numero limitato di volte: uno per ogni " +"valore nell'array. Differisce dai cicli while che ripetono il codice a " +"oltranza finché una condizione è raggiunta.\n" +"\n" +"Ti consigliamo di preferire i cicli for quando puoi. Sono più sicuri e più " +"facili da usare rispetto ai cicli while." + +#. Reference: function +#: course/glossary.csv:64 +msgid "function" +msgstr "funzione" + +#. Reference: function +#: course/glossary.csv:64 +msgid "functions" +msgstr "funzioni" + +#. Reference: function +#: course/glossary.csv:64 +msgid "" +"A function is a group of code instructions you give a name. When you define " +"a function, you can call it any time to run all the instructions it " +"contains.\n" +"\n" +"You can modify a function's behavior with parameters. Parameters are " +"variable names that you write in the function definition. You can then use " +"them in the function's body to make your code adapt to different cases.\n" +"\n" +"Also, functions can optionally return a value to the code calling it." +msgstr "" +"Una funzione è un gruppo di istruzioni di codice a cui attribuisci un nome. " +"Quando definisci una funzione, la puoi chiamare ogni volta che vuoi per " +"eseguire le istruzioni contenute al suo interno.\n" +"\n" +"Puoi modificare il comportamento di una funzione con i parametri. I " +"parametri sono nomi di variabili che scrivi nella definizione della " +"funzione. Li puoi usare nel corpo della funzione per far si che il codice si " +"adatti a casi differenti.\n" +"\n" +"Inoltre, le funzioni eventualmente possono ritornare un valore al codice che " +"lo sta chiamando." + +#. Reference: increment +#: course/glossary.csv:65 +msgid "increment" +msgstr "incremento" + +#. Reference: increment +#: course/glossary.csv:65 +msgid "increments" +msgstr "incrementi" + +#. Reference: increment +#: course/glossary.csv:65 +msgid "An increment is the amount by which a value changes in your code." +msgstr "" +"Un incremento è la quantità con cui viene cambiato un valore nel tuo codice." + +#. Reference: instruction +#: course/glossary.csv:68 +msgid "instruction" +msgstr "istruzione" + +#. Reference: instruction +#: course/glossary.csv:68 +msgid "instructions" +msgstr "istruzioni" + +#. Reference: instruction +#: course/glossary.csv:68 +msgid "" +"In computer programming, instructions are a single operation the computer " +"recognizes and can execute.\n" +"\n" +"For example, a function call, an addition, or assigning a value to a " +"variable." +msgstr "" +"In programmazione, le istruzioni sono una singola operazione che il computer " +"riconosce e può eseguire.\n" +"\n" +"Per esempio, la chiamata di una funzione, un'addizione o l'assegnazione di " +"un valore ad una variabile." + +#. Reference: variable +#: course/glossary.csv:77 +msgid "variable" +msgstr "variabile" + +#. Reference: variable +#: course/glossary.csv:77 +msgid "variables" +msgstr "variabili" + +#. Reference: variable +#: course/glossary.csv:77 +msgid "" +"Variables are a tool to give a name to values you want to store in your code " +"and change over time.\n" +"\n" +"For example, a character's health: when the character takes a hit, you want " +"it to go down. When healing, you want the health to go back up.\n" +"\n" +"You can create a variable named [code]health[/code] to represent the " +"health.\n" +"\n" +"Then, every time you write the keyword [code]health[/code] in your code, the " +"computer will fetch the corresponding value in its memory for you.\n" +"\n" +"Variables work a bit like product labels in a supermarket. They are names " +"that you attach to some value. Any time, you can take the label and stick it " +"onto a new product or, in that case, a new value." +msgstr "" +"Le variabili sono uno strumento utilizzato per dare un nome a valori che " +"vuoi conservare nel tuo codice e vuoi cambiare nel tempo.\n" +"\n" +"Per esempio, la vita di un personaggio: quando un personaggio viene colpito, " +"vuoi farlo perire. Quando ti curi, vuoi che la vita risalga.\n" +"\n" +"Puoi creare una variabile chiamata [code]vita[/code] per rappresentare la " +"vita.\n" +"\n" +"Così, ogni volta che scrivi la parola chiave [code]vita[/code] nel tuo " +"codice, il computer recupererà il valore corrispondente dalla sua memoria " +"per te.\n" +"\n" +"Le variabili funzionano un po' come le etichette sui prodotti al " +"supermercato. Sono nomi che attacchi a del valore. Quando vuoi, puoi " +"prendere l'etichetta e attaccarla ad un nuovo prodotto o in questo caso, un " +"nuovo valore." + +#. Reference: while loop +#: course/glossary.csv:84 +msgid "while loop" +msgstr "ciclo while" + +#. Reference: while loop +#: course/glossary.csv:84 +msgid "while loops" +msgstr "cicli while" + +#. Reference: while loop +#: course/glossary.csv:84 +msgid "" +"A while loop instructs the computer to keep running code based on a " +"condition. While the condition is true, the loop keeps running.\n" +"\n" +"When coding while loops, you must be careful: they will keep running " +"infinitely and freeze your game if you get the condition wrong.\n" +"\n" +"That's why we recommend using the safer for loop whenever you can.\n" +"\n" +"However, there are still essential cases in which we use while loops, like " +"processing files, processing computer code, or for powerful algorithms." +msgstr "" +"Un ciclo while dice al computer di continuare ad eseguire il codice in base " +"ad una condizione. Finché la condizione è vera, il ciclo continua.\n" +"\n" +"Programmando cicli while, devi stare attento: continueranno ad eseguire in " +"modo infinito e bloccheranno il gioco se la condizione è sbagliata.\n" +"\n" +"Ecco perchè consigliamo di usare il ciclo for, più sicuro, quando " +"possibile.\n" +"\n" +"Tuttavia, ci sono sempre dei casi in cui usare i cicli while è essenziale, " +"come per processare file, processare codice o per potenti algoritmi." + +#. Reference: body +#: course/glossary.csv:85 +msgid "body" +msgstr "corpo" + +#. Reference: body +#: course/glossary.csv:85 +msgid "" +"We talk about a loop or a function's body to refer to the lines of code that " +"are part of the loop or function." +msgstr "" +"Parliamo di corpo di una funzione o di un ciclo per riferirci alle linee di " +"codice che sono all'interno della funzione o del ciclo." + +#. Reference: return +#: course/glossary.csv:88 +msgid "return" +msgstr "ritorna" + +#. Reference: return +#: course/glossary.csv:88 +msgid "" +"Returning a value is the process of sending a value to the place where you " +"call a function.\n" +"\n" +"It happens when a function uses the [code]return[/code] keyword followed by " +"a value, for example: [code]return -1[/code]." +msgstr "" +"Ritornare un valore è il processo di mandare un valore al posto in cui viene " +"chiamata una funzione.\n" +"\n" +"Questo succede quando una funzione usa la parola chiave [code]return[/code] " +"seguito da un valore, per esempio: [code]return - 1[/code] o [code]return " +"vita[/code]." + +#. Reference: library +#: course/glossary.csv:89 +msgid "library" +msgstr "libreria" + +#. Reference: library +#: course/glossary.csv:89 +msgid "libraries" +msgstr "librerie" + +#. Reference: library +#: course/glossary.csv:89 +msgid "" +"A collection of valuable and reusable code bundled together by other " +"programmers to save you time. All programmers use code libraries." +msgstr "" +"Una collezione di prezioso e riutilizzabile codice confezionato insieme da " +"altri programmatori per farti salvare tempo. Tutti i programmatori usano " +"librerie di codici." + +#. Reference: sprite +#: course/glossary.csv:90 +msgid "sprite" +msgstr "sprite" + +#. Reference: sprite +#: course/glossary.csv:90 +msgid "sprites" +msgstr "sprite" + +#. Reference: sprite +#: course/glossary.csv:90 +msgid "" +"In computer graphics, a sprite is an image you display on the screen. We " +"generally use this word to talk about moving images, like a character, a " +"monster, or an item falling on the ground." +msgstr "" +"In computer grafica, uno sprite è un'immagine che viene mostrata su schermo. " +"In genere usiamo questa parola per parlare di immagini che cambiano con il " +"tempo, come un personaggio, un mostro p un oggetto che cade a terra." diff --git a/i18n/it/lesson-1-what-code-is-like.po b/i18n/it/lesson-1-what-code-is-like.po new file mode 100644 index 00000000..5dec25da --- /dev/null +++ b/i18n/it/lesson-1-what-code-is-like.po @@ -0,0 +1,441 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Michele Dimaggio , 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 09:52+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.0\n" + +#: course/lesson-1-what-code-is-like/lesson.tres:14 +msgid "" +"Learning to program can be daunting.\n" +"\n" +"Yet, you want to make video games, so [b]there is no way around learning to " +"program[/b]. [i]Every[/i] video game is a computer program." +msgstr "" +"Imparare a programmare può essere estenuante.\n" +"\n" +"Ma, tu vuoi fare videogiochi, quindi [b]non c'è alcun modo di evitare di non " +"imparare a programmare[/b]. [i]Ogni[/i] videogioco è un programma per " +"computer." + +#: course/lesson-1-what-code-is-like/lesson.tres:24 +msgid "Telling the computer what to do" +msgstr "Dire al computer cosa fare" + +#: course/lesson-1-what-code-is-like/lesson.tres:26 +msgid "" +"Programming is the process of writing precise instructions that tell a " +"computer how to perform a task.\n" +"\n" +"A game's instructions are, for example: moving a character, drawing a life " +"bar, or playing a sound." +msgstr "" +"Programmare è il processo di scrittura di precise istruzioni che dicono al " +"computer come svolgere un compito.\n" +"\n" +"Le istruzioni di un gioco possono essere, per esempio: muovere un " +"personaggio, creare una barra della vita, o riprodurre un suono." + +#: course/lesson-1-what-code-is-like/lesson.tres:38 +msgid "" +"To do any of that, you need to learn a [b]programming language[/b]: a " +"specialized language to tell the computer what to do." +msgstr "" +"Per far ciò, vedi imparare un [b]linguaggio di programmazione[/b]: una " +"lingua specializzata a dire al computer cosa fare." + +#: course/lesson-1-what-code-is-like/lesson.tres:58 +msgid "" +"Programming languages are different from natural ones like English or " +"Spanish. The computer does not think. Unlike us, it can't [i]interpret[/i] " +"what you tell it.\n" +"\n" +"You can't tell it something vague like \"draw a circle.\"\n" +"\n" +"Which circle? Where? Which color should it be? How big should it be?" +msgstr "" +"I linguaggi di programmazione sono diversi da quelli naturali come l'inglese " +"o lo spagnolo. Il computer non pensa. A differenza di noi, non può " +"[i]interpretare[/i] ciò che gli si dice.\n" +"\n" +"Non si può dire qualcosa di vago come \"disegna un cerchio\".\n" +"\n" +"Quale cerchio? Dove? Di che colore deve essere? Quanto deve essere grande?" + +#: course/lesson-1-what-code-is-like/lesson.tres:70 +msgid "The computer needs exact instructions" +msgstr "Il computer necessita istruzioni esatte" + +#: course/lesson-1-what-code-is-like/lesson.tres:72 +msgid "" +"To draw a filled circle, the computer needs to know exact drawing " +"coordinates, the radius, the thickness, and color you want.\n" +"\n" +"The code to do so [i]may[/i] look like this.\n" +"\n" +"[i]Click the button to run the code example and see the result.[/i]" +msgstr "" +"Per disegnare un cerchio, il computer ha bisogno di sapere le coordinate " +"esatte di dove disegnarlo, il raggio, lo spessore, e il colore che vuoi.\n" +"\n" +"Il codice per fare ciò [i]potrebbe[/i] essere simile a questo.\n" +"\n" +"[i]Clicca il tasto per eseguire l'esempio di codice e vedere il risultato.[/" +"i]" + +#: course/lesson-1-what-code-is-like/lesson.tres:96 +msgid "" +"In the following lessons, you'll learn how this code works.\n" +"\n" +"For now, we want to give you a sense of what computer code looks like. In " +"this example, everything matters: each parenthesis, capital letter, period, " +"and comma.\n" +"\n" +"The computer always does [b]exactly[/b] what you tell it to. No more, no " +"less. It [i]blindly[/i] follows every instruction.\n" +"\n" +"[b]When you program, you're the one in charge, and you're free to do " +"[i]anything[/i] you want.[/b]" +msgstr "" +"Nelle prossime lezioni, imparerai come funziona questo codice.\n" +"\n" +"Per ora, vogliamo solo darti un'idea di com'è fatto del codice. In questo " +"esempio, ogni parentesi, lettera maiuscola, punto o virgola sono " +"importanti.\n" +"\n" +"Il computer farà [b]esattamente[/b] ciò che gli dici di fare, sempre. Né " +"più, né meno. Segue ogni istruzione [i]ciecamente[/i].\n" +"\n" +"[b]Quando programmi, sei tu a comandare, e sei libero di fare [i]tutto[/i] " +"quello che vuoi.[/b]" + +#: course/lesson-1-what-code-is-like/lesson.tres:110 +msgid "How do you give instructions to a computer?" +msgstr "Cosa bisogna usare per dare delle istruzioni a un computer?" + +#: course/lesson-1-what-code-is-like/lesson.tres:113 +msgid "" +"Computers don't understand natural languages like English. To make them do " +"anything, you need to give them precise instructions they understand, using " +"a programming language." +msgstr "" +"I computer non capiscono i linguaggi naturali come l'italiano. Per fargli " +"fare qualsiasi cosa, devi dargli delle istruzioni ben precise che possano " +"comprendere, tramite un linguaggio di programmazione." + +#: course/lesson-1-what-code-is-like/lesson.tres:114 +#: course/lesson-1-what-code-is-like/lesson.tres:115 +msgid "Using a programming language and precise instructions" +msgstr "Un linguaggio di programmazione e delle istruzioni ben precise" + +#: course/lesson-1-what-code-is-like/lesson.tres:114 +msgid "Using prose in plain English" +msgstr "L'italiano, è più che sufficiente" + +#: course/lesson-1-what-code-is-like/lesson.tres:122 +msgid "You'll learn to code with GDScript" +msgstr "Imparerai a programmare con GDScript" + +#: course/lesson-1-what-code-is-like/lesson.tres:124 +msgid "" +"In this course, you'll learn the GDScript programming language (the name " +"stands for \"Godot script\").\n" +"\n" +"This is a language by game developers for game developers. You can use it " +"within the Godot game engine to create games and applications.\n" +"\n" +"SEGA used the Godot engine to create the remake of Sonic Colors Ultimate. " +"Engineers at Tesla use it for their cars' dashboards." +msgstr "" +"In questo corso, imparerai il linguaggio di programmazione GDScript (che sta " +"per \"Godot script\").\n" +"\n" +"È un linguaggio creato da programmatori di videogiochi per programmatori di " +"videogiochi. Puoi usarlo su Godot per creare giochi e applicazioni.\n" +"\n" +"SEGA ha usato Godot per il remake di Sonic Colors Ultimate. Gli ingegneri di " +"Tesla l'hanno usato per le dashboard delle loro auto." + +#: course/lesson-1-what-code-is-like/lesson.tres:148 +msgid "" +"GDScript is an excellent language to get started with programming because " +"it's specialized. Unlike some other languages, it doesn't have an " +"[i]overwhelming[/i] amount of features for you to learn." +msgstr "" +"GDScript è un linguaggio eccellente per iniziare a programmare perchè è " +"specializzato. Al contrario di altri linguaggi, non ha una [i]schiacciante[/" +"i] quantità di funzionalità da poter imparare." + +#: course/lesson-1-what-code-is-like/lesson.tres:156 +msgid "Most programming languages are similar" +msgstr "Molti linguaggi di programmazione sono simili" + +#: course/lesson-1-what-code-is-like/lesson.tres:158 +msgid "" +"Don't be afraid of being locked in. The concepts you learn in your first " +"programming language will apply to all the others.\n" +"\n" +"Most languages have more similarities than differences. Once you learn one, " +"it takes much less time to become productive with the next one.\n" +"\n" +"Here's an example of the same code in three languages: GDScript, JavaScript, " +"and Python.\n" +"\n" +"Try to spot the similarities and differences." +msgstr "" +"Non avere paura di esserti bloccato. I concetti che impari nel tuo primo " +"linguaggio di programmazione si applicheranno agli altri.\n" +"\n" +"Molti linguaggi hanno più somiglianze ché differenze. Appena ne impari uno, " +"ci vuole molto meno tempo a diventare efficienti nel prossimo.\n" +"\n" +"Ecco un esempio dello stesso codice in tre linguaggi diversi: GDScript, " +"JavaScript e Python.\n" +"\n" +"Cerca di trovare i punti in comune e le differenze." + +#: course/lesson-1-what-code-is-like/lesson.tres:184 +msgid "It doesn't look [i]that[/i] different, does it?" +msgstr "Non sembrano poi [i]così[/i] diversi, vero?" + +#: course/lesson-1-what-code-is-like/lesson.tres:192 +msgid "Are programming languages all completely different?" +msgstr "I linguaggi di programmazione sono tutti diversi fra loro?" + +#: course/lesson-1-what-code-is-like/lesson.tres:193 +msgid "" +"If you learn one language and then want to learn another, will you have to " +"start from scratch?" +msgstr "" +"Dopo aver imparato un linguaggio, dovrai ripartire da zero per impararne uno " +"nuovo?" + +#: course/lesson-1-what-code-is-like/lesson.tres:195 +msgid "" +"Most programming languages build upon the same ideas of how to program. As a " +"result, they're mostly similar.\n" +"\n" +"It's not to say all languages are the same, though. Some offer a really " +"unique syntax and require a completely different mindset compared to " +"GDScript.\n" +"\n" +"However, languages like GDScript, Python, JavaScript, C++, C#, and many " +"others build upon a similar programming philosophy." +msgstr "" +"La maggior parte dei linguaggi di programmazione si basa sulle stesse idee " +"relative alla programmazione. Perciò, sono molto simili tra loro.\n" +"\n" +"Questo però non significa che tutti i linguaggi sono uguali. Alcuni hanno " +"una sintassi molto particolare e richiedono una mentalità completamente " +"diversa rispetto al GDScript.\n" +"\n" +"In ogni caso, i linguaggi come GDScript, Python, JavaScript, C++, C# e molti " +"altri sono stati creati tenendo a mente filosofie di programmazione molto " +"simili tra loro." + +#: course/lesson-1-what-code-is-like/lesson.tres:200 +#: course/lesson-1-what-code-is-like/lesson.tres:201 +msgid "No, they have many similarities" +msgstr "No, sono molto simili" + +#: course/lesson-1-what-code-is-like/lesson.tres:200 +msgid "Yes, they are completely different" +msgstr "Sì, sono completamente diversi" + +#: course/lesson-1-what-code-is-like/lesson.tres:208 +msgid "This is a course for beginners" +msgstr "Questo è un corso per principianti" + +#: course/lesson-1-what-code-is-like/lesson.tres:210 +msgid "" +"If you want to learn to make games or code but don't know where to start, " +"this course should be perfect." +msgstr "" +"Se vuoi imparare a fare videogiochi o a programmare ma non sai da dove " +"iniziare, questo corso è perfetto per te." + +#: course/lesson-1-what-code-is-like/lesson.tres:230 +msgid "" +"We designed it for [i]absolute beginners[/i], but if you already know " +"another language, it can be a fun way to get started with Godot.\n" +"\n" +"We will give you the coding foundations you need to start making games and " +"applications with Godot.\n" +"\n" +"Please be patient. It will take time before you can make your first complete " +"game alone." +msgstr "" +"L'abbiamo progettato per chi è alle [i]primissime armi[/i], ma se conosci " +"già altri linguaggi potrebbe anche essere un modo divertente per muovere i " +"primi passi con Godot.\n" +"\n" +"Ti daremo le basi di programmazione di cui avrai bisogno per cominciare a " +"creare giochi e applicazioni con Godot.\n" +"\n" +"Per favore, abbi pazienza. Tieni a mente che servirà del tempo prima che tu " +"possa creare il tuo primo gioco in modo autonomo." + +#: course/lesson-1-what-code-is-like/lesson.tres:242 +msgid "Learning to make games takes practice" +msgstr "Imparare a fare giochi ha bisogno di pratica" + +#: course/lesson-1-what-code-is-like/lesson.tres:244 +msgid "" +"Creating games is more accessible than ever, but it still takes a lot of " +"work and practice.\n" +"\n" +"Do not expect any single course or book to turn you into a professional. " +"[b]Programming is something you learn through practice.[/b]\n" +"\n" +"If something doesn't make immediate sense, don't stress it too much! Keep " +"learning and come back to it later.\n" +"\n" +"Enjoy the process and celebrate every little success. You will never stop " +"learning as a game developer." +msgstr "" +"Creare videogiochi, ora come ora, è più accessibile che mai, ma c'è comunque " +"bisogno di tanto lavoro e pratica.\n" +"\n" +"Perciò, non aspettarti che ogni singolo corso o libro possa farti diventare " +"un professionista. [b]Bisogna fare pratica per imparare a programmare.[/b]\n" +"\n" +"Se c'è qualcosa che non capisci al primo colpo, non preoccuparti! Continua " +"ad esercitarti e ritornaci in seguito.\n" +"\n" +"Divertiti a imparare, e goditi ogni piccola conquista. Non smetterai mai di " +"imparare come sviluppatore di videogiochi." + +#: course/lesson-1-what-code-is-like/lesson.tres:258 +msgid "What and how you'll learn" +msgstr "Cosa imparerai e come" + +#: course/lesson-1-what-code-is-like/lesson.tres:260 +msgid "" +"In this free course, you will learn the foundations you need to start coding " +"things like these:" +msgstr "" +"In questo corso gratuito, imparerai le basi necessarie per iniziare a " +"programmare cose come queste:" + +#: course/lesson-1-what-code-is-like/lesson.tres:290 +msgid "" +"Along the way, we'll teach you:\n" +"\n" +"- Some of the mindset you need as a developer. Too many programming courses " +"skip that essential part.\n" +"- How to write GDScript code.\n" +"- Essential programming foundations to get you started.\n" +"\n" +"As you go through the course, you will have many questions. We will answer " +"them the best we can as we go.\n" +"\n" +"But there is so much to cover that we have to take a few shortcuts. We don't " +"want to [i]overwhelm[/i] you with information. We also want to respect the " +"pace at which our brains memorize things.\n" +"\n" +"We broke down the course into short lessons and practices. If we put too " +"much into each part, you'd learn slower.\n" +"\n" +"If at any time you're left with burning questions, you're more than welcome " +"to join [url=https://discord.gg/87NNb3Z]our Discord community[/url]." +msgstr "" +"Lungo il percorso di apprendimento, ti insegneremo:\n" +"\n" +"- Parte della mentalità da programmatore. Molti corsi di programmazione " +"saltano questa parte essenziale.\n" +"- Come scrivere codice in GDScript.\n" +"- Basi essenziali di programmazione per farti iniziare.\n" +"\n" +"Durante il corso, avrai sicuramente molte domande. Col tempo, ti daremo " +"tutte le risposte che desideri al meglio che possiamo.\n" +"\n" +"Ma tratteremo così tanti argomenti che ci toccherà prendere qualche " +"scorciatoia. Non vogliamo [i]sovraccaricarti[/i] con troppe informazioni. " +"Vogliamo anche rispettare il ritmo di memorizzazione del nostro cervello.\n" +"\n" +"Abbiamo suddiviso il corso in tante piccole lezioni con varie pratiche su " +"codice. Se avessimo messo troppe informazioni in ogni parte, impareresti più " +"lentamente.\n" +"\n" +"E se in qualsiasi momento dovessi ritrovarti con qualche domanda a cui non " +"riesci proprio a trovare una risposta, puoi unirti alla nostra [url=https://" +"discord.gg/87NNb3Z]community su Discord[/url]." + +#: course/lesson-1-what-code-is-like/lesson.tres:310 +msgid "Programming is a skill" +msgstr "Programmare è un'abilità" + +#: course/lesson-1-what-code-is-like/lesson.tres:312 +msgid "" +"Programming is a skill, so to get good at it, you must practice. It is why " +"we built this app.\n" +"\n" +"Each lesson is followed by an interactive practice to use what you learned.\n" +"\n" +"Speaking of which, it's time to look at the practice screen!\n" +"\n" +"To continue, click the [i]Practice[/i] button below. It will give you a " +"short run through how practices work." +msgstr "" +"Programmare è un'abilità, e come tale per poter migliorare serve molta " +"pratica. Per questo abbiamo creato questa applicazione.\n" +"\n" +"Dopo ogni breve lezione troverai un esercizio interattivo che ti permetterà " +"di mettere in pratica ciò che hai appena imparato.\n" +"\n" +"A tal proposito, diamo un'occhiata alla schermata dell'esercitazione!\n" +"\n" +"Per continuare, clicca sul tasto [i]Pratica[/i] qui sotto. Ti mostrerà in " +"breve come funzionano questi esercizi." + +#: course/lesson-1-what-code-is-like/lesson.tres:326 +msgid "Try Your First Code" +msgstr "Prova Il Tuo Primo Codice" + +#: course/lesson-1-what-code-is-like/lesson.tres:327 +msgid "" +"We prepared a code sample for you. For this practice, you don't need to " +"change anything.\n" +"\n" +"To test the code, click the [i]Run[/i] button below the code editor." +msgstr "" +"Abbiamo preparato per te un piccolo esempio di codice. Per questo esercizio, " +"non dovrai modificare nulla.\n" +"\n" +"Per provare questo codice, clicca il bottone [i]Esegui[/i] sotto l'editor " +"del codice." + +#: course/lesson-1-what-code-is-like/lesson.tres:339 +msgid "Run your first bit of code and see the result." +msgstr "Esegui il tuo primo pezzetto di codice e guarda il risultato." + +#: course/lesson-1-what-code-is-like/lesson.tres:343 +msgid "What Code is Like" +msgstr "Come Funziona Il Codice" + +#~ msgid "" +#~ "[i]The dark gray parts following the \"#\" sign are comments, they're not " +#~ "part of the code. The computer skips comments.[/i]" +#~ msgstr "" +#~ "[i]Le parti grigie dopo il \"#\" sono commenti, e non fanno parte del " +#~ "codice. I commenti vengono ignorati dal computer.[/i]" + +#, fuzzy +#~ msgid "By the end of the series, you will create [b]this[/b]." +#~ msgstr "Alla fine del corso, creerai [b]questo[/b]." diff --git a/i18n/it/lesson-10-the-game-loop.po b/i18n/it/lesson-10-the-game-loop.po new file mode 100644 index 00000000..0d272c14 --- /dev/null +++ b/i18n/it/lesson-10-the-game-loop.po @@ -0,0 +1,257 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 09:52+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-10-the-game-loop/lesson.tres:14 +msgid "" +"As we've seen, Godot has functions that do certain actions. For example, the " +"[code]show()[/code] and [code]hide()[/code] functions change the visibility " +"of things.\n" +"\n" +"We can also create our own functions to make custom effects like adding or " +"removing health to a character.\n" +"\n" +"Godot also has special functions we can customize or add to.\n" +"\n" +"Take the [code]_process()[/code] function." +msgstr "" +"Come hai potuto vedere, Godot possiede funzioni che fanno determinate " +"azioni. Per esempio, le funzioni [code]show()[/code] e [code]hide()[/code] " +"modificano la visibilità delle cose.\n" +"\n" +"Pure noi possiamo creare funzioni che hanno effetti personalizzabili come " +"aumentare o diminuire la vita di un personaggio.\n" +"\n" +"Godot possiede pure delle funzioni speciali che possono essere " +"personalizzate.\n" +"\n" +"Un esempio è la funzione [code]_process()[/code]." + +#: course/lesson-10-the-game-loop/lesson.tres:40 +msgid "" +"The [code]_process()[/code] function gets its name because it does " +"calculations or continuous actions.\n" +"\n" +"It's like a juice factory that [b]processes[/b] juice bottles: the bottles " +"are always moving along a conveyor belt, while different machines operate on " +"them." +msgstr "" +"La funzione [code]_process()[/code] prende il nome dal fatto il suo compito " +"è quello di svolgere calcolazioni o azioni continue.\n" +"\n" +"La possiamo pensare come una fabbrica di cioccolato che [b]processa[/b] " +"forme di cioccolatini: le forme si muovono lungo i nastri trasportatori, " +"mentre diverse macchine operano su queste." + +#: course/lesson-10-the-game-loop/lesson.tres:52 +msgid "" +"It's similar in Godot, but this function can run [b]hundreds of times a " +"second[/b]." +msgstr "" +"In Godot il concetto è simile, ma questa funzione può eseguire [b]centinaia " +"di volte al secondo[/b]." + +#: course/lesson-10-the-game-loop/lesson.tres:60 +msgid "How many parameters does this function take?" +msgstr "Quanti parametri richiede questa funzione?" + +#: course/lesson-10-the-game-loop/lesson.tres:61 +msgid "" +"[code]\n" +"func _process(delta):\n" +"[/code]" +msgstr "" +"[code]\n" +"func _process(delta):\n" +"[/code]" + +#: course/lesson-10-the-game-loop/lesson.tres:65 +msgid "" +"The [code]_process()[/code] function takes one parameter: [code]delta[/" +"code].\n" +"\n" +"We'll look at what [code]delta[/code] is in the next lesson, as well as show " +"how to use it." +msgstr "" +"La funzione [code]_process()[/code] ha bisogno di un parametro: [code]delta[/" +"code].\n" +"\n" +"Capiremo cos'è [code]delta[/code] e come funziona nella prossima lezione." + +#: course/lesson-10-the-game-loop/lesson.tres:68 +#: course/lesson-10-the-game-loop/lesson.tres:69 +msgid "1" +msgstr "1" + +#: course/lesson-10-the-game-loop/lesson.tres:68 +msgid "2" +msgstr "2" + +#: course/lesson-10-the-game-loop/lesson.tres:78 +msgid "" +"The [code]_process()[/code] function won't do anything until we add " +"something to it.\n" +"\n" +"You might notice the underscore [code]_[/code] in front of the function " +"name. This is a convention programmers use to coordinate work, and it'll " +"only make sense once you have experience coding in Godot.\n" +"\n" +"For now, all you need to know is that if the function exists in your code, " +"and it is called precisely [code]_process[/code], then Godot will " +"automatically run it every [i]frame[/i].\n" +"\n" +"When Godot draws on the screen, we call that a frame." +msgstr "" +"La funzione [code]_process()[/code] non farà nulla finché non le " +"aggiungeremo qualcosa.\n" +"\n" +"Si può notare il trattino basso [code]_[/code] davanti al nome della " +"funzione. Si tratta di una convenzione che i programmatori usano per " +"coordinare il lavoro e che avrà senso solo quando si avrà esperienza di " +"codifica in Godot.\n" +"\n" +"Per ora è sufficiente sapere che se la funzione esiste nel codice ed è " +"chiamata proprio [code]_process[/code], Godot la eseguirà automaticamente " +"ogni [i]frame[/i].\n" +"\n" +"Quando Godot disegna sullo schermo, lo chiamiamo frame." + +#: course/lesson-10-the-game-loop/lesson.tres:92 +msgid "Is this the same for other engines?" +msgstr "È lo stesso per altri motori di gioco?" + +#: course/lesson-10-the-game-loop/lesson.tres:94 +msgid "" +"Other game engines might use different names like [code]_update()[/code]." +msgstr "" +"Altri motori di videogiochi potrebbero usare nomi diversi come " +"[code]_update()[/code]." + +#: course/lesson-10-the-game-loop/lesson.tres:102 +msgid "Why is the _process() function useful?" +msgstr "Perché la funzione _process() è utile?" + +#: course/lesson-10-the-game-loop/lesson.tres:104 +msgid "" +"It's perhaps better to see the [code]_process()[/code] function in action.\n" +"\n" +"Take the following example." +msgstr "" +"Forse è meglio vedere la funzione [code]_process()[/code] in azione.\n" +"\n" +"Osserva il seguente esempio." + +#: course/lesson-10-the-game-loop/lesson.tres:126 +msgid "" +"When you click the button [code]set_process(true)[/code], you activate " +"processing on the robot.\n" +"\n" +"From there, every frame, Godot runs the [code]_process()[/code] function.\n" +"\n" +"Since we wrote a [code]rotate()[/code] instruction, Godot is rotating the " +"character by [code]0.05[/code] radians [b]many[/b] times a second." +msgstr "" +"Premendo il tasto [code]set_process(true)[/code] attivi la funzione continua " +"per il robot.\n" +"\n" +"Da lì, ad ogni frame, Godot esegue la funzione [code]_process()[/code].\n" +"\n" +"Dato che abbiamo scritto l'istruzione [code]rotate()[/code], Godot ruota il " +"personaggio di [code]0.05[/code] radianti [b]tante[/b] volte al secondo." + +#: course/lesson-10-the-game-loop/lesson.tres:138 +msgid "How often does the _process() function run?" +msgstr "Quanto spesso la funzione _process() viene eseguita?" + +#: course/lesson-10-the-game-loop/lesson.tres:141 +msgid "" +"The faster your computer, the more times [code]_process()[/code] will run.\n" +"\n" +"Godot will try and run [code]_process()[/code] as quickly as it can. This " +"makes sure any movement or animations look smooth and fluid." +msgstr "" +"Più veloce è il tuo computer, più [code]_process()[/code] viene eseguito.\n" +"\n" +"Godot proverà ad eseguire[code]_process()[/code] quanto più veloce " +"possibile. Questo fa si che ogni movimento o animazione sembri fluida." + +#: course/lesson-10-the-game-loop/lesson.tres:144 +msgid "Once a second." +msgstr "Una volta al secondo." + +#: course/lesson-10-the-game-loop/lesson.tres:144 +#: course/lesson-10-the-game-loop/lesson.tres:145 +msgid "Multiple times a second." +msgstr "Molte volte al secondo." + +#: course/lesson-10-the-game-loop/lesson.tres:154 +msgid "" +"In the practice, you'll learn how to use the process function to rotate and " +"move a character yourself." +msgstr "" +"Nella pratica, imparerai come usare la funzione _process() per ruotare e " +"muovere un personaggio te stesso." + +#: course/lesson-10-the-game-loop/lesson.tres:162 +msgid "Rotating a Character Continuously" +msgstr "Ruotando un Personaggio in Continuazione" + +#: course/lesson-10-the-game-loop/lesson.tres:163 +msgid "" +"Make the robot rotate slowly by adding to the [code]_process()[/code] " +"function.\n" +"\n" +"A rotation speed of about [code]0.05[/code] each frame should do." +msgstr "" +"Fa sì che il robot si ruoti lentamente aggiungendo codice alla funzione " +"[code]_process()[/code].\n" +"\n" +"Una velocità di rotazione di circa [code]0.05[/code] ad ogni frame dovrebbe " +"andare." + +#: course/lesson-10-the-game-loop/lesson.tres:180 +msgid "Creating Circular Movement" +msgstr "Creando Moto Circolare" + +#: course/lesson-10-the-game-loop/lesson.tres:181 +msgid "" +"Make the robot move in a large circle slowly by rotating it and " +"simultaneously moving it along its x direction.\n" +"\n" +"To do this, add the [code]rotate()[/code] and [code]move_local_x()[/code] " +"functions to [code]_process()[/code].\n" +"\n" +"Use a rotation speed of [code]0.05[/code] radians per frame, and move the " +"robot [code]5[/code] pixels per frame." +msgstr "" +"Fa sì che il robot si muova lentamente lungo un grande cerchio facendolo " +"ruotare e muovere lungo la sua direzione x simultaneamente.\n" +"\n" +"Per far ciò, aggiungi le funzioni [code]rotate()[/code] e " +"[code]move_local_x()[/code] alla funzione [code]_process()[/code].\n" +"\n" +"Usa una velocità di rotazione di [code]0.05[/code] radianti per frame e " +"muovi il robot di [code]5[/code] pixel per frame." + +#: course/lesson-10-the-game-loop/lesson.tres:199 +msgid "The Game Loop" +msgstr "Il Ciclo Di Gioco" diff --git a/i18n/it/lesson-11-time-delta.po b/i18n/it/lesson-11-time-delta.po new file mode 100644 index 00000000..c280cfad --- /dev/null +++ b/i18n/it/lesson-11-time-delta.po @@ -0,0 +1,447 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 10:51+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-11-time-delta/lesson.tres:14 +msgid "" +"We've seen how we can use our character's [code]_process()[/code] function " +"to make it move continuously." +msgstr "" +"Abbiamo visto come possiamo usare la funzione [code]_process()[/code] del " +"nostro personaggio per farlo muovere in continuazione." + +#: course/lesson-11-time-delta/lesson.tres:34 +msgid "" +"But it's not just our character that has a [code]_process()[/code] function; " +"Almost everything in the game has a [code]_process()[/code] function!\n" +"\n" +"Dozens of times per second, Godot runs every [code]_process()[/code] " +"function in the game to update the game world.\n" +"\n" +"After that, it displays an image of the game world on the screen. We call " +"that image a [b]frame[/b].\n" +"\n" +"Godot then moves on to calculating the next frame.\n" +"\n" +"As this happens dozens of times per second, you get the illusion of " +"movement. This is similar to how traditional animation works." +msgstr "" +"Ma il nostro personaggio non è l'unico ad avere la funzione [code]_process()" +"[/code]; Quasi tutto in un gioco possiede la funzione [code]_process()[/" +"code].\n" +"\n" +"Dozzine di volte al secondo, Godot esegue ogni funzione [code]_process()[/" +"code] nel gioco per aggiornare il mondo di gioco.\n" +"\n" +"Dopo ciò, mostra un'immagine del mondo di gioco sullo schermo. Chiamiamo " +"questa immagine un [b]frame[/b].\n" +"\n" +"Godot in seguito procede a calcolare il frame successivo.\n" +"\n" +"Dato che questo avviene dozzine di volte al secondo, hai l'illusione del " +"movimento. Questo è analogo a come l'animazione tradizionale funziona." + +#: course/lesson-11-time-delta/lesson.tres:50 +msgid "This sounds like Frames Per Second..." +msgstr "Sembra tipo Frames Per Second..." + +#: course/lesson-11-time-delta/lesson.tres:52 +msgid "" +"You may have heard of frames per second, or FPS for short. Games often run " +"at 60 frames per second. \n" +"\n" +"It means that everything in the game updates 60 times each second.\n" +"\n" +"The number varies while playing, depending on the game and the device it " +"runs on.\n" +"\n" +"On powerful computers, you may get frame rates in the hundreds or thousands " +"of frames per second." +msgstr "" +"Potresti aver sentito di frame al secondo o FPS abbreviato. I giochi spesso " +"vanno a 60 frame al secondo. \n" +"\n" +"Questo significa che ogni cosa nel gioco si aggiorna 60 volte ogni secondo.\n" +"\n" +"Il numero varia quando giochi, in base al gioco e al dispositivo su cui gira " +"il gioco.\n" +"\n" +"Sui computer potenti, potresti avere una frequenza di frame sulle centinaia " +"o migliaia di frame al secondo." + +#: course/lesson-11-time-delta/lesson.tres:68 +msgid "Let's look at the [code]_process()[/code] function in more detail." +msgstr "Guardiamo la funzione [code]_process()[/code] più nel dettaglio." + +#: course/lesson-11-time-delta/lesson.tres:76 +msgid "What parameter does the _process() function take?" +msgstr "Quale parametro prende la funzione _process()?" + +#: course/lesson-11-time-delta/lesson.tres:77 +msgid "" +"[code]\n" +"func _process(delta):\n" +"\trotate(0.05)\n" +"[/code]" +msgstr "" +"[code]\n" +"func _process(delta):\n" +"\trotate(0.05)\n" +"[/code]" + +#: course/lesson-11-time-delta/lesson.tres:82 +msgid "" +"The [code]_process()[/code] function has one parameter named [code]delta[/" +"code]." +msgstr "" +"La funzione [code]_process()[/code] ha un solo parametro chiamato " +"[code]delta[/code]." + +#: course/lesson-11-time-delta/lesson.tres:83 +msgid "rotate" +msgstr "rotate" + +#: course/lesson-11-time-delta/lesson.tres:83 +msgid "0.05" +msgstr "0.05" + +#: course/lesson-11-time-delta/lesson.tres:83 +#: course/lesson-11-time-delta/lesson.tres:84 +msgid "delta" +msgstr "delta" + +#: course/lesson-11-time-delta/lesson.tres:91 +msgid "Frames take varying amounts of time to calculate" +msgstr "I frame impiegano quantità di tempo variabili per essere calcolati" + +#: course/lesson-11-time-delta/lesson.tres:93 +msgid "" +"Depending on the game, the computer, and what the game engine needs to " +"calculate, frames take more or less time to display.\n" +"\n" +"There will always be milliseconds variations from frame to frame.\n" +"\n" +"That is why the [code]_process()[/code] function receives a [code]delta[/" +"code] parameter.\n" +"\n" +"Delta represents a time difference. It's the time passed since the previous " +"frame, in seconds.\n" +"\n" +"The [code]delta[/code] parameter tells us how long it took for Godot to " +"complete the [b]previous frame[/b].\n" +"\n" +"We can use it to ensure that the changes between frames don't make the " +"game's behavior unreliable.\n" +"\n" +"This is because different computers run differently, so a fast computer will " +"have more frames per second than a slow computer.\n" +"\n" +"If we ignore [code]delta[/code], the game experience will vary, depending on " +"the computer. Delta helps to make the game experience consistent for " +"everyone." +msgstr "" +"A seconda del gioco, del computer e di cosa il motore di gioco deve " +"calcolare, i frame impiegano più o meno tempo ad essere mostrati.\n" +"\n" +"Ci saranno sempre variazioni di millisecondi fra un frame e l'altro.\n" +"\n" +"Questo è il motivo per il quale la funzione [code]_process()[/code] riceve " +"un parametro [code]delta[/code].\n" +"\n" +"La parola \"delta\" rappresenta una differenza di tempo. Rappresenta il " +"tempo passato dal frame precedente, in secondi.\n" +"\n" +"Il parametro [code]delta[/code] ci dice quanto Godot ci ha impiegato a " +"completare il [b]frame precedente[/b].\n" +"\n" +"Lo possiamo usare per assicurarci che le variazioni tra i frame non rendano " +"la simulazione del gioco inaffidabile.\n" +"\n" +"Questo perché i diversi computer funzionano in modo diverso, quindi un " +"computer veloce avrà più fotogrammi al secondo di un computer lento.\n" +"\n" +"Se ignoriamo [code]delta[/code], l'esperienza di gioco varia a seconda del " +"computer. Il delta contribuisce a rendere l'esperienza di gioco coerente per " +"tutti." + +#: course/lesson-11-time-delta/lesson.tres:115 +msgid "What do we know about delta?" +msgstr "Cosa sappiamo riguardo a delta?" + +#: course/lesson-11-time-delta/lesson.tres:118 +msgid "" +"[code]delta[/code] is the time it took Godot to complete the previous frame " +"in seconds.\n" +"\n" +"It's very small because frames happen many times a second.\n" +"\n" +"It varies each frame because Godot needs to process more or less each frame." +msgstr "" +"[code]delta[/code] è il tempo impiegato da Godot per completare il " +"fotogramma precedente, in secondi.\n" +"\n" +"È molto piccolo perché i fotogrammi si susseguono più volte al secondo.\n" +"\n" +"Varia a ogni fotogramma perché Godot ha bisogno di elaborare più o meno " +"fotogrammi." + +#: course/lesson-11-time-delta/lesson.tres:123 +#: course/lesson-11-time-delta/lesson.tres:124 +msgid "It's a value in seconds." +msgstr "Viene espresso in secondi." + +#: course/lesson-11-time-delta/lesson.tres:123 +#: course/lesson-11-time-delta/lesson.tres:124 +msgid "It varies each frame." +msgstr "Varia ad ogni frame." + +#: course/lesson-11-time-delta/lesson.tres:123 +#: course/lesson-11-time-delta/lesson.tres:124 +msgid "It's the time it took Godot to complete the previous frame." +msgstr "" +"Rappresenta il tempo che Godot impiega a completare il frame precedente." + +#: course/lesson-11-time-delta/lesson.tres:131 +msgid "Multiplying by delta" +msgstr "Moltiplicando per delta" + +#: course/lesson-11-time-delta/lesson.tres:133 +msgid "" +"The [code]delta[/code] you get in [code]_process()[/code] is a time " +"difference in seconds. It will generally be a tiny decimal number.\n" +"\n" +"To apply [code]delta[/code], you need to [i]multiply[/i] your speed values " +"by it." +msgstr "" +"Il [code]delta[/code] che ottieni nella funzione [code]_process()[/code] è " +"una differenza di tempo in secondi. In genere sarà un piccolo numero " +"decimale.\n" +"\n" +"Per applicare il [code]delta[/code], devi [i]moltiplicarlo[/i] ai tuoi " +"valori di velocità." + +#: course/lesson-11-time-delta/lesson.tres:155 +msgid "" +"When multiplying by [code]delta[/code], you make motion [i]time-dependent[/" +"i] rather than [i]frame-dependent[/i].\n" +"\n" +"That's essential to make your game consistent and fair." +msgstr "" +"Quando moltiplichi per [code]delta[/code], rendi il movimento [i]tempo-" +"dipendente[/i] piuttosto ché [i]frame-dipendente[/i].\n" +"\n" +"Questo è essenziale per rendere il tuo gioco costante e onesto." + +#: course/lesson-11-time-delta/lesson.tres:165 +msgid "Why do we use the number 3.0 in this example?" +msgstr "Perché utilizziamo il numero 3.0 in questo esempio?" + +#: course/lesson-11-time-delta/lesson.tres:167 +msgid "" +"At the top of the lesson, we made the robot rotate a fixed amount every " +"frame: [code]0.05[/code] radians.\n" +"\n" +"In the example above, we now [i]multiply[/i] the argument by the very small " +"[code]delta[/code] value, a value way below [code]1.0[/code]. It makes the " +"robot turn at a constant speed over time.\n" +"\n" +"However, multiplying by a number below [code]1.0[/code] like [code]delta[/" +"code] makes the result smaller.\n" +"\n" +"To compensate for that and make the robot turn fast enough, we use a larger " +"number than before, [code]3.0[/code] instead of [code]0.05[/code].\n" +"\n" +"Those numbers have two different [i]units[/i]: [code]0.05[/code] is an " +"[i]angle[/i] in radians, while [code]3.0[/code] is an [i]angular speed[/i] " +"in radians per second.\n" +"\n" +"When you multiply a speed by a time delta, it gives you an angle.\n" +"\n" +"Don't worry if it's a little confusing for now. It'll eventually click as " +"you deal with speed, acceleration, and motion in your game projects." +msgstr "" +"All'inizio della lezione, abbiamo fatto ruotare il robot una quantità fissa " +"ogni frame: [code]0.05[/code] radianti.\n" +"\n" +"Nell'esempio qua sopra, ora viene [i]moltiplicato[/i] l'argomento con il " +"piccolo valore di [code]delta[/code], un valore molto più basso di " +"[code]1.0[/code]. Questo fa ruotare il robot ad una velocità costante nel " +"tempo.\n" +"\n" +"Tuttavia, moltiplicare per un numero sotto [code]1.0[/code] come " +"[code]delta[/code] rende il risultato più piccolo.\n" +"\n" +"Per compensare e per far muovere il robot abbastanza velocemente, usiamo un " +"numero più grande di prima, [code]3.0[/code] al posto di [code]0.05[/code].\n" +"\n" +"Quei numeri hanno due [i]unità[/i] differenti: [code]0.05[/code] è un " +"[i]angolo[/i] in radianti, mentre [code]3.0[/code] è una [i]velocità " +"angolare[/i] in radianti al secondo.\n" +"\n" +"Quando moltiplichi una velocità per un tempo delta, ricevi un angolo.\n" +"\n" +"Non ti preoccupare se sembra un po' confusionario per ora. Ci farai " +"l'abitudine lavorando con velocità, accelerazioni e moti nei tuoi progetti " +"videoludici." + +#: course/lesson-11-time-delta/lesson.tres:187 +msgid "Why the time between frames matters" +msgstr "Perché il tempo tra i frame importa" + +#: course/lesson-11-time-delta/lesson.tres:189 +msgid "" +"The time it takes to display a new frame varies.\n" +"\n" +"If you don't take that time into account in your code, your game will have " +"gameplay issues and bugs. Godot provides that time to the [code]_process()[/" +"code] function through the [code]delta[/code] parameter.\n" +"\n" +"In the example below, the top robot moves using [code]delta[/code]. As a " +"result, it moves at a fixed speed.\n" +"\n" +"The bottom robot moves over a constant distance every frame, [i]without[/i] " +"taking [code]delta[/code] into account. It will move faster or slower than " +"the top robot on [i]your[/i] computer.\n" +"\n" +"The bottom robot will move [i]differently for everyone[/i]!" +msgstr "" +"Il tempo che viene impiegato per mostrare un nuovo frame cambia.\n" +"\n" +"Se non fai conto di questo tempo nel tuo codice, il tuo gioco avrà problemi " +"di gameplay e vari bug. Godot fornisce quel tempo alla funzione " +"[code]_process()[/code] attraverso il parametro [code]delta[/code].\n" +"\n" +"Nell'esempio qui sotto, il robot in alto si muove usando [code]delta[/code]. " +"Come risultato, si muove ad una velocità costante.\n" +"\n" +"Il robot in basso si muove di una distanza costante ad ogni frame, [i]senza[/" +"i] fare i conti con il [code]delta[/code]. Si muoverà più veloce o più lento " +"del robot in alto sul [i]tuo[/i] computer.\n" +"\n" +"Il robot in basso si muoverà [i]diversamente per tutti[/i]!" + +#: course/lesson-11-time-delta/lesson.tres:217 +msgid "" +"Multiplying time-sensitive values by [code]delta[/code] makes them [b]time-" +"dependent[/b] rather than [b]frame-dependent[/b].\n" +"\n" +"Thanks to that, we get reliable movement over time.\n" +"\n" +"Without [code]delta[/code], frame times vary from computer to computer and " +"during gameplay. Because of that, the movement will differ for every player, " +"making the game inconsistent and messy." +msgstr "" +"Moltiplicando valori tempo-sensibili per [code]delta[/code]v li rende " +"[b]tempo-dipendenti[/b] piuttosto che [b]frame-dipendenti[/b].\n" +"\n" +"Grazie a questo, otteniamo movimenti affidabili col tempo.\n" +"\n" +"Senza il [code]delta[/code], il tempo tra i frame varia da computer a " +"computer e durante il gameplay. Per questo motivo, il movimento sarà " +"differente per ogni giocatore, rendendo il gioco incoerente e caotico." + +#: course/lesson-11-time-delta/lesson.tres:229 +msgid "What does this mean?" +msgstr "Cosa significa questo?" + +#: course/lesson-11-time-delta/lesson.tres:230 +msgid "[code]rotation_speed * delta[/code]" +msgstr "[code]rotation_speed * delta[/code]" + +#: course/lesson-11-time-delta/lesson.tres:232 +msgid "" +"The [code]*[/code] symbol means we're multiplying [code]rotation_speed[/" +"code] by [code]delta[/code] time." +msgstr "" +"Il simbolo [code]*[/code] significa moltiplicare [code]rotation_speed[/code] " +"per il tempo [code]delta[/code]." + +#: course/lesson-11-time-delta/lesson.tres:233 +#: course/lesson-11-time-delta/lesson.tres:234 +msgid "We're multiplying rotation_speed by delta." +msgstr "Stiamo moltiplicando rotation_speed per delta." + +#: course/lesson-11-time-delta/lesson.tres:233 +msgid "We're dividing delta by rotation_speed." +msgstr "Stiamo dividendo il delta per rotation_speed." + +#: course/lesson-11-time-delta/lesson.tres:233 +msgid "We're adding rotation_speed to delta." +msgstr "Stiamo aggiungendo rotation_speed a delta." + +#: course/lesson-11-time-delta/lesson.tres:233 +msgid "We're subtracting delta from rotation_speed." +msgstr "Stiamo sottraendo delta da rotation_speed." + +#: course/lesson-11-time-delta/lesson.tres:243 +msgid "In the next practice, we'll use delta to make rotating time-dependent." +msgstr "" +"Nella prossima pratica, useremo delta per rendere le rotazioni tempo-" +"dipendenti." + +#: course/lesson-11-time-delta/lesson.tres:251 +msgid "Rotating Using Delta" +msgstr "Rotando Usando Il Delta" + +#: course/lesson-11-time-delta/lesson.tres:252 +msgid "" +"At the moment, the rotation of the robot is frame-dependent.\n" +"\n" +"Add [code]delta[/code] to make the rotational speed time-dependent.\n" +"\n" +"The robot should rotate [code]2[/code] radians per second." +msgstr "" +"Al momento, la rotazione del robot è frame-dipendente.\n" +"\n" +"Aggiungi [code]delta[/code] per rendere la velocità di rotazione tempo-" +"dipendente.\n" +"\n" +"Il robot dovrebbe ruotare di [code]2[/code] radianti al secondo." + +#: course/lesson-11-time-delta/lesson.tres:271 +msgid "Moving in a Circle Using Delta" +msgstr "Muovendo in un Cerchio Usando Il Delta" + +#: course/lesson-11-time-delta/lesson.tres:272 +msgid "" +"In this practice, make the robot move in a smooth circle using delta.\n" +"\n" +"To get this movement, the robot should rotate [code]2[/code] radians per " +"second and move [code]100[/code] pixels per second towards clockwise.\n" +"\n" +"[b]Note:[/b] Please write the values in the parentheses when calling the " +"functions. If you define extra variables, we will not be able to check your " +"practice." +msgstr "" +"In questa pratica, fa sì ché il robot si muova in un cerchio in modo fluido " +"usando il delta.\n" +"\n" +"Per raggiungere questo movimento, il robot dovrebbe ruotare di [code]2[/" +"code] radianti al secondo e muoversi di [code]100[/code] pixel al secondo in " +"senso orario.\n" +"\n" +"[b]Nota:[/b] Scrivi i valori nelle parentesi quando chiami le funzioni. Se " +"definisci variabili extra, non saremo in grado di validare la tua pratica." + +#: course/lesson-11-time-delta/lesson.tres:290 +msgid "Time Delta" +msgstr "Tempo Delta" diff --git a/i18n/it/lesson-12-using-variables.po b/i18n/it/lesson-12-using-variables.po new file mode 100644 index 00000000..2dd8d51b --- /dev/null +++ b/i18n/it/lesson-12-using-variables.po @@ -0,0 +1,298 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2022-03-26 17:50+0100\n" +"PO-Revision-Date: 2022-06-29 12:14+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-12-using-variables/lesson.tres:14 +msgid "" +"In this lesson, we'll make our code easier to follow and understand at a " +"glance.\n" +"\n" +"Take a look at this example." +msgstr "" +"In questa lezione, renderemo il nostro codice più facile da seguire e da " +"comprendere a primo sguardo.\n" +"\n" +"Guarda quest'esempio." + +#: course/lesson-12-using-variables/lesson.tres:34 +msgid "In the above example, what does the number 4 mean?" +msgstr "Nell'esempio qui sopra, per cosa significa il numero 4?" + +#: course/lesson-12-using-variables/lesson.tres:37 +msgid "The code above rotates the character [code]4[/code] radians per second." +msgstr "" +"Il codice sopra citato ruota il personaggio di [code]4[/code] radianti al " +"secondo." + +#: course/lesson-12-using-variables/lesson.tres:38 +#: course/lesson-12-using-variables/lesson.tres:39 +msgid "It's how fast the character rotates." +msgstr "Rappresenta quanto velocemente il personaggio si ruota." + +#: course/lesson-12-using-variables/lesson.tres:38 +msgid "It's how far the character moves in pixels." +msgstr "Rappresenta quanto lontano il personaggio di muove in pixel." + +#: course/lesson-12-using-variables/lesson.tres:38 +msgid "It's how long the rotation takes." +msgstr "Rappresenta quanto tempo impiega la rotazione." + +#: course/lesson-12-using-variables/lesson.tres:48 +msgid "" +"We can guess what a number represents by looking at the function names, but " +"it's harder to recall what this number does by quickly looking at the code.\n" +"\n" +"We've seen how different functions have their own names. Using these names " +"communicates to developers what the functions do." +msgstr "" +"Possiamo indovinare un numero cosa rappresenta guardando al nome della " +"funzione, ma è più difficile capire cosa questo numero fa solamente " +"guardando il codice.\n" +"\n" +"Abbiamo visto come diverse funzioni hanno il loro nome. Usare questi nomi " +"comunica agli sviluppatori cosa fanno le funzioni." + +#: course/lesson-12-using-variables/lesson.tres:70 +msgid "" +"As we learned in lesson 8, we can also assign labels to numbers to help us " +"remember what they do.\n" +"\n" +"We call these labels [i]variables[/i].\n" +"\n" +"[b]A variable is a label for a value we can save, change, and read later.[/" +"b]\n" +"\n" +"Let's recap how to define a variable." +msgstr "" +"Come abbiamo imparato nella lezione 8, possiamo pure assegnare etichette a " +"numeri per aiutarci a ricordare cosa vanno.\n" +"\n" +"Chiamiamo queste etichette [i]variabili[/i].\n" +"\n" +"[b]Una variabile è un'etichetta per un valore che possiamo salvare, cambiare " +"e leggere quando vogliamo.[/b]\n" +"\n" +"Ripassiamo come definire una variabile." + +#: course/lesson-12-using-variables/lesson.tres:96 +msgid "" +"We improve the first example to make it clear what the number [code]4[/code] " +"does." +msgstr "" +"Miglioriamo il primo esempio per rendere più chiaro cosa fa il numero " +"[code]4[/code]." + +#: course/lesson-12-using-variables/lesson.tres:116 +msgid "" +"Labeling a value makes the code easier for us to read now [i]and[/i] in the " +"future." +msgstr "" +"Etichettare un valore rende il codice più facile per noi da leggere ora " +"[i]e[/i] in futuro." + +#: course/lesson-12-using-variables/lesson.tres:124 +msgid "In the above example, which line defines the angular speed variable?" +msgstr "" +"Nell'esempio qua sopra, quale riga definisce la variabile della velocità " +"angolare?" + +#: course/lesson-12-using-variables/lesson.tres:127 +msgid "" +"We create the [code]angular_speed[/code] variable, then assign it the value " +"of [code]4[/code]." +msgstr "" +"Creiamo la variabile [code]angular_speed[/code], poi assegnagli il valore " +"[code]4[/code]." + +#: course/lesson-12-using-variables/lesson.tres:128 +#: course/lesson-12-using-variables/lesson.tres:129 +msgid "var angular_speed = 4" +msgstr "var angular_speed = 4" + +#: course/lesson-12-using-variables/lesson.tres:128 +msgid "func _process(delta):" +msgstr "func _process(delta):" + +#: course/lesson-12-using-variables/lesson.tres:128 +msgid "rotate(angular_speed * delta)" +msgstr "rotate(angular_speed * delta)" + +#: course/lesson-12-using-variables/lesson.tres:138 +msgid "" +"If we define variables outside of functions, we can re-use them in different " +"functions.\n" +"\n" +"Because any function can use variables we define outside of them, we call " +"these variables [b]script-wide[/b].\n" +"\n" +"Here we use the [code]angular_speed[/code] script-wide variable in both the " +"[code]_process()[/code] function and the [code]set_angular_speed()[/code] " +"function." +msgstr "" +"Se definiamo variabili fuori dalle funzioni, possiamo riutilizzarle in " +"diverse funzioni.\n" +"\n" +"Questo poiché ogni funzione può usare variabili che definiamo fuori da " +"essere, chiamiamo queste variabili [b]script-globali[/b].\n" +"\n" +"Qui usiamo la variabile script-globale [code]angular_speed[/code] sia nella " +"funzione [code]_process()[/code] ché nella funzione " +"[code]set_angular_speed()[/code]." + +#: course/lesson-12-using-variables/lesson.tres:162 +msgid "" +"We can also define variables inside of functions.\n" +"\n" +"We align the variable assignment by indenting to make it part of the " +"function body. Make sure to create the variable before using it!\n" +"\n" +"If we define a variable inside of a function, only that function can use it." +msgstr "" +"Possiamo anche definire le variabili all'interno delle funzioni.\n" +"\n" +"Allineiamo l'assegnazione della variabile indentandola per renderla parte " +"del corpo della funzioni. Assicurati di creare la variabile prima di usarla!" +"\n" +"\n" +"Se definiamo una variabile dentro una funzione, solo la funzione può usarla." + +#: course/lesson-12-using-variables/lesson.tres:186 +msgid "" +"The [code]angular_speed[/code] variable only exists inside [code]_process()[/" +"code], because we defined it there. The [code]set_angular_speed()[/code] " +"function can't use it.\n" +"\n" +"Trying to use it there will result in an error.\n" +"\n" +"Here's what this error might look like." +msgstr "" +"La variabile [code]angular_speed[/code] esiste soltanto dentro " +"[code]_process()[/code], poiché la abbiamo definita lì. La funzione " +"[code]set_angular_speed()[/code] non può usarla.\n" +"\n" +"Provare ad usarla può risultare in un errore.\n" +"\n" +"Ecco come questo errore potrebbe essere." + +#: course/lesson-12-using-variables/lesson.tres:208 +msgid "Where can we define variables?" +msgstr "Dove possiamo definire le variabili?" + +#: course/lesson-12-using-variables/lesson.tres:211 +msgid "" +"Functions can use any variables defined outside of functions. These " +"variables are [b]script-wide[/b].\n" +"\n" +"If we define a variable inside of a function, only that function can use it." +msgstr "" +"Le funzioni possono usare tutte le variabili definite fuori da esse. Queste " +"variabili sono [b]script-globali[/b].\n" +"\n" +"Se definiamo una variabile dentro una funzione, solo quella funzione la può " +"usare." + +#: course/lesson-12-using-variables/lesson.tres:214 +#: course/lesson-12-using-variables/lesson.tres:215 +msgid "Outside of functions." +msgstr "Fuori dalle funzioni." + +#: course/lesson-12-using-variables/lesson.tres:214 +#: course/lesson-12-using-variables/lesson.tres:215 +msgid "Inside of functions." +msgstr "Dentro le funzioni." + +#: course/lesson-12-using-variables/lesson.tres:224 +msgid "" +"Variables are also great at grouping values that control how a character " +"behaves.\n" +"\n" +"Grouping them in this way allows us to easily change them." +msgstr "" +"Le variabili sono pure utili per raggruppare valori che controllano come il " +"personaggio si comporta.\n" +"\n" +"Raggruppandoli in questo modo ci permette di cambiarli facilmente." + +#: course/lesson-12-using-variables/lesson.tres:246 +msgid "" +"In the following practices, we'll define variables and use them with some " +"familiar functions to make our code more readable." +msgstr "" +"Nelle seguente pratiche, definiremo variabili e le useremo con alcune " +"funzioni già utilizzate per rendere il nostro codice più leggibile." + +#: course/lesson-12-using-variables/lesson.tres:254 +msgid "Clarifying Code Using Variables" +msgstr "Chiarificando Il Codice Usando Variabili" + +#: course/lesson-12-using-variables/lesson.tres:255 +msgid "" +"Let's give the [code]4[/code] here a label so we know what it does.\n" +"\n" +"Create a variable called [code]angular_speed[/code] outside of the " +"[code]_process()[/code] function to make it script-wide. This allows us to " +"use it in other functions too.\n" +"\n" +"Then, replace the [code]4[/code] with [code]angular_speed[/code]." +msgstr "" +"Diamo al valore [code]4[/code] un'etichetta così da sapere cosa fa.\n" +"\n" +"Crea una variabile chiamata [code]angular_speed[/code] fuori dalla funzione " +"[code]_process()[/code] per renderla script-globale. Questo ci consente di " +"usarla pure in altre funzioni.\n" +"\n" +"Poi, rimpiazza il [code]4[/code] con [code]angular_speed[/code]." + +#: course/lesson-12-using-variables/lesson.tres:269 +msgid "" +"Using variables to store number values makes code easier to read. Tidy up " +"this function by storing a value in a variable." +msgstr "" +"Usare le variabili per conservare dei valori numerici rende il codice più " +"facile da leggere. Ordina questa funzione conservando un valore in una " +"variabile." + +#: course/lesson-12-using-variables/lesson.tres:274 +msgid "Fixing an Out of Scope Error" +msgstr "Aggiustare un Errore di Out of Scope" + +#: course/lesson-12-using-variables/lesson.tres:275 +msgid "" +"There's something wrong with the code here. Can you see what it is?\n" +"\n" +"Run the code and read the error.\n" +"\n" +"Correct the code so it works as intended." +msgstr "" +"C'è qualcosa di strano con il seguente codice. Puoi vedere cos'è?\n" +"\n" +"Esegui il codice e leggi l'errore.\n" +"\n" +"Correggi il codice cosicché funzioni come inteso." + +#: course/lesson-12-using-variables/lesson.tres:293 +msgid "Uh oh! There's something wrong here. Can you fix it?" +msgstr "Oh oh! C'è qualcosa di sbagliato qui. Puoi sistemarlo?" + +#: course/lesson-12-using-variables/lesson.tres:297 +msgid "Using Variables to Make Code Easier to Read" +msgstr "Usando Variabili per Rendere Il Codice Più Facile da Leggere" diff --git a/i18n/it/lesson-13-conditions.po b/i18n/it/lesson-13-conditions.po new file mode 100644 index 00000000..68a82268 --- /dev/null +++ b/i18n/it/lesson-13-conditions.po @@ -0,0 +1,435 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 10:51+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-13-conditions/lesson.tres:14 +msgid "" +"In previous lessons, we decreased and increased a character's health, but " +"there was no limit to how much health they could have." +msgstr "" +"Nelle lezioni precedenti, abbiamo diminuito e aumentato la vita di un " +"personaggio, ma non c'era alcun limite a quanta vita potesse avere." + +#: course/lesson-13-conditions/lesson.tres:34 +msgid "" +"As a result, the player could increase their character's health " +"indefinitely, which we do not want." +msgstr "" +"Come risultato, il giocatore potrebbe aumentare la vita del suo personaggio " +"per sempre, cosa che noi non vogliamo che succeda." + +#: course/lesson-13-conditions/lesson.tres:52 +msgid "What happens to health when we damage our character?" +msgstr "Cosa succede alla vita quando danneggiamo il nostro personaggio?" + +#: course/lesson-13-conditions/lesson.tres:53 +msgid "" +"Suppose our character has [code]100[/code] health.\n" +"\n" +"What would the value of health be if we called [code]take_damage(25)[/code] " +"[b]five times[/b]?" +msgstr "" +"Supponiamo che il nostro giocatore abbia [code]100[/code] punti vita.\n" +"\n" +"Quanti punti vita rimarrebbero se chiamassimo [code]take_damage(25)[/code] " +"[b]cinque volte[/b]?" + +#: course/lesson-13-conditions/lesson.tres:57 +msgid "" +"Calling [code]take_damage(25)[/code] five times would subtract a total of " +"[code]125[/code] from [code]100[/code].\n" +"\n" +"100\n" +"75\n" +"50\n" +"25\n" +"0\n" +"-25" +msgstr "" +"Chiamare [code]take_damage(25)[/code]cinque volte sottrarrebbe un totale di " +"[code]125[/code] da [code]100[/code].\n" +"\n" +"100\n" +"75\n" +"50\n" +"25\n" +"0\n" +"-25" + +#: course/lesson-13-conditions/lesson.tres:65 +#: course/lesson-13-conditions/lesson.tres:66 +msgid "-25" +msgstr "-25" + +#: course/lesson-13-conditions/lesson.tres:65 +msgid "25" +msgstr "25" + +#: course/lesson-13-conditions/lesson.tres:65 +msgid "0" +msgstr "0" + +#: course/lesson-13-conditions/lesson.tres:75 +msgid "" +"We can use conditions to run actions [b]selectively[/b].\n" +"\n" +"Conditions make your code branch into two paths: if the condition is met, " +"the computer will run the corresponding instructions. Otherwise, those " +"instructions will not run at all." +msgstr "" +"Possiamo usare le condizioni per eseguire azioni [b]in modo selettivo[/b].\n" +"\n" +"Le condizioni diramano il tuo codice in due percorsi: se la condizione è " +"soddisfatta, il computer eseguirà le istruzioni corrispondenti. Altrimenti, " +"quelle istruzioni non verranno eseguite." + +#: course/lesson-13-conditions/lesson.tres:87 +msgid "" +"Video games and other computer programs are full of conditions. For example, " +"game input largely relies on conditions: [i]if[/i] the player presses the " +"button on a gamepad, the character jumps." +msgstr "" +"I videogiochi e molti altri programmi per computer sono pieni di condizioni. " +"Per esempio, gli input di gioco fanno grande affidamento sulle condizioni: " +"[i]se[/i] il giocatore preme il pulsante sul gamepad, il personaggio salta." + +#: course/lesson-13-conditions/lesson.tres:107 +msgid "" +"When the computer checks a condition, this is called [b]to evaluate[/b] a " +"condition. All conditions [b]evaluate[/b] to either [code]true[/code] or " +"[code]false[/code].\n" +"\n" +"Either the player is pressing the button, or not. Either the character is " +"touching an enemy, or not.\n" +"\n" +"In our case, [i]if[/i] the health goes over a maximum value, we want to " +"reset it to the maximum.\n" +"\n" +"To define a condition, we use the [code]if[/code] keyword. We write a line " +"starting with [code]if[/code], [ignore]type the condition to evaluate, and " +"end the line with a colon." +msgstr "" +"Quando il computer controlla una condizione, si dice che [b]valutano[/b] una " +"condizione. Tutte le condizioni [b]valutano[/b] che la condizione sia o " +"[code]vera[/code] o [code]falsa[/code].\n" +"\n" +"O il giocatore sta premendo il pulsante, oppure no. O il personaggio sta " +"toccando un nemico, oppure no. \n" +"\n" +"Nel nostro caso, [i]se[/i] la vita va sotto un valore minimo, lo vogliamo " +"resettare la massimo.\n" +"\n" +"Per definire una condizione, utilizziamo la parola chiave [code]if[/code]. " +"Scriviamo una riga che inizia con [code]if[/code], [ignore]digitiamo la " +"condizione da valutare e terminiamo la riga con i due punti." + +#: course/lesson-13-conditions/lesson.tres:133 +msgid "" +"Notice the [code]>[/code] comparison sign. We read this symbol as \"greater " +"than\".\n" +"\n" +"We've seen how function definitions use a colon at the end of the first line " +"and nest content inside.\n" +"\n" +"In GDScript, this syntax is a recurring pattern for all code blocks.\n" +"\n" +"The computer knows which instructions belong to the condition because they " +"are indented." +msgstr "" +"Nota il segno di confronto [code]>[/code]. Questo simbolo viene letto come " +"\"maggiore di\".\n" +"\n" +"Abbiamo visto come le definizioni di funzione utilizzino i due punti alla " +"fine della prima riga e annidino il contenuto all'interno.\n" +"\n" +"In GDScript, questa sintassi è un modello ricorrente per tutti i blocchi di " +"codice.\n" +"\n" +"Il computer sa quali istruzioni appartengono alla condizione perché sono " +"indentate." + +#: course/lesson-13-conditions/lesson.tres:157 +msgid "Comparisons" +msgstr "Comparazioni" + +#: course/lesson-13-conditions/lesson.tres:159 +msgid "" +"In the above example, we used the [code]>[/code] syntax to mean \"greater " +"than\".\n" +"\n" +"We can compare numbers in other ways too.\n" +"\n" +"[code]>[/code] means \"greater than\"\n" +"[code]<[/code] means \"less than\"\n" +"[code]==[/code] means \"equal to\"\n" +"[code]!=[/code] means \"not equal to\"\n" +"\n" +"Here's how we might use these in [code]if[/code] statements.\n" +msgstr "" +"Nell'esempio qui sopra, abbiamo usato la sintassi [code]>[/code] per " +"intendere \"maggiore di\".\n" +"\n" +"Possiamo comparare numeri anche in altri modi.\n" +"\n" +"[code]>[/code] significa \"maggiore di\"\n" +"[code]<[/code] significa \"minore di\"\n" +"[code]==[/code] significa \"uguale a\"\n" +"[code]!=[/code] significa \"diverso da\"\n" +"\n" +"Ecco come potremmo usare queste condizioni [code]if[/code].\n" + +#: course/lesson-13-conditions/lesson.tres:187 +msgid "What does \"pass\" do in the code?" +msgstr "Cosa fa \"pass\" nel codice?" + +#: course/lesson-13-conditions/lesson.tres:189 +msgid "" +"The [code]pass[/code] keyword prevents errors in our code when a line cannot " +"be empty.\n" +"\n" +"For example, we must have a line of code after a function definition or an " +"[code]if[/code] block. When you don't know what to write yet, you can use " +"the [code]pass[/code] keyword as a placeholder, and Godot won't give any " +"errors.\n" +"\n" +"In the previous example, if there was nothing below the [code]if[/code] " +"lines, Godot would give us an \"Expected an indented block after 'if' \" " +"error." +msgstr "" +"La parola chiave [code]pass[/code] previene gli errori nel codice quando una " +"riga non può essere vuota.\n" +"\n" +"Ad esempio, è necessario avere una riga di codice dopo una definizione di " +"funzione o un blocco [code]if[/code]. Quando non si sa ancora cosa scrivere, " +"si può usare la parola chiave [code]pass[/code] come segnaposto e Godot non " +"darà alcun errore.\n" +"\n" +"Nell'esempio precedente, se non ci fosse stato nulla sotto le righe " +"[code]if[/code], Godot avrebbe dato un errore \"Atteso un blocco rientrato " +"dopo 'if'\"." + +#: course/lesson-13-conditions/lesson.tres:201 +msgid "Which of these statements are true?" +msgstr "Quali di queste affermazioni è vera?" + +#: course/lesson-13-conditions/lesson.tres:204 +msgid "" +"The comparison [code]3 > 1[/code] means \"three is greater than one\" which " +"is [b]true[/b].\n" +"The comparison [code]2 < 3[/code] means \"two is less than three\" which is " +"[b]true[/b].\n" +"The comparison [code]1 != 3[/code] means \"one is not equal to three\" which " +"is [b]true[/b].\n" +"\n" +"The comparison [code]2 == 1[/code] means \"two is equal to one\" which is " +"[b]false[/b].\n" +"The comparison [code]3 < 1[/code] means \"three is less than one\" which is " +"[b]false[/b]." +msgstr "" +"Il confronto [code]3 > 1[/code] significa \"tre è maggiore di uno\" che è " +"[b]vero[/b].\n" +"Il confronto [code]2 < 3[/code] significa \"due è minore di tre\" che è " +"[b]vero[/b].\n" +"Il confronto [code]1 != 3[/code] significa \"uno è diverso da tre\" che è " +"[b]vero[/b].\n" +"\n" +"Il confronto [code]2 == 1[/code] significa \"due è uguale a uno\" che è " +"[b]falso[/b].\n" +"Il confronto [code]3 < 1[/code] significa \"tre è minore di uno\" che è " +"[b]falso[/b]." + +#: course/lesson-13-conditions/lesson.tres:210 +#: course/lesson-13-conditions/lesson.tres:211 +msgid "3 > 1" +msgstr "3 > 1" + +#: course/lesson-13-conditions/lesson.tres:210 +msgid "2 == 1" +msgstr "2 == 1" + +#: course/lesson-13-conditions/lesson.tres:210 +#: course/lesson-13-conditions/lesson.tres:211 +msgid "2 < 3" +msgstr "2 < 3" + +#: course/lesson-13-conditions/lesson.tres:210 +#: course/lesson-13-conditions/lesson.tres:211 +msgid "1 != 3" +msgstr "1 != 3" + +#: course/lesson-13-conditions/lesson.tres:210 +msgid "3 < 1" +msgstr "3 < 1" + +#: course/lesson-13-conditions/lesson.tres:218 +msgid "Or else..." +msgstr "Altrimenti..." + +#: course/lesson-13-conditions/lesson.tres:220 +msgid "" +"The [code]if[/code] keyword comes with a complementary [code]else[/code] " +"keyword.\n" +"\n" +"You can write an [code]else[/code] block after an [code]if[/code] block, " +"like so." +msgstr "" +"La parola chiave [code]if[/code] ha un'altra parola chiave complementare " +"[code]else[/code].\n" +"\n" +"Puoi scrivere un blocco [code]else[/code] solo dopo un blocco [code]if[/" +"code], così." + +#: course/lesson-13-conditions/lesson.tres:242 +msgid "" +"The [code]else[/code] block will run whenever the condition above it isn't " +"met." +msgstr "" +"Il blocco [code]else[/code] si eseguirà ogniqualvolta che la condizione " +"sopra non è raggiunta." + +#: course/lesson-13-conditions/lesson.tres:252 +msgid "" +"In the following practices, we'll use conditions and improve the way our " +"character's health changes so it has limits." +msgstr "" +"Nelle seguenti pratiche, useremo le condizioni per migliorare il modo in cui " +"la vita del nostro personaggio cambia cosicché abbia dei limiti." + +#: course/lesson-13-conditions/lesson.tres:260 +msgid "Using Comparisons" +msgstr "Usando Le Comparazioni" + +#: course/lesson-13-conditions/lesson.tres:261 +msgid "" +"This series of [code]if[/code] statements is all wrong. Change the " +"comparisons so each comparison matches the instruction below it.\n" +"\n" +"Keep the values and statements as they are; only change the comparison " +"signs.\n" +"\n" +"As a reminder, the comparison signs are:\n" +"[code]\n" +"> greater than\n" +"< less than\n" +"== equal to\n" +"!= not equal to\n" +"[/code]\n" +"\n" +"The line [code]health < 5:[/code] means \"health is less than 5\".\n" +"\n" +"Because [code]health = 100[/code], this is false so [code]print(\"health is " +"greater than five.\")[/code] won't run." +msgstr "" +"Questa serie di condizioni [code]if[/code] sono tutte sbagliate. Cambia le " +"comparazioni cosicché ognuna rispecchi le istruzioni sotto di esse.\n" +"\n" +"Mantieni i valori e le condizioni così come sono; cambia solo il segno di " +"comparazione.\n" +"\n" +"Come promemoria, ecco i vari segni di comparazione:\n" +"[code]\n" +"> maggiore di\n" +"< minore di\n" +"== uguale a\n" +"!= diverso da\n" +"[/code]\n" +"\n" +"La riga [code]health < 5:[/code] significa \"la vita è minore di 5\". \n" +"\n" +"Poiché [code]health = 100[/code], questo è falso quindi [code]print(\"health " +"is greater than five.\")[/code] non verrà eseguito." + +#: course/lesson-13-conditions/lesson.tres:297 +msgid "" +"Comparing values allows us to make decisions in code. But there's something " +"wrong with these statements.." +msgstr "" +"Comparare valori ci consente di prendere delle decisioni nel nostro codice. " +"Ma c'è qualcosa di sbagliato in queste condizioni.." + +#: course/lesson-13-conditions/lesson.tres:302 +msgid "Limiting Healing" +msgstr "Limitando Le Cure" + +#: course/lesson-13-conditions/lesson.tres:303 +msgid "" +"We have a heal function that adds an amount to the character's health.\n" +"\n" +"Add to the function so the character's health is never greater than " +"[code]80[/code]." +msgstr "" +"Abbiamo una funzione di cura che aggiunge una quantità alla vita del " +"personaggio.\n" +"\n" +"Aggiungi alla funzione cosicché la vita del personaggio non sia mai maggiore " +"di [code]80[/code]." + +#: course/lesson-13-conditions/lesson.tres:315 +msgid "" +"As much as we might like, we don't want our robot to have too much health. " +"Limit how much healing the robot can take." +msgstr "" +"Per quanto ci potrebbe stare simpatico, non vogliamo che il nostro robot " +"abbia troppa vita. Limita quanto il robot si possa curare." + +#: course/lesson-13-conditions/lesson.tres:320 +msgid "Preventing Health from Going Below Zero" +msgstr "Impedendo Che La Vita Superi Lo Zero" + +#: course/lesson-13-conditions/lesson.tres:321 +msgid "" +"When the robot takes damage, its health can be negative.\n" +"\n" +"We might want to display the health number on screen, like in Japanese " +"RPGs.\n" +"\n" +"We don't want negative numbers. We want to stop at zero instead.\n" +"\n" +"Calling the function should reduce [code]health[/code] by [code]amount[/" +"code].\n" +"\n" +"If [code]health[/code] goes below [code]0[/code], set it to [code]0[/code] " +"again." +msgstr "" +"Quando il robot prende danno, la sua vita può essere negativa.\n" +"\n" +"Potremmo voler mostrare la i punti vita su schermo, come nei JRPG.\n" +"\n" +"Non vogliamo i numeri negativi. Vogliamo fermarci a zero invece.\n" +"\n" +"Chiamare la funzione dovrebbe ridurre [code]health[/code] di [code]amount[/" +"code].\n" +"\n" +"Se [code]health[/code] va sotto [code]0[/code], settala a [code]0[/code] di " +"nuovo." + +#: course/lesson-13-conditions/lesson.tres:339 +msgid "" +"Having a negative health value doesn't make a lot of sense. Make sure the " +"robot's health can't go below zero." +msgstr "" +"Avere una vita negativa non ha molto senso. Fa sì ché la vita del robot non " +"possa mai andare sotto zero." + +#: course/lesson-13-conditions/lesson.tres:343 +msgid "Conditions" +msgstr "Condizioni" diff --git a/i18n/it/lesson-14-multiplying.po b/i18n/it/lesson-14-multiplying.po new file mode 100644 index 00000000..77f1b366 --- /dev/null +++ b/i18n/it/lesson-14-multiplying.po @@ -0,0 +1,324 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 10:51+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-14-multiplying/lesson.tres:14 +msgid "" +"Our robot's health is always between [code]0[/code] and [code]100[/code].\n" +"\n" +"But as our robot fights, we want to increase its strength and toughness.\n" +"\n" +"When a character levels up, it might deal more damage to enemies, gain new " +"abilities or, in our case, gain more health." +msgstr "" +"La vita del nostro robot è sempre tra [code]0[/code] e [code]100[/code].\n" +"\n" +"Ma quando il nostro robot combatte, vogliamo aumentare la sua forza e la sua " +"resistenza.\n" +"\n" +"Quando un personaggio sale di livello, potrebbe infliggere più danni ai " +"nemici, acquisire nuove abilità o nel nostro caso, guadagnare più punti vita." + +#: course/lesson-14-multiplying/lesson.tres:28 +msgid "" +"We define a [code]level[/code] variable to keep track of the level of the " +"robot. It starts at level one.\n" +"\n" +"When the robot has defeated enough enemies, we call the [code]level_up()[/" +"code] function to increment the robot's level." +msgstr "" +"Definiamo una variabile [code]level[/code] per tenere conto del livello del " +"robot. Inizia al livello uno.\n" +"\n" +"Quando il robot ha sconfitto abbastanza nemici, chiamiamo la funzione " +"[code]level_up()[/code] per incrementare il livello del robot." + +#: course/lesson-14-multiplying/lesson.tres:50 +msgid "" +"As we briefly saw in the last lesson, our robot could have a range of " +"variables that could increase when it levels up." +msgstr "" +"Come abbiamo brevemente visto nell'ultima lezione, il nostro robot potrebbe " +"avere un insieme di variabili che potrebbero aumentare quando sale di " +"livello." + +#: course/lesson-14-multiplying/lesson.tres:70 +msgid "" +"In this lesson, we'll just focus on increasing the robot's [code]max_health[/" +"code].\n" +"\n" +"The variable [code]max_health[/code] is the maximum amount the robot's " +"[code]health[/code] can be. We change our [code]heal()[/code] function to " +"use this variable." +msgstr "" +"In questa lezione, ci concentreremo soltanto sull'aumentare la " +"[code]max_health[/code] del robot.\n" +"\n" +"La variabile [code]max_health[/code] è il valore massimo che la " +"[code]health[/code] del robot può avere. Cambiamo la nostra funzione " +"[code]heal()[/code] per usare questa variabile." + +#: course/lesson-14-multiplying/lesson.tres:92 +msgid "" +"We could add [code]5[/code] to the [code]max_health[/code] every time the " +"robot levels up." +msgstr "" +"Potremmo aggiungere [code]5[/code] alla [code]max_health[/code] ogni volta " +"che il robot sale di livello." + +#: course/lesson-14-multiplying/lesson.tres:112 +msgid "" +"This would increase [code]max_health[/code] the same amount every time.\n" +"\n" +"If we graphed [code]max_health[/code], it'd look something like this." +msgstr "" +"Questo incrementerebbe la [code]max_health[/code] la stessa quantità ogni " +"volta.\n" +"\n" +"Se rappresentassimo graficamente la [code]max_health[/code], somiglierebbe a " +"qualcosa del genere." + +#: course/lesson-14-multiplying/lesson.tres:134 +msgid "" +"This growth is [b]linear[/b].\n" +"\n" +"In our case, we want a feeling of more and more power as the robot levels " +"up.\n" +"\n" +"We want a graph like this." +msgstr "" +"Questa crescita è [b]lineare[/b].\n" +"\n" +"Nel nostro caso, vogliamo un senso di più e più potere mano a mano che il " +"robot continua a salire di livello.\n" +"\n" +"Vogliamo un grafico del genere." + +#: course/lesson-14-multiplying/lesson.tres:158 +msgid "" +"This growth is [b]exponential[/b].\n" +"\n" +"With each level, more [code]max_health[/code] is added than the previous " +"level up.\n" +"\n" +"To get the exponential growth, we multiply the [code]max_health[/code] by an " +"amount greater than [code]1[/code] each time the robot levels up.\n" +"\n" +"To multiply values together, we use [code]*[/code]." +msgstr "" +"Questa crescita è [b]esponenziale[/b].\n" +"\n" +"Con ogni livello, più [code]max_health[/code] viene aggiunta rispetto al " +"livello precedente.\n" +"\n" +"Per ottenere una crescita esponenziale, moltiplichiamo la [code]max_health[/" +"code] per una quantità maggiore di [code]1[/code] ogni volta che il robot " +"sale di livello.\n" +"\n" +"Per moltiplicare dei valori, usiamo [code]*[/code]." + +#: course/lesson-14-multiplying/lesson.tres:172 +msgid "What is the value of damage?" +msgstr "Quant'è il valore del danno?" + +#: course/lesson-14-multiplying/lesson.tres:173 +msgid "" +"[code]\n" +"var level = 5\n" +"var power = 3\n" +"\n" +"func calculate_damage():\n" +"\tvar damage = power * level\n" +"[/code]" +msgstr "" +"[code]\n" +"var level = 5\n" +"var power = 3\n" +"\n" +"func calculate_damage():\n" +"\tvar damage = power * level\n" +"[/code]" + +#: course/lesson-14-multiplying/lesson.tres:181 +msgid "" +"We multiply [code]power[/code] by [code]level[/code] using [code]*[/code] to " +"get the result of [code]15[/code]." +msgstr "" +"Moltiplichiamo la [code]power[/code] per il [code]level[/code] usando " +"[code]*[/code] per ottenere il risultato di [code]15[/code]." + +#: course/lesson-14-multiplying/lesson.tres:182 +#: course/lesson-14-multiplying/lesson.tres:183 +msgid "15" +msgstr "15" + +#: course/lesson-14-multiplying/lesson.tres:182 +msgid "9" +msgstr "9" + +#: course/lesson-14-multiplying/lesson.tres:182 +msgid "10" +msgstr "10" + +#: course/lesson-14-multiplying/lesson.tres:192 +msgid "" +"We can use [code]*=[/code] in the same way as [code]-=[/code] and [code]+=[/" +"code]." +msgstr "" +"Possiamo usare [code]*=[/code] così come per [code]-=[/code] e [code]+=[/" +"code]." + +#: course/lesson-14-multiplying/lesson.tres:200 +msgid "What is the value of damage now?" +msgstr "Qual è il valore del danno adesso?" + +#: course/lesson-14-multiplying/lesson.tres:201 +msgid "" +"[code]\n" +"var level = 5\n" +"var power = 3\n" +"\n" +"func calculate_damage():\n" +"\tvar damage = power * level\n" +"\tdamage *= 2\n" +"[/code]" +msgstr "" +"[code]\n" +"var level = 5\n" +"var power = 3\n" +"\n" +"func calculate_damage():\n" +"\tvar damage = power * level\n" +"\tdamage *= 2\n" +"[/code]" + +#: course/lesson-14-multiplying/lesson.tres:210 +msgid "" +"The value of [code]damage[/code] starts as [code]15[/code].\n" +"\n" +"Then, [code]damage *= 2[/code] multiplies it by [code]2[/code] to get " +"[code]30[/code]." +msgstr "" +"Il valore del [code]damage[/code] inizia da [code]15[/code].\n" +"\n" +"Poi, [code]damage *= 2[/code] lo moltiplica per [code]2[/code] per ottenere " +"[code]30[/code]." + +#: course/lesson-14-multiplying/lesson.tres:213 +#: course/lesson-14-multiplying/lesson.tres:214 +msgid "30" +msgstr "30" + +#: course/lesson-14-multiplying/lesson.tres:213 +msgid "13" +msgstr "13" + +#: course/lesson-14-multiplying/lesson.tres:213 +msgid "25" +msgstr "25" + +#: course/lesson-14-multiplying/lesson.tres:223 +msgid "" +"Let's level up our robot and add exponential growth to [code]max_health[/" +"code]." +msgstr "" +"Facciamo salire di livello il nostro robot e aggiungiamo la crescita " +"esponenziale alla [code]max_health[/code]." + +#: course/lesson-14-multiplying/lesson.tres:243 +msgid "" +"In the practices, you'll increase the robot's [code]max_health[/code] and " +"add a special ability to our robot to make it extra tough at high levels." +msgstr "" +"Nelle pratiche, incrementerai la [code]max_health[/code] del robot e gli " +"aggiungerai una abilità speciale per renderlo più resistente a livelli più " +"elevati." + +#: course/lesson-14-multiplying/lesson.tres:251 +msgid "Increasing maximum health exponentially" +msgstr "Aumentando la vita massima esponenzialmente" + +#: course/lesson-14-multiplying/lesson.tres:252 +msgid "" +"Let's make the robot stronger when it levels up.\n" +"\n" +"Add to the [code]level_up()[/code] function so it does the following:\n" +"\n" +"- Increases [code]level[/code] by one.\n" +"- Increases [code]max_health[/code] by 10%." +msgstr "" +"Rendiamo il robot più forte quando sale di livello.\n" +"\n" +"Aggiungi alla funzione [code]level_up()[/code] così ché faccia le seguenti " +"cose:\n" +"\n" +"- Aumenti il [code]level[/code] di uno.\n" +"- Aumenti la [code]max_health[/code] del 10%." + +#: course/lesson-14-multiplying/lesson.tres:270 +msgid "" +"We want our robot to increase in strength as it levels up. Let's increase " +"its health exponentially!" +msgstr "" +"Vogliamo che il nostro robot aumenti di potenza quando sale di livello. " +"Aumentiamo la sua vita esponenzialmente!" + +#: course/lesson-14-multiplying/lesson.tres:275 +msgid "Reducing damage at higher levels" +msgstr "Riducendo il danno a livelli più elevati" + +#: course/lesson-14-multiplying/lesson.tres:276 +msgid "" +"When our robot's [code]level[/code] is [code]3[/code] or more, we want it to " +"take a lot less damage.\n" +"\n" +"Add to the [code]take_damage()[/code] function so the following happens:\n" +"\n" +"- [code]if[/code] the robot's [code]level[/code] is greater than [code]2[/" +"code], reduce the damage [code]amount[/code] by 50%\n" +"\n" +"The robot is level 3. An enemy is going to attack for 10 damage. This damage " +"should reduce to 5." +msgstr "" +"Quando il [code]level[/code] del nostro robot è [code]3[/code] o di più, " +"vogliamo che prenda molto meno danno.\n" +"\n" +"Aggiungi alla funzione [code]take_damage()[/code] così ché faccia le " +"seguenti cose:\n" +"\n" +"- [code]se[/code] il [code]level[/code] del robot è maggiore di [code]2[/" +"code], riduci la [code]amount[/code] di danno del 50%.\n" +"\n" +"Il robot è di livello 3. Un nemico lo attaccherà con 10 di danno. Questo " +"danno dovrebbe ridursi di 5." + +#: course/lesson-14-multiplying/lesson.tres:299 +msgid "" +"At higher levels, we want our robot to be super tough and take even less " +"damage!" +msgstr "" +"A livelli più elevati, vogliamo che il nostro robot sia super resistente e " +"che prenda ancora meno danni!" + +#: course/lesson-14-multiplying/lesson.tres:303 +msgid "Multiplying" +msgstr "Moltiplicando" diff --git a/i18n/it/lesson-15-modulo.po b/i18n/it/lesson-15-modulo.po new file mode 100644 index 00000000..8619d74e --- /dev/null +++ b/i18n/it/lesson-15-modulo.po @@ -0,0 +1,347 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 10:51+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-15-modulo/lesson.tres:14 +msgid "" +"The modulo operation ([code]%[/code]) calculates the remainder of a whole " +"number division.\n" +"\n" +"For example, the modulo of [code]5[/code] by [code]3[/code] ([code]5 % 3[/" +"code]) is [code]2[/code].\n" +"\n" +"We typically use this operation to tell if a number is odd or even or to " +"produce a random number within a particular range (like a dice roll).\n" +"\n" +"Play around with the modulo widget on the right to see how modulo works " +"visually." +msgstr "" +"L'operatore modulo ([code]%[/code]) calcola il resto di una divisione tra " +"numeri interi.\n" +"\n" +"Per esempio, il modulo tra [code]5[/code] e [code]3[/code] ([code]5 % 3[/" +"code]) è [code]2[/code].\n" +"\n" +"Tipicamente usiamo questa operazione per capire se un numero è pari o " +"dispari o per produrre un numero casuale all'interno di un particolare " +"intervallo (come una tirata di dato).\n" +"\n" +"Sperimenta un po' con l'oggetto modulo sulla destra per vedere come il " +"modulo funzioni visivamente." + +#: course/lesson-15-modulo/lesson.tres:28 +msgid "What's the result of this modulo operation?" +msgstr "Qual è il risultato di quest'operazione di modulo?" + +#: course/lesson-15-modulo/lesson.tres:29 +msgid "[code]11 % 4[/code]" +msgstr "[code]11 % 4[/code]" + +#: course/lesson-15-modulo/lesson.tres:31 +msgid "" +"[code]11[/code] divided by [code]4[/code] is [code]2[/code], and the " +"[b]remainder[/b] of the division is [code]3[/code].\n" +"\n" +"So [code]11 % 4[/code] is [code]3[/code]." +msgstr "" +"[code]11[/code] diviso per [code]4[/code] è [code]2[/code] e il [b]resto[/b] " +"della divisione è [code]3[/code].\n" +"\n" +"Quindi [code]11 % 4[/code] è [code]3[/code]." + +#: course/lesson-15-modulo/lesson.tres:34 +#: course/lesson-15-modulo/lesson.tres:35 +msgid "3" +msgstr "3" + +#: course/lesson-15-modulo/lesson.tres:34 +msgid "2" +msgstr "2" + +#: course/lesson-15-modulo/lesson.tres:34 +msgid "7" +msgstr "7" + +#: course/lesson-15-modulo/lesson.tres:44 +msgid "" +"The modulo operation only works on [b]whole numbers[/b]; Not decimal " +"numbers.\n" +"\n" +"Also, just like in regular divisions, the divisor can't be zero.\n" +"\n" +"All three examples below will cause an error in your code." +msgstr "" +"L'operazione modulo funziona solo su [b]numeri interi[/b]; Non numeri " +"decimali.\n" +"\n" +"Inoltre, così come per le divisioni normali, il divisore non può essere " +"zero.\n" +"\n" +"Tutti e tre gli esempi qui sotto causano un errore nel tuo codice." + +#: course/lesson-15-modulo/lesson.tres:66 +msgid "Three ways we use the modulo operation" +msgstr "Tre modi in cui utilizziamo l'operazione modulo" + +#: course/lesson-15-modulo/lesson.tres:68 +msgid "" +"The modulo operation has important uses in programming, like making a number " +"cycle.\n" +"\n" +"Take a traffic light, for example." +msgstr "" +"L'operazione modulo ha degli utilizzi importanti in programmazione, come far " +"ciclare un numero.\n" +"\n" +"Per esempio, prendi un semaforo." + +#: course/lesson-15-modulo/lesson.tres:90 +msgid "" +"We use the number [code]light_index[/code] to represent the traffic light's " +"current state.\n" +"\n" +"The lights always cycle in the same way: first, we have the red light, then " +"the yellow, then the green.\n" +"\n" +"To represent that cycle, you can periodically add one to the number and use " +"the modulo operator to wrap back to [code]0[/code].\n" +"\n" +"Instead, you could use a condition; In this case, we use the modulo as a " +"shortcut." +msgstr "" +"Usiamo il numero [code]light_index[/code] per rappresentare lo stato " +"corrente del semaforo.\n" +"\n" +"Le luci ciclano sempre nello stesso modo: prima, abbiamo la luce rossa, poi " +"la giallo e infine la verde.\n" +"\n" +"Per rappresentare questo ciclo, puoi incrementare periodicamente di uno il " +"numero e usare l'operatore modulo per ritornare a [code]0[/code].\n" +"\n" +"Piuttosto, potresti usare una condizione; In questo caso, possiamo usare il " +"modulo come scorciatoia." + +#: course/lesson-15-modulo/lesson.tres:114 +msgid "Why do we start from zero?" +msgstr "Perché partiamo da zero?" + +#: course/lesson-15-modulo/lesson.tres:116 +msgid "" +"In computer code, we very often count from [code]0[/code].\n" +"\n" +"Every number translates to a precise combination of bits in the machine, " +"starting from [code]0[/code].\n" +"\n" +"We don't want to waste any number, and as the first number the computer " +"knows about is [code]0[/code], we start counting from [code]0[/code]." +msgstr "" +"In programmazione, spesso contiamo da [code]0[/code].\n" +"\n" +"Ogni numero si traduce in una precisa combinazione di bit, che iniziano da " +"[code]0[/code].\n" +"\n" +"Non vogliamo sprecare nessun numero e il primo numero che il computer " +"conosce è [code]0[/code], quindi iniziamo a contare da [code]0[/code]." + +#: course/lesson-15-modulo/lesson.tres:128 +msgid "Using modulo to find even and odd numbers" +msgstr "Usando il modulo per capire se un numero è pari o dispari" + +#: course/lesson-15-modulo/lesson.tres:130 +msgid "" +"We can also use a modulo to check if a number is even or odd. If we divide a " +"number by [code]2[/code] and there's no remainder, then the number is " +"[b]even[/b]." +msgstr "" +"Possiamo pure usare il modulo per controllare se un numero è pari o dispari. " +"Se dividiamo un numero per [code]2[/code] e non c'è alcun resto, allora il " +"numero è [b]pari[/b]." + +#: course/lesson-15-modulo/lesson.tres:150 +msgid "" +"Notice how the modulo can be larger than the number it affects. For example, " +"[code]1 % 2[/code] gives you [code]1[/code]. That's because [code]1[/code] " +"divided by [code]2[/code] equals [code]0[/code], and the remainder is " +"[code]1[/code].\n" +"\n" +"Like with divisions, the only case you can't use modulo is with a divisor of " +"[code]0[/code]." +msgstr "" +"Nota bene che il modulo può essere più grande del numero di partenza. Per " +"esempio, [code]1 % 2[/code] dà come risultato [code]1[/code]. Questo è " +"perchè [code]1[/code] diviso [code]2[/code] è uguale a [code]0[/code] e il " +"resto è [code]1[/code].\n" +"\n" +"Come per le divisioni, l'unico caso in cui non puoi usare il modulo è con un " +"divisore di [code]0[/code]." + +#: course/lesson-15-modulo/lesson.tres:170 +msgid "Calculating a random number within a range" +msgstr "Calcolando un numero naturale all'interno di un intervallo" + +#: course/lesson-15-modulo/lesson.tres:172 +msgid "" +"We can use the modulo to simulate dice rolls. To do so, we generate a large " +"random number and use the modulo operator to limit the number's range.\n" +"\n" +"To generate a random whole number, you can call the [code]randi()[/code] " +"function. The name stands for random integer.\n" +"\n" +"The number the function generates can be huge: roughly up to 2 billion on an " +"Android device and around 10^18 on a 64-bit computer.\n" +"\n" +"You can use the modulo operation to limit the random number's range." +msgstr "" +"Possiamo usare il modulo per simulare delle tirate di dado. Per fare questo, " +"generiamo un grande numero casuale e usiamo l'operatore modulo per limitare " +"l'intervallo di numeri.\n" +"\n" +"Per generare un numero intero casuale puoi chiamare la funzione [code]randi()" +"[/code]. Il nome sta per random integer.\n" +"\n" +"Il numero che la funzione genera può essere enorme: fino a 2 miliardi su un " +"dispositivo Android e circa 10^18 su un computer a 64-bit.\n" +"\n" +"Puoi usare l'operatore modulo per limitare l'intervallo di numeri." + +#: course/lesson-15-modulo/lesson.tres:198 +msgid "" +"The result is also random because we use the modulo operation on a random " +"number.\n" +"\n" +"In the following practices, you'll use a modulo to advance traffic lights, " +"add maximum health to the robot on every odd level, and learn how to code " +"dice rolls." +msgstr "" +"Il risultato è comunque casuale perché usiamo l'operazione modulo su un " +"numero casuale.\n" +"\n" +"Nelle seguenti pratiche, userai un modulo per avanzare le luci di semafori, " +"aggiungerai vita massima ad un robot ad ogni livello dispari e imparerai " +"come simulare la tirata di dadi." + +#: course/lesson-15-modulo/lesson.tres:208 +msgid "Advancing Traffic Lights" +msgstr "Avanzando Luci Di Semafori" + +#: course/lesson-15-modulo/lesson.tres:209 +msgid "" +"Add to the [code]advance_traffic_light()[/code] function so the " +"[code]light_index[/code] variable increments by one, then wraps back to " +"[code]0[/code] if it gets too high.\n" +"\n" +"Use the modulo operator [code]%[/code] to make sure the value of " +"[code]light_index[/code] wraps back to [code]0[/code].\n" +"\n" +"The value of [code]light_index[/code] should only ever be [code]0[/code], " +"[code]1[/code], or [code]2[/code]." +msgstr "" +"Aggiungi alla funzione [code]advance_traffic_light()[/code] cosicché la " +"variabile [code]light_index[/code] si incrementi di uno e poi ritorni a " +"[code]0[/code] se diventa troppo grande.\n" +"\n" +"Usa l'operatore modulo [code]%[/code] per assicurarti che il valore del " +"[code]light_index[/code] ritorni a [code]0[/code].\n" +"\n" +"Il valore di [code]light_index[/code] dovrebbe essere solamente [code]0[/" +"code]. [code]1[/code] o [code]2[/code]." + +#: course/lesson-15-modulo/lesson.tres:223 +msgid "" +"Learn how to use modulo to wrap a number back to zero using traffic lights." +msgstr "" +"Impara ad utilizzare il modulo per far tornare a zero un numero usando dei " +"semafori." + +#: course/lesson-15-modulo/lesson.tres:228 +msgid "Rolling Dice" +msgstr "Tirando Dei Dadi" + +#: course/lesson-15-modulo/lesson.tres:229 +msgid "" +"Our dice rolling function doesn't work! Right now, it always gives the " +"result of how many sides the dice has: 20.\n" +"\n" +"Use [code]randi()[/code] to generate a random number and the modulo " +"operation [code]%[/code]. \n" +"\n" +"Using the [code]return[/code] keyword inside the function, return a random " +"number between [code]1[/code] and [code]sides[/code]." +msgstr "" +"La nostra funzione che tira dadi non funziona! Adesso, dà come risultato " +"solo quanti lati ha il dato: 20.\n" +"\n" +"Usa [code]randi()[/code] per generare un numero casuale e l'operazione " +"modulo [code]%[/code]. \n" +"\n" +"Usando la parola chiave [code]return[/code] all'interno della funzione, " +"ritorna un numero casuale tra [code]1[/code] e [code]sides[/code]." + +#: course/lesson-15-modulo/lesson.tres:243 +msgid "" +"Whether in a board game or video game, getting a random number is always " +"useful. Here, we create a function that simulates a dice roll." +msgstr "" +"Che sia un gioco da tavolo o un videogioco, ottenere un numero casuale è " +"sempre utile. Eccoti, abbiamo creato una funzione che simula la tirata di un " +"dado." + +#: course/lesson-15-modulo/lesson.tres:248 +msgid "Bonus Health Every Other Level" +msgstr "Vita Bonus Ogni Altro Livello" + +#: course/lesson-15-modulo/lesson.tres:249 +msgid "" +"Change the [code]level_up()[/code] function so it does the following:\n" +"\n" +"1) Increment [code]level[/code] by [code]1[/code]\n" +"2) Increase [code]max_health[/code] by [code]5[/code]\n" +"3) If [code]level[/code] is [b]even[/b], increase [code]max_health[/code] by " +"an additional [code]5[/code]\n" +"\n" +"The robot starts with [code]100[/code] maximum health. It will gain three " +"levels when you run the code. At level 4, the robot should have [code]125[/" +"code] maximum health." +msgstr "" +"Cambia la funzione [code]level_up()[/code] cosicché faccia le seguenti " +"cose:\n" +"\n" +"1) Incrementare il [code]livello[/code] di [code]1[/code]\n" +"2) Incrementare la [code]max_health[/code] di [code]5[/code]\n" +"3) Se il [code]level[/code] è [b]pari[/b], incrementa la [code]max_health[/" +"code] di altri [code]5[/code]\n" +"\n" +"Il robot inizia con [code]100[/code] di vita massima. Guadagnerà tre leveli " +"quando eseguirai il codice. Al livello 4, il robot dovrebbe avere [code]125[/" +"code] di vita massima." + +#: course/lesson-15-modulo/lesson.tres:265 +msgid "" +"There are other ways to increase maximum health. You could use a modulo to " +"give a bonus every even level. Learn how here!" +msgstr "" +"Ci sono altri modi per aumentare la vita massima. Dovresti usare un modulo " +"per dare un bonus per ogni livello pari. Impara come qui!" + +#: course/lesson-15-modulo/lesson.tres:269 +msgid "Modulo" +msgstr "Modulo" diff --git a/i18n/it/lesson-16-2d-vectors.po b/i18n/it/lesson-16-2d-vectors.po new file mode 100644 index 00000000..df41ffee --- /dev/null +++ b/i18n/it/lesson-16-2d-vectors.po @@ -0,0 +1,305 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 10:51+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-16-2d-vectors/lesson.tres:14 +msgid "" +"Suppose we want to increase the size of the robot when it levels up.\n" +"\n" +"As you may recall, we do this by using the following code." +msgstr "" +"Ipotizziamo di voler aumentare la grandezza del nostro robot quando sale di " +"livello.\n" +"\n" +"Come puoi ricordare, possiamo fare questo attraverso questo codice." + +#: course/lesson-16-2d-vectors/lesson.tres:36 +msgid "" +"As we talked about in lesson 7, the [code]scale[/code] variable has two sub-" +"variables to it: [code]x[/code] and [code]y[/code].\n" +"\n" +"This is because [code]scale[/code] is a [code]Vector2[/code], which stands " +"for two-dimensional vector. A [code]Vector2[/code] represents 2D coordinates." +msgstr "" +"Come abbiamo già detto nella lezione 7, la variabile [code]scale[/code] ha " +"due sotto-variabili: [code]x[/code] e [code]y[/code].\n" +"\n" +"Questo è perché [code]scale[/code] è un [code]Vector2[/code], che sta per " +"vettore bidimensionale. Un [code]Vector2[/code] rappresenta delle coordinate " +"2D." + +#: course/lesson-16-2d-vectors/lesson.tres:46 +msgid "What are vectors?" +msgstr "Cosa sono i vettori?" + +#: course/lesson-16-2d-vectors/lesson.tres:48 +msgid "" +"A vector, in physics, is a quantity with a magnitude and a direction. For " +"example, a force applied to some object, the velocity (speed and direction) " +"of a character, and so on.\n" +"\n" +"We often represent this quantity with an arrow.\n" +"\n" +"In Godot, 2D vectors are a common value type named [code]Vector2[/code],\n" +"\n" +"Unlike plain numbers, they store [i]two[/i] decimal numbers: one for the X " +"coordinate and one for the Y coordinate." +msgstr "" +"Un vettore, in fisica, è una quantità con un'intensità e una direzione. Per " +"esempio, una forza applicata ad un oggetto, la velocità (velocità e " +"direzione) di un personaggio e così via.\n" +"\n" +"Spesso rappresentiamo questa quantità con una freccia.\n" +"\n" +"In Godot, i vettori 2D sono una tipologia di valore molto comune e vengono " +"chiamati [code]Vector2[/code],\n" +"\n" +"Al contrario dei numeri interi, questi conservano [i]due[/i] valori " +"decimali: uno per la coordinata X e l'altro per la coordinata Y." + +#: course/lesson-16-2d-vectors/lesson.tres:72 +msgid "" +"So far, you've come across two variables in the course which are vectors. " +"Which are they?" +msgstr "Finora, hai incontrato due variabili che sono vettori. Quali sono?" + +#: course/lesson-16-2d-vectors/lesson.tres:75 +msgid "" +"Both [code]scale[/code] and [code]position[/code] have [code]x[/code] and " +"[code]y[/code] sub-variables, so Godot uses a [code]Vector2[/code] to store " +"their values." +msgstr "" +"Sia [code]scale[/code] ché [code]position[/code] posseggono delle sotto-" +"variabili [code]x[/code] e [code]y[/code], quindi Godot usa un " +"[code]Vector2[/code] per conservare i suoi valori." + +#: course/lesson-16-2d-vectors/lesson.tres:76 +#: course/lesson-16-2d-vectors/lesson.tres:77 +msgid "scale" +msgstr "scale" + +#: course/lesson-16-2d-vectors/lesson.tres:76 +#: course/lesson-16-2d-vectors/lesson.tres:77 +msgid "position" +msgstr "position" + +#: course/lesson-16-2d-vectors/lesson.tres:76 +msgid "health" +msgstr "health" + +#: course/lesson-16-2d-vectors/lesson.tres:76 +msgid "speed" +msgstr "speed" + +#: course/lesson-16-2d-vectors/lesson.tres:84 +msgid "Vectors are great for games" +msgstr "I vettori sono ottimi per i giochi" + +#: course/lesson-16-2d-vectors/lesson.tres:86 +msgid "" +"Vectors are [i]essential[/i] in video games.\n" +"\n" +"They allow you to represent a character's movement speed and direction, " +"calculate the distance to a target, and more, with little code.\n" +"\n" +"Take this turtle AI below. You've probably seen games where enemies move " +"like this.\n" +"\n" +"This is done with just seven lines of pure vector calculation code.\n" +"\n" +"The code is a bit too difficult for now, so we'll spare you the details, but " +"this turtle gives you a glimpse of what 2D vectors can do for you and your " +"game projects." +msgstr "" +"I vettori sono [i]essenziali[/i] nei videogiochi.\n" +"\n" +"Ci permettono di rappresentare la velocità e la direzione di un personaggio " +"in movimento, calcolare la distanza da un bersaglio e molto altro, con poco " +"codice.\n" +"\n" +"Prendi come esempio la IA della tartaruga qua sotto. Hai probabilmente visto " +"giochi in cui i nemici si muovono così.\n" +"\n" +"Questo è fatto con solo sei righe di codice di puri calcoli di vettori.\n" +"\n" +"Il codice è un po' troppo difficile per ora, quindi ti risparmieremo i " +"dettagli, ma questa tartaruga ci dà uno squarcio di cosa i vettori 2D " +"possono fare nel tuo progetto videoludico." + +#: course/lesson-16-2d-vectors/lesson.tres:114 +msgid "" +"We scale the robot again, this time by adding to it directly using a " +"[code]Vector2[/code]. The following code has the same effect as the previous " +"example." +msgstr "" +"Ingrandiamo di nuovo il robot, questa volta usando direttamente un " +"[code]Vector2[/code]. Il seguente codice ha lo stesso effetto dell'esempio " +"precedente." + +#: course/lesson-16-2d-vectors/lesson.tres:134 +msgid "" +"Notice how we use parentheses and two arguments inside parentheses, just " +"like other function calls.\n" +"\n" +"We call this a [i]constructor function call[/i]. You can think of it as a " +"special kind of function that creates a particular type of value.\n" +"\n" +"The code [code]Vector2(0.2, 0.2)[/code] constructs a new [code]Vector2[/" +"code] value with its [code]x[/code] set to [code]0.2[/code] and its [code]y[/" +"code] set to [code]0.2[/code], respectively." +msgstr "" +"Nota che usiamo le parentesi e due argomenti all'interno di esse, così come " +"le altre chiamate di funzioni.\n" +"\n" +"Chiamiamo questo una [i]chiamata della funzione costruttore[/i]. Puoi " +"pensarla come un particolare tipo di funzione che crea un particolare tipo " +"di valore.\n" +"\n" +"Il codice [code]Vector2(0.2, 0.2)[/code] costruisce un nuovo valore " +"[code]Vector2[/code] con la sua [code]x[/code] impostata a [code]0.2[/code] " +"e la sua [code]y[/code] impostata a [code]0.2[/code], rispettivamente." + +#: course/lesson-16-2d-vectors/lesson.tres:146 +msgid "Using vectors to change the position" +msgstr "Usando i vettori per cambiare la posizione" + +#: course/lesson-16-2d-vectors/lesson.tres:148 +msgid "" +"We can add and subtract vectors to [code]position[/code] because it's a " +"vector. If we wanted to move our robot to a new relative position, we would " +"add a [code]Vector2[/code] to its [code]position[/code]." +msgstr "" +"Possiamo aggiungere o sottrarre vettori alla [code]position[/code] perchè è " +"un vettore. Se volessimo muovere il nostro robot ad una nuova posizione " +"relativa, potremmo aggiungere un [code]Vector2[/code] alla sua " +"[code]position[/code]." + +#: course/lesson-16-2d-vectors/lesson.tres:166 +msgid "How would you move the robot 50 pixels to the left?" +msgstr "Come muoveresti il robot di 50 pixel a sinistra?" + +#: course/lesson-16-2d-vectors/lesson.tres:169 +msgid "" +"[code]position -= Vector2(50, 0)[/code] subtracts [code]50[/code] to the sub-" +"variable [code]x[/code], and [code]0[/code] to [code]y[/code].\n" +"\n" +"[code]position.x -= Vector2(50, 0)[/code] tries to subtract a 2D vector to " +"the sub-variable [code]x[/code], which is a decimal number. The value types " +"are incompatible. If you try to do this, you will get an error." +msgstr "" +"[code]position -= Vector2(50, 0)[/code] sottrae [code]50[/code] alla " +"sottovariabile [code]x[/code] e [code]0[/code] a [code]y[/code].\n" +"\n" +"[code]position.x -= Vector2(50, 0)[/code] cerca di sottrarre un vettore 2D " +"alla sottovariabile [code]x[/code], che è un numero decimale. I tipi di " +"valore sono incompatibili. Se si tenta di eseguire questa operazione, si " +"otterrà un errore." + +#: course/lesson-16-2d-vectors/lesson.tres:172 +#: course/lesson-16-2d-vectors/lesson.tres:173 +msgid "position -= Vector2(50, 0)" +msgstr "position -= Vector2(50, 0)" + +#: course/lesson-16-2d-vectors/lesson.tres:172 +msgid "position.x -= Vector2(50, 0)" +msgstr "position.x -= Vector(50, 0)" + +#: course/lesson-16-2d-vectors/lesson.tres:182 +msgid "" +"In the next few practices, you'll use vectors to change scale and position " +"values." +msgstr "" +"Nelle prossime pratiche, userai i vettori per cambiare la grandezza e la " +"posizione." + +#: course/lesson-16-2d-vectors/lesson.tres:190 +msgid "Increasing scale using vectors" +msgstr "Aumentare la grandezza usando i vettori" + +#: course/lesson-16-2d-vectors/lesson.tres:191 +msgid "" +"Add a line of code to the [code]level_up()[/code] function to increase the " +"[code]scale[/code] of the robot by [code]Vector2(0.2, 0.2)[/code] every time " +"it levels up." +msgstr "" +"Aggiungi una riga di codice alla funzione [code]level_up()[/code] per " +"incrementare la [code]scale[/code] del robot di [code]Vector2(0.2, 0.2)[/" +"code] ogni volta che sale di livello." + +#: course/lesson-16-2d-vectors/lesson.tres:202 +msgid "" +"To visually show our robot has gained in strength, let's increase its size " +"every time it levels up. Nothing could go wrong!" +msgstr "" +"Per mostrare visivamente che il nostro robot ha aumentato la forza, " +"incrementiamo la sua grandezza ogni volta che sale di livello. Niente può " +"andare storto!" + +#: course/lesson-16-2d-vectors/lesson.tres:207 +msgid "Resetting size and position using vectors" +msgstr "Resettare la grandezza e la posizione usando i vettori" + +#: course/lesson-16-2d-vectors/lesson.tres:208 +msgid "" +"The robot's level has increased a lot, and so has its size!\n" +"\n" +"Let's fix this by resetting the robot's [code]scale[/code] and " +"[code]position[/code] values.\n" +"\n" +"Create a function named [code]reset_robot()[/code] that sets the " +"[code]scale[/code] and [code]position[/code] of the robot.\n" +"\n" +"The [code]x[/code] and [code]y[/code] sub-variables of the robot's " +"[code]scale[/code] need to be [code]1.0[/code].\n" +"\n" +"The robot's [code]position[/code] needs to be [code]Vector2(0, 0)[/code].\n" +"\n" +"As in the previous practice, make sure to use vectors when dealing with " +"scale and position." +msgstr "" +"Il livello del robot è salito di un sacco, anche la sua grandezza!\n" +"\n" +"Aggiustiamo questo resettando la [code]scale[/code]del robot e la sua " +"[code]position[/code].\n" +"\n" +"Crea una funzione chiamata [code]reset_robot()[/code] che setta la " +"[code]scale[/code] e la [code]position[/code] del robot.\n" +"\n" +"Le sotto-variabili [code]x[/code] e [code]y[/code] della [code]scale[/code] " +"del robot devono essere [code]1.0[/code].\n" +"\n" +"La [code]position[/code] del robot deve essere [code]Vector2(0, 0)[/code].\n" +"\n" +"Come nella precedente pratica, fa sì di utilizzare i vettori quando tratti " +"la grandezza e la posizione." + +#: course/lesson-16-2d-vectors/lesson.tres:227 +msgid "" +"Perhaps increasing the scale every level was a bad idea! Let's restore the " +"robot to the correct size." +msgstr "" +"Forse aumentare la grandezza ad ogni livello è stata una pessima idea! " +"Ridiamo al robot la corretta grandezza." + +#: course/lesson-16-2d-vectors/lesson.tres:231 +msgid "2D Vectors" +msgstr "Vettori 2D" diff --git a/i18n/it/lesson-17-while-loops.po b/i18n/it/lesson-17-while-loops.po new file mode 100644 index 00000000..c05905b9 --- /dev/null +++ b/i18n/it/lesson-17-while-loops.po @@ -0,0 +1,335 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 10:51+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-17-while-loops/lesson.tres:14 +msgid "" +"You've seen that you can use functions to [i]reuse[/i] code. In this lesson, " +"you'll learn about [b]loops[/b]. Loops help you [i]repeat[/i] code.\n" +"\n" +"To illustrate how loops work, let's take a game board split into a grid.\n" +"\n" +"Our robot can move to neighboring cells by changing a [code]Vector2[/code] " +"variable named [code]cell[/code]. It represents the current cell the robot " +"is in.\n" +"\n" +"When we increase [code]cell.x[/code], the robot moves to the right.\n" +"\n" +"Note that we delay the robot's movement in the app to help you visualize how " +"it moves. The following code would normally move the robot instantly." +msgstr "" +"Abbiamo visto che è possibile utilizzare le funzioni per [i]riutilizzare[/i] " +"il codice. In questa lezione imparerete a conoscere i [b]loop[/b]. I loop " +"aiutano a [i]ripetere[/i] il codice.\n" +"\n" +"Per illustrare il funzionamento dei loop, prendiamo un tabellone di gioco " +"suddiviso in una griglia.\n" +"\n" +"Il nostro robot può spostarsi nelle celle vicine cambiando una variabile " +"[code]Vector2[/code] chiamata [code]cell[/code]. Essa rappresenta la cella " +"in cui si trova attualmente il robot.\n" +"\n" +"Aumentando [code]cell.x[/code], il robot si sposta a destra.\n" +"\n" +"Si noti che nell'applicazione ritardiamo il movimento del robot per aiutarvi " +"a visualizzarlo. Il codice seguente normalmente farebbe muovere il robot " +"istantaneamente." + +#: course/lesson-17-while-loops/lesson.tres:42 +msgid "We can move diagonally by adding a [code]Vector2[/code] directly." +msgstr "" +"Ci possiamo muovere diagonalmente aggiungendo direttamente un [code]Vector2[/" +"code]." + +#: course/lesson-17-while-loops/lesson.tres:62 +msgid "" +"The above code works for a pre-defined board with a size of [code]Vector2(3, " +"3)[/code], but the [code]move_to_end()[/code] function wouldn't work if the " +"size of the board was different. \n" +"\n" +"The robot would either stop before the end or go too far.\n" +"\n" +"To implement a general solution for all board sizes, we can repeat the " +"robot's movement until it gets to the end.\n" +"\n" +"For code that repeats, we can use [i]loops[/i]." +msgstr "" +"Il codice di sopra è usato per una tavola predefinita con grandezza " +"[code]Vector2(3, 3)[/code], ma la funzione [code]move_to_end()[/code] non " +"funzionerebbe se la grandezza della tavola fosse differente. \n" +"\n" +"Il robot o si fermerebbe prima della fine o andrebbe troppo in la.\n" +"\n" +"Per implementare una soluzione generale per qualsiasi grandezza di tavola, " +"possiamo ripetere i movimenti del robot finché non arriva alla fine.\n" +"\n" +"Per far ripetere il codice, possiamo usare dei [i]cicli[/i]." + +#: course/lesson-17-while-loops/lesson.tres:76 +msgid "Using while loops to repeat code" +msgstr "Usando cicli while per ripetere codice" + +#: course/lesson-17-while-loops/lesson.tres:78 +msgid "" +"You can use a [code]while[/code] loop to make the computer repeat a block of " +"code until you meet a specific condition or decide to break from the loop.\n" +"\n" +"Here's how we use a [code]while[/code] loop." +msgstr "" +"Puoi usare un ciclo [code]while[/code] per far ripetere al computer un " +"blocco di codice finché non viene raggiunta una determinata condizione o si " +"decide di uscire dal ciclo.\n" +"\n" +"Ecco come usiamo i cicli [code]while[/code]." + +#: course/lesson-17-while-loops/lesson.tres:100 +msgid "" +"We use the variable [code]number[/code] to keep track of how many loops the " +"[code]while[/code] loop completes.\n" +"\n" +"Each time we go through the [code]while[/code] loop, we add [code]1[/code] " +"to [code]number[/code].\n" +"\n" +"The [code]while[/code] loop keeps running for as long as the condition is " +"true. In this case, it keeps running while [code]number[/code] is less than " +"[code]4[/code].\n" +"\n" +"You can see that the following code is executed four times in the console." +msgstr "" +"Usiamo la variabile [code]number[/code] per tener conto di quante volte il " +"ciclo [code]while[/code] completa un ciclo.\n" +"\n" +"Ogni volta che completiamo un ciclo [code]while[/code], aggiungiamo un " +"[code]1[/code] a [code]number[/code].\n" +"\n" +"Il ciclo [code]while[/code] continua ad andare finché la condizione è vera. " +"In questo caso, continua a oltranza finché [code]number[/code] è inferiore a " +"[code]4[/code].\n" +"\n" +"Puoi vedere che il codice seguente è eseguito quattro volte nella console." + +#: course/lesson-17-while-loops/lesson.tres:126 +msgid "" +"Let's apply this to our [code]move_to_end()[/code] function.\n" +"\n" +"This time, we compare the number of loops to the board's width. We go " +"through the loop until we reach the width of the board.\n" +"\n" +"Note that we move the robot until its position is one less than the board's " +"width because we are counting tiles from [code]0[/code].\n" +"\n" +"A board of [code]3[/code] by [code]3[/code] cells would have cell " +"coordinates going from [code]0[/code] to [code]2[/code] on both the X and Y " +"axes." +msgstr "" +"Applichiamo questo metodo alla nostra funzione [code]move_to_end()[/code].\n" +"\n" +"Questa volta, confrontiamo il numero di loop con la larghezza della tavola. " +"Eseguiamo il ciclo fino a raggiungere la larghezza della tavola.\n" +"\n" +"Si noti che il robot si sposta fino a quando la sua posizione è inferiore " +"alla larghezza del tabellone, perché si contano le tessere a partire da " +"[code]0[/code].\n" +"\n" +"Una tavola di [code]3[/code] per [code]3[/code] celle avrebbe coordinate di " +"cella che vanno da [code]0[/code] a [code]2[/code] su entrambi gli assi X e " +"Y." + +#: course/lesson-17-while-loops/lesson.tres:160 +msgid "While loops can cause issues" +msgstr "I cicli while possono causare problemi" + +#: course/lesson-17-while-loops/lesson.tres:162 +msgid "" +"If you're not careful, your [code]while[/code] loop can run infinitely. In " +"that case, the application will freeze.\n" +"\n" +"Take a look at this code example." +msgstr "" +"Se non stai attento, i tuoi cicli [code]while[/code] possono continuare " +"all'infinito. In questi casi, l'applicazione si bloccherà.\n" +"\n" +"Guarda a questo codice per esempio." + +#: course/lesson-17-while-loops/lesson.tres:182 +msgid "What would happen if the computer tried to run the code above?" +msgstr "" +"Cosa succederebbe se il computer provasse ad eseguire il codice qua sopra?" + +#: course/lesson-17-while-loops/lesson.tres:185 +msgid "" +"Because we don't increment [code]number[/code] within the [code]while[/code] " +"loop, it always stays at [code]0[/code].\n" +"\n" +"As a result, the number is always lower than [code]10[/code], so we never " +"break out of the loop.\n" +"\n" +"Since there's no way to exit the [code]while[/code] loop, the computer will " +"attempt to draw squares infinitely, which will freeze the program.\n" +"\n" +"When programs stop responding on your computer, it's often due to an " +"infinite loop!" +msgstr "" +"Dato che non incrementiamo [code]number[/code] all'interno del ciclo " +"[code]while[/code], rimane sempre a [code]0[/code].\n" +"\n" +"Quindi, il numero rimane sempre inferiore a [code]10[/code], ergo non " +"usciamo mai dal ciclo.\n" +"\n" +"Dato che non c'è alcun modo per uscire dal ciclo [code]while[/code], il " +"computer cercherà di disegnare quadrati all'infinito, questo farà bloccare " +"il programma.\n" +"\n" +"Quando i programmi smettono di funzionare sul tuo computer, spesso è a causa " +"di cicli infiniti!" + +#: course/lesson-17-while-loops/lesson.tres:192 +#: course/lesson-17-while-loops/lesson.tres:193 +msgid "It would draw squares infinitely until the program is terminated" +msgstr "" +"Disegnerebbe quadrati a oltranza finché il programma non venga terminato" + +#: course/lesson-17-while-loops/lesson.tres:192 +msgid "It would draw 10 squares" +msgstr "Disegnerebbe 10 quadrati" + +#: course/lesson-17-while-loops/lesson.tres:192 +msgid "It would draw 20 squares" +msgstr "Disegnerebbe 20 quadrati" + +#: course/lesson-17-while-loops/lesson.tres:200 +msgid "When to use while loops" +msgstr "Quando usare i cicli while" + +#: course/lesson-17-while-loops/lesson.tres:202 +msgid "" +"At first, you will not need [code]while[/code] loops often. Even the code we " +"show here has more efficient alternatives.\n" +"\n" +"Also, there's a safer kind of loop, [code]for[/code] loops, which we'll look " +"at in the next lesson.\n" +"\n" +"Yet, [code]while[/code] loops have important intermediate to advanced-level " +"uses, so you at least need to know they exist and how to use them.\n" +"\n" +"We use [code]while[/code] loops every time we need to loop an unknown number " +"of times.\n" +"\n" +"For example, games run in a loop that typically generates sixty images per " +"second until the user closes the game. This is possible thanks to " +"[code]while[/code] loops.\n" +"\n" +"There are other good uses for [code]while[/code] loops:\n" +"\n" +"- Reading and processing a file, like a text document, line by line.\n" +"- Processing a constant stream of data, like someone recording audio with a " +"microphone.\n" +"- Reading code and converting it into instructions the computer " +"understands.\n" +"- Various intermediate to advanced-level algorithms, like finding paths " +"around a map for AI." +msgstr "" +"All'inizio, non avrai così tanto bisogno di cicli [code]while[/code]. " +"Difatti il codice che mostriamo ha alternative molto più efficienti.\n" +"\n" +"Inoltre, c'è un tipo di ciclo più sicuro, i cicli [code]for[/code], che " +"studieremo nella prossima lezione.\n" +"\n" +"Eppure, i cicli [code]while[/code] hanno vari utilizzi nel medio e nell'alto " +"livello di programmazione, quindi devi sapere almeno che esistono e come si " +"usano.\n" +"\n" +"Usiamo i cicli [code]while[/code] ogni volta che dobbiamo eseguire il ciclo " +"un numero sconosciuto di volte.\n" +"\n" +"Per esempio, i giochi eseguono il codice ciclicamente e generano sessanta " +"immagini al secondo finché il giocatore non chiude il gioco. Questo è " +"possibile grazie ai cicli [code]while[/code].\n" +"\n" +"Ci sono altri buoni utilizzi per i cicli [code]while[/code]:\n" +"\n" +"- Leggere e processare un file, come un documento di testo, linea per " +"linea.\n" +"- Processare un flusso continuo di fati, come qualcuno che registra audio " +"con un microfono.\n" +"- Leggere codice e convertirlo in istruzioni che il computer comprende.\n" +"- Vari algoritmi intermedi e avanzati, come fare path finding per una IA che " +"vaga in una mappa." + +#: course/lesson-17-while-loops/lesson.tres:227 +msgid "" +"Let's practice some [code]while[/code] loops, as they're useful to know. " +"It's also an excellent opportunity to practice 2D vectors.\n" +"\n" +"Then, we'll move on to the safer [code]for[/code] loops in the following " +"lesson." +msgstr "" +"Facciamo pratica con qualche ciclo [code]while[/code], poiché possono " +"tornare utili in certe situazioni. Questa è anche una buona occasione per " +"fare pratica con i vettori 2D.\n" +"\n" +"Nella prossima lezione, andremo a studiare cicli più sicuri come il " +"[code]for[/code]." + +#: course/lesson-17-while-loops/lesson.tres:237 +msgid "Moving to the end of a board" +msgstr "Andando alla fine di una tavola" + +#: course/lesson-17-while-loops/lesson.tres:238 +msgid "" +"Our robot has decided to stand at the top of the board.\n" +"\n" +"Complete the [code]move_to_bottom()[/code] function so the robot moves to " +"the bottom of the board.\n" +"\n" +"The board size is determined by the [code]Vector2[/code] [code]board_size[/" +"code].\n" +"\n" +"The robot's current cell is [code]Vector2(2, 0)[/code]. \n" +"\n" +"Make sure to use a [code]while[/code] loop so the function works for any " +"board size." +msgstr "" +"Il nostro robot ha deciso di posizionarsi in cima alla tavola.\n" +"\n" +"Completa la funzione [code]move_to_bottom()[/code] cosicché il robot arrivi " +"in fondo alla tavola.\n" +"\n" +"La grandezza della tavola è determinata dalla variabile [code]Vector2[/code] " +"chiamata [code]board_size[/code].\n" +"\n" +"Il robot è ora posizionato nella cella [code]Vector2(2, 0)[/code]. \n" +"\n" +"Utilizza il ciclo [code]while[/code] cosicché la funzione funzioni per ogni " +"grandezza di tavola." + +#: course/lesson-17-while-loops/lesson.tres:256 +msgid "" +"Use a while loop to have our robot move from the top of the board to the " +"bottom." +msgstr "" +"Usa un ciclo while per far muovere il nostro robot dalla parte superiore " +"alla parte inferiore della tavola." + +#: course/lesson-17-while-loops/lesson.tres:260 +msgid "Introduction to While Loops" +msgstr "Introduzione ai Cicli While" diff --git a/i18n/it/lesson-18-for-loops.po b/i18n/it/lesson-18-for-loops.po new file mode 100644 index 00000000..c7728450 --- /dev/null +++ b/i18n/it/lesson-18-for-loops.po @@ -0,0 +1,318 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 10:51+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-18-for-loops/lesson.tres:14 +msgid "" +"In the last lesson, we looked at [code]while[/code] loops. We found they " +"were useful if we don't know how many times we should repeat code. \n" +"\n" +"However, they could result in infinite loops if we're not careful.\n" +"\n" +"The loop below never ends because we never increment [code]number[/code]." +msgstr "" +"Nell'ultima lezione abbiamo analizzato i cicli [code]while[/code]. Abbiamo " +"scoperto che sono utili se non sappiamo quante volte dobbiamo ripetere il " +"codice. \n" +"\n" +"Tuttavia, se non stiamo attenti, possono dare origine a cicli infiniti.\n" +"\n" +"Il ciclo sottostante non termina mai perché non incrementiamo mai " +"[code]number[/code]." + +#: course/lesson-18-for-loops/lesson.tres:38 +msgid "" +"There's a safer and often easier kind of loop: the [code]for[/code] loop.\n" +"\n" +"We'll look at it in this lesson.\n" +"\n" +"Unlike [code]while[/code] loops, [code]for[/code] loops don't run " +"infinitely, so it's much less likely that you'll get bugs in your game. " +"[b]We recommend favoring for loops over while loops because of this[/b].\n" +"\n" +"Let's change the code above to use a [code]for[/code] loop instead.\n" +"\n" +"The loop below will change the [code]cell[/code] three times." +msgstr "" +"C'è una tipologia di ciclo più sicura e spesso più facile da usare: il ciclo " +"[code]for[/code].\n" +"\n" +"Lo esploreremo in questa lezione.\n" +"\n" +"Al contrario dei cicli [code]while[/code], i cicli [code]for[/code] non " +"vengono eseguiti all'infinito, quindi ha molte meno probabilità di causare " +"bug nel tuo gioco. [b]Ti consigliamo di preferire i cicli for al posto di " +"quelli while per questo motivo[/b].\n" +"\n" +"Cambiamo il codice qua sopra cosicché usi un ciclo [code]for[/code].\n" +"\n" +"Il ciclo qui sotto cambierà la [code]cell[/code] tre volte." + +#: course/lesson-18-for-loops/lesson.tres:66 +msgid "Let's explain what's going on here." +msgstr "Spieghiamo cosa succede qui." + +#: course/lesson-18-for-loops/lesson.tres:74 +msgid "The range() function" +msgstr "La funzione range()" + +#: course/lesson-18-for-loops/lesson.tres:76 +msgid "" +"Godot has the helper function [code]range()[/code]. Calling [code]range(n)[/" +"code] creates a list of numbers from [code]0[/code] to [code]n - 1[/code]. \n" +"\n" +"So calling [code]range(3)[/code] outputs the list of numbers [code][0, 1, 2]" +"[/code], and [code]range(5)[/code] outputs [code][0, 1, 2, 3, 4][/code]." +msgstr "" +"Godot dispone della funzione di aiuto [code]range()[/code]. Chiamando " +"[code]range(n)[/code] si crea un elenco di numeri da [code]0[/code] a [code]" +"n - 1[/code]. \n" +"\n" +"Quindi, chiamando [code]range(3)[/code] si ottiene l'elenco di numeri [code][" +"0, 1, 2][/code], mentre [code]range(5)[/code] produce [code][0, 1, 2, 3, " +"4][/code]." + +#: course/lesson-18-for-loops/lesson.tres:86 +msgid "What list of numbers would range(6) create?" +msgstr "Quale lista di numeri creerebbe range(6)?" + +#: course/lesson-18-for-loops/lesson.tres:87 +msgid "What would [code]print(range(6))[/code] print to the console?" +msgstr "Cosa stamperebbe [code]print(range(6))[/code] sulla console?" + +#: course/lesson-18-for-loops/lesson.tres:89 +msgid "" +"The function [code]range(n)[/code] creates a list of numbers from [code]0[/" +"code] to [code]n - 1[/code]. The output list will start with [code]0[/code] " +"and end with [code]5[/code].\n" +"\n" +"So calling [code]range(6)[/code] will output a list of six numbers which are " +"[code][0, 1, 2, 3, 4, 5][/code].\n" +msgstr "" +"La funzione [code]range(n)[/code] crea una lista di numeri da [code]0[/code] " +"a [code]n - 1[/code]. La lista risultante inizierà da [code]0[/code] e " +"finirà con [code]5[/code].\n" +"\n" +"Quindi chiamare [code]range(6)[/code] darà come risultato una lista di sei " +"numeri che sono [code][0 ,1 ,2 ,3 ,4 , 5][/code].\n" + +#: course/lesson-18-for-loops/lesson.tres:93 +#: course/lesson-18-for-loops/lesson.tres:94 +msgid "[0, 1, 2, 3, 4, 5]" +msgstr "[0, 1, 2, 3, 4, 5]" + +#: course/lesson-18-for-loops/lesson.tres:93 +msgid "[1, 2, 3, 4, 5, 6]" +msgstr "[1, 2, 3, 4, 5, 6]" + +#: course/lesson-18-for-loops/lesson.tres:93 +msgid "[0, 1, 2, 3, 4, 5, 6]" +msgstr "[0, 1, 2, 3, 4, 5, 6]" + +#: course/lesson-18-for-loops/lesson.tres:101 +msgid "How for loops work" +msgstr "Come funziona il ciclo for" + +#: course/lesson-18-for-loops/lesson.tres:103 +msgid "" +"In a [code]for[/code] loop, the computer takes each value inside a list, " +"stores it in a temporary variable, and executes the code in the loop once " +"per value." +msgstr "" +"In un ciclo [code]for[/code], il computer prende ogni valore nella lista, lo " +"conserva in una variabile temporanea ed esegue il codice nel ciclo una volta " +"per ogni valore." + +#: course/lesson-18-for-loops/lesson.tres:123 +msgid "" +"In the above example, for each item in the list [code][0, 1, 2][/code], " +"Godot sets [code]number[/code] to the item, then executes the code in the " +"[code]for[/code] loop.\n" +"\n" +"We'll explain arrays more throughly in the next lesson, but notice that " +"[code]number[/code] is just a temporary variable. You create it when " +"defining the loop, and the loop takes care of changing its value. Also, you " +"can name this variable anything you want.\n" +"\n" +"This code behaves the same as the previous example:" +msgstr "" +"Nell'esempio precedente, per ogni elemento dell'elenco [code][0, 1, 2][/code]" +", Godot imposta [code]numero[/code] all'elemento, quindi esegue il codice " +"nel ciclo [code]for[/code].\n" +"\n" +"Spiegheremo meglio gli array nella prossima lezione, ma notate che " +"[code]number[/code] è solo una variabile temporanea. La si crea quando si " +"definisce il ciclo e il ciclo si occupa di modificarne il valore. Inoltre, è " +"possibile dare a questa variabile il nome che si desidera.\n" +"\n" +"Questo codice si comporta come l'esempio precedente:" + +#: course/lesson-18-for-loops/lesson.tres:147 +msgid "" +"In both examples, we print the value of the temporary variable we created: " +"[code]number[/code] in the first example and [code]element[/code] in the " +"second.\n" +"\n" +"As Godot moves through the loop, it assigns each value of the array to that " +"variable. First, it sets the variable to [code]0[/code], then to [code]1[/" +"code], and finally, to [code]2[/code].\n" +"\n" +"We can break down the instructions the loop runs. You can see how a loop is " +"a shortcut to code that otherwise gets very long." +msgstr "" +"In entrambi gli esempi, stampiamo il valore della variabile temporanea " +"creata: [code]number[/code] nel primo esempio e [code]element[/code] nel " +"secondo.\n" +"\n" +"Man mano che Godot procede nel ciclo, assegna ogni valore dell'array a " +"quella variabile. Prima imposta la variabile a [code]0[/code], poi a " +"[code]1[/code] e infine a [code]2[/code].\n" +"\n" +"Possiamo suddividere le istruzioni che il ciclo esegue. Si può notare come " +"un ciclo sia una scorciatoia per un codice che altrimenti diventerebbe molto " +"lungo." + +#: course/lesson-18-for-loops/lesson.tres:171 +msgid "" +"We can put whatever code we like in the loop's code block, including other " +"function calls like [code]draw_rectangle()[/code]." +msgstr "" +"Nel blocco di codice del ciclo possiamo inserire tutto il codice che " +"vogliamo, comprese altre chiamate di funzione come " +"[code]draw_rectangle()[/code]." + +#: course/lesson-18-for-loops/lesson.tres:179 +msgid "Using a for loop instead of a while loop" +msgstr "Usando un ciclo for al posto di un ciclo while" + +#: course/lesson-18-for-loops/lesson.tres:181 +msgid "" +"Here's our old [code]move_to_end()[/code] function which used a [code]while[/" +"code] loop." +msgstr "" +"Ecco la nostra vecchia funzione [code]move_to_end()[/code] che utilizzava un " +"ciclo [code]while[/code]." + +#: course/lesson-18-for-loops/lesson.tres:201 +msgid "" +"If we use a [code]for[/code] loop instead, the code becomes a little simpler." +msgstr "" +"Usando un ciclo [code]for[/code] invece, il codice diventerebbe un po' più " +"semplice." + +#: course/lesson-18-for-loops/lesson.tres:221 +msgid "" +"Rather than constantly checking if the robot reached the end of the board, " +"with the [code]for[/code] loop, we take the board's width beforehand, then " +"move the robot a set amount of times.\n" +"\n" +"The function still works the same. You can execute it below." +msgstr "" +"Invece di controllare costantemente se il robot ha raggiungo la fine della " +"tavola, con il ciclo [code]for[/code], prima prendiamo la larghezza della " +"tavola, poi muoviamo il robot un determinato numero di volte.\n" +"\n" +"La funzione funziona sempre allo stesso modo. Puoi eseguirlo qui sotto." + +#: course/lesson-18-for-loops/lesson.tres:243 +msgid "" +"In the practices, we'll use [code]for[/code] loops in different ways to get " +"you used to using them." +msgstr "" +"Nelle pratiche, useremo il ciclo [code]for[/code] in modi differenti per " +"abituarti a usarlo." + +#: course/lesson-18-for-loops/lesson.tres:251 +msgid "Using a for loop to move to the end of the board" +msgstr "Usando un ciclo for per arrivare alla fine della tavola" + +#: course/lesson-18-for-loops/lesson.tres:252 +msgid "" +"Once again, the robot has decided to stand at the top of the board.\n" +"\n" +"This time, use a [code]for[/code] loop in the [code]move_to_bottom()[/code] " +"function to have it move to the bottom of the board.\n" +"\n" +"The board size is determined by the [code]Vector2[/code] variable " +"[code]board_size[/code].\n" +"\n" +"The robot's starting cell is [code]Vector2(2, 0)[/code]." +msgstr "" +"Un'altra volta, il robot ha deciso di stare in cima alla tavola.\n" +"\n" +"Questa volta, usa un ciclo [code]for[/code] nella funzione " +"[code]move_to_bottom()[/code] per far sì che il robot arrivi alla fine della " +"tavola.\n" +"\n" +"La grandezza della tavola è determinata dalla variabile [code]Vector2[/code] " +"[code]board_size[/code].\n" +"\n" +"La cella iniziale del robot è [code]Vector2(2, 0)[/code]." + +#: course/lesson-18-for-loops/lesson.tres:268 +msgid "" +"Use a for loop to have our robot move from the top of the board to the " +"bottom." +msgstr "" +"Una un ciclo for per far muovere il robot dalla cima alla fine della tavola." + +#: course/lesson-18-for-loops/lesson.tres:273 +msgid "Improving code with a for loop" +msgstr "Migliorando il codice con un ciclo for" + +#: course/lesson-18-for-loops/lesson.tres:274 +msgid "" +"Use a [code]for[/code] loop to remove the duplicate code in the [code]run()[/" +"code] function.\n" +"\n" +"In this practice, we revisit the turtle and drawing rectangles.\n" +"\n" +"With our new knowledge of [code]for[/code] loops, we can condense this code " +"to take up less space and make it easier to modify.\n" +"\n" +"The turtle should draw three squares in a horizontal line. The squares " +"should be 100 pixels apart." +msgstr "" +"Usa un ciclo [code]for[/code] per rimuovere il codice duplicato nella " +"funzione [code]run()[/code].\n" +"\n" +"In questa pratica, rivisitiamo la tartaruga e l'illustrazione di " +"rettangoli.\n" +"\n" +"Con la nostra nuova conoscenza sui cicli [code]for[/code], possiamo " +"condensare questo codice per far sì che occupi meno spazio e che sia più " +"facile da modificare.\n" +"\n" +"La tartaruga dovrebbe disegnare tre quadrati in una linea orizzontale. I " +"quadrati dovrebbero essere a 100 pixel di distanza l'uno dall'altro." + +#: course/lesson-18-for-loops/lesson.tres:297 +msgid "" +"In the past we had to copy and paste code to draw multiple rectangles. Let's " +"revisit previous code and improve it with a for loop." +msgstr "" +"In passato dovevamo copiare e incollare codice per disegnare più rettangoli. " +"Rivisitiamo il precedente codice per migliorarlo con un ciclo for." + +#: course/lesson-18-for-loops/lesson.tres:301 +msgid "Introduction to For Loops" +msgstr "Introduzione Ai Cicli For" diff --git a/i18n/it/lesson-19-creating-arrays.po b/i18n/it/lesson-19-creating-arrays.po new file mode 100644 index 00000000..73972bc9 --- /dev/null +++ b/i18n/it/lesson-19-creating-arrays.po @@ -0,0 +1,307 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 10:51+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-19-creating-arrays/lesson.tres:13 +msgid "" +"The [code]range()[/code] function we saw in the previous lesson outputs a " +"list of numbers. For example, calling [code]range(3)[/code] produces the " +"list of numbers [code][0, 1, 2][/code]." +msgstr "" +"Abbiamo visto nelle lezioni precedenti che la funzione [code]range()[/code] " +"da come risultato una lista di numeri. Per esempio, chiamare la funzione " +"[code]range(3)[/code] produce la lista [code][0, 1, 2][/code]." + +#: course/lesson-19-creating-arrays/lesson.tres:33 +msgid "" +"A list of values, numbers or otherwise, has a precise name in code: we call " +"it an [i]array[/i]. So we can say calling the [code]range()[/code] function " +"produces an [i]array[/i] of numbers.\n" +"\n" +"We could directly write and use that array inside our [code]for[/code] loop " +"instead of the [code]range()[/code] function. You can run the next function " +"step-by-step to see how it works." +msgstr "" +"Un elenco di valori, numeri o altro, ha un nome preciso nel codice: lo " +"chiamiamo [i]array[/i]. Quindi possiamo dire che chiamando la funzione " +"[code]range()[/code] si ottiene un [i]array[/i] di numeri.\n" +"\n" +"Potremmo scrivere e utilizzare direttamente questo array all'interno del " +"nostro ciclo [code]for[/code] invece della funzione [code]range()[/code]. È " +"possibile eseguire la funzione successiva passo per passo per vedere come " +"funziona." + +#: course/lesson-19-creating-arrays/lesson.tres:55 +msgid "" +"As you can see, the code still works the same. Notice that when we create a " +"[code]for[/code] loop, we also create a local variable to which the loop " +"assigns one value per iteration. Above, we named it [code]number[/code] " +"because the array we loop over contains three numbers (0, 1, and 2).\n" +"\n" +"But we could name it anything we'd like!" +msgstr "" +"Come si può vedere, il codice funziona ancora allo stesso modo. Notate che " +"quando creiamo un ciclo [code]for[/code], creiamo anche una variabile locale " +"alla quale il ciclo assegna un valore per ogni iterazione. Qui sopra " +"l'abbiamo chiamata [code]numero[/code], perché l'array su cui eseguiamo il " +"ciclo contiene tre numeri (0, 1 e 2).\n" +"\n" +"Ma possiamo chiamarla come vogliamo!" + +#: course/lesson-19-creating-arrays/lesson.tres:77 +msgid "" +"If we \"unwrap\" the [code]for[/code] loop above, we'd get the following " +"code with the exact same behaviour:" +msgstr "" +"Se \"scartiamo\" il ciclo [code]for[/code] di cui sopra, otterremo il " +"seguente codice con lo stesso identico comportamento:" + +#: course/lesson-19-creating-arrays/lesson.tres:95 +msgid "The syntax of arrays" +msgstr "La sintassi degli array" + +#: course/lesson-19-creating-arrays/lesson.tres:97 +msgid "We write arrays this way in GDScript." +msgstr "Scriviamo gli array in questo modo in GDScript." + +#: course/lesson-19-creating-arrays/lesson.tres:117 +msgid "" +"You start with an opening square bracket. Then, you write comma-separated " +"values that compose the array. Finally, you need a closing square bracket to " +"complete the array.\n" +"\n" +"Here are a couple of valid arrays. Notice how you can mix values, and how " +"they don't need to follow one another." +msgstr "" +"Inizi aprendo una parentesi quadra. Poi, scrivi i valori che compongono " +"l'array separati da una virgola. In fine, inserisci la parentesi quadra di " +"chiusura per completare 'array.\n" +"\n" +"Ecco una serie di array validi. Nota bene che puoi usare diversi tipi di " +"valori e questi non devono conformarsi l'uno agli altri." + +#: course/lesson-19-creating-arrays/lesson.tres:139 +msgid "" +"Because arrays themselves are a value type, just like numbers or " +"[code]Vector2[/code], we can assign arrays to variables to reaccess them " +"later.\n" +"\n" +"That'll come in handy in the next lesson, where we'll use those variables in " +"loops." +msgstr "" +"Perché gli array sono lo ro stessi un tipo di valore, così come i numeri o i " +"[code]Vector2[/code], possiamo assegnare array a variabili per ri-accedervi " +"in seguito.\n" +"\n" +"Questo tornerà utile nella prossima lezione, in cui useremo queste variabili " +"all'interno di cicli." + +#: course/lesson-19-creating-arrays/lesson.tres:161 +msgid "But first, let's see [i]when[/i] you'd use an array." +msgstr "Ma prima, vediamo [i]quando[/i] dovresti usare un array." + +#: course/lesson-19-creating-arrays/lesson.tres:169 +msgid "When you use arrays" +msgstr "Quando usi gli array" + +#: course/lesson-19-creating-arrays/lesson.tres:171 +msgid "" +"In computer programming, we use arrays [i]all the time[/i].\n" +"\n" +"Precisely, you'll use them whenever you need to store a [i]list of things[/" +"i].\n" +"\n" +"You always need lists of things in games:\n" +"\n" +"- The player's party in an RPG.\n" +"- The items in the player's inventory.\n" +"- The high scores in an arcade game.\n" +"- The objects in the game world.\n" +"\n" +"All of those and many more rely on arrays." +msgstr "" +"In programmazione informatica, usiamo gli array [i]tutte le volte[/i].\n" +"\n" +"Precisamente, li userai ogniqualvolta che devi conservare una [i]lista di " +"cose[/i].\n" +"\n" +"Hai sempre bisogno di liste nei videogiochi:\n" +"\n" +"- Il party del giocatore in un RPG.\n" +"- Gli oggetti nell'inventario del giocatore.\n" +"- I record all'interno di un gioco arcade.\n" +"- Gli oggetti nel mondo di gioco.\n" +"\n" +"Tutti questi e molti altri fanno affidamento su degli array." + +#: course/lesson-19-creating-arrays/lesson.tres:190 +msgid "Using arrays to follow a path" +msgstr "Usando gli array per seguire un percorso" + +#: course/lesson-19-creating-arrays/lesson.tres:192 +msgid "" +"Let's look at a widespread use of arrays in games: finding and following a " +"path.\n" +"\n" +"In games, you need allies or monsters to find their way to their target, " +"whether it's the player or some point of interest.\n" +"\n" +"To achieve that, we use [i]pathfinding algorithms[/i]. As the name suggests, " +"those algorithms find the path between two points and allow AIs to traverse " +"the game." +msgstr "" +"Vediamo un uso diffuso degli array nei giochi: trovare e seguire un percorso." +"\n" +"\n" +"Nei giochi, è necessario che gli alleati o i mostri trovino la strada per " +"raggiungere il loro obiettivo, che sia il giocatore o un punto di interesse." +"\n" +"\n" +"Per raggiungere questo obiettivo, utilizziamo [i]algoritmi di pathfinding[/i]" +". Come suggerisce il nome, questi algoritmi trovano il percorso tra due " +"punti e permettono alle IA di attraversare il gioco." + +#: course/lesson-19-creating-arrays/lesson.tres:216 +msgid "" +"Many of those algorithms use arrays of [code]Vector2[/code] coordinates to " +"represent the path.\n" +"\n" +"Take this turtle pet. It wants to follow the robot, but there are rocks in " +"the way.\n" +"\n" +"How can we tell it where to walk to reach the robot? With an array!" +msgstr "" +"Molti di questi algoritmi usano array di coordinate in [code]Vector2[/code] " +"che rappresentato un percorso.\n" +"\n" +"Guarda questo cucciolo di tartaruga. Vuole seguire il robot, ma ci sono " +"rocce ad ostacolarla.\n" +"\n" +"Come possiamo dirle dove andare per raggiungere il robot? Con un array!" + +#: course/lesson-19-creating-arrays/lesson.tres:250 +msgid "" +"Every value in the array is a [code]Vector2[/code] and represents a cell the " +"turtle needs to walk through.\n" +"\n" +"Together, all the values in the array represent a path we can draw." +msgstr "" +"Ogni valore nell'array [code]Vector2[/code] e rappresenta una cella che la " +"tartaruga deve attraversare.\n" +"\n" +"Insieme, tutti i valori dell'array rappresentano un percorso che noi " +"possiamo designare." + +#: course/lesson-19-creating-arrays/lesson.tres:272 +msgid "" +"In upcoming lessons, you will see how we can use arrays to store player " +"inventories or design attack combos.\n" +"\n" +"For now, let's practice creating arrays." +msgstr "" +"Nelle prossime lezioni, vedrai come usiamo gli array per immagazzinare " +"inventari di giocatori o per progettare combo di attacchi.\n" +"\n" +"Per ora, facciamo pratica a creare array." + +#: course/lesson-19-creating-arrays/lesson.tres:282 +msgid "Walking to the robot" +msgstr "Arrivare fino al robot" + +#: course/lesson-19-creating-arrays/lesson.tres:283 +msgid "" +"The turtle wants to meet the robot! But it cannot find it on its own.\n" +"\n" +"Fill the [code]turtle_path[/code] array with [code]Vector2[/code] " +"coordinates indicating where the turtle should move to avoid the obstacles " +"and arrive safely to the robot.\n" +"\n" +"The turtle can move up, down, left, or right. It cannot move diagonally.\n" +"\n" +"We recommend copying and pasting to fill the array with comma-separated " +"[code]Vector2[/code] values quickly." +msgstr "" +"La tartaruga vuole incontrare il robot! Ma non può farlo da sola.\n" +"\n" +"Riempi l'array [code]turtle_path[/code] con coordinate [code]Vector2[/code] " +"che indicano dove la tartaruga dovrebbe andare per evitare gli ostacoli e " +"arrivare in sicurezza al robot.\n" +"\n" +"La tartaruga si può muovere sopra, sotto, a destra e a sinistra. Non si può " +"muovere diagoonalmente.\n" +"\n" +"Ti consigliamo di copiare e incollare per riempire rapidamente l'array con " +"valori [code]Vector2[/code] separati da virgole." + +#: course/lesson-19-creating-arrays/lesson.tres:298 +msgid "" +"Help the turtle find its way to the robot! Give it a path to follow to reach " +"the robot." +msgstr "" +"Aiuta la tartaruga ad arrivare dal robot! Dagli un percorso da seguire per " +"raggiungere il robot." + +#: course/lesson-19-creating-arrays/lesson.tres:303 +msgid "Selecting units" +msgstr "Selezionando unità" + +#: course/lesson-19-creating-arrays/lesson.tres:304 +msgid "" +"In this tactical game, the player and computer can select multiple units at " +"once. You need to call the [code]select_units()[/code] function and pass it " +"an array of [code]Vector2[/code] coordinates to know which units to select.\n" +"\n" +"Each [code]Vector2[/code] in the array represents a cell with a unit.\n" +"\n" +"You can pass arrays in function calls as arguments. As an array is a value " +"type the computer recognizes, you can pass the whole array as a single " +"function argument.\n" +"\n" +"Select all units on the board by passing the correct array to the " +"[code]select_units()[/code] function." +msgstr "" +"In questo gioco tattico, il giocatore e il computer possono selezionare più " +"unità allo stesso momento. Devi chiamare la funzione [code]select_units()[/" +"code] e passarle un array di coordinate [code]Vector2[/code] per sapere " +"quale unità selezionare.\n" +"\n" +"Ogni [code]Vector2[/code] nell'array rappresenta una cella con un'unità.\n" +"\n" +"Puoi passare array quando chiami delle funzioni come argomenti. Dato che " +"l'array è un tipo di valore che il computer riconosce, puoi passare " +"un'intero array come un singolo argomento di una funzione.\n" +"\n" +"Seleziona tutte le unità sulla tavola passandogli l'array corretto alla " +"funzione [code]select_units()[/code]." + +#: course/lesson-19-creating-arrays/lesson.tres:320 +msgid "Write an array to select all units on the board in this strategy game." +msgstr "" +"Scrivi un array per selezionare tutte le unità sulla tavola in questo gioco " +"di strategia." + +#: course/lesson-19-creating-arrays/lesson.tres:324 +msgid "Creating arrays" +msgstr "Creando array" + +#~ msgid "As you can see, the code still works the same." +#~ msgstr "Come puoi vedere, funziona ancora allo stesso modo." diff --git a/i18n/it/lesson-2-your-first-error.po b/i18n/it/lesson-2-your-first-error.po new file mode 100644 index 00000000..1f709f7f --- /dev/null +++ b/i18n/it/lesson-2-your-first-error.po @@ -0,0 +1,186 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Federico Armagno , 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 09:52+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.0\n" + +#: course/lesson-2-your-first-error/lesson.tres:14 +msgid "" +"When you program, you are bound to run into errors. Tons of them.\n" +"\n" +"But you shouldn't worry! On the computer, [b]errors are a good thing[/b].\n" +"\n" +"You will encounter errors, and [i]that's okay[/i]: every programmer does. " +"Especially professionals.\n" +"\n" +"At school, maybe you learned that mistakes are a bad thing. When you code " +"something, it's not the case: [b]errors help you write correct programs[/b] " +"because they show you what is wrong in your programs." +msgstr "" +"Mentre programmi, ti capiterà di trovare degli errori. Molti errori.\n" +"\n" +"Ma niente paura! Quando programmi, [b]gli errori sono una cosa buona[/b].\n" +"\n" +"Troverai degli errori, e [i]va bene così[/i]: succede a tutti i " +"programmatori. Soprattutto ai migliori.\n" +"\n" +"A scuola, forse ti hanno insegnato che gli errori sono qualcosa di negativo. " +"Quando scrivi codice non è affatto così: [b]gli errori ti aiutano a scrivere " +"i tuoi programmi in maniera corretta[/b] perché ti mostrano cosa c'è di " +"sbagliato nei tuoi programmi." + +#: course/lesson-2-your-first-error/lesson.tres:30 +msgid "" +"A code error looks like this. It's a message that tells you some bit of your " +"code doesn't work." +msgstr "" +"Un errore si presenta così. È un messaggio che ti avvisa che parte del tuo " +"codice non va bene." + +#: course/lesson-2-your-first-error/lesson.tres:48 +msgid "Making errors friendlier" +msgstr "Rendere gli errori meno spaventosi" + +#: course/lesson-2-your-first-error/lesson.tres:50 +msgid "" +"Error messages can look a bit cryptic. This is because they're designed by " +"programmers, for trained programmers.\n" +"\n" +"We added an error translator in this app that will help you get started.\n" +"\n" +"It shows you why an error happens and what the message means. It also gives " +"you some tips on how to fix it." +msgstr "" +"I messaggi d'errore potrebbero sembrare un po' criptici. Questo perché sono " +"pensati da programmatori, per programmatori allenati.\n" +"\n" +"Abbiamo aggiunto un traduttore di errori in questa app per farti iniziare a " +"prendere dimestichezza con gli errori.\n" +"\n" +"Ti mostra perché c'è un errore ed il suo significato. Inoltre fornisce " +"suggerimenti su come risolverlo." + +#: course/lesson-2-your-first-error/lesson.tres:74 +msgid "" +"Error messages are designed on purpose by fellow programmers who came before " +"you. They anticipated you might have specific issues and wanted to help you " +"fix them.\n" +"\n" +"You shouldn't think of errors as failures. They are like mentors helping you " +"from the past. Importantly, errors won't break your computer. At least not " +"with GDScript because it's a pretty safe language.\n" +"\n" +"Ultimately, you want to fix all the errors in your program. Understanding " +"what is causing the errors, with the help of error messages, is key to " +"fixing them." +msgstr "" +"I messaggi d'errore sono stati progettati apposta da altri programmatori " +"prima di te. Avevano previsto che avresti potuto avere dei problemi " +"specifici.\n" +"\n" +"Non dovresti vedere gli errori come fallimenti. Sono insegnamenti che ti " +"aiutano a programmare meglio. Non preoccuparti, gli errori non possono " +"creare problemi al tuo computer. Quantomeno non con GDScript, che è un " +"linguaggio piuttosto sicuro.\n" +"\n" +"In definitiva, vuoi risolvere tutti gli errori del programma. La " +"comprensione della causa degli errori, con l'aiuto dei messaggi di errore, è " +"fondamentale per risolverli." + +#: course/lesson-2-your-first-error/lesson.tres:86 +msgid "Are error messages a good or a bad thing in code?" +msgstr "Nel codice, i messaggi di errore sono una cosa buona o cattiva?" + +#: course/lesson-2-your-first-error/lesson.tres:89 +msgid "" +"Yes, error messages are here to help you!\n" +"\n" +"Pay attention to them, and do your best to read and understand them. With " +"experience, you'll learn to make your code work more reliably thanks to " +"error messages." +msgstr "" +"Sì, gli errori sono qui per aiutarti!\n" +"\n" +"Prestaci attenzione e fai del tuo meglio per leggerli e capirli. Col tempo, " +"imparerai a scrivere del codice più affidabile grazie ai messaggi d'errore." + +#: course/lesson-2-your-first-error/lesson.tres:92 +#, fuzzy +msgid "They're bad: error messages are always bad." +msgstr "Sono negativi: gli errori sono sempre negativi." + +#: course/lesson-2-your-first-error/lesson.tres:92 +#: course/lesson-2-your-first-error/lesson.tres:93 +msgid "They're good: they're here to help." +msgstr "Buona: sono qui per aiutarti." + +#: course/lesson-2-your-first-error/lesson.tres:102 +msgid "" +"Okay, let's see an error in action. Once again, click the [i]Practice[/i] " +"button below to face your first real error." +msgstr "" +"Va bene, vediamo un errore in azione. Premi nuovamente il tasto [i]Fai " +"pratica[/i] per affrontare il tuo primo vero errore." + +#: course/lesson-2-your-first-error/lesson.tres:110 +msgid "Fix Your First Error" +msgstr "Risolvi Il Tuo Primo Errore" + +#: course/lesson-2-your-first-error/lesson.tres:111 +msgid "" +"This code is incorrect and will cause an error when you try to run it.\n" +"\n" +"The code defines an empty function named [code]this_code_is_wrong[/code].\n" +"\n" +"To work, the function should use the [code]return[/code] keyword. But this " +"keyword is currently inside a comment, which the computer ignores.\n" +"\n" +"Test the current code by pressing the [i]Run[/i] button.\n" +"\n" +"Then, remove the comment sign (#) to make the code valid.\n" +"\n" +"Be careful not to remove the spacing before [code]return[/code]! Otherwise, " +"that'll cause another error. You may try that too, if you feel like it." +msgstr "" +"Questo codice non è corretto e causerà un errore se provi ad eseguirlo.\n" +"\n" +"Il codice che vedi definisce una funzione vuota chiamata " +"[code]this_code_is_wrong[/code].\n" +"\n" +"Per fare in modo che funzioni, al suo interno dovrebbe essere usata la " +"parola chiave [code]return[/code]. Però questa parola chiave è al momento in " +"un commento, che il computer ignora.\n" +"\n" +"Prova questo codice premendo il tasto [i]Esegui[/i].\n" +"\n" +"Dopodiché cancella il segno che indica l'inizio di un commento (#) per " +"rendere valido quel codice.\n" +"\n" +"Sii attento a non cancellare gli spazi prima del [code]return[/code]! " +"Altrimenti causerai un errore. Se vuoi scoprire quale, potresti anche " +"provarci." + +#: course/lesson-2-your-first-error/lesson.tres:131 +msgid "There's an error in this code. We need you to fix it!" +msgstr "C'è un errore in questo codice. Prova a risolverlo!" + +#: course/lesson-2-your-first-error/lesson.tres:135 +msgid "Your First Error" +msgstr "Il Tuo Primo Errore" diff --git a/i18n/it/lesson-20-looping-over-arrays.po b/i18n/it/lesson-20-looping-over-arrays.po new file mode 100644 index 00000000..6c71bf25 --- /dev/null +++ b/i18n/it/lesson-20-looping-over-arrays.po @@ -0,0 +1,309 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2022-03-26 17:50+0100\n" +"PO-Revision-Date: 2022-06-30 14:20+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-20-looping-over-arrays/lesson.tres:14 +msgid "" +"We used the [code]range()[/code] function in combination with [code]for[/" +"code] loops." +msgstr "" +"Abbiamo usato la funzione [code]range()[/code] in combinazione con i cicli " +"[code]for[/code]." + +#: course/lesson-20-looping-over-arrays/lesson.tres:34 +msgid "" +"The [code]range()[/code] function produced an array that the [code]for[/" +"code] keyword could loop over.\n" +"\n" +"We can give [code]for[/code] loops [i]any[/i] array, and they will loop over " +"them just the same.\n" +"\n" +"Instead of using the [code]range()[/code] function, we could manually write " +"the numbers and get the same result." +msgstr "" +"La funzione [code]range()[/code] ha prodotto un array che il ciclo " +"[code]for[/code] può utilizzare.\n" +"\n" +"Possiamo dare ai cicli [code]for[/code] [i]ogni[/i] array ed eseguirà il " +"ciclo come al solito.\n" +"\n" +"Invece di utilizzare la funzione [code]range()[/code], potremmo manualmente " +"scrivere i numeri e ricevere lo stesso risultato." + +#: course/lesson-20-looping-over-arrays/lesson.tres:58 +msgid "" +"For each element inside the array, the [code]for[/code] loop extracts it, " +"stores it in the temporary variable named [code]number[/code], and executes " +"the loop's code once.\n" +"\n" +"Inside the loop, you can access the [code]number[/code] variable, which " +"changes on each [i]iteration[/i].\n" +"\n" +"The code works regardless of the array or where you store it. Often, you " +"will store arrays in variables for easy access." +msgstr "" +"Per ogni elemento dell'array, il ciclo [code]for[/code] li estrae, li " +"conserva in una variabile temporanea chiamata [code]number[/code] ed esegue " +"il codice nel ciclo una volta.\n" +"\n" +"Dentro il ciclo, puoi avere accesso alla variabile [code]number[/code], che " +"cambia ad ogni [i]iterazione[/i].\n" +"\n" +"Il codice opera indipendentemente dall'array o dove lo conservi. Spesso, " +"conserverai gli array in variabili per un più facile accesso." + +#: course/lesson-20-looping-over-arrays/lesson.tres:80 +msgid "What will this code print?" +msgstr "Cosa stamperà questo codice?" + +#: course/lesson-20-looping-over-arrays/lesson.tres:81 +msgid "" +"[code]var numbers = [0, 1, 2]\n" +"for number in numbers:\n" +" print(number)\n" +"[/code]" +msgstr "" +"[code]var numbers = [0, 1, 2]\n" +"for number in numbers:\n" +" print(number)\n" +"[/code]" + +#: course/lesson-20-looping-over-arrays/lesson.tres:86 +msgid "" +"Compared to previous examples, we store the array in the [code]numbers[/" +"code] variable. Using the [code]numbers[/code] variable in our [code]for[/" +"code] loop allows the computer to access the array of numbers like before.\n" +"\n" +"We have three numbers in the array: [code]0[/code], [code]1[/code], and " +"[code]2[/code].\n" +"\n" +"The loop extracts each of them sequentially and assigns it to the " +"[code]number[/code] temporary variable. As the loop processes each number, " +"the output will print [code]0[/code], then [code]1[/code], then [code]2[/" +"code], each on a separate line." +msgstr "" +"A confronto con gli esempi precedenti, conserviamo l'array nella variabile " +"[code]numbers[/code]. Usare la variabile [code]numbers[/code] nel nostro " +"ciclo [code]for[/code] consente al computer di accedere all'array di numeri " +"come prima.\n" +"\n" +"Abbiamo tre numeri in questo array: [code]0[/code], [code]1[/code] e " +"[code]2[/code].\n" +"\n" +"Il ciclo estrae ognuno di questi in modo sequenziale e lo assegna alla " +"variabile temporanea [code]number[/code]. Il ciclo procedendo ad ogni " +"numero, risulterà nella stampa di [code]0[/code], poi [code]1[/code], poi " +"[code]2[/code], ognuno in una linea separata." + +#: course/lesson-20-looping-over-arrays/lesson.tres:91 +#: course/lesson-20-looping-over-arrays/lesson.tres:92 +msgid "0, 1, and 2" +msgstr "0, 1 e 2" + +#: course/lesson-20-looping-over-arrays/lesson.tres:91 +msgid "1, 2, and 3" +msgstr "1, 2 e 3" + +#: course/lesson-20-looping-over-arrays/lesson.tres:91 +msgid "0, 0, and 0" +msgstr "0, 0 e 0" + +#: course/lesson-20-looping-over-arrays/lesson.tres:99 +msgid "Making the turtle walk, with a loop" +msgstr "Facendo camminare la tartaruga, con un ciclo" + +#: course/lesson-20-looping-over-arrays/lesson.tres:101 +msgid "" +"In the previous lesson, you made a turtle walk along a path by writing " +"[code]Vector2[/code] coordinates in an array." +msgstr "" +"Nella lezione precedente, hai fatto camminare la tartaruga lungo un percorso " +"scrivendo delle coordinate [code]Vector2[/code] in un array." + +#: course/lesson-20-looping-over-arrays/lesson.tres:121 +msgid "" +"It's a [code]for[/code] loop that makes the turtle walk along the path.\n" +"\n" +"The loop works like this: for each coordinate in the array, it moves the " +"turtle once to that cell." +msgstr "" +"Quello che fa camminare la tartaruga lungo il percorso è il ciclo " +"[code]for[/code].\n" +"\n" +"Il ciclo funziona così: per ogni coordinata nell'array, muove la tartaruga " +"una volta verso quella cella." + +#: course/lesson-20-looping-over-arrays/lesson.tres:143 +msgid "It's the same principle with unit selection." +msgstr "Lo stesso principio si applica per la selezione di unità." + +#: course/lesson-20-looping-over-arrays/lesson.tres:163 +msgid "" +"For each coordinate in an array named [code]selected_units[/code], we check " +"if there is a unit in that cell. If so, we select it. \n" +"\n" +"In that case, we use an array, a loop, and a condition together." +msgstr "" +"Per ogni coordinata nell'array chiamato [code]selected_units[/code], " +"controlliamo se c'è un'unità in quella cella. Se è così, la selezioniamo. \n" +"\n" +"In questo caso, usiamo un array, un ciclo e una condizione tutti insieme." + +#: course/lesson-20-looping-over-arrays/lesson.tres:185 +msgid "" +"The code above uses several features you haven't learned yet:\n" +"\n" +"- In a condition, the [code]in[/code] keyword allows you to check if a value " +"exists [i]in[/i] an array.\n" +"- The array's [code]append()[/code] function appends a new value at the end " +"of the array.\n" +"\n" +"Notice the use of a period after the [code]selected_units[/code] variable, " +"to call the [code]append()[/code] function. It's because this function " +"exists only on arrays.\n" +"\n" +"When functions exist only on a specific value type, you write a dot after " +"the value to call the function on it.\n" +"\n" +"We'll revisit those two features again in the following lessons." +msgstr "" +"Il codice qua sopra usa diverse funzionalità che non hai ancora imparato:\n" +"\n" +"- In una condizione, la parola chiave [code]in[/code] ti permette di " +"controllare se un valore esiste [i]in[/i] un array.\n" +"- La funzione [code]append()[/code] degli array accoda una nuova variabile " +"alla fine di un array.\n" +"\n" +"Nota bene l'uso del punto dopo la variabile [code]selected_units[/code], per " +"chiamare la funzione [code]append()[/code]. Questo avviene perchè questa " +"funzione esiste solo sugli array.\n" +"\n" +"Quando le funzioni esistono solo su un particolare tipo di valore, inserisci " +"un punto dopo il valore per chiamare la funzione su di esso.\n" +"\n" +"Rivisiteremo quelle due funzionalità di nuovo nelle prossime lezioni." + +#: course/lesson-20-looping-over-arrays/lesson.tres:204 +msgid "" +"The beauty of loops is that they work regardless of the size of your " +"arrays. \n" +"\n" +"The code just works whether you have one or ten thousand units to select. It " +"is all accomplished with only a couple lines of code.\n" +"\n" +"That's the power of computer programming.\n" +"\n" +"In the following practices, you will use arrays combined with [code]for[/" +"code] loops to achieve similar results." +msgstr "" +"La bellezza dei cicli sta nel fatto che funzionano indipendentemente dalla " +"grandezza dell'array. \n" +"\n" +"Il codice opera semplicemente, che tu abbia uno o dieci mila unità da " +"selezionare. Ed è tutto realizzato con poche righe di codice.\n" +"\n" +"Questo è il potere della programmazione.\n" +"\n" +"Nelle seguenti pratiche, userai array insieme a dei cicli [code]for[/code] " +"per raggiungere risultati simili." + +#: course/lesson-20-looping-over-arrays/lesson.tres:218 +msgid "Move the robot along the path" +msgstr "Sposta il robot lungo il percorso" + +#: course/lesson-20-looping-over-arrays/lesson.tres:219 +msgid "" +"Our AI pathfinding algorithm provided a path for the robot to move to the " +"right edge of the grid. Your task is to use a [code]for[/code] loop to make " +"the robot move.\n" +"\n" +"To move the robot, call [i]its[/i] [code]move_to()[/code] function, like so: " +"[code]robot.move_to()[/code].\n" +"\n" +"The [code]move_to()[/code] function only exists on the robot, which is why " +"you need to access it this way." +msgstr "" +"Il nostro algoritmo di pathfinding ci ha fornito un percorso per portare il " +"robot all'angolo destro della griglia. Il tuo obiettivo è utilizzare un " +"ciclo [code]for[/code] per far muovere un robot.\n" +"\n" +"Per muovere il robot, chiama la [i]sua[/i] funzione [code]move_to()[/code], " +"così: [code]robot.move_to()[/code].\n" +"\n" +"La funzione [code]move_to()[/code] esiste solo sul robot, per questo motivo " +"devi accedervi in questo modo." + +#: course/lesson-20-looping-over-arrays/lesson.tres:235 +msgid "" +"Our AI pathfinding algorithm is giving us a path to move the robot. Now, you " +"need to make the turtle move along the path." +msgstr "" +"Il nostro algoritmo pathfinding ci fornisce un percorso per fa muovere il " +"robot. Ora, devi far muovere la tartaruga lungo il percorso." + +#: course/lesson-20-looping-over-arrays/lesson.tres:240 +msgid "Back to the drawing board" +msgstr "Ricominciamo da capo" + +#: course/lesson-20-looping-over-arrays/lesson.tres:241 +msgid "" +"We want to draw many rectangles, something surprisingly common in games.\n" +"\n" +"However, writing this code by hand can get tedious. Instead, you could store " +"the size of your shapes in arrays and use a loop to draw them all in " +"batches.\n" +"\n" +"That's what you'll do in this practice.\n" +"\n" +"Use a [code]for[/code] loop to draw every rectangle in the " +"[code]rectangle_sizes[/code] array with the [code]draw_rectangle()[/code] " +"function.\n" +"\n" +"The rectangles shouldn't overlap or cross each other. To avoid that, you'll " +"need to call the [code]jump()[/code] function." +msgstr "" +"Vogliamo disegnare molti rettangoli, qualcosa di sorprendentemente comune " +"nei giochi.\n" +"\n" +"Tuttavia, scrivere questo codice a mano può essere tedioso. Invece, potresti " +"conservare la grandezza delle tue forme in degli array e usare un ciclo per " +"disegnale tutte in blocchi.\n" +"\n" +"Questo è quello che farai in questa pratica.\n" +"\n" +"Usa un ciclo [code]for[/code] per disegnare ogni rettangolo nell'array " +"[code]rectangle_sizes[/code] con la funzione [code]draw_rectangle()[/code].\n" +"\n" +"I rettangoli non dovrebbero intersecarsi l'un l'altro. Per evitare questo, " +"devi chiamare la funzione [code]jump()[/code]." + +#: course/lesson-20-looping-over-arrays/lesson.tres:261 +msgid "" +"The drawing turtle makes its comeback. Fear not! Armed with loops, you'll " +"make it draw faster than ever before." +msgstr "" +"La tartaruga che disegna ritorna. Non ti preoccupare! Armato di cicli, la " +"farai disegnare più veloce ché mai." + +#: course/lesson-20-looping-over-arrays/lesson.tres:265 +msgid "Looping over arrays" +msgstr "Ciclando degli array" diff --git a/i18n/it/lesson-21-strings.po b/i18n/it/lesson-21-strings.po new file mode 100644 index 00000000..66d68d3d --- /dev/null +++ b/i18n/it/lesson-21-strings.po @@ -0,0 +1,216 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2022-06-19 11:18+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-21-strings/lesson.tres:14 +msgid "" +"Throughout this course, we've mostly stored numbers in variables. But what " +"if we wanted to store a player's name?\n" +"\n" +"This is where strings help us.\n" +"\n" +"Strings are instrumental in games and applications. We use them to display " +"information such as the description of a spell or the name of a character." +msgstr "" +"Durante questo corso, abbiamo conservato maggiormente numeri nelle " +"variabili. Ma come puoi fare per immagazzinare il nome del giocatore?\n" +"\n" +"Ecco dove le stringhe possono aiutarci.\n" +"\n" +"Le stringhe hanno una funzione strumentale nei giochi e nelle applicazioni. " +"Le usiamo per mostrare informazioni come le descrizioni di un'incantesimo o " +"il nome di un personaggio." + +#: course/lesson-21-strings/lesson.tres:36 +msgid "What are strings" +msgstr "Cosa sono le stringhe" + +#: course/lesson-21-strings/lesson.tres:38 +msgid "" +"A [code]String[/code] is a value type which holds text. To create a " +"[code]String[/code], you write text wrapped in quotation marks ([code]\"\"[/" +"code]). For example: [code]\"This is a text string.\"[/code]\n" +"\n" +"The quotation marks differentiate strings from other value types and " +"function names.\n" +"\n" +"You may remember we've used strings before in previous lessons." +msgstr "" +"Una [code]String[/code] è un tipo di valore che contiene testo. Per creare " +"una [code]String[/code], scrivi il testo avvolto da virgolette ([code]\"\"[/" +"code]). Per esempio: [code]\"Questa è una stringa\"[/code].\n" +"\n" +"Le virgolette differenziano le stringhe da altri tipi di valori e nomi di " +"funzioni.\n" +"\n" +"Potresti ricordare che abbiamo già usato le stringhe nelle lezioni " +"precedenti." + +#: course/lesson-21-strings/lesson.tres:62 +msgid "" +"Under the hood, strings are arrays of characters. In fact, we can use a " +"[code]for[/code] loop to loop through the characters of a [code]String[/" +"code] as we would with any other array." +msgstr "" +"Dietro le quinte, le stringhe sono array di caratteri. Infatti, possiamo " +"usare un ciclo [code]for[/code] per analizzare ciclicamente i caratteri di " +"una [code]String[/code] come potremmo fare in un qualsiasi altro array." + +#: course/lesson-21-strings/lesson.tres:80 +msgid "Which of these are strings?" +msgstr "Quali tra queste sono stringhe?" + +#: course/lesson-21-strings/lesson.tres:83 +msgid "" +"[code]\"1\"[/code] and [code]\"name\"[/code] are strings.\n" +"\n" +"[code]\"1\"[/code] only contains a character and [i]doesn't[/i] represent " +"the number [code]1[/code].\n" +"\n" +"[code]\"name\"[/code] is made up of four different characters." +msgstr "" +"[code]\"1\"[/code] e [code]\"nome\"[/code] sono stringhe.\n" +"\n" +"[code]\"1\"[/code] contiene soltanto un carattere e [i]non[/i] rappresenta " +"il numero [code]1[/code].\n" +"\n" +"[code]\"nome\"[/code] è composto da quattro caratteri differenti." + +#: course/lesson-21-strings/lesson.tres:88 +msgid "1" +msgstr "1" + +#: course/lesson-21-strings/lesson.tres:88 +#: course/lesson-21-strings/lesson.tres:89 +msgid "\"1\"" +msgstr "\"1\"" + +#: course/lesson-21-strings/lesson.tres:88 +#: course/lesson-21-strings/lesson.tres:89 +msgid "\"name\"" +msgstr "\"nome\"" + +#: course/lesson-21-strings/lesson.tres:96 +msgid "Why we use strings" +msgstr "Perchè usiamo le stringhe" + +#: course/lesson-21-strings/lesson.tres:118 +msgid "" +"Every piece of text you see in this app is a string that Godot is displaying " +"for us.\n" +"\n" +"Much like how [code]Vector2[/code] variables make calculations easier, " +"[code]string[/code] variables come with many helper functions and tricks we " +"can use.\n" +"\n" +"We can use arrays to store strings too. This is useful for chaining " +"animations. In this example, the [code]play_animation()[/code] plays a " +"specific animation." +msgstr "" +"Ogni tratto di testo che vedi in quest'applicazione è una stringa che Godot " +"sta mostrando per noi.\n" +"\n" +"Molto come le variabili [code]Vector2[/code] rendano i calcoli semplici, le " +"variabili [code]stringa[/code] vengono utilizzati attraverso molte funzioni " +"di supporto e trucchetti che possiamo usare.\n" +"\n" +"Possiamo usare gli array pure per conservare stringhe. Questo è comodo per " +"concatenare animazioni. In questo esempio, la funzione [code]play_animation()" +"[/code] riproduce una specifica animazione." + +#: course/lesson-21-strings/lesson.tres:142 +msgid "" +"In the next few practices, we'll use strings in combination with different " +"concepts from earlier lessons." +msgstr "" +"Nelle prossime pratiche, useremo le stringhe in combinazione con concetti " +"differenti di lezioni precedenti." + +#: course/lesson-21-strings/lesson.tres:150 +msgid "Creating string variables" +msgstr "Creando variabili stringa" + +#: course/lesson-21-strings/lesson.tres:151 +msgid "" +"Currently, the robot has a number stored in the [code]robot_name[/code] " +"variable. \n" +"\n" +"Change the [code]robot_name[/code] variable so that it's a string instead. " +"You can give it any name you'd like." +msgstr "" +"Al momento, il robot ha un numero conservato nella variabile " +"[code]robot_name[/code].\n" +"\n" +"Cambia la variabile [code]robot_name[/code] in modo tale che questo " +"piuttosto sia una stringa. Gli puoi dare il nome che ti pare." + +#: course/lesson-21-strings/lesson.tres:163 +msgid "Give the robot a readable name using a string stored in a variable." +msgstr "" +"Dà al robot un nome leggibile usando una stringa conservata in una variabile." + +#: course/lesson-21-strings/lesson.tres:168 +msgid "Using an array of strings to play a combo" +msgstr "Usando un array di stringhe per riprodurre una combo" + +#: course/lesson-21-strings/lesson.tres:169 +#, fuzzy +msgid "" +"In this practice, we'll chain together animations using an array of strings. " +"You might find such combinations in fighting games.\n" +"\n" +"The robot has the following animation names:\n" +"\n" +"- [code]jab[/code] (makes the robot perform a quick punch)\n" +"- [code]uppercut[/code] (the robot uses a powerful jumping punch)\n" +"\n" +"Populate the combo array with animation names as strings.\n" +"\n" +"Then, for each action in the array, call the [code]play_animation()[/code] " +"function to play them.\n" +"\n" +"The array should contain three values, so the robot makes these three " +"attacks: two jabs followed by one uppercut." +msgstr "" +"In questa pratica, concateneremo insieme animazioni usando array di " +"stringhe. Potresti trovare queste combinazioni nei giochi di combattimento.\n" +"\n" +"Il robot ha i nomi delle seguenti animazioni:\n" +"\n" +"-[code]jab[/code] (fa fare un rapido pugno al robot)\n" +"-[code]uppercut[/code] (fa fare un potente pugno in salto al robot)\n" +"\n" +"Popola l'array di combo con i nomi delle animazioni come stringhe.\n" +"\n" +"Dopo, per ogni azione nell'array, chiama la funzione [code]play_animation()[/" +"code] per riprodurli.\n" +"\n" +"Il robot dovrebbe eseguire le seguenti azioni in ordine: [code]jab, jab, " +"uppercut[/code]." + +#: course/lesson-21-strings/lesson.tres:190 +msgid "Define an array of strings to unleash a powerful combo." +msgstr "Definisci un array di stringhe per rilasciare una poderosa combo." + +#: course/lesson-21-strings/lesson.tres:194 +msgid "Strings" +msgstr "Stringhe" diff --git a/i18n/it/lesson-22-functions-return-values.po b/i18n/it/lesson-22-functions-return-values.po new file mode 100644 index 00000000..f7932fd6 --- /dev/null +++ b/i18n/it/lesson-22-functions-return-values.po @@ -0,0 +1,259 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2022-06-18 13:18+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-22-functions-return-values/lesson.tres:13 +msgid "" +"Until now, you learned that functions are sequences of instructions you give " +"a name and you can call any time.\n" +"\n" +"On top of that, functions can make calculations and [i]return[/i] new " +"values.\n" +"\n" +"Let's look at some examples to see why it's useful." +msgstr "" +"Fino ad ora, hai imparato che le funzioni sono sequenze di istruzioni a cui " +"attribuisci un nome, che puoi chiamare ogni volta che ne hai la necessità.\n" +"\n" +"Oltre a questo, le funzioni possono aiutarci a fare calcoli e [i]farci " +"ritornare[/i] nuovi valori.\n" +"\n" +"Guardiamo qualche esempio per vedere perchè è utile." + +#: course/lesson-22-functions-return-values/lesson.tres:25 +msgid "Built-in functions that return a value" +msgstr "Funzioni predefinite che ritornano un valore" + +#: course/lesson-22-functions-return-values/lesson.tres:27 +msgid "" +"Many functions built into GDScript make calculations and return a new " +"value.\n" +"\n" +"For example, the [code]round()[/code] function takes a decimal number as an " +"argument and gives you back a new number rounded to the nearest digit." +msgstr "" +"Molte funzioni predefinite in GDScript svolgono calcoli e ritornano nuovi " +"valori.\n" +"\n" +"Per esempio, la funzione [code]round()[/code] accetta un valore decimale " +"come argomento e restituisce un nuovo numero intero arrotondato alla cifra " +"più vicina." + +#: course/lesson-22-functions-return-values/lesson.tres:49 +#, fuzzy +msgid "" +"Imagine you have a game where you track the player's health as a percentage, " +"a decimal number going from [code]0.0[/code] to [code]100.0[/code].\n" +"\n" +"When displaying the health on the interface, you don't want to show the " +"decimal part. In that case, you may use the [code]round()[/code] function, " +"like so." +msgstr "" +"Immagina di star lavorando ad un gioco in cui tieni conto della vita del " +"giocatore come una percentuale, un numero decimale che va da [code]0.0[/" +"code] a [code]100.0[/code].\n" +"\n" +"Quando mostri la vita sull'interfaccia utente, non vuoi mostrare anche la " +"parte decimale. In questo caso, potresti dunque usare la funzione " +"[code]round()[/code], in questo modo." + +#: course/lesson-22-functions-return-values/lesson.tres:71 +msgid "" +"Notice how we assign the result of the function call to a variable. Because " +"the [code]round()[/code] function returns a [i]new[/i] value, we need to " +"either store the result or use the value immediately.\n" +"\n" +"Above, we assigned it to a variable, but you could also do the following." +msgstr "" +"Nota bene come assegniamo il risultato della funzione ad una variabile. " +"Questo poiché la funzione [code]round()[/code] riporta un [i]nuovo[/i] " +"valore di cui dobbiamo o conservare il risultato o usare immediatamente.\n" +"\n" +"Sopra, lo abbiamo assegnato ad una variabile, ma potresti anche fare così." + +#: course/lesson-22-functions-return-values/lesson.tres:93 +msgid "" +"You can assign the return value of a function call if you plan on using it " +"more than once." +msgstr "" +"Puoi assegnare il risultato della funzione ad una variabile se intendi " +"riutilizzarlo successivamente." + +#: course/lesson-22-functions-return-values/lesson.tres:101 +msgid "A cooler example: lerp()" +msgstr "Un esempio più interessante: lerp()" + +#: course/lesson-22-functions-return-values/lesson.tres:103 +msgid "" +"The [code]lerp()[/code] function, short for [i]linear interpolate[/i], " +"calculates and returns a weighted average between two values.\n" +"\n" +"It takes three arguments: the two values to average and a value between " +"[code]0.0[/code] and [code]1.0[/code] to skew the result.\n" +"\n" +"In game programming, it's used to animate things moving towards a target " +"with a single line of code." +msgstr "" +"La funzione [code]lerp()[/code], diminutivo di [i]interpolazione lineare[/" +"i], calcola e riporta la media ponderata tra due valori.\n" +"\n" +"Questa necessita di tre argomenti: i primi due sono i valori da interpolare " +"e l'ultimo è un valore compreso tra [code]0.0[/code] e [code]1.0[/code] che " +"determina quanto velocemente avviene l'interpolazione.\n" +"\n" +"Nella programmazione di videogiochi, viene spesso utilizzato per animare " +"cose che si muovono verso un obiettivo con una singola linea di codice." + +#: course/lesson-22-functions-return-values/lesson.tres:137 +msgid "" +"Every frame, the code calculates a position somewhere between the turtle and " +"the mouse cursor. The [code]lerp()[/code] function takes care of " +"everything.\n" +"\n" +"It's not the most robust approach for smooth movement, as you'll learn in " +"the future, but it's a helpful function nonetheless." +msgstr "" +"Ogni frame, il codice calcola la posizione circa la tartaruga e il cursore " +"del mouse. La funzione [code]lerp()[/code] fa tutto il necessario.\n" +"\n" +"Non è l'approccio perfetto per un movimento fluido, come imparerai in futuro " +"esistono modi migliori, ma è comunque una funzione molto utile." + +#: course/lesson-22-functions-return-values/lesson.tres:147 +msgid "Writing a function that returns a value" +msgstr "Scrivendo una funzione che ritorna un valore" + +#: course/lesson-22-functions-return-values/lesson.tres:149 +#, fuzzy +msgid "" +"You can make [i]your[/i] functions return values.\n" +"\n" +"To make a function return a value, you use the [code]return[/code] keyword " +"followed by the value in question.\n" +"\n" +"In previous lessons, we had characters walking on grids.\n" +"\n" +"And for those practices, you were working directly with cell coordinates.\n" +"\n" +"Well, cell coordinates don't correspond to positions on the screen. To find " +"the center of any cell on the screen, we need to convert the cell's " +"coordinates to a position on the screen, in pixels." +msgstr "" +"Puoi creare anche [i]tu[/i] funzioni che ritornano valori. \n" +"\n" +"Per far si che la tua funzione ritorni un valore, puoi usare la parola " +"chiave [code]return[/code] seguita dal valore in questione.\n" +"\n" +"Nelle lezioni precedenti, avevamo personaggi che si muovevano su griglie.\n" +"\n" +"In quelle pratiche hai sperimentato direttamente con le coordinate di " +"celle.\n" +"\n" +"Beh, le coordinate delle celle non corrispondono con posizioni nello " +"schermo, dunque dobbiamo convertire la posizione nelle celle con la " +"posizione nello schermo." + +#: course/lesson-22-functions-return-values/lesson.tres:177 +msgid "" +"To do so, we use a function. The function does two things:\n" +"\n" +"1. First, it multiplies the cell coordinates by the cell size, which gives " +"us the position of the cell's top-left corner on the screen, in pixels.\n" +"2. Then, we add half of the cell size to get the center of the cell.\n" +"\n" +"The function returns the result, allowing us to store it in a variable." +msgstr "" + +#: course/lesson-22-functions-return-values/lesson.tres:202 +msgid "" +"The [code]return[/code] keyword returns the value to the code calling the " +"function. You'll receive the result where you call the function." +msgstr "" +"La parola chiave [code]return[/code] riporta il valore nella stringa di code " +"in cui viene chiamata la funzione. Riceverai dunque il risultato della " +"funzione nel punto in cui la chiami." + +#: course/lesson-22-functions-return-values/lesson.tres:222 +#, fuzzy +msgid "" +"Some functions return values, and some do not. During practices, you can " +"learn which functions return a value using the documentation panel. It will " +"display if the practice requires using specific functions or variables.\n" +"\n" +"There, functions that start with the term [code]void[/code] do not return a " +"value. Any other term means the function does return a value. You'll learn " +"more about what other terms mean in a couple of lessons when we explore " +"value [i]types[/i].\n" +"\n" +"For now, let's practice returning values from functions!" +msgstr "" +"Alcune funzioni ritornano valori e altre no. Puoi imparare quali funzioni " +"danno come risultato dei valori usando il pannello di documentazione nella " +"sezione di pratica.\n" +"\n" +"Lì, le funzioni che iniziano con il termine [code]void[/code] non riportano " +"alcun valore. Al contrario se è presente un termine differente la funzione " +"riporta un valore. Imparerai di più sugli altri termini nelle lezioni " +"successive in cui esploreremo i [i]tipi[/i] di valore.\n" +"\n" +"Al momento, facciamo un po' di pratica utilizzando funzioni che riportano " +"valori!" + +#: course/lesson-22-functions-return-values/lesson.tres:234 +msgid "Converting coordinates from the grid to the screen" +msgstr "Convertendo coordinate della griglia a coordinate dello schermo" + +#: course/lesson-22-functions-return-values/lesson.tres:235 +msgid "" +"Define a function that converts a position on a grid to the screen.\n" +"\n" +"The function takes a [code]Vector2[/code] cell coordinate as an argument. It " +"should return the corresponding [code]Vector2[/code] screen coordinates at " +"the center of the cell." +msgstr "" +"Definisci una funzione che converte una posizione sulla griglia ad una " +"posizione sullo schermo.\n" +"\n" +"La funzione accetta coordinate di cella del tipo [code]Vector2[/code] come " +"argomento. Dovrebbe riportare le corrispondenti coordinate sullo schermo, " +"del tipo [code]Vector2[/code], al centro della cella." + +#: course/lesson-22-functions-return-values/lesson.tres:249 +msgid "" +"We lost the function to convert grid coordinates, but we desperately need it " +"for our game! Make the turtle move again by coding it." +msgstr "" +"Abbiamo perso la funzione che converte le coordinate nella griglia, ma ci " +"serve assolutamente per il nostro gioco! Fai in modo che la tartaruga " +"riprenda a muoversi scrivendo il codice necessario." + +#: course/lesson-22-functions-return-values/lesson.tres:253 +msgid "Functions that return a value" +msgstr "Funzioni che ritornano valori" + +#~ msgid "" +#~ "To do so, we use a function. It multiplies the cell coordinate by the " +#~ "cell size, adds half the cell size to the product, and returns the result." +#~ msgstr "" +#~ "Per fare questo, usiamo una funzione. Moltiplica la coordinata della " +#~ "cella con la sua grandezza, aggiunge metà della sua grandezza al prodotto " +#~ "e infine riporta il risultato." diff --git a/i18n/it/lesson-23-append-to-arrays.po b/i18n/it/lesson-23-append-to-arrays.po new file mode 100644 index 00000000..05a2882f --- /dev/null +++ b/i18n/it/lesson-23-append-to-arrays.po @@ -0,0 +1,316 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2022-06-12 11:07+0200\n" +"PO-Revision-Date: 2022-07-02 10:17+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-23-append-to-arrays/lesson.tres:13 +msgid "" +"In previous lessons, you learned how to create arrays to store lists of " +"values and how to loop over them. It's nice, but you won't go far with only " +"that.\n" +"\n" +"The real strength of arrays is that you can add and remove values from them " +"at any time. It allows you to [i]queue[/i] or [i]stack[/i] data." +msgstr "" +"Nelle lezioni precedenti, hai imparato come si creano gli array per " +"conservare liste di variabili e per ciclarvi attraverso. Fanno comodo, ma " +"non andrai molto lontano solo con questo.\n" +"\n" +"La vera forza degli array sta nel fatto che puoi aggiungere rimuovere valori " +"all'interno di questi quando vuoi. Ti permette di [i]accodare[/i] o " +"[i]impilare[/i] dati." + +#: course/lesson-23-append-to-arrays/lesson.tres:25 +msgid "For now, let's take another example." +msgstr "Per ora, prendiamo un altro esempio." + +#: course/lesson-23-append-to-arrays/lesson.tres:33 +msgid "Tracking orders in a restaurant management game" +msgstr "Gestire ordini in un gioco gestionale" + +#: course/lesson-23-append-to-arrays/lesson.tres:35 +msgid "" +"You're making a restaurant management game where customers place orders, and " +"you need to handle them as they come.\n" +"\n" +"In this game, customers order meals that end up in a queue. You need to " +"prepare them in the kitchen.\n" +"\n" +"In this example, we simulate orders arriving and getting completed over time." +msgstr "" +"Stai facendo un gioco gestionale riguardo un ristorante in cui i clienti " +"piazzano degli ordini e tu devi gestirli mano a mano che arrivano.\n" +"\n" +"In questo gioco, i clienti ordinano dei pasti che finiscono in una lista " +"d'attesa. Devi prepararli nella cucina.\n" +"\n" +"In questo esempio, simuliamo gli ordini che arrivano e che vengono " +"completati con il tempo." + +#: course/lesson-23-append-to-arrays/lesson.tres:59 +msgid "" +"How do you keep track of pending and completed orders? With an array!\n" +"\n" +"When a customer purchases a meal, you want to [i]append[/i] it to the array. " +"Then, as you complete a meal in the kitchen and serve it, you want to remove " +"it from the array.\n" +"\n" +"You can do that with the [code]append()[/code] and the [code]pop_front()[/" +"code] functions of the array, respectively.\n" +"\n" +"Try to read the code below before moving on. Don't worry if not everything " +"makes sense, as we'll break it all down." +msgstr "" +"Come fai a gestire la lista di tutti gli ordini da completare e completati? " +"Con un array!\n" +"\n" +"Quando un cliente compra un pasto, lo vuoi [i]accodare[/i] all'array. Dopo, " +"man mano che completi un pasto in cucina e lo servi, lo vuoi rimuovere " +"dall'array.\n" +"\n" +"Puoi fare ciò con le funzioni per array [code]append()[/code] e " +"[code]pop_front()[/code], rispettivamente.\n" +"\n" +"Prova a leggere il codice qua sotto prima di andare avanti. Non ti " +"preoccupare se qualcosa non la riesci a capire, tratteremo tutto in questa " +"lezione." + +#: course/lesson-23-append-to-arrays/lesson.tres:85 +msgid "" +"Notice how we call some functions by writing a dot after a variable name. " +"Like a given value type can have sub-variables, it can also have its own " +"functions.\n" +"\n" +"Functions like [code]append()[/code] and [code]pop_front()[/code] only exist " +"on arrays. That's why to call them, we need to access it from the array " +"using the dot: [code]array.append()[/code]." +msgstr "" +"Osserva come chiamiamo delle funzioni inserendo un punto dopo il nome della " +"variabile. Come un particolare tipo di variabile può avere delle sotto-" +"variabili, può anche avere le sue funzioni.\n" +"\n" +"Le funzioni come [code]append()[/code] e [code]pop_front()[/code] esistono " +"soltanto sugli array. Questo è il motivo per cui, per chiamarle dobbiamo " +"inserire un punto davanti l'array: [code]array.append()[/code]." + +#: course/lesson-23-append-to-arrays/lesson.tres:97 +msgid "" +"Let's break down the code.\n" +"\n" +"We queue orders in the [code]waiting_orders[/code] array by appending them " +"to the array." +msgstr "" +"Analizziamo un po' il codice.\n" +"\n" +"Accodiamo gli ordini nell'array [code]waiting_orders[/code] aggiungendoli " +"all'array." + +#: course/lesson-23-append-to-arrays/lesson.tres:119 +msgid "" +"We can use a string to represent a meal when calling the [code]add_order()[/" +"code] function." +msgstr "" +"Possiamo usare una stringa per rappresentare una pietanza quando chiamiamo " +"la funzione [code]add_order()[/code]." + +#: course/lesson-23-append-to-arrays/lesson.tres:139 +msgid "" +"When completing an order, we remove it from the [code]waiting_orders[/code] " +"array by calling its [code]pop_front()[/code] function. This function gives " +"us the order back, which allows us to assign it to a temporary variable." +msgstr "" +"Quando viene completato un ordine, lo rimuoviamo dall'array " +"[code]waiting_orders[/code] chiamando la sua funzione " +"[code]pop_front()[/code]. Questa funzione ci restituisce l'ordine e ci " +"consente ti assegnarlo ad una variabile temporanea." + +#: course/lesson-23-append-to-arrays/lesson.tres:159 +msgid "" +"We can then append the order to our [code]completed_orders[/code] array." +msgstr "" +"Possiamo accodare l'ordine al nostro array [code]completed_orders[/code]." + +#: course/lesson-23-append-to-arrays/lesson.tres:179 +msgid "" +"We call arrays like [code]waiting_orders[/code] a [i]queue[/i]: the first " +"element we append to the array is the first one we remove." +msgstr "" +"Chiamiamo gli array come [code]waiting_orders[/code] delle [i]code[/i]: il " +"primo elemento che accodiamo è il primo che rimuoviamo." + +#: course/lesson-23-append-to-arrays/lesson.tres:187 +msgid "What does #... mean?" +msgstr "Cosa significa \"#...\"?" + +#: course/lesson-23-append-to-arrays/lesson.tres:189 +msgid "" +"We write [code]#...[/code] to represent ellipses in the code. It means " +"\"we're completing the function's code.\" We use that to break down code " +"examples and make them easier to learn from.\n" +"\n" +"The hash sign itself marks the start of a code comment. It's a line the " +"computer will ignore, which is why it typically appears in grey." +msgstr "" +"Scriviamo [code]#...[/code] per rappresentare dei punti di sospensione. " +"Significa \"stiamo completando il codice della funzione\". Lo usiamo per " +"spiegare gli esempi di codice e per renderli più facili da comprendere.\n" +"\n" +"Il simbolo di hash segnala l'inizio di una riga commentata. Questa è una " +"riga che il computer ignorerà, questo è il motivo per cui tipicamente viene " +"colorata in grigio." + +#: course/lesson-23-append-to-arrays/lesson.tres:199 +msgid "Using arrays as stacks" +msgstr "Usando gli array come delle pile" + +#: course/lesson-23-append-to-arrays/lesson.tres:201 +msgid "" +"Another common use of arrays is [i]stacks[/i] of data.\n" +"\n" +"Take a factory management game where you need to retrieve materials from " +"stacks of crates. They arrive at the factory piled up vertically, and you " +"need to take them from top to bottom." +msgstr "" +"Un altro uso comune per gli array sono le [i]pile[/i] di dati.\n" +"\n" +"Prendi un gioco gestionale riguardo ad una fabbrica in cui devi prelevare i " +"materiali da pile di casse. Arrivano alla fabbrica impilate verticalmente e " +"devi prenderle dall'alto verso il basso." + +#: course/lesson-23-append-to-arrays/lesson.tres:223 +msgid "" +"To take a crate from the back of the array, this time, we use the " +"[code]pop_back()[/code] array function.\n" +"\n" +"This function removes (pops) the last value from the array and returns it to " +"you.\n" +"\n" +"Here we pop the last value of the array and print what's left of the array " +"to demonstrate how the array gets smaller." +msgstr "" +"Per prendere una cassa dalla fine dell'array, questa volta, usiamo la " +"funzione dell'array [code]pop_back()[/code].\n" +"\n" +"Questa funzione rimuove l'ultimo valore dell'array e te lo ritorna.\n" +"\n" +"Qui rimuoviamo l'ultimo valore dell'array e stampiamo quello che rimane " +"nell'array per dimostrare in che modo l'array si rimpicciolisce." + +#: course/lesson-23-append-to-arrays/lesson.tres:247 +msgid "" +"Like [code]pop_front()[/code], the function returns the value removed from " +"the array. You will often store that value in a variable.\n" +"\n" +"The value in question could be the crate's content, which you can then use " +"to give resources to the player.\n" +"\n" +"In the following practices, you will use the [code]append()[/code], " +"[code]pop_front()[/code], and [code]pop_back()[/code] array functions." +msgstr "" +"Come [code]pop_front()[/code], la funzione ritorna il valore rimosso " +"dall'array. Spesso conserverai questo valore in una variabile.\n" +"\n" +"Il valore in questione potrebbe essere il contenuto della cassa, che poi " +"puoi usare per dare le risorse al giocatore.\n" +"\n" +"Nelle seguenti pratiche, userai le funzioni array [code]append()[/code], " +"[code]pop_front()[/code] e [code]pop_back()[/code]." + +#: course/lesson-23-append-to-arrays/lesson.tres:259 +msgid "Completing orders" +msgstr "Completare gli ordini" + +#: course/lesson-23-append-to-arrays/lesson.tres:260 +msgid "" +"The [code]waiting_orders[/code] array will be filled over time.\n" +"\n" +"Your job is to move orders from the waiting list to the " +"[code]completed_orders[/code] list using the array's [code]append()[/code] " +"and [code]pop_front()[/code] functions.\n" +"\n" +"Remember that the array's [code]pop_front()[/code] function returns the " +"popped value, which allows you to store it in a variable and then pass it to " +"another function." +msgstr "" +"L'array [code]waiting_orders[/code] si riempirà con il tempo.\n" +"\n" +"Il tuo obiettivo è quello di muovere gli ordini dalla lista d'attesa alla " +"lista degli [code]completed_orders[/code] usando le funzioni array " +"[code]append()[/code] e [code]pop_front()[/code].\n" +"\n" +"Ricorda che la funzione di array [code]pop_front()[/code] ritorna il valore " +"rimosso, questo ci consente di conservarlo in una variabile per poi passarlo " +"ad un'altra funzione." + +#: course/lesson-23-append-to-arrays/lesson.tres:277 +msgid "" +"Orders are piling up in the kitchen, and we need to clear them fast using " +"the array's [code]pop_front()[/code] function." +msgstr "" +"Gli ordini si stanno accumulando in cucina e dobbiamo completarli " +"velocemente usando la funzione per array [code]pop_front()[/code]." + +#: course/lesson-23-append-to-arrays/lesson.tres:282 +msgid "Clearing up the crates" +msgstr "Svuotare le casse" + +#: course/lesson-23-append-to-arrays/lesson.tres:283 +msgid "" +"Crates are piling up on the platform. Move them out of the way by popping " +"them from the [code]crates[/code] array.\n" +"\n" +"You need to remove them from top to bottom using the array's [code]pop_back()" +"[/code] function.\n" +"\n" +"Your code should remove all the crates in the array using a while loop.\n" +"\n" +"[b]Careful![/b] if you run a while loop carelessly, you can lock the " +"software.\n" +"\n" +"You can check if the [code]crates[/code] array still contains values by " +"writing [code]while crates:[/code]" +msgstr "" +"Le casse si stanno accumulando sulla piattaforma. Spostale via rimuovendole " +"dall'array [code]crates[/code].\n" +"\n" +"Devi rimuoverle dall'alto verso il basso usando la funzione per array " +"[code]pop_back()[/code].\n" +"\n" +"Il tuo codice dovrebbe rimuovere tutte le casse nell'array usando un ciclo " +"while.\n" +"\n" +"[b]Fa attenzione![/b] se esegui un ciclo while incautamente, potresti " +"bloccare il programma.\n" +"\n" +"Puoi controllare se l'array [code]crates[/code] contiene ancora dei valori " +"scrivendo [code]while crates:[/code]." + +#: course/lesson-23-append-to-arrays/lesson.tres:303 +msgid "" +"Crates are piling up on the platform. Move them out of the way by popping " +"them from their array." +msgstr "" +"Le casse si stanno accumulando sulla piattaforma. Spostale via rimuovendole " +"dal loro array." + +#: course/lesson-23-append-to-arrays/lesson.tres:307 +msgid "Appending and popping values from arrays" +msgstr "Accodando ed eliminando valori negli array" diff --git a/i18n/it/lesson-24-access-array-indices.po b/i18n/it/lesson-24-access-array-indices.po new file mode 100644 index 00000000..2caa8460 --- /dev/null +++ b/i18n/it/lesson-24-access-array-indices.po @@ -0,0 +1,272 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2022-06-12 11:07+0200\n" +"PO-Revision-Date: 2022-07-02 10:17+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-24-access-array-indices/lesson.tres:14 +msgid "" +"You learned to loop over all the values in an array using the [code]for[/" +"code] keyword." +msgstr "" +"Hai imparato a ciclare tutti i valori di un array usando la parola chiave " +"[code]for[/code]." + +#: course/lesson-24-access-array-indices/lesson.tres:34 +msgid "" +"But what if you need to access the third item in the player's inventory? The " +"tenth item?\n" +"\n" +"There's a dedicated notation to access one element in an array by index.\n" +"\n" +"To do so, you use square brackets with a number inside the brackets." +msgstr "" +"Ma se volessi accedere al terzo oggetto nell'inventario del giocatore? " +"Oppure il decimo?\n" +"\n" +"Esiste una notazione dedicata per accedere ad un elemento in un array " +"attraverso un indice.\n" +"\n" +"Per fare questo, si utilizzano delle parentesi quadre con un numero " +"all'interno." + +#: course/lesson-24-access-array-indices/lesson.tres:58 +msgid "Index zero is the [i]first[/i] element in the array." +msgstr "L'indice zero è il [i]primo[/i] elemento nell'array." + +#: course/lesson-24-access-array-indices/lesson.tres:78 +msgid "" +"Index one is the [i]second[/i] element in the array, and so on.\n" +"\n" +"You would access the [i]fourth[/i] element in the [code]inventory[/code] " +"array like so." +msgstr "" +"Indice uno è il [i]secondo[/i] elemento nell'array e così via.\n" +"\n" +"Accederesti al [i]quarto[/i] elemento nell'array [code]inventory[/code] così." + +#: course/lesson-24-access-array-indices/lesson.tres:98 +msgid "" +"How would you access the [i]third[/i] item in the [code]inventory[/code] " +"array?" +msgstr "" +"Come accederesti al [i]terzo[/i] oggetto nell'array [code]inventory[/code]?" + +#: course/lesson-24-access-array-indices/lesson.tres:101 +msgid "" +"Indices start at zero, so the index of the [i]third[/i] item is [code]2[/" +"code]. That's why you need to write [code]inventory[2][/code]." +msgstr "" +"Gli indici iniziano da zero, quindi il [i]terzo[/i] oggetto ha indice " +"[code]2[/code]. Per questo motivo scriviamo [code]inventory[2][/code]." + +#: course/lesson-24-access-array-indices/lesson.tres:102 +#: course/lesson-24-access-array-indices/lesson.tres:103 +msgid "inventory[2]" +msgstr "inventory[2]" + +#: course/lesson-24-access-array-indices/lesson.tres:102 +msgid "inventory[3]" +msgstr "inventory[3]" + +#: course/lesson-24-access-array-indices/lesson.tres:110 +msgid "Accessing the last values with negative indices" +msgstr "Accedere agli ultimi valori con gli indici negativi" + +#: course/lesson-24-access-array-indices/lesson.tres:112 +msgid "" +"What if you want to access the last or second-before-last item in the " +"[code]inventory[/code]?\n" +"\n" +"In that case, you can use negative indices. If you write [code]-1[/code] in " +"the brackets, you will get the last item in the array. You will get the " +"second-to-last item if you write [code]-2[/code]." +msgstr "" +"Come faresti per accedere all'ultimo o al penultimo oggetto " +"nell'[code]inventory[/code]?\n" +"\n" +"In questo caso, puoi usare gli indici negativi. Se scrivi [code]-1[/code] " +"tra parentesi, otterrai l'ultimo valore nell'array. Per ottenere il " +"penultimo scriverai [code]-2[/code]." + +#: course/lesson-24-access-array-indices/lesson.tres:134 +msgid "" +"That's very convenient when you need to quickly access elements from the end " +"of the list." +msgstr "" +"Questo può tornare molto comodo quando devi accedere rapidamente agli " +"oggetti alla fine della lista." + +#: course/lesson-24-access-array-indices/lesson.tres:142 +msgid "How would you access the third-to-last item in the inventory array?" +msgstr "Come accederesti al terzultimo oggetto nell'array inventario?" + +#: course/lesson-24-access-array-indices/lesson.tres:145 +msgid "" +"When using negative indices, [code]-1[/code] means the [i]last[/i] element " +"in the array. Index [code]-2[/code] will be the second-to-last, thus " +"[code]-3[/code] will be the third-to-last.\n" +"\n" +"It can be little confusing as it seems to work differently from positive " +"indices. However, it's because there's no difference between index [code]0[/" +"code] and [code]-0[/code]: they both point to the first item in the array." +msgstr "" +"Quando usi gli indici negativi, [code]-1[/code] significa l'[i]ultimo[/i] " +"elemento nell'array. L'indice [code]-2[/code] sarà il penultimo, dunque " +"[code]-3[/code] sarà il terzultimo.\n" +"\n" +"Potrebbe essere un po' confusionario dato che sembrano operare in modo " +"diverso dagli indici positivi. Tuttavia, questo è perchè non vi è alcuna " +"differenza tra l'indice [code]0[/code] e l'indice [code]-0[/code]: entrambi " +"puntano sul primo oggetto nell'array." + +#: course/lesson-24-access-array-indices/lesson.tres:148 +#: course/lesson-24-access-array-indices/lesson.tres:149 +msgid "inventory[-3]" +msgstr "inventory[-3]" + +#: course/lesson-24-access-array-indices/lesson.tres:148 +msgid "inventory[-2]" +msgstr "inventory[-2]" + +#: course/lesson-24-access-array-indices/lesson.tres:156 +msgid "You can't access non-existent indices" +msgstr "Non puoi accedere a degli indici non esistenti" + +#: course/lesson-24-access-array-indices/lesson.tres:158 +msgid "" +"There's a catch with this syntax: if you try to access an index that does " +"not exist, you will get an error. You have to be careful always to access " +"existing elements in the array.\n" +"\n" +"There are a couple of ways you can check for valid indices. One of them is " +"checking the array's size." +msgstr "" +"C'è un tranello in questa sintassi: se provi ad accedere un indice che non " +"esiste, otterrai un errore. Devi sempre stare attento e devi accedere sempre " +"elementi esistenti nell'array.\n" +"\n" +"Ci sono un paio di modi per controllare gli indici validi. Uno di questi è " +"controllare la grandezza dell'array." + +#: course/lesson-24-access-array-indices/lesson.tres:170 +msgid "" +"[b]Checking the size of the array[/b]\n" +"\n" +"Arrays come with a member function named [code]size()[/code]. You can call " +"it on the array anytime to know its [i]current[/i] size." +msgstr "" +"[b]Controllare la grandezza dell'array[/b]\n" +"\n" +"Gli array hanno una funzione membro chiamata [code]size()[/code]. La puoi " +"chiamare sull'array ogni volta che ti pare per sapere la grandezza " +"[i]attuale[/i]." + +#: course/lesson-24-access-array-indices/lesson.tres:192 +msgid "" +"The maximum index you can access in an array is [code]array.size() - 1[/" +"code]: it's the last item in the array." +msgstr "" +"L'indice massimo che puoi accedere in un array è [code]array.size() - " +"1[/code]: questo è l'ultimo oggetto nell'array." + +#: course/lesson-24-access-array-indices/lesson.tres:212 +msgid "" +"In the following practices, you will use array indices to realign train " +"tracks and grab the correct item in an inventory." +msgstr "" +"Nelle seguenti pratiche, userai gli indici per riallineare i binari di un " +"treno e per prendere l'oggetto corretto in un inventario." + +#: course/lesson-24-access-array-indices/lesson.tres:220 +msgid "Using the right items" +msgstr "Usando gli oggetti giusti" + +#: course/lesson-24-access-array-indices/lesson.tres:221 +msgid "" +"In our game, the player has an inventory that works as an array under the " +"hood.\n" +"\n" +"They want to equip a sword and a shield to buff their characters. Like " +"before, we need you to find them in the array.\n" +"\n" +"You need to access elements in the [code]inventory[/code] array by index to " +"do so.\n" +"\n" +"Call the [code]use_item()[/code] function with the item as an argument to " +"use an item. For example, you can use the first item by calling " +"[code]use_item(inventory[0])[/code]." +msgstr "" +"Nel nostro gioco, il giocatore ha un inventario che in realtà è un array " +"sotto copertura.\n" +"\n" +"Il giocatore vuole equipaggiare una spada e uno scudo per potenziare il " +"proprio personaggio. Come prima, dobbiamo trovarli nell'array.\n" +"\n" +"Devi accedere agli elementi dell'array [code]inventory[/code] attraverso gli " +"indici per farlo.\n" +"\n" +"Chiama la funzione [code]use_item()[/code] con l'oggetto come argomento per " +"usare un oggetto. Per esempio, puoi usare il primo oggetto chiamando " +"[code]use_item(inventory[0])[/code]." + +#: course/lesson-24-access-array-indices/lesson.tres:239 +msgid "Find the right items to use in the player's inventory." +msgstr "Trova gli oggetti giusti da usare nell'inventario del giocatore." + +#: course/lesson-24-access-array-indices/lesson.tres:244 +msgid "Realigning the train tracks" +msgstr "Riallinea i binari del treno" + +#: course/lesson-24-access-array-indices/lesson.tres:245 +msgid "" +"We have train tracks broken down into little chunks in our game. We use them " +"to make modular tracks and draw circuits of all shapes and sizes.\n" +"\n" +"However, several chunks are misaligned. You need to find them in the " +"[code]tracks[/code] array and pass them to the [code]align()[/code] " +"function.\n" +"\n" +"To do so, you need to access the array by index.\n" +"\n" +"This time, though, you need to access them with [i]negative indices[/i]." +msgstr "" +"Nel nostro gioco ci sono dei binari di un treno rotti in piccoli pezzi. Li " +"possiamo usare per creare dei binari modulati e per disegnare circuiti di " +"ogni forma e grandezza.\n" +"\n" +"Tuttavia, molti pezzi sono disallineati. Devi trovarli nell'array " +"[code]tracks[/code] e passarli alla funzione [code]align()[/code].\n" +"\n" +"Pre far questo, devi accedere all'array attraverso l'indice.\n" +"\n" +"Questa volta, però, devi accedervi attraverso degli [i]indici negativi[/i]." + +#: course/lesson-24-access-array-indices/lesson.tres:263 +msgid "" +"Some chunks of our train tracks are misaligned, and the train can't pass. " +"Find the faulty pieces and realign them." +msgstr "" +"Alcuni pezzi delle nostre rotaie sono disallineati e il treno non può " +"passare. Trova i pezzi sbagliati e riallineali." + +#: course/lesson-24-access-array-indices/lesson.tres:267 +msgid "Accessing values in arrays" +msgstr "Accedendo ai valori negli array" diff --git a/i18n/it/lesson-25-creating-dictionaries.po b/i18n/it/lesson-25-creating-dictionaries.po new file mode 100644 index 00000000..e32ff7d0 --- /dev/null +++ b/i18n/it/lesson-25-creating-dictionaries.po @@ -0,0 +1,321 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2022-03-26 17:50+0100\n" +"PO-Revision-Date: 2022-07-02 10:17+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-25-creating-dictionaries/lesson.tres:14 +msgid "" +"In the last lesson, we used an array to represent a player's inventory.\n" +"\n" +"With just an array of item names, though, we can't easily keep track of the " +"amount of each item.\n" +"\n" +"Instead, we can bundle the item names and amounts into a single " +"[i]dictionary[/i].\n" +"\n" +"A dictionary is a data structure that allows you to map pairs of values. In " +"the pair, we call the first value a [i]key[/i] as we use it to access the " +"second.\n" +"\n" +"In other words, a dictionary has a list of [i]keys[/i], and each key points " +"to a [i]value[/i].\n" +"\n" +"To define a dictionary, we use curly brackets. A colon separates each key " +"and its value. A comma separates each key and value pair." +msgstr "" +"Nell'ultima lezione, abbiamo usato un array per rappresentare l'inventario " +"del giocatore.\n" +"\n" +"Però con soltanto un array di nomi di oggetti, non possiamo tenere conto " +"delle quantità di ogni oggetto.\n" +"\n" +"Piuttosto, possiamo raggruppare i nomi degli oggetti e le relative quantità " +"in un singolo [i]dizionario[/i].\n" +"\n" +"Un dizionario è una struttura di dati che ti permette di mappare una coppia " +"di valori. In questa coppia, chiamiamo il primo valore una [i]chiave[/i] " +"dato che lo usiamo per ottenere il secondo.\n" +"\n" +"In altre parole, un dizionario ha una lista di [i]chiavi[/i] ed ogni chiave " +"punta ad un [i]valore[/i].\n" +"\n" +"Per definire un dizionario, usiamo le parentesi graffe. Dei due punti " +"separano ogni chiave dal suo valore. Una virgola separa ogni coppia di " +"chiave e valore." + +#: course/lesson-25-creating-dictionaries/lesson.tres:42 +msgid "Dictionaries can hold any values" +msgstr "I dizionari possono conservare ogni valore" + +#: course/lesson-25-creating-dictionaries/lesson.tres:44 +msgid "" +"Dictionaries can map about any value to any other value.\n" +"\n" +"For example, we can use the name of an item as a key and the amount as the " +"corresponding value. This makes dictionaries excellent for keeping track of " +"a player's inventory." +msgstr "" +"I dizionari possono mappare praticamente ogni valore ad ogni altro.\n" +"\n" +"Per esempio, possiamo usare il nome di un oggetto come chiave e la quantità " +"come valore corrispondente. Questo rende i dizionari eccellenti per " +"implementare un inventario." + +#: course/lesson-25-creating-dictionaries/lesson.tres:66 +msgid "" +"Here we matched the name (a string) to the amount (a number). But a key " +"could be a string, a number, or even a vector! \n" +"\n" +"Although we can have all of these different keys, keep in mind that every " +"key has to be [i]unique[/i]. That means we [i]couldn't[/i] have a dictionary " +"like the following." +msgstr "" +"Qui abbiamo abbinato il nome (una stringa) alla quantità (un numero). Ma una " +"chiave può essere una tringa, un numero o anche un vettore! \n" +"\n" +"Anche se possiamo avere tutte queste chiavi differenti, tieni bene a mente " +"che ogni chiave deve essere [i]unica[/i]. Questo significa che [i]non " +"possiamo[/i] avere un dizionario come il seguente." + +#: course/lesson-25-creating-dictionaries/lesson.tres:88 +msgid "We would get the following error." +msgstr "Otterremmo il seguente errore." + +#: course/lesson-25-creating-dictionaries/lesson.tres:106 +msgid "In the above example, which key would cause an error?" +msgstr "Nell'esempio qui sopra, quale chiave causerebbe un errore?" + +#: course/lesson-25-creating-dictionaries/lesson.tres:109 +msgid "" +"The key [code]\"healing heart\"[/code] appears [b]twice[/b] in the " +"dictionary.\n" +"\n" +"In the above example, Godot wouldn't know whether to return [code]3[/code] " +"or [code]8[/code] when using [code]inventory[\"healing heart\"][/code]. This " +"is why keys need to be unique." +msgstr "" +"La chiave [code]\"healing heart\"[/code] compare [b]due volte[/b] nel " +"dizionario.\n" +"\n" +"Nell'esempio qui sopra, Godot non saprebbe se ritornare il valore " +"[code]3[/code] o [code]8[/code] quando viene chiamato [code]inventory[" +"\"healing heart\"][/code]. Questo è perchè la chiave deve essere unico." + +#: course/lesson-25-creating-dictionaries/lesson.tres:112 +#: course/lesson-25-creating-dictionaries/lesson.tres:113 +msgid "\"healing heart\"" +msgstr "\"healing heart\"" + +#: course/lesson-25-creating-dictionaries/lesson.tres:112 +msgid "\"shield\"" +msgstr "\"shield\"" + +#: course/lesson-25-creating-dictionaries/lesson.tres:112 +msgid "\"sword\"" +msgstr "\"sword\"" + +#: course/lesson-25-creating-dictionaries/lesson.tres:120 +msgid "How dictionaries work under the hood" +msgstr "Come funzionano i dizionari realmente" + +#: course/lesson-25-creating-dictionaries/lesson.tres:122 +msgid "" +"Dictionaries are also called mappings or [i]associative arrays[/i]. Under " +"the hood, they use arrays and several functions to efficiently store and " +"retrieve values across arrays.\n" +"\n" +"Precisely, dictionaries use a [i]hashing algorithm[/i]. Hashing algorithms " +"convert one value into another.\n" +"\n" +"In this case, hashing consists of converting a given key into a unique whole " +"number. The dictionary then uses that number as an array's index!\n" +"\n" +"That's how a dictionary works: when you give it a key, it converts it into a " +"unique index and uses that index to retrieve the corresponding value in the " +"computer's memory.\n" +"\n" +"That's also why you can't have the same key twice: it would map to the same " +"array index, causing you to overwrite an existing value." +msgstr "" +"I dizionari vengono anche chiamati mappature o [i]array associativi[/i]. In " +"realtà, usano degli array e molte funzioni per conservare efficientemente e " +"recuperare valori tra gli array.\n" +"\n" +"In particolare, i dizionari usano un [i]algoritmo di hashing[/i]. Gli " +"algoritmi si hash convertono un valore in un altro.\n" +"\n" +"In questo caso, hash consiste nel convertire una chiave in un numero intero " +"unico. Il dizionario poi usa quel numero come indice dell'array!\n" +"\n" +"Così funzionano i dizionari: quando gli dai una chiave, la converte in un " +"indice unico e lo usa come indice per recuperare il valore corrispondente " +"nella memoria del computer.\n" +"\n" +"Questo è anche il motivo per cui non puoi avere la stessa chiave due volte: " +"verrebbe mappato allo stesso indice di array, facendoti sovrascrivere un " +"valore esistente." + +#: course/lesson-25-creating-dictionaries/lesson.tres:138 +msgid "Accessing values" +msgstr "Accedere ai valori" + +#: course/lesson-25-creating-dictionaries/lesson.tres:140 +msgid "" +"We access the value of keys by writing the dictionary name, with the key in " +"between square brackets." +msgstr "" +"Accediamo al valore delle chiavi scrivendo il nome del dizionario, con la " +"chiave tra parentesi quadre." + +#: course/lesson-25-creating-dictionaries/lesson.tres:168 +msgid "How would you access how many gems the player has?" +msgstr "Come faresti a capire quante gemme ha il giocatore?" + +#: course/lesson-25-creating-dictionaries/lesson.tres:171 +msgid "" +"We need to make sure the key is the same as we defined in the dictionary.\n" +"\n" +"In our case, [code]var item_count = inventory[\"gems\"][/code] is correct." +msgstr "" +"Dobbiamo assicurarci che la chiave sia la stessa che abbiamo definito nel " +"dizionario.\n" +"\n" +"Nel nostro caso, [code]var item_count = inventory[\"gems\"][/code] è " +"corretto." + +#: course/lesson-25-creating-dictionaries/lesson.tres:174 +msgid "var item_count = inventory[\"gem\"]" +msgstr "var item_count = inventory[\"gem\"]" + +#: course/lesson-25-creating-dictionaries/lesson.tres:174 +#: course/lesson-25-creating-dictionaries/lesson.tres:175 +msgid "var item_count = inventory[\"gems\"]" +msgstr "var item_count = inventory[\"gems\"]" + +#: course/lesson-25-creating-dictionaries/lesson.tres:174 +msgid "var item_count = inventory[\"sword\"]" +msgstr "var item_count = inventory[\"sword\"]" + +#: course/lesson-25-creating-dictionaries/lesson.tres:182 +msgid "Changing values" +msgstr "Cambiare i valori" + +#: course/lesson-25-creating-dictionaries/lesson.tres:184 +msgid "" +"We can also change values directly, which is useful in our case for adding " +"or removing items from the player's inventory." +msgstr "" +"Possiamo anche cambiare i valori direttamente, questo ci torna utile nel " +"nostro caso per aggiungere e rimuovere oggetti dall'inventario del giocatore." + +#: course/lesson-25-creating-dictionaries/lesson.tres:214 +msgid "" +"In the following practices, we'll use a dictionary to create a player " +"inventory and create a function to change the value of items." +msgstr "" +"Nelle seguenti pratiche, useremo un dizionario per creare un inventario per " +"il giocatore e per creare una funzione che cambi i valori degli oggetti." + +#: course/lesson-25-creating-dictionaries/lesson.tres:222 +msgid "Creating an inventory using a dictionary" +msgstr "Creare un inventario usando un dizionario" + +#: course/lesson-25-creating-dictionaries/lesson.tres:223 +msgid "" +"Let's give some items to the player.\n" +"\n" +"We use a dictionary for the player's inventory. We defined the " +"[code]inventory[/code] variable for you, but it contains no items yet.\n" +"\n" +"Give the player the following items by adding the correct keys and values to " +"the dictionary:\n" +"\n" +"- Three \"healing heart\".\n" +"- Nine \"gems\".\n" +"- One \"sword\".\n" +"\n" +"The keys should be text strings, and the values whole numbers." +msgstr "" +"Diamo qualche oggetto al giocatore.\n" +"\n" +"Usiamo un dizionario per l'inventario del giocatore. Abbiamo già definito la " +"variabile [code]inventory[/code] per te, ma ancora non contiene alcun " +"oggetto.\n" +"\n" +"Dà al giocatore i seguenti oggetti aggiungendo le chiavi corrette e i valori " +"al dizionario.\n" +"\n" +"- Tre \"healing heart\".\n" +"- Nove \"gems\".\n" +"- Una \"sword\".\n" +"\n" +"Le chiavi dovrebbero essere stringhe di testo e i valori numeri interi." + +#: course/lesson-25-creating-dictionaries/lesson.tres:244 +msgid "" +"Collecting items is fun, but we need a good way to store them. Write a " +"dictionary to display the player's items." +msgstr "" +"Collezionare oggetti è divertente, ma abbiamo bisogno di un buon metodo per " +"conservarli. Scrivi un dizionario che mostri gli oggetti del giocatore." + +#: course/lesson-25-creating-dictionaries/lesson.tres:249 +msgid "Increasing item counts" +msgstr "Aumentare la quantità di oggetti" + +#: course/lesson-25-creating-dictionaries/lesson.tres:250 +msgid "" +"We want to change the item counts in the player's inventory whenever the " +"player picks up or uses an item.\n" +"\n" +"We've started the [code]add_item()[/code] function for you.\n" +"\n" +"The [code]inventory[/code] dictionary should use the [code]item_name[/code] " +"parameter as the key to access its values, and we should increase the value " +"by [code]amount[/code].\n" +"\n" +"To test this practice, we'll use your [code]add_item()[/code] function to " +"increase the item count of Healing Heart, Gems, and Sword." +msgstr "" +"Vogliamo cambiare le quantità di oggetti nell'inventario ogni volta che il " +"giocatore prende o utilizza un oggetto.\n" +"\n" +"Abbiamo iniziato la funzione [code]add_item()[/code] per te.\n" +"\n" +"Il dizionario [code]inventory[/code] dovrebbe usare il parametro " +"[code]item_name[/code] come chiave per accedere ai valori e dovremmo " +"incrementarne il valore di [code]amount[/code].\n" +"\n" +"Per provare questa pratica, useremo la funzione [code]add_item()[/code] per " +"aumentare la quantità di oggetti di Healing Heart, Gems e Sword." + +#: course/lesson-25-creating-dictionaries/lesson.tres:266 +msgid "" +"The player might walk over a pick-up or find something in a chest, so we " +"need a way to change the item counts in our inventory." +msgstr "" +"Il giocatore potrebbe camminare sopra un oggetto fluttuante o trovare " +"qualcosa in una cassa, dunque abbiamo bisogno di un modo per cambiare il " +"conteggio degli oggetti nel nostro inventario." + +#: course/lesson-25-creating-dictionaries/lesson.tres:270 +msgid "Creating Dictionaries" +msgstr "Creando Dizionari" diff --git a/i18n/it/lesson-26-looping-over-dictionaries.po b/i18n/it/lesson-26-looping-over-dictionaries.po new file mode 100644 index 00000000..68dfbad8 --- /dev/null +++ b/i18n/it/lesson-26-looping-over-dictionaries.po @@ -0,0 +1,210 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2022-06-12 11:07+0200\n" +"PO-Revision-Date: 2022-06-18 13:18+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:13 +msgid "" +"Like with arrays, you can loop over dictionaries. You can loop over both " +"their keys and values.\n" +"\n" +"Let's see how it works with two examples." +msgstr "" +"Come con gli array, puoi manipolare con un ciclo i dizionari. Puoi farlo sia " +"con le chiavi e sia con i valori.\n" +"\n" +"Vediamo come si può fare con due esempi." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:23 +msgid "Displaying an inventory's content" +msgstr "Mostrando un contenuto dell'inventario" + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:25 +msgid "" +"To display the player's inventory, you need to know what it contains. You " +"need the name and amount of each object.\n" +"\n" +"And from code, you can only achieve that by looping over the whole " +"dictionary and processing key-value pairs one by one.\n" +"\n" +"To get the list of keys in the dictionary, you can call its [code]keys()[/" +"code] member function." +msgstr "" +"Per visualizzare l'inventario del giocatore, devi sapere cosa contiene. Hai " +"bisogno del nome e della quantità di ogni oggetto.\n" +"\n" +"Dal codice, l'unico modo per accedere a queste informazioni è attraverso dei " +"cicli che analizzando l'intero dizionario e processano le coppie chiave-" +"valore ona ad una.\n" +"\n" +"Per ottenere la lista di chiavi nel dizionario, puoi chiamare la sua " +"funzione membro [code]keys()[/code]." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:49 +msgid "" +"But it's something we do so much that you don't need to call the function.\n" +"\n" +"Instead, you can directly type the variable name in a [code]for[/code] loop " +"after the [code]in[/code] keyword. The language understands that you " +"implicitly want to loop over the dictionary's keys." +msgstr "" +"Ma è qualcosa che facciamo così spesso che non c'è necessità di chiamare la " +"funzione.\n" +"\n" +"Invece, puoi direttamente scrivere il nome della variabile in un ciclo " +"[code]for[/code] dopo la parola chiave [code]in[/code]. Il linguaggio " +"capisce implicitamente che vuoi accedere in modo ciclico alle chiavi del " +"dizionario." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:71 +msgid "" +"You can get the values with the syntax [code]dictionary[key][/code] as you " +"learned in the previous lesson.\n" +"\n" +"We can loop over the inventory keys, get the corresponding values, and " +"display all that information in the user interface." +msgstr "" +"Puoi ottenere i valori usando la seguente sintassi " +"[code]dictionary[key][/code], come hai già imparato nella lezione precedente." +"\n" +"\n" +"Possiamo accedere ciclicamente alle chiavi dell'inventario, prendere il " +"valore corrispondente e visualizzare tutte queste informazioni " +"nell'interfaccia utente." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:103 +msgid "" +"Instead of printing the key-value pairs to the output console, we can code " +"and call a dedicated function that displays items in the user interface." +msgstr "" +"Al posto di stampare le coppie di chiavi-valori sulla console, possiamo " +"programmare una funzione dedicata che mostra gli oggetti nell'interfaccia " +"utente." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:131 +msgid "Mapping grid cells to units" +msgstr "Mappando le unità nelle celle della griglia" + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:133 +msgid "" +"We can also use a dictionary to map units to their position on a game " +"board.\n" +"\n" +"That's how you'd typically code a board game, a grid-based RPG, or a " +"tactical RPG.\n" +"\n" +"While we focused on [code]String[/code] keys so far, GDScript dictionaries " +"accept any value type as a key, allowing you to map anything to anything.\n" +"\n" +"The only limitation is that every key must be unique." +msgstr "" +"Possiamo in oltre utilizzare un dizionario per mappare unità alla loro " +"posizione nella tavola di gioco.\n" +"\n" +"Così è come di solito si programma un gioco da tavola, un RPG basato su " +"griglia o un RPG tattico.\n" +"\n" +"Anche se ci siamo concentrati su chiavi in formato [code]String[/code] " +"fin'ora, ma i dizionari in GDScript accettano ogni tipo di valore come " +"chiave! Questo ti permette di mappare qualsiasi cosa con qualsiasi altra.\n" +"\n" +"L'unica limitazione è che ogni chiave deve essere unica." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:159 +msgid "" +"Using a [code]for[/code] loop, you can use the key-value pairs to place " +"units on the board at the start of a game." +msgstr "" +"Usando un ciclo [code]for[/code], puoi usare le coppie di chiave-valore per " +"posizionare le unità sulla tavola all'inizio della partita." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:189 +msgid "" +"In the following practices, you will loop over dictionaries and process " +"their content." +msgstr "" +"Nelle prossime pratiche, analizzerai ciclicamente dei dizionari e " +"processerai il loro contenuto." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:197 +msgid "Displaying the inventory" +msgstr "Visualizzando l'inventario" + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:198 +msgid "" +"We use a dictionary to represent the player's inventory in this game. The " +"dictionary keys are the name of items, and they map to the number of items " +"that the player owns.\n" +"\n" +"You need to loop over the dictionary and display the name and amount of " +"every item in the inventory.\n" +"\n" +"To do so, call the [code]display_item()[/code] function. It takes two " +"arguments: the item name and the amount." +msgstr "" +"Usiamo i dizionari per rappresentare l'inventario del giocatore in questo " +"gioco. Le chiavi del dizionario sono i nomi degli oggetti, questi sono " +"mappati alla quantità dell'oggetto che il giocatore possiede.\n" +"\n" +"Devi analizzare ciclicamente il dizionario e mostrare il nome e la quantità " +"di ogni oggetto nell'inventario.\n" +"\n" +"Per fare questo, chiama la funzione [code]display_item()[/code]. Necessita " +"di due argomenti: il nome dell'oggetto e la sua quantità." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:218 +msgid "" +"We need to display the player's inventory on the screen but lack the code to " +"do so. Use a loop to display every item." +msgstr "" +"Dobbiamo visualizzare l'inventario del giocatore sullo schermo ma non " +"abbiamo il codice per fare ciò. Usa un ciclo per rappresentare ogni oggetto." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:223 +msgid "Placing units on the board" +msgstr "Piazzando le unità sulla tavola" + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:224 +msgid "" +"We have a dictionary named [code]units[/code] that maps a cell position on " +"the grid to a unit to put there.\n" +"\n" +"Using a for loop and the [code]place_unit()[/code] function, place every " +"unit in the units dictionary at the desired position on the game board." +msgstr "" +"Abbiamo un dizionario chiamato [code]units[/code] che mappa una posizione " +"nelle celle della griglia ad un'unità da posizionare al suo interno.\n" +"\n" +"Usando un ciclo e la funzione [code]place_unit()[/code], piazza ogni unità " +"nel dizionario delle unità alla posizione desiderata sulla tavola da gioco." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:242 +msgid "" +"We want to populate our game board with units at the start of every battle. " +"Loop over the dictionary to place units on the board." +msgstr "" +"Vogliamo popolare la nostra tavola da gioco con unità all'inizio di ogni " +"scontro. Scansiona il dizionario con un ciclo per piazzare le unità sulla " +"tavola." + +#: course/lesson-26-looping-over-dictionaries/lesson.tres:246 +msgid "Looping over dictionaries" +msgstr "Analizzando ciclicamente i dizionari" diff --git a/i18n/it/lesson-27-value-types.po b/i18n/it/lesson-27-value-types.po new file mode 100644 index 00000000..d8f99742 --- /dev/null +++ b/i18n/it/lesson-27-value-types.po @@ -0,0 +1,341 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2022-06-12 11:07+0200\n" +"PO-Revision-Date: 2022-07-03 11:19+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-27-value-types/lesson.tres:13 +msgid "" +"In your code, values have a particular [i]type[/i]. You have already learned " +"about several: whole numbers, decimal numbers, strings, 2D vectors, arrays, " +"and dictionaries.\n" +"\n" +"The computer uses the type of a value to know which operations and functions " +"you can use with them.\n" +"\n" +"As a result, it's essential to understand types: they are not fully " +"compatible with one another, and misusing them will cause errors." +msgstr "" +"Nel tuo codice, i valori hanno un particolare [i]tipo[/i]. Ne hai già " +"imparati vari: numeri interi, numeri decimali, stringhe, vettori 2D, array e " +"dizionari.\n" +"\n" +"Il computer usa i tipi di valore per sapere quali operazioni e funzioni puoi " +"usare su di essi.\n" +"\n" +"Per questo, è dunque necessario capire i tipi di valore: spesso non sono " +"compatibili l'un l'altro e usarli male può causare errori." + +#: course/lesson-27-value-types/lesson.tres:25 +msgid "A prime example" +msgstr "Un buon esempio" + +#: course/lesson-27-value-types/lesson.tres:27 +msgid "" +"You want to display the player's health in the interface. Your code tracks " +"health as a whole number, a value of type [code]int[/code] (short for " +"integer)." +msgstr "" +"Vuoi mostrare la vita del giocatore nell'interfaccia. Il tuo codice " +"rappresenta la vita come un numero intero, un valore di tipo [code]int[/code]" +" (abbreviazione di intero)." + +#: course/lesson-27-value-types/lesson.tres:47 +msgid "" +"However, to display it on the player's screen, the computer wants text: it " +"needs a value of type [code]String[/code].\n" +"\n" +"You can concatenate two strings with the [code]+[/code] operator." +msgstr "" +"Tuttavia, per mostrarlo sullo schermo del giocatore, il computer vuole del " +"testo: necessita un valore di tipo [code]String[/code].\n" +"\n" +"Puoi concatenare due stringhe con l'operatore [code]+[/code]." + +#: course/lesson-27-value-types/lesson.tres:69 +msgid "So the following code looks like it could work at first glance." +msgstr "Il seguente codice sembra che possa funzionare, a prima vista." + +#: course/lesson-27-value-types/lesson.tres:89 +msgid "But when running the code, we get this strange error." +msgstr "Ma quando il codice viene eseguito, otteniamo questo strano errore." + +#: course/lesson-27-value-types/lesson.tres:109 +msgid "" +"It tells you you can't add values of type [code]String[/code] and [code]int[/" +"code]: they're incompatible.\n" +"\n" +"In that case, you need to convert the [code]health[/code] number into a " +"[code]String[/code]." +msgstr "" +"Ti dice che non puoi sommare due valori di tipo [code]String[/code] e " +"[code]int[/code]: sono incompatibili.\n" +"\n" +"In questo caso, devi convertire il numero della [code]health[/code] in una " +"[code]String[/code]." + +#: course/lesson-27-value-types/lesson.tres:119 +msgid "Converting values into strings" +msgstr "Convertire i valori in stringhe" + +#: course/lesson-27-value-types/lesson.tres:121 +msgid "" +"You can get the text representation of a value by calling the [code]str()[/" +"code] function (short for \"string\"). The function returns its argument as " +"a new [code]String[/code].\n" +"\n" +"You can use this function whenever you want to turn some number or vector " +"into text." +msgstr "" +"Puoi ottenere la rappresentazione a testo di un valore chiamando la funzione " +"[code]str()[/code] (abbreviazione di stringa). La funzione ritorna il suo " +"argomento come una nuova [code]String[/code].\n" +"\n" +"Puoi usare questa funzione quando vuoi trasformare un numero o un vettore in " +"testo." + +#: course/lesson-27-value-types/lesson.tres:143 +msgid "" +"In this case, it turns the number [code]100[/code] into the string " +"[code]\"100\"[/code]. Or whatever number [code]health[/code] is currently." +msgstr "" +"In questo caso, trasforma il numero [code]100[/code] nella stringa [code]" +"\"100\"[/code]. O qualsiasi numero [code]health[/code] sia correntemente." + +#: course/lesson-27-value-types/lesson.tres:151 +msgid "Converting strings into numbers" +msgstr "Convertire stringhe in numeri" + +#: course/lesson-27-value-types/lesson.tres:153 +msgid "" +"You can also convert strings into whole numbers or decimal numbers using " +"respectively the [code]int()[/code] and [code]float()[/code] functions.\n" +"\n" +"Those functions can convert what the player writes in a text field into a " +"number. For example, the number of potions to sell at once in a shop." +msgstr "" +"Puoi pure convertire stringhe in numeri interi o numeri decimali usando " +"rispettivamente le funzioni [code]int()[/code] e [code]float()[/code].\n" +"\n" +"Queste funzioni possono convertire ciò che il giocatore scrive in una " +"casella di testo in un numero. Per esempio, il numero di pozioni da vendere " +"tutte insieme in un negozio." + +#: course/lesson-27-value-types/lesson.tres:173 +msgid "Some types are partially compatible" +msgstr "Alcuni tipi sono parzialmente compatibili" + +#: course/lesson-27-value-types/lesson.tres:175 +msgid "" +"Most types are incompatible. For example, you can't directly add or multiply " +"an array with a number.\n" +"\n" +"However, some types are [i]partially[/i] compatible. For example, you can " +"multiply or divide a vector by a number. " +msgstr "" +"La maggior parte dei tipi sono incompatibili. Per esempio, non puoi " +"direttamente aggiungere o moltiplicare un array con un numero.\n" +"\n" +"Tuttavia, alcuni tipi sono [i]parzialmente[/i] compatibili. Per esempio, " +"puoi moltiplicare o dividere un vettore per un numero. " + +#: course/lesson-27-value-types/lesson.tres:197 +msgid "" +"It is possible because other developers defined that operation for you under " +"the hood.\n" +"\n" +"However, you cannot directly add or subtract a number to a vector. You'll " +"get an error. That's why, in earlier lessons, you had to access the sub-" +"variables of [code]position[/code] to add numbers to them." +msgstr "" +"Questo è possibile perchè altri sviluppatori hanno definito quell'operazione " +"per te sotto sotto.\n" +"\n" +"Tuttavia, non puoi direttamente aggiungere o sottrarre un numero ad un " +"vettore. Otterrai un errore. Questo è il motivo per cui, in delle lezioni " +"precedenti, hai dovuto accedere alle sotto-variabili della " +"[code]position[/code] per aggiungere numeri ad essa." + +#: course/lesson-27-value-types/lesson.tres:207 +msgid "A surprising result" +msgstr "Un risultato sorprendente" + +#: course/lesson-27-value-types/lesson.tres:209 +msgid "" +"Take the following division: [code]3/2[/code]. What result would you expect " +"to get? [code]1.5[/code]?" +msgstr "" +"Prendi la seguente divisione: [code]3/2[/code]. Ché risultato ti aspetti di " +"ottenere? [code]1.5[/code]?" + +#: course/lesson-27-value-types/lesson.tres:229 +msgid "" +"Well, for the computer, the result of [code]3/2[/code] is [code]1[/code].\n" +"\n" +"Wait, what?!\n" +"\n" +"That's because, for the computer, the division of two whole numbers should " +"always result in a whole number.\n" +"\n" +"When you divide decimal numbers instead, you will get a decimal number as a " +"result." +msgstr "" +"Beh, per il computer, il risultato di [code]3/2[/code] è [code]1[/code].\n" +"\n" +"Aspetta, cosa?\n" +"\n" +"Questo è perché, per il computer, la divisione di due numeri interi dovrebbe " +"sempre essere un numero intero.\n" +"\n" +"Quando dividi numeri decimali invece, otterrai un numero decimale come " +"risultato." + +#: course/lesson-27-value-types/lesson.tres:255 +msgid "" +"Even if it's just a [code]0[/code], adding a decimal place tells the " +"computer we want decimal numbers.\n" +"\n" +"This shows you how mindful you need to be with types. Otherwise, you will " +"get unexpected results. It can get pretty serious: number errors can lead to " +"bugs like controls not working as intended or charging the wrong price to " +"players. " +msgstr "" +"Anche se è semplicemente uno [code]0[/code], aggiungere la parte decimale " +"dice al computer che vogliamo numeri decimali.\n" +"\n" +"Questo ti mostra quanto devi essere cosciente con i tipi. Altrimenti, " +"otterrai risultati inaspettati. Potrebbe diventare molto serio: gli errori " +"numerici possono portare a bug come non far funzionare i controlli in modo " +"corretto o attribuire il prezzo sbagliato a degli oggetti. " + +#: course/lesson-27-value-types/lesson.tres:265 +msgid "Understanding and mastering types is a key skill for developers" +msgstr "" +"Capire e avere padronanza dei tipi di valore è una competenza chiave per gli " +"sviluppatori" + +#: course/lesson-27-value-types/lesson.tres:267 +msgid "" +"Programming beginners often struggle due to the lack of understanding of " +"types.\n" +"\n" +"Languages like GDScript hide the types from you by default. As a result, if " +"you don't understand that some are incompatible, you can get stuck when " +"facing type-related errors.\n" +"\n" +"You'll want to keep that in mind in your learning journey. When writing " +"code, you will need to understand everything that's happening.\n" +"\n" +"That said, let's practice some type conversions." +msgstr "" +"I programmatori alle prime armi spesso faticano per la loro mancata " +"comprensione dei tipi.\n" +"\n" +"I linguaggi come GDScript ti nascondono i tipi in automatico. Il risultato è " +"dunque che, se non capisci che alcuni valori sono incompatibili, puoi venire " +"bloccato quando incontri errori correlati al tipo di valore.\n" +"\n" +"Ti consigliamo di tenerlo sempre a mente nel tuo percorso di apprendimento. " +"Quando scrivi codice, devi capire tutti quello che succede.\n" +"\n" +"Detto ciò, facciamo pratica con qualche conversione." + +#: course/lesson-27-value-types/lesson.tres:281 +msgid "Displaying the player's health and energy" +msgstr "Mostrare la vita e l'energia del giocatore" + +#: course/lesson-27-value-types/lesson.tres:282 +msgid "" +"We want to display the player's energy in the user interface.\n" +"\n" +"Currently, our code has a type error. We're trying to display a whole number " +"while the [code]display_energy()[/code] function expects a string.\n" +"\n" +"Using the [code]str()[/code] function, clear the type error and make the " +"energy amount display on the interface.\n" +"\n" +"You can't change the [code]energy[/code] variable definition: setting it to " +"[code]\"80\"[/code] would break the rest of the game's code. You must " +"convert the value when calling [code]display_energy()[/code]." +msgstr "" +"Vogliamo mostrare l'energia del giocatore nell'interfaccia utente.\n" +"\n" +"Al momento, il nostro codice ha un errore correlato al tipo. Stiamo cercando " +"di mostrare un numero intero mentre la funzione [code]display_energy()[/code]" +" si aspetta una stringa.\n" +"\n" +"Usando la funzione [code]str()[/code], risolvi l'errore e fa sì che " +"l'energia sia mostrata nell'interfaccia.\n" +"\n" +"Non puoi cambiare la definizione della variabile [code]energy[/code]: " +"impostarla [code]\"80\"[/code] romperebbe il resto del codice di gioco. Devi " +"convertire il valore quando chiami [code]display_energy()[/code]." + +#: course/lesson-27-value-types/lesson.tres:300 +msgid "" +"We want to display the player's energy in the interface but face a type " +"error. Use your new knowledge to fix it." +msgstr "" +"Vogliamo mostrare l'energia del giocatore nell'interfaccia ma abbiamo un " +"errore causato dal tipo. Usa le tue conoscenze per risolverlo." + +#: course/lesson-27-value-types/lesson.tres:305 +msgid "Letting the player type numbers" +msgstr "Lasciare scrivere la giocatore dei numeri" + +#: course/lesson-27-value-types/lesson.tres:306 +msgid "" +"In our game's shops, we want to let the player type numbers to select the " +"number of items they want to buy or sell.\n" +"\n" +"We need to know the number of items as an [code]int[/code], but the computer " +"reads the player's input as a [code]String[/code].\n" +"\n" +"Your task is to convert the player's input into numbers for the shop's code " +"to work.\n" +"\n" +"Using the [code]int()[/code] function, convert the player's input into a " +"whole number and store the result in the [code]item_count[/code] variable." +msgstr "" +"Nei negozi del nostro gioco, vogliamo far si che il giocatore possa " +"selezionare il numero di oggetti che vogliono comprare o vendere.\n" +"\n" +"Dobbiamo sapere il numero di oggetti come un [code]int[/code], ma il " +"computer legge gli input del giocatore come una [code]String[/code].\n" +"\n" +"Il tuo compito è quello di convertire gli input del giocatore in numeri per " +"far sì che il codice del negozio funzioni.\n" +"\n" +"Usare la funzione [code]int()[/code], converte l'input del giocatore in un " +"numero intero e conserva il risultato nella variabile " +"[code]item_count[/code]." + +#: course/lesson-27-value-types/lesson.tres:326 +msgid "" +"We want the player to choose the number of items they buy or sell in our " +"game's shops. But right now, all we get are type errors." +msgstr "" +"Vogliamo far scegliere al giocatore la quantità di oggetti da comprare o " +"vendere nel negozio. Ma adesso, l'unica cosa che otteniamo sono errori di " +"tipo." + +#: course/lesson-27-value-types/lesson.tres:330 +msgid "Value types" +msgstr "Tipi di valori" diff --git a/i18n/it/lesson-28-specifying-types.po b/i18n/it/lesson-28-specifying-types.po new file mode 100644 index 00000000..d455261d --- /dev/null +++ b/i18n/it/lesson-28-specifying-types.po @@ -0,0 +1,300 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2022-07-05 10:20+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-28-specifying-types/lesson.tres:13 +msgid "" +"By default, GDScript is what we call a dynamically-typed language. That " +"means that you can just write variables, assign them a value with a number, " +"and assign them another value with a different type.\n" +"\n" +"Unlike in some other languages, in GDScript, the following code is valid." +msgstr "" +"Di norma, GDScript è un tipo di linguaggio che chiamiamo a tipizzazione " +"dinamica. Questo significa che puoi direttamente scrivere le variabili, " +"assegnare loro un valore con un numero e assegnare loro un altro valore con " +"un tipo differente.\n" +"\n" +"Al contrario di altri linguaggi, in GDScript, il seguente codice è valido." + +#: course/lesson-28-specifying-types/lesson.tres:35 +msgid "" +"But this feature often causes problems down the line. Let's take one example." +msgstr "" +"Ma questa caratteristica può spesso causare problemi a lungo andare. " +"Prendiamo questo esempio." + +#: course/lesson-28-specifying-types/lesson.tres:43 +msgid "Cell size: decimal number, or 2D vector?" +msgstr "Grandezza cella: numero decimale o vettore 2D?" + +#: course/lesson-28-specifying-types/lesson.tres:45 +#, fuzzy +msgid "" +"Games use grids all the time, be it for grid-based gameplay or to make " +"algorithms faster.\n" +"\n" +"When working with grids, you need to convert grid coordinates into positions " +"in the game world all the time. To do so, you give each cell a size in " +"pixels.\n" +"\n" +"You'll likely pick one of two types for that: [code]float[/code] or " +"[code]Vector2[/code], because pixel positions on the screen use " +"[code]Vector2[/code] coordinates.\n" +"\n" +"Either of those two values would be fine:" +msgstr "" +"I giochi usano quasi sempre le griglie, che sia per un gioco da tavola o per " +"rendere un algoritmo più veloce.\n" +"\n" +"Quando lavori con le griglie, devi costantemente convertire le coordinate " +"della griglia in posizioni nel mondo di gioco. Per fare questo, dai ad ogni " +"cella una grandezza in pixel.\n" +"\n" +"Sceglierai uno tra questi due tipi: [code]float[/code] o [code]Vector2[/" +"code].\n" +"\n" +"Entrambi questi valori vanno bene:" + +#: course/lesson-28-specifying-types/lesson.tres:71 +msgid "" +"Using a [code]Vector2[/code] could simplify some calculations. For example, " +"when converting grid coordinates to game world coordinates." +msgstr "" +"Usare un [code]Vector2[/code] potrebbe semplificare alcuni calcoli. Per " +"esempio, quando converti le coordinate delle celle in coordinate nel mondo " +"di gioco." + +#: course/lesson-28-specifying-types/lesson.tres:91 +msgid "" +"In this example, because both [code]cell[/code] and [code]cell_size[/code] " +"are [code]Vector2[/code] values, we can add them.\n" +"\n" +"However, if [code]cell_size[/code] is a [code]float[/code], we will get a " +"type error." +msgstr "" +"In questo esempio, dato che sia [code]cell[/code] e [code]cell_size[/code] " +"sono valori [code]Vector2[/code], li possiamo sommare.\n" +"\n" +"Tuttavia, se [code]cell_size[/code] fosse un [code]float[/code], otterremmo " +"un errore di tipo." + +#: course/lesson-28-specifying-types/lesson.tres:123 +msgid "" +"Worse: due to dynamic typing, we won't get an error [i]right away[/i]. We " +"will only get the error when calling [code]grid_to_world(Vector2(1, 1))[/" +"code].\n" +"\n" +"And that's a big problem." +msgstr "" +"O peggio: a causa della tipizzazione dinamica, non otterremmo un errore " +"[i]subito[/i]. Otterremo l'errore solo chiamando " +"[code]grid_to_world(Vector2(1, 1))[/code].\n" +"\n" +"E questo è un problema." + +#: course/lesson-28-specifying-types/lesson.tres:135 +msgid "" +"Because we're learning, we only have small code examples in this course. But " +"your games' code will get long and split into many files. When coding, you " +"often forget about the code you wrote several weeks ago.\n" +"\n" +"And with a lot of code, it could take [i]hours[/i] of play before players " +"trigger a type error in your code." +msgstr "" +"Dato che stiamo imparando, abbiamo solo esempi di codice piccoli in questo " +"codice, Ma il codice del tuo gioco diventerà lungo e si dividerà in molti " +"file. Quando programmi, spesso dimenticherai il codice che hai scritto " +"settimane fa.\n" +"\n" +"E con un sacco di codice, impiegheresti [i]ore[/i] di gioco prima che il " +"giocatore scateni un errore di tipo nel tuo codice." + +#: course/lesson-28-specifying-types/lesson.tres:145 +msgid "Using type hints" +msgstr "Usare i suggerimenti di tipo" + +#: course/lesson-28-specifying-types/lesson.tres:147 +msgid "" +"Fortunately, GDScript has optional [i]type hints[/i].\n" +"\n" +"Type hints let the computer know the value type you want for variables and " +"report errors before running the code.\n" +"\n" +"To specify the type a variable can accept, you can write a colon and a type " +"after the name when defining a new variable." +msgstr "" +"Fortunatamente, GDScript ha dei [i]suggerimenti di tipo[/i] opzionali.\n" +"\n" +"I suggerimenti di tipo fanno capire al computer il tipo di valore che " +"desideri per le variabili, così ché gli errori arrivino prima di eseguire il " +"codice.\n" +"\n" +"Per specificare il tipo che una variabile può accettare, puoi inserire dei " +"due punti e un tipo dopo il nome quando definisci una variabile." + +#: course/lesson-28-specifying-types/lesson.tres:171 +msgid "" +"You could tell the computer you want [code]cell_size[/code] only to accept " +"[code]Vector2[/code] values like so." +msgstr "" +"Puoi dire al computer che vuoi che la variabile [code]cell_size[/code] " +"accetti soltanto valori [code]Vector2[/code] così." + +#: course/lesson-28-specifying-types/lesson.tres:191 +msgid "" +"If you try to replace the [code]cell_size[/code] with a value of another " +"type later, the computer will not let you." +msgstr "" +"Se cerchi di rimpiazzare la variabile [code]cell_size[/code] con un valore " +"di un tipo differente in seguito, il computer te lo farà notare." + +#: course/lesson-28-specifying-types/lesson.tres:219 +msgid "Letting the computer figure it out" +msgstr "Lasciare che il computer capisca da solo" + +#: course/lesson-28-specifying-types/lesson.tres:221 +msgid "" +"GDScript comes with a feature called [i]type inference[/i]. In many cases, " +"but not all, the computer can figure out the type of a variable for you.\n" +"\n" +"To do so, you write [code]:=[/code], without the type. The computer will set " +"the type using the value after the equal sign. We could make " +"[code]cell_size[/code] a variable of type [code]Vector2[/code] like so:" +msgstr "" +"GSDcript possiede una funzionalità chiamata [i]inferenza di tipo[/i]. In " +"molti casi, ma non tutti, il computer può capire il tipo di variabile per " +"te.\n" +"\n" +"Per fare questo, scrivi [code]:=[/code], senza il tipo. Il computer " +"imposterà il tipo usando il valore dopo il segno di uguaglianza. Potremmo " +"rendere [code]cell_size[/code]una variabile di tipo [code]Vector2[/code] " +"così:" + +#: course/lesson-28-specifying-types/lesson.tres:243 +msgid "" +"This takes little typing, yet you get the benefits of using type hints, like " +"the computer reporting errors better and faster." +msgstr "" +"Questo si può scrivere con semplicità e ottieni i benefici dei suggerimenti " +"di tipo, come il computer che ti segnala gli errori più velocemente." + +#: course/lesson-28-specifying-types/lesson.tres:251 +msgid "Why bother to add hints?" +msgstr "Perchè preoccuparsi di aggiungere i suggerimenti?" + +#: course/lesson-28-specifying-types/lesson.tres:253 +msgid "" +"When you give the language hints like that, it will [i]prevent[/i] major " +"type errors. When you work in Godot, you will see that the computer can " +"report issues as you write the code. It makes the benefit even greater.\n" +"\n" +"Type hints can also help improve the readability of your code. It can help " +"to put more information directly in the code. As we saw, types are essential " +"when coding, and when using type hints, the computer will add them to the " +"engine's built-in code documentation system.\n" +"\n" +"There's an incredible third benefit for you: by using type hints, you will " +"learn types much faster. It's excellent for learning.\n" +"\n" +"In the following practices, you will write the correct type hints to make " +"the code error-free." +msgstr "" +"Quando dai i suggerimenti di lingua in questo modo, [i]eviterai[/i] errori " +"di tipo più importanti. Quando utilizzi Godot, vedrai che il computer può " +"segnalarti problemi mentre scrivi il codice. Rende la programmazione più " +"efficiente.\n" +"\n" +"I suggerimenti di tipo possono anche aiutare a migliorare la leggibilità del " +"tuo codice. Può aiutare mettere più informazioni direttamente nel tuo " +"codice. Come abbiamo visto, i tipi sono essenziali quando scrivi codice e " +"quando usi i suggerimenti di tipo, il computer li aggiungerà al sistema " +"integrato di documentazione del codice.\n" +"\n" +"C'è anche un terzo incredibile beneficio per te: usando i suggerimenti di " +"tipo, imparerai i tipi più velocemente. Questo è un modo eccellente per " +"imparare.\n" +"\n" +"Nelle seguenti pratiche, scriverai il corretto suggerimento di tipo per " +"rendere il codice libero da errori." + +#: course/lesson-28-specifying-types/lesson.tres:267 +msgid "Add the correct type hints to variables" +msgstr "Aggiungere il corretto suggerimento di tipo alle variabili" + +#: course/lesson-28-specifying-types/lesson.tres:268 +msgid "" +"Our variables get the correct values but not the right hints. Using your " +"type-fu, add the correct type names in the variable definitions.\n" +"\n" +"You need to write the type name between the colon and the equal sign.\n" +"\n" +"Note: You cannot use type inference in this practice. You need to write the " +"type name in full." +msgstr "" +"Le nostra variabili ottengono i corretti valori ma non i corretti " +"suggerimenti di tipo. Usando la tecnica di tipizzazione delle variabili, " +"aggiungi il corretto nome di tipo nelle definizioni delle variabili.\n" +"\n" +"Devi scrivere il tipo del nome tra i due punti e il segno di uguaglianza.\n" +"\n" +"Nota: Non puoi usare l'inferenza di tipo in questa pratica. Devi scrivere " +"interamente il nome del tipo." + +#: course/lesson-28-specifying-types/lesson.tres:284 +msgid "" +"Our variables have the wrong type hints, causing errors. Correct them to " +"make the code run." +msgstr "" +"Le nostre variabili hanno i suggerimenti di tipo sbagliati e causano degli " +"errori. Correggili per rendere il codice eseguibile." + +#: course/lesson-28-specifying-types/lesson.tres:289 +msgid "Fix the values to match the type hints" +msgstr "Sistema i valori per abbinare i corretti suggerimenti di tipo" + +#: course/lesson-28-specifying-types/lesson.tres:290 +msgid "" +"It is the other way around in this practice: the type hints are fine, but " +"the values are not.\n" +"\n" +"Your task is to fix the values after the equal sign, so they match the type " +"hint of each variable." +msgstr "" +"In questa pratica dovrai fare la cosa opposta: i suggerimenti di tipo sono " +"corretti, ma i valori no.\n" +"\n" +"Il tuo obbiettivo è quello di sistemare i valori dopo il segno di " +"uguaglianza, così ché si abbini con il suggerimento di tipo di ogni " +"variabile." + +#: course/lesson-28-specifying-types/lesson.tres:304 +msgid "" +"This time, it's the other way around: variables have the correct type hints " +"but the wrong values. Change the values to make the code run." +msgstr "" +"Questa volta è al contrario: le variabili hanno i corretti suggerimenti di " +"tipo ma i valori sbagliati. Cambia i valori per far sì che il codice esegua." + +#: course/lesson-28-specifying-types/lesson.tres:308 +msgid "Specifying types with type hints" +msgstr "Specificando i tipi con i suggerimenti di tipo" diff --git a/i18n/it/lesson-3-standing-on-shoulders-of-giants.po b/i18n/it/lesson-3-standing-on-shoulders-of-giants.po new file mode 100644 index 00000000..ba9819f8 --- /dev/null +++ b/i18n/it/lesson-3-standing-on-shoulders-of-giants.po @@ -0,0 +1,520 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# FIRST AUTHOR , 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2022-06-18 13:18+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.0\n" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:14 +msgid "" +"As programmers, we rely on a lot of code created by others before us.\n" +"\n" +"Every programming language comes with a wealth of features created by other " +"programmers to save you time.\n" +"\n" +"We call a bundle of code created by fellow developers a [i]library[/i].\n" +"\n" +"It's a bunch of code sitting there, waiting for you to use it.\n" +"\n" +"Game engines like Godot bundle many libraries together. They provide a " +"massive toolset to save you time when making games." +msgstr "" +"Noi programmatori spesso usiamo del codice che è già stato creato da altri " +"prima di noi.\n" +"\n" +"Ogni linguaggio di programmazione dispone di funzionalità create da altri " +"programmatori, questo ci permette di risparmiare tempo.\n" +"\n" +"Chiamiamo un insieme di codici creati per questo scopo da altri " +"programmatori [i]librerie[/i].\n" +"\n" +"È del codice che aspetta solo di essere usato.\n" +"\n" +"I motori di gioco come Godot mettono a disposizioni molte librerie. " +"Forniscono un immenso set di strumenti mirati per la risoluzioni di problemi " +"che uno sviluppatore di videogiochi potrebbe incontrare." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:30 +msgid "You'll always use a lot of existing code" +msgstr "Userai sempre molto codice pre-esistente" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:32 +msgid "" +"When coding, you always use a lot of code from developers who came before " +"you.\n" +"\n" +"In a moment, you'll write your first code. You'll use [i]functions[/i] " +"created by the Godot developers.\n" +"\n" +"A function is a list of instructions with an exact name. We can tell the " +"computer to execute all the instructions in sequence with that name." +msgstr "" +"Quando programmi, non sei mai solo. I linguaggi di programmazione stessi " +"sono creati su programmi creati da altri sviluppatori.\n" +"\n" +"Fra poco, scriverai il tuo primo codice. Userai [i]funzioni[/i] create dagli " +"sviluppatori di Godot.\n" +"\n" +"Una funzione è una serie di istruzioni per il computer. Le funzioni hanno un " +"nome che usiamo per dire al computer di eseguire tutte le istruzioni " +"all'interno in sequenza." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:44 +msgid "Calling functions" +msgstr "Chiamare le funzioni" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:46 +msgid "" +"When you tell the computer to execute a function, we say you [i]call[/i] the " +"function.\n" +"\n" +"To call a function, you write its [i]exact[/i] name followed by an open and " +"closed parenthesis. To call the function named \"show\", you would write " +"[code]show()[/code]." +msgstr "" +"Quando dici al computer di eseguire una funzione, diciamo che la stiamo " +"[i]chiamando[/i].\n" +"\n" +"Per chiamare una funzione, scrivi il suo [i]esatto[/i] nome seguito da una " +"parentesi aperta e una chiusa. Per chiamare la funzione chiamata " +"\"show\"(mostra), dovresti scrivere [code]show()[/code]." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:58 +msgid "" +"In Godot, calling [code]show()[/code] makes something visible, like a " +"character or item. The complementary [code]hide()[/code] function hides the " +"entity.\n" +"\n" +"Once an entity is visible, calling [code]show()[/code] again doesn't have " +"any effect.\n" +"\n" +"Similarly, once you hide something, calling [code]hide()[/code] again " +"doesn't change anything.\n" +"\n" +"[i]Click the Run button on any example below to execute the code listing.[/i]" +msgstr "" +"In Godot, chiamare [code]show()[/code] rende qualcosa visibile, come un " +"personaggio o un oggetto. Al contrario [code]hide()[/code] li nasconde.\n" +"\n" +"Quando qualcosa è visibile, chiamare [code]show()[/code] nuovamente non avrà " +"alcun effetto.\n" +"\n" +"Allo stesso modo, quando qualcosa è già nascosta, chiamare nuovamente " +"[code]hide()[code] non cambierà nulla.\n" +"\n" +"[i]Clicca il tasto Esegui nell'esempio sottostante per eseguire il codice.[/" +"i]" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:84 +msgid "" +"In the code listing above, we write the function call [code]hide()[/code] in " +"a new function named [code]run()[/code] to execute the code. Creating a new " +"function is necessary to execute instructions in GDScript." +msgstr "" +"Nell'insieme di codice visibile sopra, chiamiamo la funzione [code]hide()[/" +"code] in una nuova funzione chiamata [code]run()[/code] necessaria per " +"eseguire il codice in GDScript." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:92 +msgid "Can you tell me more about that \"run()\" function?" +msgstr "Puoi dirmi di più sulla funzione \"run()\"?" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:94 +msgid "" +"In GDScript, unlike in some other languages, we must write our code inside " +"of custom functions.\n" +"\n" +"You'll learn what functions are and how they work in great detail in the " +"course, but here's a quick look at them if you're curious.\n" +"\n" +"A function is a bundle of code you can execute anytime. It's a named list of " +"instructions.\n" +"\n" +"To define a function, you need to write the [code]func[/code] keyword, the " +"function's name, parentheses, and a colon: [code]func run():[/code] defines " +"a function named [code]run()[/code].\n" +"\n" +"You then go to the next line to write the function's body. That's the " +"instructions of the function.\n" +"\n" +"Notice how each instruction starts with a leading [code]Tab[/code] " +"character. The computer uses that to know which lines are part of the " +"function.\n" +"\n" +"Throughout the course, you'll see many functions called [code]run()[/code].\n" +"\n" +"Those are functions we created to give you interactive examples." +msgstr "" +"In GDScript, a differenza degli altri linguaggi, dobbiamo scrivere il nostro " +"codice in funzioni personalizzate.\n" +"\n" +"Imparerai cosa sono e come operano le funzioni in grande dettaglio in questo " +"corso, per ora diamo un'occhiata veloce se sei curioso.\n" +"\n" +"Una funzione è un insieme di codice che puoi eseguire in qualsiasi momento. " +"Puoi vederla come una lista di istruzioni con un nome.\n" +"\n" +"Per definire una funzione, si usano la parola chiave [code]func[/code], il " +"suo nome, le parentesi tonde ed infine i due punti: [code]func run():[/code] " +"definisce una funzione chiamata [code]run()[/code].\n" +"\n" +"Dopodiché si va a capo per scrivere il corpo della funzione. Ciò che scrivi " +"al suo interno sono le istruzioni di quella funzione.\n" +"\n" +"Fa attenzione a come ogni istruzione comincia con il carattere [code]Tab[/" +"code]. Il computer lo utilizza per capire quali linee sono parte della " +"funzione.\n" +"\n" +"Durante questo corso, vedrai molto spesso funzioni chiamate [code]run()[/" +"code].\n" +"\n" +"Sono funzioni che abbiamo creato per darti esempi interattivi." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:116 +msgid "Function arguments" +msgstr "Argomenti delle funzioni" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:118 +#, fuzzy +msgid "" +"We use parentheses to call functions because you can give the function " +"[i]arguments[/i] inside the parentheses when calling it.\n" +"\n" +"Here's a [i]sprite[/i] standing straight. If we call the [code]rotate(0.3)[/" +"code] function, the character [i]sprite[/i] turns by 0.3 radians." +msgstr "" +"Per chiamare delle funzioni usiamo le parentesi. Questo perché puoi dare " +"alle funzioni degli [i]argomenti[/i] all'interno delle parentesi quando le " +"chiami.\n" +"\n" +"Qui c'è uno [i]sprite[/i] perfettamente dritto. Se chiamiamo la funzione " +"[code]rotate(0.3)[/code], lo [i]sprite[/i] di questo personaggio ruoterà di " +"0.3 unità." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:140 +msgid "" +"The [code]0.3[/code] part between the parentheses is the function's " +"[i]argument[/i].\n" +"\n" +"Arguments are values (numbers, bits of text, and more) that change how the " +"function behaves.\n" +"\n" +"Arguments let you fine-tune the effect of the function call. They can be " +"optional at times, but functions often require arguments in order to work.\n" +"\n" +"For example, calling [code]rotate()[/code] without any argument would result " +"in an error. Without an argument, Godot doesn't know by [i]how much[/i] you " +"intend to rotate the [i]sprite[/i].\n" +"\n" +"Don't worry about memorizing what arguments each function requires or " +"accepts! As a programmer, the documentation will always be close by for you " +"to refer to.\n" +"\n" +"Finally, notice how we use a dot in the number [code]0.3[/code] above: you " +"need to use a dot like this to represent decimal numbers. You can't use " +"commas as they have a different purpose in code." +msgstr "" +"Questo [code]0.3[/code] tra parentesi è [i]l'argomento[/i] della funzione.\n" +"\n" +"Gli argomenti sono valori (numeri, porzioni di testo e molto altro) che " +"cambiano il comportamento di una funzione.\n" +"\n" +"Gli argomenti ti permettono di regolare gli effetti della funzione chiamata. " +"Possono essere opzionali, ma spesso le funzioni hanno bisogno di argomenti " +"per funzionare.\n" +"\n" +"Per esempio, chiamando [code]rotate()[/code] senza alcun argomento, " +"otterresti un errore. Senza un argomento, Godot non può sapere [i]di quanto[/" +"i] vuoi ruotare lo [i]sprite[/i].\n" +"\n" +"Non devi preoccuparti di memorizzare quali argomenti ogni funzione richiede " +"o accetta! Potrai sempre fare riferimento alla documentazione.\n" +"\n" +"Infine, hai notato che abbiamo usato un punto per il numero [code]0.3[/" +"code]? Il punto serve a rappresentare numeri decimali. Non usiamo la virgola " +"in quanto prende un significato diverso nel codice." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:158 +msgid "What are radians?" +msgstr "Cosa sono i radianti?" + +# La roba tra parentesi è sicuramente da rivedere, ho dato una occhiata veloce alla definizione di radianti giusto per fare una traduzione iniziale +# C'è bisogno di studiarsi bene sta roba dei radianti per poterla tradurre bene +# Le ultime tre frasi: MADAH +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:160 +msgid "" +"The value of [code]0.3[/code] is an angle in [i]radians[/i]. In daily life, " +"we're used to measuring angles in degrees. The radian is another scale " +"commonly used in video games and math.\n" +"\n" +"You can convert radians into degrees by multiplying them by 180 and dividing " +"them by PI:\n" +"\n" +"[code]degrees = radians * 180 / PI[/code]\n" +"\n" +"An angle of [code]PI[/code] radians corresponds to [code]180[/code] degrees. " +"And [code]2 * PI[/code] is a full turn: [code]360[/code] degrees.\n" +"\n" +"[b]How do radians work exactly?[/b]\n" +"\n" +"Radians are a way to measure angles based on the radius of a circle.\n" +"\n" +"To get the angle in radians, you take the circle's radius and wrap it around " +"the circle. That angle is [code]1[/code] radian because you are wrapping the " +"radius [code]1[/code] time around the circle.\n" +"\n" +"Because the perimeter of a circle is [code]2 * PI * radius[/code], a full " +"turn (360°) corresponds to [code]2 * PI[/code] radians: you need to wrap the " +"radius of a circle [code]2 * PI[/code] times around the circle to make a " +"full circle." +msgstr "" +"Il valore [code]0.3[/code] è un angolo in [i]radianti[/i]. Nella vita di " +"tutti i giorni, siamo abituati a misurare gli angolo in gradi. I radianti " +"non solo altro che un altro metodo di misurazione usato comunemente nei " +"videogiochi e in matematica.\n" +"\n" +"Puoi convertire i radianti in gradi moltiplicandoli per 180 e dividendoli " +"per Pi Greco:\n" +"\n" +"[code]gradi = radianti * 180 / PI[/code]\n" +"\n" +"Un angolo di radianti [code]PI[/code] corrisponde a [code]180[/code] gradi. " +"E [code]2 * PI[/code] corrisponde ad un giro completo: [code]360[/code] " +"gradi.\n" +"\n" +"[b]Come funzionano esattamente i radianti?[/b]\n" +"\n" +"I radianti sono usati per misurare angoli basati sul raggio di un cerchio.\n" +"\n" +"Per ottenere un angolo in radianti, bisogna prendere il raggio del cerchio e " +"distenderlo sulla circonferenza del cerchio. Questo angolo è [code]1[/code] " +"radiante perché distendi il raggio [code]1[/code] volta attorno al cerchio.\n" +"\n" +"Dato che il perimetro di un cerchio equivale a [code]2 * PI * raggio[/code], " +"un giro completo (360°) corrisponde a [code]2 * PI[/code] radianti: dovresti " +"distendere il raggio di un cerchio [code]2 * PI[/code] volte per ottenere un " +"cerchio completo." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:182 +msgid "What does the code below do?" +msgstr "Cosa fa il codice qui sotto?" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:183 +msgid "[code]show()[/code]" +msgstr "[code]show()[/code]" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:185 +msgid "" +"Both answers were right! Technically, the code calls the [code]show()[/code] " +"function. And doing so makes the game entity visible." +msgstr "" +"Entrambe le risposte sono giuste! Tecnicamente, il codice chiama la funzione " +"[code]show()[/code]. Facendo ciò rende l'elemento di gioco visibile." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:186 +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:187 +msgid "It calls the function named \"show.\"" +msgstr "Chiama la funzione chiamata \"show\"." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:186 +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:187 +msgid "It makes the entity (like a game character or a sprite) visible." +msgstr "" +"Rende un elemento (come ad esempio uno sprite o un personaggio) visibile." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:196 +#, fuzzy +msgid "" +"Another example: With the [code]move_local_x()[/code] function, you can move " +"the character to its left and right. The function takes one argument: a " +"number of pixels to offset the entity.\n" +"\n" +"The complementary function [code]move_local_y()[/code] makes the character " +"move up and down.\n" +"\n" +"This is one way to move a character in a game, although we'll see more " +"powerful ways to do this later." +msgstr "" +"Un altro esempio: Con la funzione [code]move_local_x()[/code], puoi spostare " +"il personaggio sulla sua destra o sinistra. La funzione prende un argomento: " +"il numero di pixel di cui effettuare l'offset dell'elemento.\n" +"\n" +"La funzione complementare [code]move_local_y()[/code] fa muovere lo " +"[i]sprite[/i] verso l'altro o verso il basso.\n" +"\n" +"Questo è un modo per far muovere un personaggio in un gioco, ma vedremo " +"metodi più efficienti più in la nel corso." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:218 +msgid "Why move_local_y(20) moves the character down" +msgstr "Perché move_local_y(20) fa muovere il personaggio verso il basso" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:220 +msgid "" +"With positive values ([code]20[/code]), the code above moves the robot to " +"the right and down.\n" +"\n" +"This is probably different than what you studied at school: in math classes, " +"the horizontal axis points to the right, like here, but the vertical axis " +"points up.\n" +"\n" +"In video games, and generally in 2D computer graphics, the vertical axis " +"points down instead. So whenever you move something on the Y-axis with a " +"positive value, it'll move [i]down[/i]." +msgstr "" +"Con valori positivi ([code]20[/code]), il codice qui sopra muove il robot a " +"destra poi in basso.\n" +"\n" +"Questo probabilmente è diverso da ciò che hai imparato a scuola: in " +"matematica l'asse orizzontale punta a destra, come in questo esempio, e " +"l'asse verticale punta in alto.\n" +"\n" +"Nei videogiochi, e generalmente quando si tratta di computer grafica in 2D, " +"l'asse verticale punta verso il basso. Quindi ogni volta che muovi qualcosa " +"sull'asse Y con un valore positivo, questo si muoverà verso il [i]basso[/i]." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:232 +msgid "How do you call a function?" +msgstr "Come chiamare una funzione?" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:233 +msgid "What is the syntax you use to call a function in general?" +msgstr "Qual è la sintassi da usare per chiamare una funzione in generale?" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:235 +msgid "" +"To call a function, you need to write its exact name followed by an opening " +"and a closing parenthesis.\n" +"\n" +"If the function requires one or more [i]arguments[/i], you add them inside " +"the parentheses. Whether you need to do that or not depends on the function." +msgstr "" +"Per chiamare una funzione, devi scrivere il suo nome esatto seguito da " +"parentesi tonde aperte e chiuse.\n" +"\n" +"Se la funzione ha bisogno di uno o più [i]argomenti[/i], devi inserirli " +"all'interno delle parentesi. L'inserimento o meno di argomenti dipende " +"interamente dalla funzione." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:238 +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:239 +msgid "You write its name followed by an opening and a closing parenthesis." +msgstr "Scrivi il suo nome seguito da parentesi tonde aperte e chiuse." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:238 +msgid "You write its name followed by a colon." +msgstr "Scrivi il suo nome seguito dai due punti." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:238 +msgid "" +"You write a value, like a number, followed by an opening and a closing " +"parenthesis." +msgstr "" +"Scrivi un valore, come ad esempio un numero, seguito da parentesi tonde " +"aperte e chiuse." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:246 +msgid "Make The Character Visible" +msgstr "Rendi Il Personaggio Visibile" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:247 +msgid "" +"Our robot character's invisible! Call the [code]show()[/code] function to " +"make it appear.\n" +"\n" +"Please call [code]show()[/code] inside the [code]run()[/code] function, on " +"line [code]2[/code], and keep the [code]Tab[/code] character at the start of " +"the line. The computer needs that to understand your code." +msgstr "" +"Il nostro robot è invisibile! Chiama la funzione [code]show()[/code] per " +"farlo apparire. \n" +"\n" +"Chiama la funzione [code]show()[/code] all'interno della funzione [code]run()" +"[/code], alla linea [code]2[/code] e ricordati di usare [code]Tab[/code] " +"all'inizio della riga. Serve per far capire al computer il tuo codice." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:259 +msgid "The robot's invisible! Call a function to bring it back." +msgstr "Il robot è invisibile! Chiama una funzione per renderlo visibile." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:264 +msgid "Make the Robot Upright" +msgstr "Metti il Robot in Posizione Verticale" + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:265 +msgid "" +"The robot was turned by [code]-0.5[/code] radians. You need to make it " +"upright by calling the [code]rotate()[/code] function.\n" +"\n" +"Please call [code]rotate()[/code] inside the [code]run()[/code] function, on " +"line [code]2[/code], and keep the [code]Tab[/code] character at the start of " +"the line. The computer needs that to understand your code." +msgstr "" +"Il robot è stato ruotato di [code]-0.5[/code] radianti. Prova a metterlo in " +"posizione dritta chiamando la funzione [code]rotate()[/code].\n" +"\n" +"Chiama la funzione [code]rotate()[/code] all'interno della funzione " +"[code]run()[/code] alla linea [code]2[/code], e ricordati di utilizzare " +"[code]Tab[/code] all'inizio della linea. Serve al computer per comprendere " +"il tuo codice." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:277 +msgid "" +"The robot is turned sideways. Help it straighten up with a function call." +msgstr "" +"Il robot è ruotato sul suo fianco. Aiutalo a mettersi dritto chiamando una " +"funzione." + +#: course/lesson-3-standing-on-shoulders-of-giants/lesson.tres:281 +msgid "We Stand on the Shoulders of Giants" +msgstr "Sulle Spalle Dei Giganti" + +#, fuzzy +#~ msgid "" +#~ "When you tell the computer to execute a function, we say you [i]call[/i] " +#~ "the function.\n" +#~ "\n" +#~ "To [i]call[/i] a function, you write its exact name followed by an open " +#~ "and closed parenthesis. To call the function named \"show\", you would " +#~ "write [code]show()[/code].\n" +#~ "\n" +#~ "The code listing below contains two lines of code calling the [code]show()" +#~ "[/code] and [code]hide()[/code] functions.\n" +#~ "\n" +#~ "We wrap them in a new function named [code]run()[/code] to execute the " +#~ "code. Creating a new function is necessary to execute instructions in " +#~ "GDScript.\n" +#~ "\n" +#~ "You'll learn more about creating new functions in the next lessons." +#~ msgstr "" +#~ "Quando dici al computer di eseguire una funzione, si dice che [i]chiami[/" +#~ "i] la funzione.\n" +#~ "\n" +#~ "Per [i]chiamare[/i] una funzione, devi scrivere il suo nome seguito da " +#~ "parentesi tonde aperte e chiuse. Per chiamare la funzione \"mostra\", " +#~ "dovresti scrivere [code]mostra()[/code].\n" +#~ "\n" +#~ "Il codice qui sotto contiene due linee d codice che chiamano le funzioni " +#~ "[code]mostra()[/code] e [code]nascondi()[/code]. \n" +#~ "\n" +#~ "Le inseriamo in una nuova funzione chiamata [code]esegui()[/code] per " +#~ "eseguirne il codice. Creare una nuova funzione è necessario per eseguire " +#~ "istruzioni in GDScript.\n" +#~ "\n" +#~ "Scoprirai molto di più sulle funzioni nelle prossime lezioni." diff --git a/i18n/it/lesson-4-drawing-a-rectangle.po b/i18n/it/lesson-4-drawing-a-rectangle.po new file mode 100644 index 00000000..b375f8af --- /dev/null +++ b/i18n/it/lesson-4-drawing-a-rectangle.po @@ -0,0 +1,317 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# FIRST AUTHOR , 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2022-06-26 11:17+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.0\n" + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:14 +msgid "" +"We'll use code created by others like we did in the previous lesson. This " +"time, we'll solve a more complicated problem: drawing shapes." +msgstr "" +"Useremo codice creato da altri proprio come nelle scorse successive. Questa " +"volta risolveremo un problema più complicato: disegnare delle forme " +"geometriche." + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:22 +msgid "Meet the turtle" +msgstr "Ti presentiamo la tartaruga" + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:24 +msgid "" +"We present you: the turtle! We created the turtle to teach you how to call " +"functions." +msgstr "" +"Ti presentiamo: la tartaruga! Abbiamo creato la tartaruga per insegnarti a " +"chiamare le funzioni." + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:44 +#, fuzzy +msgid "" +"The turtle is a little machine that moves forward, turns, and draws lines " +"along its path.\n" +"\n" +"To make it draw, you give it a list of instructions: on each code line, you " +"call one specific function.\n" +"\n" +"We prepared several functions for you:\n" +"\n" +"- [code]move_forward(pixels)[/code] makes the turtle move forward over a " +"given distance in [i]pixels[/i]. \n" +"- [code]turn_right(degrees)[/code] makes the turtle turn clockwise by a " +"precise amount of [i]degrees[/i].\n" +"- [code]turn_left(degrees)[/code] works the same as [code]turn_right(degrees)" +"[/code], except the turtle turns counter-clockwise.\n" +"\n" +"You'll use these functions the same way you used [code]rotate()[/code] " +"before.\n" +"\n" +"The turtle draws a white line as it moves. We'll use this line to draw " +"shapes.\n" +"\n" +"For example, to move the turtle 200 pixels, you would write " +"[code]move_forward(200)[/code]." +msgstr "" +"La tartaruga è una piccola macchina che si muove e disegna delle linee lungo " +"il suo cammino.\n" +"\n" +"Per fare in modo che le disegni bisogna assegnare alla tartaruga una lista " +"di istruzioni: in ogni linea di codice, devi chiamare una funzione " +"specifica.\n" +"\n" +"Abbiamo preparato varie funzioni per te:\n" +"\n" +"- [code]move_forward(pixel)[/code] fa muovere la tartaruga di una " +"determinata distanza in [i]pixel[/i].\n" +"- [code]turn_right(degrees)[/code] fa girare la tartaruga a destra di una " +"quantità precisa di [i]gradi[/i].\n" +"- [code]turn_left(degrees)[/code] funziona allo stesso modo di " +"[code]turn_right(degrees)[/code], con la differenza che la tartaruga si gira " +"verso sinistra.\n" +"\n" +"Queste funzioni vengono usate allo stesso modo in cui hai usato " +"[code]rotate()[/code] precedentemente.\n" +"\n" +"La tartaruga disegna una riga bianca mentre si muove. Useremo questa linea " +"per disegnare delle forme.\n" +"\n" +"Per esempio, per far muovere la tartaruga di 200 pixel, dovresti scrivere " +"[code]move_forward(200)[/code]." + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:78 +msgid "" +"The functions [code]turn_left()[/code] and [code]turn_right()[/code] work " +"the same.\n" +"\n" +"To turn 45 degrees to the right, you would write [code]turn_right(45)[/" +"code].\n" +"\n" +"If we call [code]turn_right(45)[/code], the turtle turns 45 degrees to the " +"right before moving on to the next instruction." +msgstr "" +"Le funzioni [code]turn_left()[/code] e [code]turn_right()[/code] funzionano " +"allo stesso modo.\n" +"\n" +"Per ruotare di 45 gradi a destra, dovresti scrivere [code]turn_right(45)[/" +"code].\n" +"\n" +"Se chiamiamo [code]turn_right(45)[/code], la tartaruga ruoterà di 45 gradi a " +"destra prima di passare all'istruzione successiva." + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:102 +msgid "" +"Using these instructions, we can make any two-dimensional shape we like!\n" +"\n" +"Try to understand the example below. \n" +"\n" +"In the next practice, you'll use the functions we saw above to first draw a " +"corner, then a rectangle like this one." +msgstr "" +"Usando queste istruzioni possiamo creare qualsiasi forma bi-dimensionale che " +"vogliamo!\n" +"\n" +"Cerca di capire l'esempio qui sotto. \n" +"\n" +"Nel prossimo esercizio, userai le funzioni che abbiamo visto sopra per " +"disegnare un angolo, poi un rettangolo, proprio come questo." + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:124 +msgid "In the function call below, which part is the argument?" +msgstr "Nella funzione chiamata qui sotto, quale parte è il parametro?" + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:125 +msgid "[code]move_forward(30)[/code]" +msgstr "[code]move_forward(30)[/code]" + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:127 +msgid "" +"A function's arguments are all the values inside the parentheses. In this " +"case, there's only one, but there can be multiple separated by commas.\n" +"\n" +"In this case, [code]move_forward[/code] is the function's name and [code]30[/" +"code] is the argument.\n" +"\n" +"This function call will make the turtle move forward by [code]30[/code] " +"pixels." +msgstr "" +"Gli argomenti di una funzione sono tutti i valori all'interno delle " +"parentesi. In questo caso, ce n'è solo uno, ma ce ne possono essere " +"molteplici separati da virgole.\n" +"\n" +"In questo caso, [code]move_forward[/code] è il nome della funzione e " +"[code]30[/code] è l'argomento.\n" +"\n" +"Questa chiamata di funzione farà si che la tartaruga si muova in avanti di " +"[code]30[/code] pixel." + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:132 +msgid "move_forward" +msgstr "move_forward" + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:132 +#: course/lesson-4-drawing-a-rectangle/lesson.tres:133 +msgid "30" +msgstr "30" + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:140 +msgid "Drawing a Corner" +msgstr "Disegnando uno Spigolo" + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:141 +#, fuzzy +msgid "" +"In this practice, we'll tell the turtle to draw a corner.\n" +"\n" +"The corner is made up of two lines that are [code]200[/code] pixels long. " +"The lines are connected at each end by [code]90[/code] degrees, or right-" +"angle.\n" +"\n" +"The [code]move_forward()[/code] and [code]turn_right()[/code] functions to " +"the right draw a corner, but they're missing some arguments.\n" +"\n" +"Add the missing arguments so the turtle moves forward [code]200[/code] " +"pixels, turns right [code]90[/code] degrees, then moves forward again " +"[code]200[/code] pixels.\n" +"\n" +"We added the first argument for you so the turtle moves forward [code]200[/" +"code] pixels.\n" +"\n" +"In the following practices, we'll draw multiple corners to create " +"rectangles.\n" +"\n" +msgstr "" +"In questo esercizio, diremo alla tartaruga di disegnare uno spigolo.\n" +"\n" +"Lo spigolo è formato da due linee di lunghezza [code]200[/code] pixel. Le " +"linee sono connesse alle loro estremità in modo tale che formi un angolo di " +"[code]90[/code] gradi, o un angolo retto.\n" +"\n" +"Le funzioni [code]move_forward()[/code] e [code]turn_right()[/code] sulla " +"destra disegnano uno spigolo, ma mancano alcuni parametri.\n" +"\n" +"Aggiungi i parametri mancanti per far muovere la tartaruga di [code]200[/" +"code] pixel e per farla ruotare a destra di [code]90[/code] gradi, dopodiché " +"falla muovere nuovamente in avanti di [code]200[/code] pixel.\n" +"\n" +"Abbiamo aggiunto il primo parametro per te, cosicché la tartaruga si muova " +"avanti di [code]200[/code] pixel.\n" +"\n" +"Negli esercizi successivi, disegneremo più spigoli per creare dei " +"rettangoli.\n" +"\n" + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:165 +msgid "" +"Use the turtle to draw a square's corner. You'll then build upon it to draw " +"a rectangle." +msgstr "" +"Usa la tartaruga per disegnare lo spigolo di un quadrato. Dopodiché su " +"quella base, disegnerai un rettangolo." + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:170 +#: course/lesson-4-drawing-a-rectangle/lesson.tres:218 +msgid "Drawing a Rectangle" +msgstr "Disegnando un Rettangolo" + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:171 +#, fuzzy +msgid "" +"Add the correct arguments to the functions [code]move_forward()[/code] and " +"[code]turn_right()[/code] to draw a rectangle with a width of [code]200[/" +"code] pixels, and a height of [code]120[/code] pixels.\n" +"\n" +"We wrote the first argument for you.\n" +"\n" +"In the next practice, you'll use the same functions to draw a bigger " +"rectangle." +msgstr "" +"Aggiungi il parametro corretto alle funzioni [code]move_forward()[/code] e " +"[code]turn_right()[/code] per disegnare un rettangolo con una larghezza di " +"[code]200[/code] pixel e un'altezza di [code]120[/code] pixel.\n" +"\n" +"Abbiamo scritto il primo parametro per te.\n" +"\n" +"Nella prossima pratica, userai le stesse funzioni per disegnare un " +"rettangolo più grande." + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:191 +msgid "" +"Based on your rectangle corner, you now need to draw a complete rectangle." +msgstr "" +"A partire dallo spigolo che hai creato, ora dovrai disegnare un rettangolo " +"completo." + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:196 +msgid "Drawing a Bigger Rectangle" +msgstr "Disegnando un Rettangolo Più Grande" + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:197 +msgid "" +"Write out calls to the functions [code]move_forward()[/code] and " +"[code]turn_right()[/code] to draw a rectangle with a width of 220 pixels, " +"and a height of 260 pixels.\n" +"\n" +"We wrote the first two lines for you.\n" +"\n" +"Be sure to write each instruction on a separate line.\n" +"\n" +"Every line should start with one [code]Tab[/code] character so the computer " +"understands it's part of the [code]draw_rectangle()[/code] function." +msgstr "" +"Scrivi le chiamate per le funzioni [code]move_forward()[/code] e " +"[code]turn_right()[/code] per disegnare un rettangolo di larghezza 220 pixel " +"e altezza 260 pixel.\n" +"\n" +"Abbiamo scritto le prime due linee per te.\n" +"\n" +"Assicurati di scrivere ogni funzione su una linea diversa.\n" +"\n" +"Ricorda che ogni linea deve cominciare con il carattere [code]Tab[/code] " +"così da far comprendere al computer che quelle linee sono parte della " +"funzione [code]draw_rectangle()[/code]." + +#: course/lesson-4-drawing-a-rectangle/lesson.tres:214 +msgid "" +"At this point, you're ready to code entirely on your own. Call functions by " +"yourself to draw a complete rectangle." +msgstr "" +"A questo punto, sei pronto a scrivere codice da solo. Chiama le funzioni e " +"disegna un rettangolo completo." + +#, fuzzy +#~ msgid "" +#~ "The function parameters are inside the parentheses in a function " +#~ "definition.\n" +#~ "\n" +#~ "The [code]func[/code] keyword tells the computer you're defining a new " +#~ "function, and [code]move_forward[/code] is the function's name." +#~ msgstr "" +#~ "I parametri delle funzioni si trovano all'interno delle parentesi tonde.\n" +#~ "\n" +#~ "La keyword [code]func[/code] dice al computer che stai definendo una " +#~ "nuova funzione, e [code]move_forward[/code] è il nome della funzione." + +#, fuzzy +#~ msgid "func" +#~ msgstr "func" + +#, fuzzy +#~ msgid "pixels" +#~ msgstr "pixels" diff --git a/i18n/it/lesson-5-your-first-function.po b/i18n/it/lesson-5-your-first-function.po new file mode 100644 index 00000000..917edc71 --- /dev/null +++ b/i18n/it/lesson-5-your-first-function.po @@ -0,0 +1,421 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# FIRST AUTHOR , 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2022-06-20 15:19+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.0\n" + +#: course/lesson-5-your-first-function/lesson.tres:14 +msgid "" +"So far, we have called existing functions that other developers wrote.\n" +"\n" +"In this lesson, we'll talk more about what functions are and see some " +"examples. Then, you will learn how to define your own functions." +msgstr "" +"Fino ad ora, ci siamo limitati a chiamare funzioni già esistenti scritte da " +"altri programmatori.\n" +"\n" +"In questa lezione, parleremo meglio di cosa sono le funzioni e vedremo " +"alcuni esempi. In seguito, imparerai a definire delle funzioni tutte tue." + +#: course/lesson-5-your-first-function/lesson.tres:24 +msgid "Functions are named sequences of instructions" +msgstr "Le funzioni sono una sequenza di istruzioni con un nome" + +#: course/lesson-5-your-first-function/lesson.tres:26 +msgid "" +"Functions are [i]sequences of instructions[/i] we give a name. We call that " +"name an [i]identifier[/i].\n" +"\n" +"Using the identifier, we can get the computer to execute all the " +"instructions inside the function as many times as we need. This is what a " +"[i]function call[/i] does." +msgstr "" +"Le funzioni sono [i]sequenze di istruzioni[/i] a cui diamo un nome. Questo " +"nome è un [i]identificatore[/i].\n" +"\n" +"Usando un identificatore, possiamo far eseguire al computer tutte le " +"istruzioni all'interno di una funzione, tutte le volte che vogliamo. Questo " +"è ciò che fa una [i]chiamata di funzione[/i]." + +#: course/lesson-5-your-first-function/lesson.tres:36 +msgid "Learn more about identifiers" +msgstr "" + +#: course/lesson-5-your-first-function/lesson.tres:38 +msgid "" +"In computer programming, we talk about [i]identifiers[/i] rather than " +"\"names\".\n" +"\n" +"It is because a function name is a label the computer uses to precisely " +"[i]identify[/i] and refer to a function or other code elements.\n" +"\n" +"Identifiers are unique: you cannot reuse the same name in a given [i]space[/" +"i] in your code.\n" +"\n" +"If you try to name two functions the same, the computer will raise an error." +msgstr "" +"Nella programmazione, non parliamo di \"nomi\", ma di [i]identificatori[/" +"i].\n" +"\n" +"Questo perché il nome di una funzione è l'etichetta usata dal computer per " +"[i]identificare[/i] e avere un riferimento relativo a una funzione o ad " +"altre parti di codice.\n" +"\n" +"Gli identificatori sono unici: non puoi riutilizzare lo stesso nome in una " +"determinata [i]area[/i] del tuo codice.\n" +"\n" +"Se provi a dare a due funzioni lo stesso nome, il computer ti restituirà un " +"errore." + +#: course/lesson-5-your-first-function/lesson.tres:54 +msgid "" +"If there is any code that you need to run multiple times, you can put it " +"inside a function and give it a name.\n" +"\n" +"The instructions inside a function can be any code you want, and they will " +"all run every time you call the function.\n" +"\n" +"Here's the example of a [code]move_and_rotate()[/code] function that moves " +"the turtle forward and then turns it 90°." +msgstr "" +"Se c'è del codice che hai bisogno di eseguire più volte, puoi metterlo in " +"una funzione e dargli un nome.\n" +"\n" +"Le istruzioni in una funzione possono essere qualsiasi cosa tu voglia, e " +"verranno eseguite ogni volta che chiami la funzione.\n" +"\n" +"Ecco l'esempio di una funzione [code]move_and_rotate()[/code] che sposta la " +"tartaruga in avanti e la ruota di 90°." + +#: course/lesson-5-your-first-function/lesson.tres:78 +msgid "" +"The [code]move_and_rotate()[/code] function consists of two instructions, " +"each on a separate line. Both of those instructions call another familiar " +"function.\n" +"\n" +"You could write another function that calls [code]move_and_rotate()[/code] " +"four times to draw a square of length 200 pixels." +msgstr "" +"La funzione [code]move_and_rotate()[/code] consiste in due istruzioni, " +"ognuna su una riga diversa. Entrambe le istruzioni chiamano altre funzioni " +"piuttosto familiari.\n" +"\n" +"Potresti scrivere un'altra funzione che chiama [code]move_and_rotate()[/" +"code] quattro volte per disegnare un quadrato dai lati di 200 pixel." + +#: course/lesson-5-your-first-function/lesson.tres:100 +#, fuzzy +msgid "" +"Every time we call [code]move_and_rotate()[/code], the two functions " +"[code]move_forward(200)[/code] and [code]turn_right(90)[/code] are called in " +"sequence.\n" +"\n" +"In this simple example, it may not feel super useful. Here's a more useful " +"and realistic one: a function to draw any square.\n" +"\n" +"The following function uses [i]parameters[/i], which we will explore in the " +"next lesson.\n" +"\n" +"[i]Drag the slider to change the square's size.[/i]" +msgstr "" +"Ogni volta che chiamiamo [code]move_and_rotate()[/code], le due funzioni " +"[code]move_forward(200)[/code] e [code]turn_right(90)[/code] vengono " +"chiamate in sequenza.\n" +"\n" +"In questo semplice esempio, potrebbe sembrare non molto utile. Eccone uno " +"più utile e realistico: una funzione per disegnare un rettangolo qualsiasi.\n" +"\n" +"La seguente funzione usa dei [i]parametri[/i], che vedremo meglio nella " +"prossima lezione.\n" +"\n" +"[i]Trascina il cursore per cambiare la dimensione del quadrato.[/i]" + +#: course/lesson-5-your-first-function/lesson.tres:124 +msgid "How to define your own functions" +msgstr "Come definire le tue funzioni" + +#: course/lesson-5-your-first-function/lesson.tres:126 +msgid "" +"Let's break down how you define a function.\n" +"\n" +"A function definition starts with the [code]func[/code] keyword followed by " +"a space, the function's name, parentheses, and a colon." +msgstr "" +"Vediamo, passo passo, come definire una funzione.\n" +"\n" +"La definizione di una funzione comincia con la parola chiave [code]func[/" +"code] seguita da uno spazio, il nome della funzione, un paio di parentesi, e " +"i due punti." + +#: course/lesson-5-your-first-function/lesson.tres:148 +msgid "" +"The instructions inside the function [b]must[/b] all start with a leading " +"tab character. You can insert that tab character by pressing the [b]Tab[/b] " +"key.\n" +"\n" +"We call those leading tabs [i]indents[/i]. They're important: the computer " +"uses them to know which instructions are part of the same code block." +msgstr "" +"Le istruzioni di una funzione [b]devono[/b] cominciare tutte con un " +"carattere di tabulazione. Puoi inserire questo carattere premendo il tasto " +"[b]Tab[/b].\n" +"\n" +"Chiamiamo queste tabulazioni [i]indentazione[/i]. È molto importante: il " +"computer la sfrutta per capire quali istruzioni fanno parte dello stesso " +"blocco di codice." + +#: course/lesson-5-your-first-function/lesson.tres:158 +msgid "Why do we use functions?" +msgstr "Perché usiamo le funzioni?" + +#: course/lesson-5-your-first-function/lesson.tres:161 +msgid "" +"Functions are groups of instructions we reuse every time we call the " +"function.\n" +"\n" +"Because we give functions a name, they also allow us to name a set of " +"instructions, which is handy!" +msgstr "" +"Le funzioni sono gruppi di istruzioni che riutilizziamo ogni volta che " +"chiamiamo una funzione.\n" +"\n" +"Dare un nome alle funzioni ci permette di dare un nome a una serie di " +"istruzioni, il che è davvero comodo!" + +#: course/lesson-5-your-first-function/lesson.tres:164 +#: course/lesson-5-your-first-function/lesson.tres:165 +msgid "To reuse code multiple times. " +msgstr "Per riutilizzare del codice più volte. " + +#: course/lesson-5-your-first-function/lesson.tres:164 +#: course/lesson-5-your-first-function/lesson.tres:165 +msgid "To run multiple instructions in one go." +msgstr "Per eseguire più istruzioni alla volta." + +#: course/lesson-5-your-first-function/lesson.tres:164 +#: course/lesson-5-your-first-function/lesson.tres:165 +msgid "To put a name on multiple lines of code." +msgstr "Per dare un nome a più righe di codice." + +#: course/lesson-5-your-first-function/lesson.tres:172 +msgid "Names in code have rules" +msgstr "L'assegnazione dei nomi ha delle regole" + +#: course/lesson-5-your-first-function/lesson.tres:174 +msgid "" +"Function identifiers cannot contain spaces. In general, names in programming " +"languages cannot contain spaces.\n" +"\n" +"The computer uses spaces to detect the separation between different keywords " +"and identifiers.\n" +"\n" +"Instead of spaces, in GDScript, we use underscores (\"_\"). You saw this " +"already with functions like [code]move_forward()[/code] or " +"[code]move_local_x()[/code]. This is the convention we follow in GDScript.\n" +"\n" +"There's another convention programmers use in some other programming " +"languages.\n" +"\n" +"Instead of using underscores, they start words with capital letters except " +"for the first one. With that convention, you'd write function names like " +"[code]moveForward()[/code] or [code]moveLocalX()[/code]\n" +"\n" +"Identifiers also [i]have[/i] to start with a letter or an underscore; You " +"[i]can't[/i] begin with a number, but you can use numbers after the first " +"character." +msgstr "" +"Gli identificatori delle funzioni non possono contenere spazi. In generale, " +"i nomi nei linguaggi di programmazione non possono contenere spazi.\n" +"\n" +"Il computer usa gli spazi per identificare la separazione tra parole chiavi " +"e nomi.\n" +"\n" +"Al posto degli spazi, in GDScript, usiamo i trattini bassi (\"_\"). L'hai " +"già potuto vedere con funzioni come [code]move_forward()[/code] o " +"[code]move_local_x()[/code]. Questa è la convenzione, chiamata snake_case " +"che viene usata in GDScript.\n" +"\n" +"Ci sono altre convenzioni che vengono usate dai programmatori in altri " +"linguaggi.\n" +"\n" +"Al posto di utilizzare i trattini bassi, iniziano le parole con la lettera " +"maiuscola tranne per la prima parola. Con questa convenzione, scriveresti il " +"nome delle funzioni come [code]moveForward()[/code] o [code]moveLocalX()[/" +"code].\n" +"\n" +"Gli identificatori [i]devono[/i] pure iniziare con una lettera o con un " +"trattino basso; [i]Non[/i] puoi iniziare con un numero, ma puoi usare i " +"numeri dopo il primo carattere." + +#: course/lesson-5-your-first-function/lesson.tres:192 +msgid "Which of the following names are valid function names?" +msgstr "Quale tra i seguenti nomi sono validi per delle funzioni?" + +#: course/lesson-5-your-first-function/lesson.tres:193 +msgid "Note that it's fine to use capital letters." +msgstr "Nota che non è un problema usare le lettere maiuscole." + +#: course/lesson-5-your-first-function/lesson.tres:195 +msgid "" +"You can't name a function [code]move forward[/code] because it contains a " +"space. Names in code cannot contain spaces.\n" +"\n" +"They can't start with numbers either, which is why [code]45_degree_turn[/" +"code] is also invalid. \n" +"\n" +"However, having numbers elsewhere in a function name is fine. That's why " +"[code]make3NewCharacters[/code] works." +msgstr "" +"Non puoi chiamare una funzione [code]move forward[/code] perché contiene uno " +"spazio. I nomi nel codice non possono contenere spazi.\n" +"\n" +"Non possono neanche iniziare con numeri ed è per questo che " +"[code]45_degree_turn[/code] è pure invalido. \n" +"\n" +"Tuttavia, avere numeri in qualsiasi altra parte all'interno di un nome di " +"una funzione è ok. Quindi usare [code]make3NewCharacters[/code] va bene." + +#: course/lesson-5-your-first-function/lesson.tres:200 +msgid "move forward" +msgstr "move forward" + +#: course/lesson-5-your-first-function/lesson.tres:200 +#: course/lesson-5-your-first-function/lesson.tres:201 +msgid "jump" +msgstr "jump" + +#: course/lesson-5-your-first-function/lesson.tres:200 +#: course/lesson-5-your-first-function/lesson.tres:201 +msgid "make3NewCharacters" +msgstr "make3NewCharacters" + +#: course/lesson-5-your-first-function/lesson.tres:200 +#: course/lesson-5-your-first-function/lesson.tres:201 +msgid "move_forward" +msgstr "move_forward" + +#: course/lesson-5-your-first-function/lesson.tres:200 +msgid "45_degree_turn" +msgstr "45_degree_turn" + +#: course/lesson-5-your-first-function/lesson.tres:208 +msgid "Instantly moving the turtle to a different position" +msgstr "Muovendo istantaneamente la tartaruga in una posizione differente" + +#: course/lesson-5-your-first-function/lesson.tres:210 +msgid "" +"In order to draw multiple squares in different positions, we introduce a new " +"function for our turtle to use.\n" +"\n" +"The [code]jump()[/code] function picks up the turtle and places it relative " +"to where it is.\n" +"\n" +"So calling [code]jump(-100, 50)[/code] moves the turtle by 100 pixels to the " +"[b]left[/b] and 50 pixels [b]down[/b] without drawing any lines." +msgstr "" +"Per disegnare molti quadrati in posizioni diverse, introduciamo una nuova " +"funzione che la nostra tartaruga utilizzerà.\n" +"\n" +"La funzione [code]jump()[/code] prende la tartaruga e la sposta " +"relativamente a dove si trova.\n" +"\n" +"Dunque chiamare [code]jump(-100, 50)[/code] muoverà la tartaruga di 100 " +"pixel sulla sua [b]sinistra[/b] e 50 pixel vero il [b]basso[/b] senza " +"disegnare alcuna linea." + +#: course/lesson-5-your-first-function/lesson.tres:232 +msgid "A function to draw squares" +msgstr "Una funzione che disegna quadrati" + +#: course/lesson-5-your-first-function/lesson.tres:233 +msgid "" +"Code a function named [code]draw_square()[/code] to draw one square of " +"length 200 pixels. The function should take no parameters.\n" +"\n" +"Use the [code]move_forward()[/code] and [code]turn_right()[/code] functions " +"to instruct the turtle.\n" +"\n" +"In the following practice, you'll use the [code]draw_square()[/code] " +"function to draw multiple squares by calling your own function." +msgstr "" +"Scrivi una funzione chiamata[code]draw_square()[/code] per disegnare un " +"quadrato avente lato 200 pixel. La funzione non dovrebbe prendere alcun " +"parametro.\n" +"\n" +"Usa le funzioni [code]move_forward()[/code] e [code]turn_right()[/code] peer " +"istruire la tartaruga.\n" +"\n" +"Nella seguente pratica, userai la funzione [code]draw_square()[/code] per " +"disegnare vari quadrati chiamando la tua funzione." + +#: course/lesson-5-your-first-function/lesson.tres:246 +msgid "" +"Until now, you've had to write code by hand, and it's boring. It's time to " +"code a reusable function. You'll use it to draw multiple squares." +msgstr "" +"Fino ad ora, hai dovuto scrivere il codice a mano, questo è noioso. D'ora in " +"poi useremo funzioni riutilizzabili. Le utilizzerai per disegnare molti " +"quadrati." + +#: course/lesson-5-your-first-function/lesson.tres:251 +msgid "Drawing multiple squares" +msgstr "Disegnare molti quadrati" + +#: course/lesson-5-your-first-function/lesson.tres:252 +msgid "" +"You have a function to draw one square: [code]draw_square()[/code]. Use it " +"to draw three squares.\n" +"\n" +"We already created [code]draw_square()[/code] for you. Create a function " +"named [code]draw_three_squares[/code] that calls [code]draw_square()[/code] " +"three times.\n" +"\n" +"If you just call the function, all three squares will overlap. To stack them " +"diagonally, call [code]jump(300, 300)[/code] between two calls to " +"[code]draw_square()[/code].\n" +"\n" +"Calling [code]jump(300, 300)[/code] makes the turtle jump by 300 pixels to " +"the right and 300 pixels down without drawing any lines." +msgstr "" +"Hai una funzione per disegnare un quadrato: [code]draw_square()[/code]. " +"Usala per disegnare tre quadrati.\n" +"\n" +"Abbiamo già creato [code]draw_square()[/code] per te. Crea una funzione " +"chiamata [code]draw_three_squares[/code] che chiama [code]draw_square()[/" +"code] tre volte.\n" +"\n" +"Se chiami solamente la funzione, i tre quadrati si sovrapporranno. per " +"impilarli diagonalmente, chiama [code]jump(300, 300)[/code] tra due chiamate " +"di [code]draw_square()[/code].\n" +"\n" +"Chiamare [code]jump(300, 300)[/code] fa si che la tartaruga salti di 300 " +"pixel a destra e 300 pixel in basso senza disegnare alcuna linea." + +#: course/lesson-5-your-first-function/lesson.tres:275 +msgid "" +"Now you created a function to draw squares, you can reuse it by calling it " +"multiple times." +msgstr "" +"Ora hai creato una funzione che disegna quadrati, la puoi riutilizzare " +"chiamandola varie volte." + +#: course/lesson-5-your-first-function/lesson.tres:279 +msgid "Coding Your First Function" +msgstr "Programmando La Tua Prima Funzione" diff --git a/i18n/it/lesson-6-multiple-function-parameters.po b/i18n/it/lesson-6-multiple-function-parameters.po new file mode 100644 index 00000000..422a5dbb --- /dev/null +++ b/i18n/it/lesson-6-multiple-function-parameters.po @@ -0,0 +1,539 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 10:51+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:14 +msgid "" +"In the previous part, you created a function to draw a square of a fixed " +"size.\n" +"\n" +"This function is a bit limiting. Instead, it would be much better if we had " +"a function to draw a square of [i]any[/i] size. Or better: any kind of " +"rectangle (a square is a specific kind of rectangle).\n" +"\n" +"In previous lessons, you used the [code]rotate()[/code] function and gave it " +"an [i]argument[/i]." +msgstr "" +"Nella parte precedente è stata creata una funzione per disegnare un quadrato " +"di dimensioni fisse.\n" +"\n" +"Questa funzione è un po' limitante. Sarebbe invece molto meglio avere una " +"funzione per disegnare un quadrato di [i]qualsiasi[/i] dimensione. O meglio: " +"di qualsiasi tipo di rettangolo (il quadrato è un tipo specifico di " +"rettangolo).\n" +"\n" +"Nelle lezioni precedenti, avete usato la funzione [code]rotate()[/code] e le " +"avete dato un [i]argomento[/i]." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:38 +msgid "" +"Just like [code]rotate()[/code], we can also give our function " +"[i]parameters[/i]. Parameters are labels you give to values passed to the " +"function." +msgstr "" +"Così come [code]rotate()[/code], pure noi possiamo dare alle nostre funzioni " +"dei [i]parametri[/i]. I parametri sono nomi che diamo ai valori passati alla " +"funzione." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:46 +msgid "Can I rotate in both directions?" +msgstr "" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:48 +msgid "" +"The [code]radians[/code] can be a positive or negative number, which allows " +"you to rotate both clockwise and counter-clockwise." +msgstr "" +"I [code]radianti[/code] possono essere numeri sia positivi ché negativi, " +"questo ti consente di ruotare sia in senso orario ché antiorario." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:58 +msgid "" +"For now, please focus on the first line: [code]func rotate(radians)[/code].\n" +"\n" +"When you call [code]rotate(0.5)[/code], the computer binds the value " +"[code]0.5[/code] to the label [code]radians[/code].\n" +"\n" +"Wherever the computer sees the identifier [code]radians[/code] inside the " +"function, it replaces it with the [code]0.5[/code] value.\n" +"\n" +"The parameter name is always a label you use to refer to a [i]value[/i]. The " +"value in question can be a number, text, or anything else.\n" +"\n" +"For now, we'll stick to numbers as we have yet to see other value types." +msgstr "" +"Per ora, concentrati sulla prima riga: [code]func rotate(radians)[/code].\n" +"\n" +"Quando chiami [code]rotate(0.5)[/code], il computer collega il valore " +"[code]0.5[/code] al nome [code]radians[/code].\n" +"\n" +"Ovunque il computer identifichi [code]radians[/code] all'interno della " +"funzione, lo rimpiazza con il valore [code]0.5[/code].\n" +"\n" +"Il nome del parametro è sempre un'etichetta che utilizziamo per riferisci ad " +"un [i]valore[/i]. Il valore in questione può essere un numero, del testo, o " +"qualsiasi altra cosa.\n" +"\n" +"Per ora, utilizzeremo i numeri finché non scopriremo altri tipi di valore." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:74 +msgid "What is a function parameter?" +msgstr "Cos'è un parametro di una funzione?" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:77 +msgid "" +"A parameter is a label that represents a value.\n" +"\n" +"The value in question can change: it depends on what you put in parentheses " +"when calling a function." +msgstr "" +"Un parametro è un'etichetta che rappresenta un valore.\n" +"\n" +"Il valore in questione può cambiare: dipende da cosa metti tra le parentesi " +"quando chiami la funzione." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:80 +#: course/lesson-6-multiple-function-parameters/lesson.tres:81 +msgid "A label you give to a value the function receives." +msgstr "Un'etichetta che dai ad un valore che la funzione riceve." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:80 +msgid "A number you use to make calculations." +msgstr "Un numero che usi per fare dei calcoli." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:80 +msgid "The name of a function." +msgstr "Il nome di una funzione." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:88 +msgid "How to create functions with parameters" +msgstr "Come creare una funzione con parametri" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:90 +msgid "" +"You can give your function parameters when writing its [i]definition[/i] " +"(the line starting with the [code]func[/code] keyword).\n" +"\n" +"To do so, you add a name inside of the parentheses." +msgstr "" +"Puoi dare dei parametri pure alle tue funzioni quando scrivi la loro " +"[i]definizione[/i] (la riga che inizia con la parola chiave [code]func[/" +"code]).\n" +"\n" +"Per fare questo, aggiungi un nome all'interno delle parentesi." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:112 +msgid "" +"You can give parameters any name. How you name functions and parameters is " +"up to you. \n" +"\n" +"Just remember that names cannot contain spaces. To write parameter names " +"with multiple words, you need to use underscores.\n" +"\n" +"The following function definition is exactly equivalent to the previous one." +msgstr "" +"Puoi dare ai parametri ogni nome. Sta a te dare i nomi alle funzioni e ai " +"parametri. \n" +"\n" +"Ricorda soltanto che i nomi non possono contenere spazi. Per scrivere nomi " +"di parametri con più parole, devi usare il trattino basso.\n" +"\n" +"La seguente definizione di funzione è esattamente equivalente alla " +"precedente." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:136 +msgid "" +"Parameters make your code easier to reuse.\n" +"\n" +"Here's an example with a function to draw any square. Use the slider to " +"change the value passed to the function and draw squares of different sizes." +msgstr "" +"I parametri rendono il tuo codice più facile da riutilizzare.\n" +"\n" +"Ecco un esempio con una funzione che disegna ogni quadrato. Usa lo slider " +"per cambiare il valore passato alla funzione e disegnare quadrati di " +"grandezze differenti." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:156 +msgid "Which is the correct syntax for a function definition?" +msgstr "Qual è la sintassi corretta per una definizione di funzione?" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:159 +msgid "" +"To define a function, you need to start with the [code]func[/code] keyword " +"followed by a space, the [code]function_name[/code], and optional parameters " +"inside parentheses.\n" +"\n" +"You must end the line with a colon, which defines a new code block. We'll " +"see moving forward that keywords other than [code]func[/code] require a " +"colon at the end of the line." +msgstr "" +"Per definire una funzione, devi iniziare con la parola chiave [code]func[/" +"code] seguito da uno spazio, il [code]nome_della_funzione[/code] e dei " +"parametri opzionali all'interno delle parentesi.\n" +"\n" +"Devi concludere la riga con i due punti, che definiscono un nuovo blocco di " +"codice. Vedremo, andando avanti, che le altre parole chiave oltre a " +"[code]func[/code] richiedono i due punti alla fine della linea." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:162 +#: course/lesson-6-multiple-function-parameters/lesson.tres:163 +msgid "func function_name(parameter_name):" +msgstr "func nome_della_funzione(nome_del_parametro):" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:162 +msgid "func (function_name): parameter_name" +msgstr "func (nome_della_funzione): nome_del_parametro" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:162 +msgid "func function_name(parameter_name)" +msgstr "func nome_della_funzione(nome_del_parametro)" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:162 +msgid "function_name(parameter_name):" +msgstr "nome_della_funzione(nome_del_parametro):" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:170 +msgid "Functions can have multiple parameters" +msgstr "Le funzioni possono avere più parametri" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:172 +msgid "" +"You can use multiple parameters in a function. In fact, you can use as many " +"as you [i]need[/i].\n" +"\n" +"To separate the function parameters, you need to write a comma between them." +msgstr "" +"Puoi usare più parametri in una funzione. Difatti, ne puoi usare quante ne " +"[i]vuoi[/i].\n" +"\n" +"Per separare i parametri della funzione, devi inserire una virgola tra " +"questi." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:192 +msgid "Must I write spaces between function parameters?" +msgstr "Devo scrivere gli spazi tra due parametri di funzione?" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:194 +msgid "" +"In a function definition, you must have a space between the [code]func[/" +"code] keyword and the function name.\n" +"\n" +"However, because we use the comma to separate parameters, it doesn't matter " +"if you use spaces between parameters. As long as you have the comma, either " +"syntax is correct.\n" +"\n" +"We often use spaces after the comma for readability." +msgstr "" +"Nella definizione di una funzione, deve esserci uno spazio tra la parola " +"chiave [code]func[/code] e il nome della funzione.\n" +"\n" +"Tuttavia, dato che utilizziamo la virgola per separare i parametri, non " +"importa se inserisci degli spazi tra i parametri. Finché hai la virgola, " +"entrambe le sintassi sono corrette.\n" +"\n" +"Spesso usiamo gli spazi dopo la virgola per rendere il codice più leggibile." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:208 +msgid "" +"The following example defines a function that uses two parameters to move an " +"entity on both the X and Y axes." +msgstr "" +"Il seguente esempio definisce una funzione che usa due parametri per muovere " +"un elemento nell'asse sia x ché y." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:226 +msgid "How should I name my functions and parameters?" +msgstr "Come dovrei chiamare la mia funzione e i suoi parametri?" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:228 +msgid "" +"The names of functions, parameters, or other things in your code are " +"entirely up to you.\n" +"\n" +"They are written by us programmers for other programmers. You want to use " +"the names that make the most sense to you and fellow programmers.\n" +"\n" +"You could absolutely write single-letter names like in maths classes: " +"[code]a[/code], [code]b[/code], [code]f[/code].\n" +"\n" +"You can also write abbreviated names like [code]pos[/code] for position, " +"[code]bg[/code] for background, and so on.\n" +"\n" +"Many programmers do either or both of the above.\n" +"\n" +"At GDQuest, we favor complete and explicit names.\n" +"\n" +"We generally try to write code that is explicit and relatively easy to " +"read.\n" +"\n" +"Right now, you have to enter every letter when you code, so long names may " +"feel inconvenient.\n" +"\n" +"However, this is good for learning: it trains your fingers to [ignore]type " +"precisely.\n" +"\n" +"Then, after you finish this course, you will see that the computer assists " +"you a lot when you code real games with a feature called auto-completion.\n" +"\n" +"Based on a few characters you [ignore]type, it will offer you to complete " +"long names." +msgstr "" +"I nomi delle funzioni, dei parametri, o di altre cose nel tuo codice sono a " +"tua discrezione.\n" +"\n" +"Sono scritti da noi programmatori per altri programmatori. Dovresti voler " +"utilizzare i nomi che hanno più senso per te e per gli altri programmatori.\n" +"\n" +"Potresti scrivere nomi da una singola lettera come nelle lezioni di " +"matematica: [code]a[/code], [code]b[/code], [code]f[/code].\n" +"\n" +"Puoi anche scrivere nomi abbreviati come [code]pos[/code] per posizione, " +"[code]sf[/code] per sfondo e così via.\n" +"\n" +"Molti programmatori fanno come uno o come entrambi i modi mostrati sopra.\n" +"\n" +"A GDQuest, preferiamo nomi completi ed espliciti.\n" +"\n" +"Generalmente cerchiamo di scrivere codice che è esplicito e relativamente " +"semplice da leggere.\n" +"\n" +"Adesso, devi scrivere ogni lettera quando programmi, quindi nomi lunghi " +"potrebbero sembrare sconvenienti.\n" +"\n" +"Tuttavia, questo è buono per imparare: allena le tue dita a scrivere " +"precisamente.\n" +"\n" +"Dopo che avrai finito il corso, vedrai che il computer ti assisterà un sacco " +"programmando un gioco reale, con una funzionalità chiamata auto-" +"completamento.\n" +"\n" +"In base ad alcuni caratteri che inserisci, ti offrirà di completare nomi " +"lunghi." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:256 +msgid "When defining a function, parameters are..." +msgstr "Quando definisci una funzione, i parametri sono..." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:259 +msgid "" +"You can define functions with or without parameters, depending on your needs." +msgstr "" +"Puoi definire una funzione con o senza parametri, in base ai tuoi bisogni." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:260 +#: course/lesson-6-multiple-function-parameters/lesson.tres:261 +msgid "Optional" +msgstr "Opzionali" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:260 +msgid "Mandatory" +msgstr "Obbligatori" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:268 +msgid "" +"What's the correct syntax to define a function with multiple parameters?" +msgstr "" +"Qual è la sintassi corretta per definire una funzione con più parametri?" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:271 +msgid "" +"You always write the function parameters inside of the parentheses. To " +"define multiple parameters, you separate them with a comma." +msgstr "" +"Puoi sempre scrivere i parametri di una funzione all'interno delle " +"parentesi. Per definire più parametri, li separi con una virgola." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:272 +#: course/lesson-6-multiple-function-parameters/lesson.tres:273 +msgid "func function_name(parameter_1, parameter_2, ...):" +msgstr "func nome_della_funzione(parametro_1, parametro_2, ...):" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:272 +msgid "func function_name(parameter_1 parameter_2 ...):" +msgstr "func nome_della_funzione(parametro_1 parametro_2 ...):" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:272 +msgid "func function_name(): parameter_1, parameter_2, ..." +msgstr "func nome_della_funzione(): parametro_1, parametro_2, ..." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:282 +msgid "" +"Now it's your turn to create a function with multiple parameters: a function " +"to draw rectangles of any size." +msgstr "" +"Ora tocca a te creare una funzione con più parametri: una funzione che " +"disegni un rettangolo di qualsiasi grandezza." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:290 +msgid "Drawing corners of different sizes" +msgstr "Disegnando degli spigoli di grandezze differenti" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:291 +msgid "" +"Before we create a rectangle of any size, let's first see how we can use " +"parameters to draw simpler shapes.\n" +"\n" +"Here we have an incomplete function that will draw corners with lines of any " +"length, but it's missing its [code]length[/code] parameter.\n" +"\n" +"The function will move the turtle forward an amount defined by the parameter " +"[code]length[/code], turn [code]90[/code] degrees, then move forward " +"[code]length[/code] pixels.\n" +"\n" +"Complete the [code]draw_corner()[/code] function so it uses the " +"[code]length[/code] parameter to draw corners." +msgstr "" +"Prima di andare a creare un rettangolo di ogni grandezza, vediamo come " +"possiamo usare i parametri per disegnare forme più semplici.\n" +"\n" +"Qui abbiamo una funzione incompleta che disegnerà degli spigoli con linee di " +"ogni lunghezza, ma manca il suo parametro [code]length[/code].\n" +"\n" +"La funzione muoverà la tartaruga in avanti di una quantità definita dal " +"parametro [code]length[/code], ruota di [code]90[/code] gradi, poi muoviti " +"in avanti di [code]length[/code] pixel.\n" +"\n" +"Completa la funzione [code]draw_corner()[/code] cosicché utilizzi il " +"parametro [code]length[/code] per disegnare gli spigoli." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:309 +msgid "" +"Using function parameters, code a function you can reuse to draw corners " +"with lines of varying sizes." +msgstr "" +"Usando i parametri della funzione, scrivi una funzione che puoi riutilizzare " +"per disegnare degli spigoli con linee di grandezza variabile." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:314 +msgid "Using multiple parameters" +msgstr "Usando più variabili" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:315 +msgid "" +"In this practice, we'll improve our [code]draw_corner()[/code] function so " +"the angle can also vary.\n" +"\n" +"Add the [code]angle[/code] parameter after the [code]length[/code] parameter " +"in the [code]draw_corner()[/code] function and use it to draw corners of " +"varying angles." +msgstr "" +"In questa pratica, miglioreremo la nostra funzione [code]draw_corner()[/" +"code] cosicché l'angolo possa pure variare.\n" +"\n" +"Aggiungi il parametro [code]angle[/code] dopo il parametro [code]length[/" +"code] nella funzione [code]draw_corner()[/code] e usala per disegnare " +"spigoli di angolo variabile." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:329 +msgid "With two parameters, code a function to draw corners with any angle." +msgstr "" +"Con due parametri, scrivi una funzione che disegni degli spigoli con ogni " +"angolo." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:334 +msgid "Drawing squares of any size" +msgstr "Disegnando quadrati di ogni grandezza" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:335 +msgid "" +"We want a function to draw squares of any size.\n" +"\n" +"We could use these squares as outlines when selecting units in a tactical " +"game, as a frame for items in an inventory, and more.\n" +"\n" +"Create a function named [code]draw_square()[/code] that takes one parameter: " +"the [code]length[/code] of the square's sides.\n" +"\n" +"[b]The turtle should face towards the right when starting or completing a " +"square.[/b]\n" +"\n" +"Be sure to call [b]turn_right(90)[/b] enough times in your function to do " +"so." +msgstr "" +"Vogliamo una funzione che disegni quadrati di ogni grandezza.\n" +"\n" +"Potremmo usare questi quadrati come contorni quando selezioniamo delle unità " +"in un gioco tattico, come cornice per oggetti in un inventario e molto " +"altro.\n" +"\n" +"Crea una funzione chiamata [code]draw_square()[/code] che prende un " +"parametro: la [code]length[/code] dei lati del quadrato.\n" +"\n" +"[b] La tartaruga dovrebbe essere star guardando a destra quando inizi o " +"completi un quadrato.[/b]\n" +"\n" +"Assicurati di chiamare [b]turn_right(90)[/b] abbastanza volte nella tua " +"funzione per far ciò." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:352 +msgid "" +"In the previous lesson, your function would draw squares of a fixed size. " +"Using a parameter, code a function to draw squares of any size." +msgstr "" +"Nella lezione precedente, la tua funzione disegnava quadrati di grandezza " +"fissa. Usando un parametro, scrivi una funzione che disegni quadrati di ogni " +"grandezza." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:357 +msgid "Drawing rectangles of any size" +msgstr "Disegnando rettangoli di ogni grandezza" + +#: course/lesson-6-multiple-function-parameters/lesson.tres:358 +msgid "" +"Let's make our square drawing function more flexible to include rectangles " +"of varying sizes.\n" +"\n" +"Your job is to code a function named [code]draw_rectangle()[/code] that " +"takes two parameters: the [code]length[/code] and the [code]height[/code] of " +"the rectangle.\n" +"\n" +"[b]The turtle should face towards the right when starting or completing a " +"rectangle.[/b]\n" +"\n" +"Note that we could still draw a square with [code]draw_rectangle()[/code] by " +"having the [code]length[/code] and [code]height[/code] equal the same value." +msgstr "" +"Rendiamo la nostra funzione disegna quadrati più flessibile per includere " +"rettangoli di grandezze variabili.\n" +"\n" +"Il tuo obiettivo è quello di scrivere una funzione " +"chiamata[code]draw_rectangle()[/code] che prende due parametri: la " +"[code]length[/code] e l'[code]height[/code] del rettangolo.\n" +"\n" +"[b] La tartaruga dovrebbe essere star guardando a destra quando inizi o " +"completi un rettangolo.[/b]\n" +"\n" +"Nota che potremmo disegnare comunque un quadrato con [code]draw_rectangle()[/" +"code] avendo la [code]length[/code] e l'[code]height[/code] uguali." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:381 +msgid "" +"With one parameter, you can make squares of any size. With two, you can draw " +"any rectangle! You'll do so in this practice." +msgstr "" +"Con un parametro, puoi creare quadrati di ogni grandezza. Con due, puoi " +"disegnare ogni rettangolo! Farai questo nella seguente pratica." + +#: course/lesson-6-multiple-function-parameters/lesson.tres:385 +msgid "Your First Function Parameter" +msgstr "La Tua Prima Funzione Parametrizzata" diff --git a/i18n/it/lesson-7-member-variables.po b/i18n/it/lesson-7-member-variables.po new file mode 100644 index 00000000..119e1ca3 --- /dev/null +++ b/i18n/it/lesson-7-member-variables.po @@ -0,0 +1,436 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 10:51+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-7-member-variables/lesson.tres:14 +msgid "" +"In this lesson, we take a first look at variables.\n" +"\n" +"In games, you need to keep track of many values that change over time:\n" +"\n" +"- The player's score.\n" +"- Every character or enemy's health.\n" +"- The last checkpoint.\n" +"\n" +"And so much more. You need to store, retrieve, and update those values.\n" +"\n" +"We call those values [i]variables[/i]. Variables are labels you use to keep " +"track of values that vary over time. Here's an example of a variable " +"tracking a character or monster's health." +msgstr "" +"In questa lezione, iniziamo a dare un primo sguardo alle variabili.\n" +"\n" +"Nei videogiochi, devi tenere conto di molte cose che cambiano con il tempo:\n" +"\n" +"- Il punteggio del giocatore.\n" +"- La vita di ogni personaggio o nemico.\n" +"- L'ultimo checkpoint.\n" +"\n" +"E molto altro ancora. Devi conservare, recuperare e aggiornare quei valori.\n" +"\n" +"Chiamiamo quei valori [i]variabili[/i]. Le variabili sono come etichette che " +"usiamo per tenere conto di valori che variano con il tempo. Qui un esempio " +"di una variabile che monitora la vita di un mostro o di un personaggio." + +#: course/lesson-7-member-variables/lesson.tres:44 +msgid "" +"The line above defines a new variable named [code]health[/code] and assigns " +"it a starting value of [code]100[/code] (that's what the equal sign does, " +"more on that below).\n" +"\n" +"Function parameters, which you saw in the previous lesson, are another " +"example of variables." +msgstr "" +"La riga sopra definisce una nuova variabile chiamata [code]health[/code] e " +"gli assegna un valore iniziale di [code]100[/code] (questa è la funzione del " +"simbolo di uguaglianza che verrà trattato anche successivamente).\n" +"\n" +"I parametri della funzione, che hai visto nella lezione precedente, sono un " +"altro esempio di variabili." + +#: course/lesson-7-member-variables/lesson.tres:56 +msgid "" +"In this lesson, we start using variables built into Godot. They're a " +"particular kind called [i]member variables[/i].\n" +"\n" +"Member variables are values attached to a game entity. They're useful " +"properties like the [code]position[/code], [code]rotation[/code], and " +"[code]scale[/code] of a character.\n" +"\n" +"In a previous lesson, we saw how we could use the [code]rotate()[/code] " +"function to rotate our character." +msgstr "" +"In questa lezione, iniziamo ad usare variabili preimpostate in Godot. Queste " +"sono una categoria particolare di variabili, chiamate [i]variabili membro[/" +"i].\n" +"\n" +"Le variabili membro sono valori attaccati ad un elemento del gioco. Sono " +"proprietà utili come la [code]position[/code], [code]rotation[/code] e " +"[code]scale[/code] (ovvero posizione, rotazione e dimensione) di un " +"personaggio.\n" +"\n" +"In una lezione precedente, abbiamo visto come possiamo usare la funzione " +"[code]rotate()[/code] per ruotare il nostro personaggio." + +#: course/lesson-7-member-variables/lesson.tres:80 +msgid "" +"This function increases or decreases the value of the entity's " +"[code]rotation[/code] member variable.\n" +"\n" +"Say we want to reset the rotation to [code]0[/code] and make the character " +"upright. Using the [code]rotate()[/code] function can prove difficult: you " +"need to know the character's exact current angle to cancel it out.\n" +"\n" +"It's much easier to use the member variable rather than the function.\n" +"\n" +"The following code assigns the value [code]0[/code] to the character's " +"rotation, resetting its angle and making it upright." +msgstr "" +"Questa funzione aumenta e diminuisce il valore della variabile membro " +"[code]rotation[/code] dell'elemento.\n" +"\n" +"Se per esempio volessimo porre la rotazione di nuovo a [code]0[/code] per " +"rendere il personaggio dritto. Usare la funzione [code]rotate()[/code] per " +"questo scopo potrebbe risultare scomodo: dovresti sapere l'esatta rotazione " +"corrente del personaggio per poi annullarla.\n" +"\n" +"Risulta molto più facile usare la variabile membro al posto della funzione.\n" +"\n" +"Il seguente codice assegna il valore [code]0[/code] alla rotazione del " +"personaggio, resettando il suo angolo e rendendolo dritto." + +#: course/lesson-7-member-variables/lesson.tres:106 +msgid "" +"Notice how we use the equal sign ([code]=[/code]) to change the value of a " +"variable." +msgstr "" +"Nota bene come usiamo il segno di uguaglianza ([code]=[/code]) per cambiare " +"il valore di una variabile." + +#: course/lesson-7-member-variables/lesson.tres:114 +msgid "What's a variable?" +msgstr "Cos'è una variabile?" + +#: course/lesson-7-member-variables/lesson.tres:117 +msgid "" +"Variables are labels you use to access values that change over time.\n" +"\n" +"You can also use them to put a name on a value you want to reuse throughout " +"your code. It makes your code easier to read and to change." +msgstr "" +"Le variabili come etichette che utilizzi per accedere a valori che cambiano " +"con il tempo.\n" +"\n" +"Le puoi pure usare per mettere nomi a valori che vuoi riutilizzare nel tuo " +"codice. Rende il tuo codice più facile da leggere e da cambiare in seguito." + +#: course/lesson-7-member-variables/lesson.tres:120 +#: course/lesson-7-member-variables/lesson.tres:121 +msgid "A label you use to keep track of a value that can change." +msgstr "" +"Come un'etichetta che usi per tenere d'occhio un valore che può cambiare." + +#: course/lesson-7-member-variables/lesson.tres:120 +msgid "A function that varies over time." +msgstr "Una funzione che varia con il tempo." + +#: course/lesson-7-member-variables/lesson.tres:120 +msgid "A decimal number." +msgstr "Un numero decimale." + +#: course/lesson-7-member-variables/lesson.tres:128 +msgid "Accessing sub-variables with the dot" +msgstr "Accedere sotto-variabili con un punto" + +#: course/lesson-7-member-variables/lesson.tres:130 +msgid "" +"In video games, you will see many member variables that have sub-values.\n" +"\n" +"For example, the [code]position[/code] we mentioned has two coordinates: " +"[code]x[/code] and [code]y[/code].\n" +"\n" +"It's the same for the [code]scale[/code]: it has [code]x[/code] and [code]y[/" +"code] sub-variables. They respectively control the horizontal and vertical " +"size of the game entity.\n" +"\n" +"To access those X and Y sub-components, you add a dot (\".\") after the " +"variable name.\n" +"\n" +"The code below places the entity at [code]200[/code] pixels on the x-axis " +"and [code]250[/code] pixels on the y-axis." +msgstr "" +"Nei videogiochi, si vedono molte variabili membro che hanno dei sottovalori." +"\n" +"\n" +"Ad esempio, la [code]position[/code] di cui abbiamo parlato ha due " +"coordinate: [code]x[/code] e [code]y[/code].\n" +"\n" +"Lo stesso vale per [code]scale[/code]: ha le sottovariabili [code]x[/code] e " +"[code]y[/code]. Esse controllano rispettivamente la dimensione orizzontale e " +"verticale dell'entità di gioco.\n" +"\n" +"Per accedere alle sottovariabili X e Y, si aggiunge un punto (\".\") dopo il " +"nome della variabile.\n" +"\n" +"Il codice seguente posiziona l'entità a [code]200[/code] pixel sull'asse x e " +"a [code]250[/code] pixel sull'asse y." + +#: course/lesson-7-member-variables/lesson.tres:158 +msgid "" +"Notice how we use the equal sign (\"=\") to assign the numbers on the right " +"to the sub-variables on the left.\n" +"\n" +"Unlike in maths, in computer programming, the equal sign (\"=\") does not " +"mean \"is equal to.\"\n" +"\n" +"Instead, it means \"assign the result of the expression on the right to the " +"variable on the left\". We assign values so often in code that we prefer to " +"reserve the equal sign for that." +msgstr "" +"Nota come viene utilizzato il segno uguale (\"=\") per assegnare i numeri " +"sulla destra alle sotto-variabili sulla sinistra.\n" +"\n" +"Al contrario della matematica, in programmazione informatica, il segno di " +"uguaglianza (\"=\") non significa \"è uguale a\".\n" +"\n" +"Invece, significa \"assegna il risultato dell'espressione sulla destra alla " +"variabile a sinistra\". Assegniamo valori così spesso programmando che " +"preferiamo riservare il simbolo di uguaglianza per quello." + +#: course/lesson-7-member-variables/lesson.tres:170 +msgid "In games, the Y-axis is positive going down" +msgstr "Nei giochi, l'asse y è positiva andando verso il basso" + +#: course/lesson-7-member-variables/lesson.tres:172 +msgid "" +"Note that in games, assuming your character's position starts at (0, 0), the " +"code above moves the entity [code]180[/code] pixels to the right and " +"[code]120[/code] pixels down.\n" +"\n" +"In math, the y-axis is generally positive going up by convention.\n" +"\n" +"The convention is the [i]opposite[/i] in video games and many computer " +"applications: the y-axis is positive going down." +msgstr "" +"Nota bene che nei giochi, assumendo la posizione del tuo personaggio partire " +"a (0, 0), il codice qua sopra muove l'elemento di [code]180[/code] pixel " +"sulla destra e [code]120[/code] pixel verso il basso.\n" +"\n" +"In matematica, l'asse y è generalmente positivo verso l'alto per " +"convenzione.\n" +"\n" +"Questa convenzione è [i]opposta[/i] nei videogiochi e in molte applicazioni " +"per computer: l'asse y è positiva verso il basso." + +#: course/lesson-7-member-variables/lesson.tres:194 +msgid "Why does the Y-axis point downwards?" +msgstr "Perché l'asse Y punta verso il basso?" + +#: course/lesson-7-member-variables/lesson.tres:196 +msgid "" +"This may be confusing if you only saw the y-axis pointing up in math " +"classes. However, in math, axes go in any direction. They don't even have to " +"be perpendicular.\n" +"\n" +"On the computer, the position (0, 0) happens to correspond to the top-left " +"of your computer screen. It then makes sense for coordinates to be positive " +"when going towards the bottom-right corner.\n" +"\n" +"This leads to another question: why is position zero the top left of the " +"screen? This is due to computer and TV displays history: they would " +"calculate and display pixels starting from the top left corner and moving " +"towards the bottom right corner." +msgstr "" +"Questo potrebbe essere confusionario se avessi visto, in matematica, l'asse " +"y andare solo verso l'alto. Tuttavia, in matematica, le assi vanno in ogni " +"direzione. Non devono neanche essere perpendicolari.\n" +"\n" +"Sul computer, la posizione (0, 0) corrisponde all'angolo in alto a sinistra " +"sul tuo schermo. Ha dunque senso per le coordinate di essere positive " +"andando verso l'angolo in basso a destra.\n" +"\n" +"Questo scaturisce un'altra domanda: perchè la posizione iniziale è l'angolo " +"in alto a sinistra? Questo è dovuto alla storia dei computer e degli schermi " +"TV: all'inizio calcolavano e mostravano i pixel a partire dall'angolo in " +"alto a sinistra muovendosi verso la posizione in basso a destra." + +#: course/lesson-7-member-variables/lesson.tres:210 +msgid "" +"Let's look at one last example before moving on to the practice. The " +"following code makes the character 1.5 times its starting size." +msgstr "" +"Vediamo un ultimo esempio prima di andare a fare pratica. Il seguente codice " +"rende il personaggio 1.5 volte la sua dimensione iniziale." + +#: course/lesson-7-member-variables/lesson.tres:228 +msgid "How do you access sub-variables?" +msgstr "Come accedi alle sotto-variabili?" + +#: course/lesson-7-member-variables/lesson.tres:229 +msgid "" +"Variables often hold sub-values, like the [code]position[/code] has two sub-" +"variables: [code]x[/code] and [code]y[/code]. How would you access the " +"[code]x[/code], for example?" +msgstr "" +"Spesso le variabili contengono sotto-valori, come la [code]position[/code] " +"ha le due sotto-variabili: [code]x[/code] e [code]y[/code]. Come accederesti " +"alla sotto-variabile [code]x[/code], per esempio?" + +#: course/lesson-7-member-variables/lesson.tres:231 +msgid "" +"To access a sub-variable, you need to write a dot between the parent " +"variable name and the sub-variable name.\n" +"\n" +"For example, to access the [code]x[/code] sub-variable of the " +"[code]position[/code] variable, you'll write [code]position.x[/code]." +msgstr "" +"Per accedere ad una sotto-variabile, devi inserire un punto tra il nome " +"della variabile parente e il nome della sotto-variabile.\n" +"\n" +"Per esempio, per accedere alla sotto-variabile [code]x[/code] della " +"variabile [code]position[/code], scriverai [code]position.x[/code]." + +#: course/lesson-7-member-variables/lesson.tres:234 +#: course/lesson-7-member-variables/lesson.tres:235 +msgid "You write a dot (\".\") between the variable and the sub-variable name." +msgstr "" +"Scrivi un punto (\".\") tra la variabile e il nome della sotto-variabile." + +#: course/lesson-7-member-variables/lesson.tres:234 +msgid "" +"You write an arrow (\"->\") between the variable and the sub-variable name." +msgstr "" +"Scrivi una freccia (\"->\") tra la variabile e il nome della sotto-variabile." + +#: course/lesson-7-member-variables/lesson.tres:234 +msgid "" +"You write a slash (\"/\") between the variable and the sub-variable name." +msgstr "" +"Scrivi uno slash (\"/\") tra la variabile e il nome della sotto-variabile." + +#: course/lesson-7-member-variables/lesson.tres:244 +msgid "" +"In a future lesson, we'll explain why and how those variables have sub-" +"variables.\n" +"\n" +"For now, just know you can use the dot to access them.\n" +"\n" +"We'll tell you which variables have sub-components and what their names " +"are.\n" +"\n" +"In the next lessons, you'll create your own variables and do operations on " +"them to add or remove [code]score[/code], [code]health[/code], you name it.\n" +"\n" +"For now, let's practice accessing variables." +msgstr "" +"In una lezione futura, spiegheremo perchè e come quelle variabili possiedono " +"sotto-variabili.\n" +"\n" +"Per ora, sappi soltanto che puoi usare il punto per accedervi.\n" +"\n" +"Ti diremo quali variabili possiedono sotto-componenti e quali sono i loro " +"nomi successivamente.\n" +"\n" +"Nelle prossimi lezioni, creerai le tue variabili e farai operazioni su " +"queste per aggiungere o rimuovere [code]punteggio[/code], [code]vita[/code] " +"e così via.\n" +"\n" +"Per ora, facciamo pratica accedendo a delle variabili." + +#: course/lesson-7-member-variables/lesson.tres:260 +msgid "Draw a rectangle at a precise position" +msgstr "Disegna un rettangolo in una posizione precisa" + +#: course/lesson-7-member-variables/lesson.tres:261 +msgid "" +"Draw a rectangle of 200 by 120 pixels at the X position of 120 pixels and Y " +"position of 100 pixels.\n" +"\n" +"You need to replace the numbers in the code editor to draw the correct " +"rectangle." +msgstr "" +"Disegna un rettangolo di 200 x 120 pixel alla posizione x di 120 pixel e " +"alla posizione y di 100 pixel.\n" +"\n" +"Devi rimpiazzare i numeri nell'editor di codice per disegnare il rettangolo " +"corretto." + +#: course/lesson-7-member-variables/lesson.tres:275 +msgid "" +"Use the position member variable and its sub-variables to change the " +"rectangle's position." +msgstr "" +"Usa la variabile membro position e le sue sotto-variabili per cambiare la " +"posizione del rettangolo." + +#: course/lesson-7-member-variables/lesson.tres:280 +msgid "Draw squares at different positions" +msgstr "Disegna quadrati a posizioni differenti" + +#: course/lesson-7-member-variables/lesson.tres:281 +msgid "" +"Draw three squares of size 100 by 100 that are 100 pixels apart on the " +"horizontal axis. In other words, there should be a 100-pixel gap between two " +"squares.\n" +"\n" +"You should draw the squares starting at the position (100, 100). This means " +"you should position the first square at 100 on the X axis and 100 on the Y " +"axis.\n" +"\n" +"Remember you need to use the equal sign ([code]=[/code]) to change the value " +"of a variable, like the turtle's position.\n" +"\n" +"Write your code inside the [code]run()[/code] function so the computer can " +"recognize it.\n" +"\n" +"Use the provided [code]draw_rectangle()[/code] function to draw each square." +msgstr "" +"Disegna tre quadrati di dimensioni 100 x 100 distanti 100 pixel sull'asse " +"orizzontale. In altre parole, deve esserci uno spazio di 100 pixel tra due " +"quadrati.\n" +"\n" +"I quadrati devono essere disegnati a partire dalla posizione (100, 100). Ciò " +"significa che si deve posizionare il primo quadrato a 100 sull'asse X e a " +"100 sull'asse Y.\n" +"\n" +"Ricordate che dovete usare il segno di uguale ([code]=[/code]) per cambiare " +"il valore di una variabile, come la posizione della tartaruga.\n" +"\n" +"Scrivete il codice all'interno della funzione [code]run()[/code] in modo che " +"il computer possa riconoscerlo.\n" +"\n" +"Utilizzate la funzione [code]draw_rectangle()[/code] per disegnare ogni " +"quadrato." + +#: course/lesson-7-member-variables/lesson.tres:299 +msgid "" +"Now you can place and draw one shape, but how about drawing several? In this " +"practice, you'll place three squares side by side to really get the hang of " +"properties." +msgstr "" +"Ora puoi piazzare e disegnare una figura, ma ché ne pensi di disegnarne " +"diverse? In questa pratica, piazzerai tre quadrati uno a fianco all'altro " +"per prendere bene la mano con le proprietà." + +#: course/lesson-7-member-variables/lesson.tres:303 +msgid "Introduction to Member Variables" +msgstr "Introduzione alle Variabili Membro" diff --git a/i18n/it/lesson-8-defining-variables.po b/i18n/it/lesson-8-defining-variables.po new file mode 100644 index 00000000..6cd4ee29 --- /dev/null +++ b/i18n/it/lesson-8-defining-variables.po @@ -0,0 +1,325 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2023-05-16 09:25+0200\n" +"PO-Revision-Date: 2023-05-17 10:51+0000\n" +"Last-Translator: Riccardo Santangelo \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.18-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-8-defining-variables/lesson.tres:13 +msgid "" +"In the previous lesson, you used a predefined member variable named " +"[code]position[/code].\n" +"\n" +"In your projects, you will need to define your own variables.\n" +"\n" +"Imagine that you need to track the player's health in your game.\n" +"\n" +"They may start with [code]5[/code] health points. When taking a hit, the " +"health should go down to [code]4[/code]. After another hit, it should be " +"[code]3[/code]. And so on.\n" +"\n" +"To keep track of that, you can create a variable named [code]health[/code] " +"to which you add and subtract points.\n" +"\n" +"The example below introduces the [code]print()[/code] function, which " +"outputs its argument to the output box on the left.\n" +"\n" +"Click the [i]run()[/i] button to instantly run the entire function, and " +"click the [i]step[/i] button to execute lines of code one by one.\n" +"\n" +"The [i]Debugger[/i] panel at the bottom shows the current value of the " +"[code]health[/code] variable." +msgstr "" +"Nella lezione precedente è stata utilizzata una variabile membro predefinita " +"chiamata [code]position[/code].\n" +"\n" +"Nei vostri progetti, dovrete definire le vostre variabili.\n" +"\n" +"Immaginate di dover tenere traccia della salute dei giocatori nel vostro " +"gioco.\n" +"\n" +"Il giocatore potrebbe iniziare con [code]5[/code] punti salute. Quando " +"subisce un colpo, la salute deve scendere a [code]4[/code]. Dopo un altro " +"colpo, dovrebbe essere [code]3[/code]. E così via.\n" +"\n" +"Per tenerne traccia, si può creare una variabile chiamata [code]health[/code]" +" a cui aggiungere e sottrarre punti.\n" +"\n" +"L'esempio seguente introduce la funzione [code]print()[/code], che invia il " +"suo argomento alla casella di output a sinistra.\n" +"\n" +"Cliccando sul pulsante [i]run()[/i] si esegue immediatamente l'intera " +"funzione, mentre cliccando sul pulsante [i]step[/i] si eseguono le righe di " +"codice una alla volta.\n" +"\n" +"Il pannello [i]Debugger[/i] in basso mostra il valore corrente della " +"variabile [code]health[/code]." + +#: course/lesson-8-defining-variables/lesson.tres:47 +msgid "" +"After executing the first two lines of code, you will have a health variable " +"storing a value of [code]4[/code].\n" +"\n" +"Below, we'll break down how you define new variables and explain the " +"[code]print()[/code] function." +msgstr "" +"Dopo aver eseguito le prime due righe di codice, avrai una variabile della " +"vita che conserva un valore di [code]4[/code].\n" +"\n" +"Sotto, ti spiegheremo la funzione [code]print()[/code] e come definire nuove " +"variabili." + +#: course/lesson-8-defining-variables/lesson.tres:57 +msgid "Defining a variable" +msgstr "Definendo una varibile" + +#: course/lesson-8-defining-variables/lesson.tres:59 +msgid "" +"To use a variable, you must first define it so the computer registers its " +"name.\n" +"\n" +"To do so, you start a line of code with the [code]var[/code] keyword " +"followed by your desired variable name. Like [code]func[/code] stands for " +"[i]function[/i], [code]var[/code] stands for [i]variable[/i].\n" +"\n" +"Variables are case-sensitive, which means [code]health[/code] and " +"[code]Health[/code] are technically different variables. Be careful to use " +"the same capitalization wherever you refer to the same variable, or you " +"could be reading or writing to a different variable.\n" +"\n" +"The following line defines a [code]health[/code] variable pointing to no " +"value. You can think of it as creating a product label you have yet to stick " +"onto something." +msgstr "" +"Per utilizzare una variabile, è necessario prima definirla in modo che il " +"computer ne registri il nome.\n" +"\n" +"Per farlo, si inizia una riga di codice con la parola chiave [code]var[/code]" +" seguita dal nome della variabile desiderata. Come [code]func[/code] sta per " +"[i]function[/i], [code]var[/code] sta per [i]variable[/i].\n" +"\n" +"Le variabili sono sensibili alle maiuscole, il che significa che " +"[code]health[/code] e [code]Health[/code] sono tecnicamente variabili " +"diverse. Fate attenzione a usare la stessa maiuscola ogni volta che vi " +"riferite alla stessa variabile, altrimenti potreste leggere o scrivere su " +"una variabile diversa.\n" +"\n" +"La riga seguente definisce una variabile [code]health[/code] che punta a " +"nessun valore. Si può pensare a questa variabile come alla creazione di " +"un'etichetta di un prodotto che si deve ancora attaccare a qualcosa." + +#: course/lesson-8-defining-variables/lesson.tres:85 +msgid "" +"Like with functions, a member variable's name must be unique inside a given " +"code file. Creating two variables next to each other with the same name will " +"cause an error." +msgstr "" +"Come per le funzioni, il nome di una variabile membro deve essere unico " +"all'interno di un file di codici. Creando due variabili l'uno vicino " +"all'altra con lo stesso nome può causare un errore." + +#: course/lesson-8-defining-variables/lesson.tres:105 +msgid "" +"To use a variable, you want to assign it a starting value. You can do so " +"using the equal sign (=).\n" +"\n" +"This code assigns the value [code]100[/code] to a new variable named " +"[code]health[/code]." +msgstr "" +"Per usare una variabile, prima devi assegnarli un valore iniziale. Puoi fare " +"questo usando il simbolo di uguaglianza (=).\n" +"\n" +"Questo codice assegna un valore di [code]100[/code] ad una nuova variabile " +"chiamata [code]health[/code]." + +#: course/lesson-8-defining-variables/lesson.tres:127 +msgid "" +"After defining your variable, you can access its value by writing the " +"variable's name." +msgstr "" +"Dopo aver definito la tua variabile, puoi accedere al suo valore scrivendo " +"il nome della variabile." + +#: course/lesson-8-defining-variables/lesson.tres:147 +msgid "" +"The code above will display the number [code]100[/code] to some output " +"window.\n" +"\n" +"Notice we don't use the [code]var[/code] keyword anymore as we only need it " +"to [i]define[/i] a variable.\n" +"\n" +"Also, once you define a variable, you can change its value anytime with the " +"equal sign." +msgstr "" +"Il codice qua sopra mostrerà il numero [code]100[/code] a qualche schermata " +"di output.\n" +"\n" +"Nota che non usiamo più la parola chiave [code]var[/code] dato che serve " +"solo per [i]definire[/i] una variabile.\n" +"\n" +"Inoltre, appena definisci una variabile, puoi cambiare il suo valore quando " +"vuoi con il segno uguale." + +#: course/lesson-8-defining-variables/lesson.tres:169 +msgid "About the print function" +msgstr "Riguardo la funzione print" + +#: course/lesson-8-defining-variables/lesson.tres:171 +msgid "" +"The [code]print()[/code] function is generally the first function you learn " +"in academic programming courses.\n" +"\n" +"It sends (\"prints\") the message or value you give it to some output " +"window, often a black window with plain white text." +msgstr "" +"La funzione [code]print()[/code] è in genere la prima funzione che impari " +"nei corsi di programmazione accademici.\n" +"\n" +"Manda (\"stampa\") il messaggio o il valore gli dai in qualche schermata di " +"output, spesso una finestra nera con nel semplice testo in bianco." + +#: course/lesson-8-defining-variables/lesson.tres:183 +msgid "" +"Programmers often use [code]print()[/code] to quickly check the value of " +"their variables when their game runs.\n" +"\n" +"In the app, we made a special output window that captures calls to " +"[code]print()[/code] and displays a card to make it friendlier for you." +msgstr "" +"I programmatori spesso usano [code]print()[/code] per controllare " +"rapidamente il valore delle loro variabili quando il loro gioco è in " +"esecuzione.\n" +"\n" +"In questa applicazione, abbiamo creato una speciale finestra di output che " +"cattura le chiamate di [code]print()[/code] e mostra una carta che la rende " +"più facile per te." + +#: course/lesson-8-defining-variables/lesson.tres:205 +msgid "" +"Here, the verb [i]print[/i] means \"to send information to display on the " +"screen.\"\n" +"\n" +"The function \"prints\" things on your computer display; It does not relate " +"to printers." +msgstr "" +"Qui, il verbo [i]print[/i] significa \"inviare informazioni da mostrare " +"sullo schermo\".\n" +"\n" +"La funzione \"stampa\" cose sul tuo schermo del computer; Non ha a che fare " +"con le stampanti." + +#: course/lesson-8-defining-variables/lesson.tres:215 +msgid "Variables are like labels" +msgstr "Le variabili sono come delle etichette" + +#: course/lesson-8-defining-variables/lesson.tres:217 +msgid "" +"As we hinted above, in GDScript, variables work a bit like labels.\n" +"\n" +"Assigning a value to a variable is like taking your label (the variable) and " +"sticking it onto some item (the value)." +msgstr "" +"Come abbiamo accennato sopra, in GDScript, le variabili operano un po' come " +"delle etichette.\n" +"\n" +"Assegnare un valore ad una variabile è come prendere la tua etichetta (la " +"variabile) e appiccicarla su qualche prodotto (il valore)." + +#: course/lesson-8-defining-variables/lesson.tres:229 +msgid "" +"Like a supermarket has a database of product labels, the computer keeps a " +"list of all variables in your code.\n" +"\n" +"Given the variable name, the computer can look up the attached value.\n" +"\n" +"It has an important consequence. In GDScript, you can stick that label to " +"any other value." +msgstr "" +"Come un supermercato possiede il suo database di etichette di prodotti, il " +"computer tiene una lista di tutte le variabili nel tuo codice.\n" +"\n" +"Dato il nome della variabile, il computer può guardare il valore collegato.\n" +"\n" +"Questo ha un'importante conseguenza. In GDScript, puoi attaccare " +"quell'etichetta ad ogni altro valore." + +#: course/lesson-8-defining-variables/lesson.tres:253 +msgid "" +"The above code is like taking a label from the appropriate item and sticking " +"it to the wrong thing:\n" +"\n" +"- At line 2, the [code]health[/code] variable holds a number.\n" +"- From line 3, [code]health[/code] holds text.\n" +"\n" +"The computer will let you do that! The code's syntax and \"grammar\" are " +"correct, but it's not good.\n" +"\n" +"Variable names should describe the value they contain, so a [code]health[/" +"code] variable with a text value will confuse your future self and other " +"coders. It can also cause errors in your game.\n" +"\n" +"Later on, we'll see how to avoid this issue with [i]variable types[/i]. For " +"now, let's practice creating variables!" +msgstr "" +"Il codice precedente è come se prendesse un'etichetta dall'elemento " +"appropriato e la attaccasse a quello sbagliato:\n" +"\n" +"- Alla riga 2, la variabile [code]health[/code] contiene un numero.\n" +"- Alla riga 3, [code]health[/code] contiene un testo.\n" +"\n" +"Il computer vi permetterà di farlo! La sintassi e la \"grammatica\" del " +"codice sono corrette, ma non vanno bene.\n" +"\n" +"I nomi delle variabili devono descrivere il valore che contengono, quindi " +"una variabile [code]health[/code] con un valore di testo confonderà il " +"vostro futuro io e gli altri codificatori. Può anche causare errori nel " +"gioco.\n" +"\n" +"Più avanti vedremo come evitare questo problema con i [i]tipi di " +"variabili[/i]. Per ora, esercitiamoci a creare le variabili!" + +#: course/lesson-8-defining-variables/lesson.tres:270 +msgid "Define a health variable" +msgstr "Definisci una variabile di vita" + +#: course/lesson-8-defining-variables/lesson.tres:271 +msgid "" +"Define a variable named [code]health[/code] with a starting value of " +"[code]100[/code].\n" +"\n" +"You can define variables inside or outside functions. In this practice, you " +"shouldn't create a function." +msgstr "" +"Definisci una variabile chiamata [code]health[/code] con un valore iniziale " +"di [code]100[/code].\n" +"\n" +"Puoi definire le variabili dentro o fuori le funzioni. In questa pratica, " +"non dovresti creare una funzione." + +#: course/lesson-8-defining-variables/lesson.tres:282 +msgid "" +"In this practice, you'll define your first variable and give it a specific " +"starting value." +msgstr "" +"In questa pratica, definirai la tua prima varibile e gli darai un valore " +"specifico." + +#: course/lesson-8-defining-variables/lesson.tres:286 +msgid "Defining Your Own Variables" +msgstr "Definendo Le Tue Variabili" diff --git a/i18n/it/lesson-9-adding-and-subtracting.po b/i18n/it/lesson-9-adding-and-subtracting.po new file mode 100644 index 00000000..63b0c514 --- /dev/null +++ b/i18n/it/lesson-9-adding-and-subtracting.po @@ -0,0 +1,221 @@ +# Translations template for Learn GDScript From Zero. +# Copyright (C) 2022 GDQuest +# This file is distributed under the same license as the Learn GDScript From +# Zero project. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: Learn GDScript From Zero\n" +"Report-Msgid-Bugs-To: https://github.com/GDQuest/learn-gdscript\n" +"POT-Creation-Date: 2022-03-26 17:50+0100\n" +"PO-Revision-Date: 2022-06-21 23:43+0000\n" +"Last-Translator: Fettenderi \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.13.1-dev\n" +"Generated-By: Babel 2.9.1\n" + +#: course/lesson-9-adding-and-subtracting/lesson.tres:14 +msgid "" +"Our character in our game will have health by defining the [code]health[/" +"code] variable. The higher the character's health, the further away the " +"player is from losing the game.\n" +"\n" +"Health that changes adds tension to the game, especially if the player is " +"fighting with low health! It's a resource that that player should manage " +"carefully.\n" +"\n" +"The character's health might get low if an enemy attacks them or they fall " +"into a hole.\n" +"\n" +"We can create a function to represent damage in these cases." +msgstr "" +"Il nostro personaggio per il nostro gioco avrà della vita definendo la " +"variabile [code]health[/code]. Più alta è la vita del personaggio, più " +"lontano è il giocatore dal perdere la partita.\n" +"\n" +"La vita che cambia aggiunge tensione al gioco, specialmente se il giocatore " +"sta combattendo con poca vita! Questa è una risorsa che il giocatore " +"dovrebbe maneggiare con cautela.\n" +"\n" +"La vita del personaggio potrebbe abbassarsi se un nemico lo attacca o se " +"cade in un buco.\n" +"\n" +"Possiamo creare una funzione che rappresenta il danno in questi casi." + +#: course/lesson-9-adding-and-subtracting/lesson.tres:40 +msgid "" +"We pass the amount of damage the robot should take as a parameter.\n" +"\n" +"Line 2 subtracts [code]amount[/code] from [code]health[/code].\n" +"\n" +"Note the [code]-=[/code] syntax which achieves this. It's a shorthand we " +"often use.\n" +"\n" +"You can also use a longer form. Both of these lines have the same effect. " +"They both subtract the value of [code]amount[/code] to the [code]health[/" +"code] variable:\n" +"\n" +"[code]health -= amount[/code]\n" +"[code]health = health - amount[/code]\n" +"\n" +"You may notice that the health of the robot can go below [code]0[/code]. " +"We'll see how to manage this in a future lesson using [i]conditions[/i]." +msgstr "" +"Possiamo passare la quantità di danno che il robot dovrebbe prendere come un " +"parametro.\n" +"\n" +"La linea 2 sottrae [code]amount[/code] da [code]health[/code].\n" +"\n" +"Nota che ciò è possibile grazie alla sintassi [code]-=[code]. Questa è una " +"scorciatoia che usiamo spesso.\n" +"\n" +"Puoi anche usare una forma più lunga. Entrambe queste righe hanno lo stesso " +"effetto. Entrambe sottraggono il valore di [code]amount[/code] dalla " +"variabile [code]health[/code]:\n" +"\n" +"[code]health -= amount[/code]\n" +"[code]health = health - amount[/code]\n" +"\n" +"Potresti notare che la vita del robot può andare sotto [code]0[/code]. " +"Vedremo come gestire questo in una lezione futura usando le " +"[i]condizioni[/i]." + +#: course/lesson-9-adding-and-subtracting/lesson.tres:61 +msgid "" +"The robot's health could increase instead if the player picks up an item " +"that heals them, or if they use a healing item." +msgstr "" +"La vita del robot potrebbe aumentare de invece il giocatore prendesse o " +"usasse un oggetto che lo guarisce." + +#: course/lesson-9-adding-and-subtracting/lesson.tres:81 +msgid "" +"Here again, the health can go beyond [code]100[/code].\n" +"\n" +"Also, once more, the short line [code]health += amount[/code] is equivalent " +"to the longer form [code]health = health + amount[/code]." +msgstr "" +"Qui di nuovo, la vita può andare oltre a [code]100[/code].\n" +"\n" +"Inoltre, ancora una volta, la linea corta [code]health += amount[/code] è " +"l'equivalente della sua forma più lunga [code]health = health + " +"amount[/code]." + +#: course/lesson-9-adding-and-subtracting/lesson.tres:91 +msgid "Which of these would increase the health of the robot?" +msgstr "Quale di queste aumenterebbe la vita del robot?" + +#: course/lesson-9-adding-and-subtracting/lesson.tres:94 +msgid "" +"Both of these lines increase the [code]health[/code] of the robot by " +"[code]amount[/code].\n" +"[code]\n" +"health += amount\n" +"health = health + amount\n" +"[/code]" +msgstr "" +"Entrambe queste linee incrementa la [code]vita[/code] del robot di " +"[code]amount[/code].\n" +"[code]\n" +"health += amount\n" +"health = health + amount\n" +"[/code]" + +#: course/lesson-9-adding-and-subtracting/lesson.tres:99 +msgid "health -= amount" +msgstr "health -= amount" + +#: course/lesson-9-adding-and-subtracting/lesson.tres:99 +#: course/lesson-9-adding-and-subtracting/lesson.tres:100 +msgid "health += amount" +msgstr "health += amount" + +#: course/lesson-9-adding-and-subtracting/lesson.tres:99 +#: course/lesson-9-adding-and-subtracting/lesson.tres:100 +msgid "health = health + amount" +msgstr "health = health + amount" + +#: course/lesson-9-adding-and-subtracting/lesson.tres:99 +msgid "health = health - amount" +msgstr "health = health - amount" + +#: course/lesson-9-adding-and-subtracting/lesson.tres:109 +msgid "" +"In the following practices, you'll code the [code]take_damage()[/code] and " +"[code]heal()[/code] functions so the robot's health can decrease and " +"increase." +msgstr "" +"Nelle seguenti pratiche, scriverai le funzioni [code]take_damage()[/code] e " +"[code]heal()[/code] cosicché la vita del robot possa diminuire e aumentare." + +#: course/lesson-9-adding-and-subtracting/lesson.tres:117 +msgid "Damaging the Robot" +msgstr "Danneggiando il Robot" + +#: course/lesson-9-adding-and-subtracting/lesson.tres:118 +msgid "" +"In our game, the main character has a certain amount of [code]health[/code]. " +"When it gets hit, the health should go down by a varying [code]amount[/code] " +"of damage.\n" +"\n" +"Add to the [code]take_damage()[/code] function so it subtracts the " +"[code]amount[/code] to the predefined [code]health[/code] variable.\n" +"\n" +"The robot starts with 100 health and will take 50 damage." +msgstr "" +"Nel nostro gioco, il protagonista ha una quantità specifica di " +"[code]health[/code]. Quando viene colpito, la vita dovrebbe scendere di una " +"[code]quantità[/code] variabile di danno.\n" +"\n" +"Aggiungi codice alla funzione [code]take_damage()[/code] cosicché sottragga " +"la [code]amount[/code] dalla variabile predefinita [code]health[/code].\n" +"\n" +"Il robot inizia con 100 di vita e prende 50 di danno." + +#: course/lesson-9-adding-and-subtracting/lesson.tres:134 +msgid "Learn how to deal damage to entities like our robot." +msgstr "Impara come fare danno agli elementi come il nostro robot." + +#: course/lesson-9-adding-and-subtracting/lesson.tres:139 +msgid "Healing the Robot" +msgstr "Curando il Robot" + +#: course/lesson-9-adding-and-subtracting/lesson.tres:140 +msgid "" +"It's time to heal the robot up to full health!\n" +"\n" +"Write a function called [code]heal()[/code] that takes [code]amount[/code] " +"as a parameter.\n" +"\n" +"The function should add [code]amount[/code] to [code]health[/code].\n" +"\n" +"The robot starts with 50 health and will heal 50 to get it up to 100." +msgstr "" +"Adesso proviamo a curare il robot a vita piena!\n" +"\n" +"Scrivi una funzione chiamata [code]heal()[/code] che prende una " +"[code]amount[/code] come parametro.\n" +"\n" +"La funzione dovrebbe aggiungere [code]amount[/code] alla [code]health[/code]." +"\n" +"\n" +"Il robot inizia con 50 di vita e si curerà di 50 per arrivare a 100." + +#: course/lesson-9-adding-and-subtracting/lesson.tres:157 +msgid "" +"Our robot needs healing after that practice! Create a function to heal it " +"back to full health." +msgstr "" +"Il nostro robot necessita di cura dopo questa pratica! Crea una funzione per " +"curare fino a vita piena." + +#: course/lesson-9-adding-and-subtracting/lesson.tres:161 +msgid "Adding and Subtracting" +msgstr "Aggiungendo e Sottraendo"