diff --git a/app/locale/da.coffee b/app/locale/da.coffee index e724d861d..cf28388d2 100644 --- a/app/locale/da.coffee +++ b/app/locale/da.coffee @@ -66,12 +66,12 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans no_ie: "CodeCombat kan desværre ikke køre i Internet Explorer 9 eller ældre. Beklager!" no_mobile: "CodeCombat er ikke designet til mobile enheder og vil måske ikke virke!" play: "Spil" -# old_browser: "Uh oh, your browser is too old to run CodeCombat. Sorry!" -# old_browser_suffix: "You can try anyway, but it probably won't work." -# campaign: "Campaign" -# for_beginners: "For Beginners" -# multiplayer: "Multiplayer" -# for_developers: "For Developers" + old_browser: "Åh åh, din browser er for gammel til at køre CodeCombat. Beklager!" + old_browser_suffix: "Du kan godt prøve alligevel, men det vil nok ikke virke." + campaign: "Kampagne" + for_beginners: "For Begyndere" + multiplayer: "Multiplayer" + for_developers: "For Udviklere" play: choose_your_level: "Vælg Dit Level" @@ -87,8 +87,8 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans campaign_player_created: "Spillerkreerede" campaign_player_created_description: "... hvor du kæmper mod dine med-Kunsthåndværker-troldmænds kreativitet." level_difficulty: "Sværhedsgrad: " -# play_as: "Play As " -# spectate: "Spectate" + play_as: "Spil Som " + spectate: "Observér" contact: contact_us: "Kontakt CodeCombat" @@ -112,7 +112,7 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans wizard_settings: title: "Troldmandsinstillinger" customize_avatar: "Tilpas din avatar" -# clothes: "Clothes" + clothes: "Påklædning" # trim: "Trim" # cloud: "Cloud" # spell: "Spell" @@ -139,7 +139,7 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans new_password_verify: "Bekræft" email_subscriptions: "Emailtilmeldinger" email_announcements: "Nyheder" -# email_notifications: "Notifications" + email_notifications: "Notifikationer" email_notifications_description: "Få periodevise meldinger om din konto." email_announcements_description: "Få emails om de seneste nyheder og udvikling på CodeCombat." contributor_emails: "Bidragsklasse-emails" @@ -204,7 +204,7 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans # tome_minion_spells: "Your Minions' Spells" # tome_read_only_spells: "Read-Only Spells" tome_other_units: "Andre enheder" -# tome_cast_button_castable: "Cast Spell" + tome_cast_button_castable: "Kast Trylleformular" # tome_cast_button_casting: "Casting" # tome_cast_button_cast: "Spell Cast" # tome_autocast_delay: "Autocast Delay" @@ -213,10 +213,10 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans tome_available_spells: "Tilgængelige trylleformularer" hud_continue: "Fortsæt (tryk skift-mellemrum)" spell_saved: "Trylleformularen er gemt" -# skip_tutorial: "Skip (esc)" + skip_tutorial: "Spring over (esc)" # editor_config: "Editor Config" # editor_config_title: "Editor Configuration" -# editor_config_keybindings_label: "Key Bindings" + editor_config_keybindings_label: "Tastaturgenveje" # editor_config_keybindings_default: "Default (Ace)" # editor_config_keybindings_description: "Adds additional shortcuts known from the common editors." # editor_config_invisibles_label: "Show Invisibles" @@ -243,7 +243,7 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans # article_description: "Write articles that give players overviews of programming concepts which can be used across a variety of levels and campaigns." # thang_title: "Thang Editor" # thang_description: "Build units, defining their default logic, graphics and audio. Currently only supports importing Flash exported vector graphics." -# level_title: "Level Editor" + level_title: "Bane Redigeringsværktøj" # level_description: "Includes the tools for scripting, uploading audio, and constructing custom logic to create all sorts of levels. Everything we use ourselves!" # security_notice: "Many major features in these editors are not currently enabled by default. As we improve the security of these systems, they will be made generally available. If you'd like to use these features sooner, " contact_us: "kontact os!" @@ -258,7 +258,7 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans level_tab_components: "Komponenter" level_tab_systems: "Systemer" # level_tab_thangs_title: "Current Thangs" -# level_tab_thangs_conditions: "Starting Conditions" + level_tab_thangs_conditions: "Startbetingelser" # level_tab_thangs_add: "Add Thangs" level_settings_title: "Instillinger" level_component_tab_title: "Nuværende komponenter" @@ -270,17 +270,17 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans # level_components_type: "Type" level_component_edit_title: "Redigér komponent" # level_component_config_schema: "Config Schema" -# level_component_settings: "Settings" + level_component_settings: "Indstillinger" level_system_edit_title: "Redigér system" create_system_title: "Opret nyt system" new_component_title: "Opret ny komponent" new_component_field_system: "System" -# new_article_title: "Create a New Article" + new_article_title: "Opret en Ny Artikel" # new_thang_title: "Create a New Thang Type" -# new_level_title: "Create a New Level" -# article_search_title: "Search Articles Here" + new_level_title: "Opret en Ny Bane" + article_search_title: "Søg Artikler Her" # thang_search_title: "Search Thang Types Here" -# level_search_title: "Search Levels Here" + level_search_title: "Søg Baner Her" article: edit_btn_preview: "Forhåndsvisning" @@ -292,9 +292,9 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans body: "krop" version: "version" commit_msg: "ændringsnotat" -# history: "History" + history: "Historie" version_history_for: "versionhistorie for: " -# result: "Result" + result: "Resultat" results: "resultater" description: "beskrivelse" or: "eller" @@ -303,16 +303,16 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans message: "Besked" # code: "Code" # ladder: "Ladder" -# when: "When" + when: "Når" # opponent: "Opponent" -# rank: "Rank" + rank: "Rang" # score: "Score" -# win: "Win" -# loss: "Loss" -# tie: "Tie" -# easy: "Easy" + win: "Sejr" + loss: "Tab" + tie: "Uafgjort" + easy: "Nem" # medium: "Medium" -# hard: "Hard" + hard: "Svær" about: who_is_codecombat: "Hvem er CodeCombat?" diff --git a/app/locale/de.coffee b/app/locale/de.coffee index 0155b3cdc..ecbe454f9 100644 --- a/app/locale/de.coffee +++ b/app/locale/de.coffee @@ -66,12 +66,12 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra no_ie: "CodeCombat läuft nicht im IE8 oder älteren Browsern. Tut uns Leid!" no_mobile: "CodeCombat ist nicht für Mobilgeräte optimiert und funktioniert möglicherweise nicht." play: "Spielen" -# old_browser: "Uh oh, your browser is too old to run CodeCombat. Sorry!" -# old_browser_suffix: "You can try anyway, but it probably won't work." + old_browser: "Oh! Dein Browser ist zu alt für CodeCombat. Sorry!" + old_browser_suffix: "Du kannst es trotzdem versuchen, aber es wird wahrscheinlich nicht funktionieren." # campaign: "Campaign" -# for_beginners: "For Beginners" -# multiplayer: "Multiplayer" -# for_developers: "For Developers" + for_beginners: "Für Anfänger" + multiplayer: "Mehrspieler" + for_developers: "Für Entwickler" play: choose_your_level: "Wähle dein Level" @@ -87,8 +87,8 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra campaign_player_created: "Von Spielern erstellt" campaign_player_created_description: "... in welchem Du gegen die Kreativität eines Artisan Zauberers kämpfst." level_difficulty: "Schwierigkeit: " -# play_as: "Play As " -# spectate: "Spectate" + play_as: "Spiele als " + spectate: "Zuschauen" contact: contact_us: "Kontaktiere CodeCombat" @@ -130,7 +130,7 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra wizard_tab: "Zauberer" password_tab: "Passwort" emails_tab: "Emails" -# admin: "Admin" + admin: "Admin" gravatar_select: "Wähle ein Gravatar Bild aus" gravatar_add_photos: "Füge Vorschaubilder und Fotos zu Deinem Gravatar Account (für Deine Email) hinzu, um ein Bild auswählen zu können" gravatar_add_more_photos: "Füge mehr Fotos bei deinem Gravatar Account hinzu, um hier mehr Bilder wählen zu können" @@ -139,7 +139,7 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra new_password_verify: "Passwort verifizieren" email_subscriptions: "Email Abonnements" email_announcements: "Ankündigungen" -# email_notifications: "Notifications" + email_notifications: "Benachrichtigungen" # email_notifications_description: "Get periodic notifications for your account." email_announcements_description: "Erhalte regelmäßig Mitteilungen für deinen Account." contributor_emails: "Unterstützer Email" @@ -270,14 +270,14 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra level_components_type: "Typ" level_component_edit_title: "Komponente bearbeiten" # level_component_config_schema: "Config Schema" -# level_component_settings: "Settings" + level_component_settings: "Einstellungen" level_system_edit_title: "System bearbeiten" create_system_title: "neues System erstellen" new_component_title: "Neue Komponente erstellen" new_component_field_system: "System" -# new_article_title: "Create a New Article" + new_article_title: "Erstelle einen neuen Artikel" # new_thang_title: "Create a New Thang Type" -# new_level_title: "Create a New Level" + new_level_title: "Erstelle ein neues Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" @@ -294,12 +294,12 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra commit_msg: "Commit Nachricht" # history: "History" version_history_for: "Versionsgeschichte für: " -# result: "Result" + result: "Ergebnis" results: "Ergebnisse" description: "Beschreibung" or: "oder" email: "Email" -# password: "Password" + password: "Passwort" message: "Nachricht" # code: "Code" # ladder: "Ladder" @@ -310,9 +310,9 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra # win: "Win" # loss: "Loss" # tie: "Tie" -# easy: "Easy" -# medium: "Medium" -# hard: "Hard" + easy: "Einfach" + medium: "Mittel" + hard: "Schwer" about: who_is_codecombat: "Wer ist CodeCombat?" diff --git a/app/locale/en.coffee b/app/locale/en.coffee index a03ad5e7c..b0527c58c 100644 --- a/app/locale/en.coffee +++ b/app/locale/en.coffee @@ -225,6 +225,20 @@ module.exports = nativeDescription: "English", englishDescription: "English", tr editor_config_indentguides_description: "Displays vertical lines to see indentation better." editor_config_behaviors_label: "Smart Behaviors" editor_config_behaviors_description: "Autocompletes brackets, braces, and quotes." + loading_ready: "Ready!" + tip_insert_positions: "Shift+Click a point on the map to insert it into the spell editor." + tip_toggle_play: "Toggle play/paused with Ctrl+P." + tip_scrub_shortcut: "Ctrl+[ and Ctrl+] rewind and fast-forward." + tip_guide_exists: "Click the guide at the top of the page for useful info." + tip_open_source: "CodeCombat is 100% open source!" + tip_beta_launch: "CodeCombat launched its beta in October, 2013." + tip_js_beginning: "JavaScript is just the beginning." + tip_autocast_setting: "Adjust autocast settings by clicking the gear on the cast button." + tip_baby_coders: "In the future, even babies will be Archmages." + tip_morale_improves: "Loading will continue until morale improves." + tip_all_species: "We believe in equal opportunities to learn programming for all species." + tip_reticulating: "Reticulating spines." + tip_harry: "Yer a Wizard, " admin: av_title: "Admin Views" diff --git a/app/locale/es.coffee b/app/locale/es.coffee index 6c0666f3b..f9b4dd2d1 100644 --- a/app/locale/es.coffee +++ b/app/locale/es.coffee @@ -68,10 +68,10 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t play: "Jugar" # old_browser: "Uh oh, your browser is too old to run CodeCombat. Sorry!" # old_browser_suffix: "You can try anyway, but it probably won't work." -# campaign: "Campaign" -# for_beginners: "For Beginners" -# multiplayer: "Multiplayer" -# for_developers: "For Developers" + campaign: "Campaña" + for_beginners: "Para principiantes" + multiplayer: "Multijugador" + for_developers: "Para desarrolladores" play: choose_your_level: "Elige tu nivel" @@ -87,7 +87,7 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t campaign_player_created: "Creados-Por-Jugadores" campaign_player_created_description: "... en los que luchas contra la creatividad de tus compañeros Hechiceros Artesanales." level_difficulty: "Dificultad: " -# play_as: "Play As " + play_as: "Juega como " # spectate: "Spectate" contact: @@ -130,7 +130,7 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t wizard_tab: "Hechicero" password_tab: "Contraseña" emails_tab: "Correos" -# admin: "Admin" + admin: "Administrador" gravatar_select: "Seleccione que foto de Gravatar usar" gravatar_add_photos: "Añadir imágenes en miniatura y fotos a una cuenta de Gravatar para su correo electrónico para elegir una imagen." gravatar_add_more_photos: "Añada más fotos a su cuenta de Gravatar para accederlas aquí." @@ -139,8 +139,8 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t new_password_verify: "Verificar" email_subscriptions: "Suscripciones de Email" email_announcements: "Noticias" -# email_notifications: "Notifications" -# email_notifications_description: "Get periodic notifications for your account." + email_notifications: "Notificación" + email_notifications_description: "Obtén notificaciones periódicas de tu cuenta." email_announcements_description: "Recibe correos electrónicos con las últimas noticias y desarrollos de CodeCombat." contributor_emails: "Correos Para Colaboradores" contribute_prefix: "¡Buscamos gente que se una a nuestro comunidad! Comprueba la " @@ -212,8 +212,8 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t tome_select_a_thang: "Selecciona Alguien para " tome_available_spells: "Hechizos Disponibles" hud_continue: "Continuar (presionar shift+space)" -# spell_saved: "Spell Saved" -# skip_tutorial: "Skip (esc)" + spell_saved: "Hechizo guardado" + skip_tutorial: "Saltar (esc)" # editor_config: "Editor Config" # editor_config_title: "Editor Configuration" # editor_config_keybindings_label: "Key Bindings" @@ -229,12 +229,12 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t # admin: # av_title: "Admin Views" # av_entities_sub_title: "Entities" -# av_entities_users_url: "Users" + av_entities_users_url: "Usuarios" # av_entities_active_instances_url: "Active Instances" -# av_other_sub_title: "Other" + av_other_sub_title: "Otros" # av_other_debug_base_url: "Base (for debugging base.jade)" -# u_title: "User List" -# lg_title: "Latest Games" + u_title: "Lista de usuario" + lg_title: "Últimos juegos" editor: # main_title: "CodeCombat Editors" @@ -243,7 +243,7 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t # article_description: "Write articles that give players overviews of programming concepts which can be used across a variety of levels and campaigns." # thang_title: "Thang Editor" # thang_description: "Build units, defining their default logic, graphics and audio. Currently only supports importing Flash exported vector graphics." -# level_title: "Level Editor" + level_title: "Editor de nivel" # level_description: "Includes the tools for scripting, uploading audio, and constructing custom logic to create all sorts of levels. Everything we use ourselves!" # security_notice: "Many major features in these editors are not currently enabled by default. As we improve the security of these systems, they will be made generally available. If you'd like to use these features sooner, " # contact_us: "contact us!" @@ -267,14 +267,14 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t # level_systems_btn_new: "Create New System" # level_systems_btn_add: "Add System" # level_components_title: "Back to All Thangs" -# level_components_type: "Type" + level_components_type: "Tipo" # level_component_edit_title: "Edit Component" # level_component_config_schema: "Config Schema" -# level_component_settings: "Settings" + level_component_settings: "Ajustes" # level_system_edit_title: "Edit System" # create_system_title: "Create New System" # new_component_title: "Create New Component" -# new_component_field_system: "System" + new_component_field_system: "Sistema" # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" @@ -283,40 +283,40 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t # level_search_title: "Search Levels Here" # article: -# edit_btn_preview: "Preview" -# edit_article_title: "Edit Article" + edit_btn_preview: "Previsualizar" + edit_article_title: "Editar artículo" general: -# and: "and" + and: "y" name: "Nombre" -# body: "Body" -# version: "Version" + body: "Cuerpo" + version: "Versión" # commit_msg: "Commit Message" -# history: "History" + history: "Historial" # version_history_for: "Version History for: " -# result: "Result" -# results: "Results" -# description: "Description" + result: "Resultado" + results: "Resultados" + description: "Descripción" or: "o" email: "Email" -# password: "Password" + password: "Contraseña" message: "Mensaje" -# code: "Code" + code: "Código" # ladder: "Ladder" -# when: "When" + when: "Cuando" # opponent: "Opponent" # rank: "Rank" -# score: "Score" -# win: "Win" -# loss: "Loss" + score: "Puntuación" + win: "Victoria" + loss: "Pérdida" # tie: "Tie" -# easy: "Easy" -# medium: "Medium" -# hard: "Hard" + easy: "Fácil" + medium: "Medio" + hard: "Difíficl" # about: -# who_is_codecombat: "Who is CodeCombat?" -# why_codecombat: "Why CodeCombat?" +# who_is_codecombat: "¿Quién es CodeCombat?" +# why_codecombat: "¿Por qué CodeCombat?" # who_description_prefix: "together started CodeCombat in 2013. We also created " # who_description_suffix: "in 2008, growing it to the #1 web and iOS application for learning to write Chinese and Japanese characters." # who_description_ending: "Now it's time to teach people to write code." @@ -433,7 +433,7 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t # artisan_attribute_2: "A hankering to do a whole lot of testing and iteration. To make good levels, you need to take it to others and watch them play it, and be prepared to find a lot of things to fix." # artisan_attribute_3: "For the time being, endurance en par with an Adventurer. Our Level Editor is super preliminary and frustrating to use. You have been warned!" # artisan_join_desc: "Use the Level Editor in these steps, give or take:" -# artisan_join_step1: "Read the documentation." + artisan_join_step1: "Leer la documentación." # artisan_join_step2: "Create a new level and explore existing levels." # artisan_join_step3: "Find us in our public HipChat room for help." # artisan_join_step4: "Post your levels on the forum for feedback." @@ -518,11 +518,11 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t # battle_as: "Battle as " # summary_your: "Your " # summary_matches: "Matches - " -# summary_wins: " Wins, " + summary_wins: " Victorias, " # summary_losses: " Losses" # rank_no_code: "No New Code to Rank" # rank_my_game: "Rank My Game!" -# rank_submitting: "Submitting..." + rank_submitting: "Enviando..." # rank_submitted: "Submitted for Ranking" # rank_failed: "Failed to Rank" # rank_being_ranked: "Game Being Ranked" @@ -530,13 +530,13 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t # no_ranked_matches_pre: "No ranked matches for the " # no_ranked_matches_post: " team! Play against some competitors and then come back here to get your game ranked." # choose_opponent: "Choose an Opponent" -# tutorial_play: "Play Tutorial" + tutorial_play: "Jugar Tutorial" # tutorial_recommended: "Recommended if you've never played before" -# tutorial_skip: "Skip Tutorial" + tutorial_skip: "Saltar Tutorial" # tutorial_not_sure: "Not sure what's going on?" # tutorial_play_first: "Play the Tutorial first." # simple_ai: "Simple AI" -# warmup: "Warmup" + warmup: "Calentamiento" # vs: "VS" # multiplayer_launch: diff --git a/app/locale/hu.coffee b/app/locale/hu.coffee index 9ed8046ef..46ba51598 100644 --- a/app/locale/hu.coffee +++ b/app/locale/hu.coffee @@ -6,8 +6,8 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t cancel: "Mégse" save: "Mentés" delay_1_sec: "1 másodperc" - delay_3_sec: "2 másodperc" - delay_5_sec: "3 másodperc" + delay_3_sec: "3 másodperc" + delay_5_sec: "5 másodperc" manual: "Kézi" # fork: "Fork" play: "Játék" @@ -26,7 +26,7 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t forum: "Fórum" admin: "Admin" home: "Kezdőlap" - contribute: "Segítségadás" + contribute: "Segítségnyújtás" legal: "Jogi információk" about: "Rólunk" contact: "Kapcsolat" @@ -59,7 +59,7 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t coppa_why: "(Miért?)" creating: "Fiók létrehozása" sign_up: "Regisztráció" - log_in: "belépés meglévő fiókkal" + log_in: "Belépés meglévő fiókkal" home: slogan: "Tanulj meg JavaScript nyelven programozni, miközben játszol!" @@ -81,9 +81,9 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t campaign_beginner: "Kezdő Kampány" campaign_beginner_description: "... amelyben megtanulhatod a programozás varázslatait." campaign_dev: "Véletlenszerű Nehezebb Pályák" - campaign_dev_description: "... amelyben egy kicsit nehezebb dolgokkal nézhetsz szembe." + campaign_dev_description: "... amelyekben kicsit nehezebb dolgokkal nézhetsz szembe." campaign_multiplayer: "Multiplayer Arénák" - campaign_multiplayer_description: "... amelyben a kódod nekifeszülhet más játékosok kódjának" + campaign_multiplayer_description: "... amelyekben a kódod felveheti a versenyt más játékosok kódjával" campaign_player_created: "Játékosok pályái" campaign_player_created_description: "...melyekben Művészi Varázsló társaid ellen kűzdhetsz." level_difficulty: "Nehézség: " @@ -136,7 +136,7 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t gravatar_add_more_photos: "Adj több képet a Gravatar fiókodhoz, hogy itt is elérd őket" wizard_color: "Varázslód színe" new_password: "Új jelszó" - new_password_verify: "Mégegyszer" + new_password_verify: "Új jelszó megismétlése" email_subscriptions: "Hírlevél feliratkozások" email_announcements: "Bejelentések" # email_notifications: "Notifications" @@ -185,7 +185,7 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t # victory_title_prefix: "" victory_title_suffix: "Kész" victory_sign_up: "Regisztrálj a friss infókért" - victory_sign_up_poke: "Szeretnéd, ha levelet küldenénk neked az újításokról? Regisztrálj ingyen egy fiókot, és nem maradsz le semmirtől!" + victory_sign_up_poke: "Szeretnéd, ha levelet küldenénk neked az újításokról? Regisztrálj ingyen egy fiókot, és nem maradsz le semmiről!" victory_rate_the_level: "Értékeld a pályát: " # victory_rank_my_game: "Rank My Game" # victory_ranking_game: "Submitting..." @@ -207,7 +207,7 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t # tome_cast_button_castable: "Cast Spell" # tome_cast_button_casting: "Casting" # tome_cast_button_cast: "Spell Cast" - tome_autocast_delay: "Auto varázslás késleltetés" + tome_autocast_delay: "Automatikus varázslás késleltetés" tome_select_spell: "Válassz egy varázslatot" tome_select_a_thang: "Válassz ki valakit " tome_available_spells: "Elérhető varázslatok" diff --git a/app/locale/pt-PT.coffee b/app/locale/pt-PT.coffee index c59097544..d414668f2 100644 --- a/app/locale/pt-PT.coffee +++ b/app/locale/pt-PT.coffee @@ -66,12 +66,12 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P no_ie: "O CodeCombat não corre em Internet Explorer 9 ou anterior. Desculpa!" no_mobile: "O CodeCombat não foi desenhado para dispositivos móveis e pode não funcionar!" play: "Jogar" -# old_browser: "Uh oh, your browser is too old to run CodeCombat. Sorry!" -# old_browser_suffix: "You can try anyway, but it probably won't work." -# campaign: "Campaign" -# for_beginners: "For Beginners" -# multiplayer: "Multiplayer" -# for_developers: "For Developers" + old_browser: "Ups, o teu browser é demasiado antigo para correr o CodeCombat. Desculpa!" + old_browser_suffix: "Mesmo assim podes tentar, mas provavelmente não vai funcionar." + campaign: "Campanha" + for_beginners: "Para Iniciantes" + multiplayer: "Multiplayer" + for_developers: "Para Programadores" play: choose_your_level: "Escolhe o Teu Nível" @@ -87,8 +87,8 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P campaign_player_created: "Criados por Jogadores" campaign_player_created_description: "... onde combates contra a criatividade dos teus colegas Feiticeiros Artesãos." level_difficulty: "Dificuldade: " -# play_as: "Play As " -# spectate: "Spectate" + play_as: "Jogar como " + spectate: "Observar" contact: contact_us: "Contactar o CodeCombat" @@ -112,14 +112,14 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P wizard_settings: title: "Definições do Wizard" customize_avatar: "Altera o teu Avatar" -# clothes: "Clothes" + clothes: "Roupas" # trim: "Trim" -# cloud: "Cloud" -# spell: "Spell" -# boots: "Boots" -# hue: "Hue" -# saturation: "Saturation" -# lightness: "Lightness" + cloud: "Nuvem" + spell: "Feitiço" + boots: "Botas" + hue: "Matiz" + saturation: "Saturação" + lightness: "Brilho" account_settings: title: "Definições da Conta" @@ -130,7 +130,7 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P wizard_tab: "Feiticeiro" password_tab: "Palavra-passe" emails_tab: "E-mails" -# admin: "Admin" + admin: "Admin" gravatar_select: "Seleciona qual fotografia Gravatar a usar" gravatar_add_photos: "Adiciona miniaturas e fotografias a uma conta Gravatar com o teu email para escolheres uma imagem." gravatar_add_more_photos: "Adiciona mais fotografias à tua conta Gravatar para as acederes aqui." @@ -139,7 +139,7 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P new_password_verify: "Verificar" email_subscriptions: "Subscrições de E-mail" email_announcements: "Anúncios" -# email_notifications: "Notifications" + email_notifications: "Notificações" email_notifications_description: "Recebe notificações periódicas sobre a tua conta." email_announcements_description: "Recebe e-mails sobre as últimas novidades e desenvolvimentos no CodeCombat." contributor_emails: "E-mails para Contribuintes" @@ -174,7 +174,7 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P customize_wizard: "Personalizar Feiticeiro" home: "Início" guide: "Guia" - multiplayer: "Multijogador" + multiplayer: "Multiplayer" restart: "Reiniciar" goals: "Objetivos" action_timeline: "Linha do Tempo" @@ -187,8 +187,8 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P victory_sign_up: "Cria uma conta para guardar o teu progresso" victory_sign_up_poke: "Queres guardar o teu código? Cria uma conta grátis!" victory_rate_the_level: "Classifica este nível: " -# victory_rank_my_game: "Rank My Game" -# victory_ranking_game: "Submitting..." + victory_rank_my_game: "Classifica o meu jogo" + victory_ranking_game: "A submeter..." # victory_return_to_ladder: "Return to Ladder" victory_play_next_level: "Jogar próximo nível" victory_go_home: "Ir para a Home" @@ -213,7 +213,7 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P tome_available_spells: "Feitiços disponíveis" hud_continue: "Continuar (pressiona shift-space)" spell_saved: "Feitiço Guardado" -# skip_tutorial: "Skip (esc)" + skip_tutorial: "Saltar (esc)" # editor_config: "Editor Config" # editor_config_title: "Editor Configuration" # editor_config_keybindings_label: "Key Bindings" @@ -249,8 +249,8 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P contact_us: "contacta-nos!" hipchat_prefix: "Podes encontrar-nos no nosso" hipchat_url: "canal HipChat." -# revert: "Revert" -# revert_models: "Revert Models" + revert: "Reverter" + revert_models: "Reverter Modelos" level_some_options: "Algumas opções?" level_tab_thangs: "Thangs" level_tab_scripts: "Scripts" @@ -270,7 +270,7 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P level_components_type: "Tipo" level_component_edit_title: "Editar Componente" # level_component_config_schema: "Config Schema" -# level_component_settings: "Settings" + level_component_settings: "Configurações" level_system_edit_title: "Editar Sistema" create_system_title: "Criar novo Sistema" new_component_title: "Criar novo Componente" @@ -292,27 +292,27 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P body: "Corpo" version: "Versão" commit_msg: "Mensagem de Commit" -# history: "History" + history: "Histórico" version_history_for: "Histórico de versões por: " -# result: "Result" + result: "Resultado" results: "Resultados" description: "Descrição" or: "ou" email: "E-mail" -# password: "Password" + password: "Palavra-passe" message: "Mensagem" -# code: "Code" + code: "Código" # ladder: "Ladder" -# when: "When" -# opponent: "Opponent" -# rank: "Rank" -# score: "Score" -# win: "Win" -# loss: "Loss" -# tie: "Tie" -# easy: "Easy" -# medium: "Medium" -# hard: "Hard" + when: "quando" + opponent: "Adversário" + rank: "Classificação" + score: "Resultado" + win: "Vitória" + loss: "Derrota" + tie: "Empate" + easy: "Fácil" + medium: "Médio" + hard: "Difícil" # about: # who_is_codecombat: "Who is CodeCombat?" @@ -509,46 +509,46 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P # ladder: # please_login: "Please log in first before playing a ladder game." -# my_matches: "My Matches" -# simulate: "Simulate" + my_matches: "Os meus jogos" + simulate: "Simular" # simulation_explanation: "By simulating games you can get your game ranked faster!" -# simulate_games: "Simulate Games!" + simulate_games: "Simular Jogos!" # simulate_all: "RESET AND SIMULATE GAMES" # leaderboard: "Leaderboard" # battle_as: "Battle as " # summary_your: "Your " # summary_matches: "Matches - " -# summary_wins: " Wins, " -# summary_losses: " Losses" + summary_wins: " Vitórias, " + summary_losses: " Derrotas" # rank_no_code: "No New Code to Rank" -# rank_my_game: "Rank My Game!" -# rank_submitting: "Submitting..." -# rank_submitted: "Submitted for Ranking" -# rank_failed: "Failed to Rank" -# rank_being_ranked: "Game Being Ranked" + rank_my_game: "Classifica o meu jogo!" + rank_submitting: "A submeter..." + rank_submitted: "Submetido para Classificação" + rank_failed: "Falhou a Classificar" + rank_being_ranked: "Jogo a ser Classificado" # code_being_simulated: "Your new code is being simulated by other players for ranking. This will refresh as new matches come in." # no_ranked_matches_pre: "No ranked matches for the " # no_ranked_matches_post: " team! Play against some competitors and then come back here to get your game ranked." -# choose_opponent: "Choose an Opponent" -# tutorial_play: "Play Tutorial" -# tutorial_recommended: "Recommended if you've never played before" -# tutorial_skip: "Skip Tutorial" -# tutorial_not_sure: "Not sure what's going on?" -# tutorial_play_first: "Play the Tutorial first." + choose_opponent: "Escolhe um Adversário" + tutorial_play: "Jogar Tutorial" + tutorial_recommended: "Recomendado se nunca jogaste antes" + tutorial_skip: "Saltar Tutorial" + tutorial_not_sure: "Não tens a certeza do que se passa?" + tutorial_play_first: "Joga o Tutorial primeiro." # simple_ai: "Simple AI" -# warmup: "Warmup" -# vs: "VS" + warmup: "Aquecimento" + vs: "VS" # multiplayer_launch: -# introducing_dungeon_arena: "Introducing Dungeon Arena" -# new_way: "March 17, 2014: The new way to compete with code." -# to_battle: "To Battle, Developers!" + introducing_dungeon_arena: "Introduzindo a Dungeon Arena" + new_way: "17 de Março de 2014: Uma nova forma de competir com código." + to_battle: "Às armas, Programadores!" # modern_day_sorcerer: "You know how to code? That's badass. You're a modern-day sorcerer! Isn't about time that you used your magic coding powers to command your minions in epic combat? And we're not talking robots here." -# arenas_are_here: "CodeCombat head-to-head multiplayer arenas are here." + arenas_are_here: "As arenas mano-a-mano multiplayer de CodeCombat estão aqui." # ladder_explanation: "Choose your heroes, enchant your human or ogre armies, and climb your way over defeated fellow Wizards to reach the top of the ladders–then challenge your friends in our glorious, asynchronous multiplayer coding arenas. If you're feeling creative, you can even" # fork_our_arenas: "fork our arenas" -# create_worlds: "and create your own worlds." -# javascript_rusty: "JavaScript a bit rusty? Don't worry; there's a" -# tutorial: "tutorial" -# new_to_programming: ". New to programming? Hit our beginner campaign to skill up." -# so_ready: "I Am So Ready for This" + create_worlds: "e cria os teus próprios mundos." + javascript_rusty: "O teu JavaScript está enferrujado? Não te preocupes; Existe um" + tutorial: "tutorial" + new_to_programming: ". Novo na programação? Faz a Campanha para Iniciantes para expandires as tuas capacidades." + so_ready: "Estou mais que pronto para isto" diff --git a/app/styles/home.sass b/app/styles/home.sass index 535bf43ca..c239a916c 100644 --- a/app/styles/home.sass +++ b/app/styles/home.sass @@ -76,3 +76,19 @@ .modal-footer padding-top: 0px + + .multiplayer-launch-wrapper + position: relative + margin: 0 auto 30px + iframe + display: block + margin: 0 auto + position: relative + top: 8px + img + position: absolute + left: -7px + top: -3px + width: 660px + height: 382px + pointer-events: none diff --git a/app/templates/contribute/diplomat.jade b/app/templates/contribute/diplomat.jade index 881ebc42e..dabb2b9d5 100644 --- a/app/templates/contribute/diplomat.jade +++ b/app/templates/contribute/diplomat.jade @@ -82,7 +82,7 @@ block content li Japanese - g1itch, kengos li Chinese - Adam23, spacepope li Polish - Anon, Kacper Ciepielewski - li Danish - Einar Rasmussen, sorsjen, Anon + li Danish - Einar Rasmussen, sorsjen, Randi Hillerøe, Anon li Slovak - Anon li Persian - Reza Habibi (Rehb) li Czech - vanous diff --git a/app/templates/editor/level/modal/world_select.jade b/app/templates/editor/level/modal/world_select.jade index 4d37e43f4..deabb6f62 100644 --- a/app/templates/editor/level/modal/world_select.jade +++ b/app/templates/editor/level/modal/world_select.jade @@ -1,33 +1,34 @@ -.modal-dialog - .modal-content - - .modal-header - button(type='button', data-dismiss="modal", aria-hidden="true").close × - h3 - if selectingPoint - | Select Point - else - | Select Region - .modal-body - div.instructions - div.alert.alert-info - strong Click - | to pan - div.alert.alert-info - strong Scroll - | to zoom - if selectingPoint - div.alert.alert-info - strong Shift-click - | to select - else - div.alert.alert-info - strong Shift-drag - | to select - div.alert.alert-info - strong Enter - | to confirm - canvas(width=1848, height=1178) - .modal-footer - a.btn.btn-primary#done-button Done +extends /templates/modal/modal_base + + +block modal-header-content + h3 + if selectingPoint + | Select Point + else + | Select Region + +block modal-body-content + div.instructions + div.alert.alert-info + strong Click + | to pan + div.alert.alert-info + strong Scroll + | to zoom + if selectingPoint + div.alert.alert-info + strong Shift-click + | to select + else + div.alert.alert-info + strong Shift-drag + | to select + div.alert.alert-info + strong Enter + | to confirm + canvas(width=1848, height=1178) + +block modal-footer-content + a.btn.btn-primary#done-button Done diff --git a/app/templates/home.jade b/app/templates/home.jade index 0d7c5f0fd..ce17e1b5b 100644 --- a/app/templates/home.jade +++ b/app/templates/home.jade @@ -5,7 +5,7 @@ block content h1#site-slogan(data-i18n="home.slogan") Learn to Code JavaScript by Playing a Game #trailer-wrapper - + img(src="/images/pages/home/video_border.png") hr diff --git a/app/templates/kinds/search.jade b/app/templates/kinds/search.jade index 296581a47..b7babdc95 100644 --- a/app/templates/kinds/search.jade +++ b/app/templates/kinds/search.jade @@ -1,4 +1,5 @@ extends /templates/base + block content div ol.breadcrumb @@ -15,6 +16,8 @@ block content hr div.results table + + // TODO: make this into a ModalView subview div.modal.fade#new-model-modal .modal-dialog .modal-content diff --git a/app/templates/modal/diplomat_suggestion.jade b/app/templates/modal/diplomat_suggestion.jade index 25aa40c1e..b3d29cb6b 100644 --- a/app/templates/modal/diplomat_suggestion.jade +++ b/app/templates/modal/diplomat_suggestion.jade @@ -4,16 +4,14 @@ block modal-header-content h3(data-i18n="diplomat_suggestion.title") block modal-body-content - // Replace this with content from the user's language - .modal-body - h4(data-i18n="diplomat_suggestion.sub_heading") We need your language skills. + h4(data-i18n="diplomat_suggestion.sub_heading") We need your language skills. - p(data-i18n="diplomat_suggestion.pitch_body") We develop CodeCombat in English, but we already have players all over the world. Many of them want to play in {English} but don't speak English, so if you can speak both, please consider signing up to be a Diplomat and help translate both the CodeCombat website and all the levels into {English}. + p(data-i18n="diplomat_suggestion.pitch_body") We develop CodeCombat in English, but we already have players all over the world. Many of them want to play in {English} but don't speak English, so if you can speak both, please consider signing up to be a Diplomat and help translate both the CodeCombat website and all the levels into {English}. - p(data-i18n="diplomat_suggestion.missing_translations") Until we can translate everything into {English}, you'll see English when {English} isn't available. + p(data-i18n="diplomat_suggestion.missing_translations") Until we can translate everything into {English}, you'll see English when {English} isn't available. - p - a(href="/contribute#diplomat", data-i18n="diplomat_suggestion.learn_more") Learn more about being a Diplomat + p + a(href="/contribute#diplomat", data-i18n="diplomat_suggestion.learn_more") Learn more about being a Diplomat block modal-footer-content button.btn.btn-primary.btn-large#subscribe-button(data-i18n="diplomat_suggestion.subscribe_as_diplomat") Subscribe as a Diplomat diff --git a/app/templates/modal/signup.jade b/app/templates/modal/signup.jade index 801b470aa..c603d019b 100644 --- a/app/templates/modal/signup.jade +++ b/app/templates/modal/signup.jade @@ -4,34 +4,31 @@ block modal-header-content h3(data-i18n="signup.create_account_title") Create Account to Save Progress block modal-body-content - .modal-content - .modal-body - if showRequiredError - .alert.alert-success - span(data-i18n="signup.required") You need to sign up first before you can go over there. Luckily, it's really easy. - else - p(data-i18n="signup.description") It's free. Just need a couple things and you'll be good to go: - .form - .form-group - label.control-label(for="signup-email", data-i18n="general.email") Email - input#signup-email.form-control.input-large(name="email", type="email") - .form-group - label.control-label(for="signup-password", data-i18n="general.password") Password - input#signup-password.input-large.form-control(name="password", type="password") - hr - .form-group.checkbox - label.control-label(for="signup-subscribe") - input#signup-subscribe(name="subscribe", type="checkbox", checked='checked') - span(data-i18n="signup.email_announcements") Receive announcements by email - .form-group.checkbox - label.control-label(for="signup-confirm-age") - input#signup-confirm-age(name="confirm-age", type="checkbox", checked='checked') - span(data-i18n="signup.coppa") 13+ or non-USA - a(href="https://en.wikipedia.org/wiki/Children's_Online_Privacy_Protection_Act", data-i18n="signup.coppa_why", target="_blank") (Why?) + if showRequiredError + .alert.alert-success + span(data-i18n="signup.required") You need to sign up first before you can go over there. Luckily, it's really easy. + else + p(data-i18n="signup.description") It's free. Just need a couple things and you'll be good to go: + .form + .form-group + label.control-label(for="signup-email", data-i18n="general.email") Email + input#signup-email.form-control.input-large(name="email", type="email") + .form-group + label.control-label(for="signup-password", data-i18n="general.password") Password + input#signup-password.input-large.form-control(name="password", type="password") + hr + .form-group.checkbox + label.control-label(for="signup-subscribe") + input#signup-subscribe(name="subscribe", type="checkbox", checked='checked') + span(data-i18n="signup.email_announcements") Receive announcements by email + .form-group.checkbox + label.control-label(for="signup-confirm-age") + input#signup-confirm-age(name="confirm-age", type="checkbox", checked='checked') + span(data-i18n="signup.coppa") 13+ or non-USA + a(href="https://en.wikipedia.org/wiki/Children's_Online_Privacy_Protection_Act", data-i18n="signup.coppa_why", target="_blank") (Why?) block modal-body-wait-content h3(data-i18n="signup.creating") Creating Account... -block modal-footer - .modal-footer - button.btn.btn-primary.btn-large#signup-button(data-i18n="signup.sign_up") Sign Up +block modal-footer-content + button.btn.btn-primary.btn-large#signup-button(data-i18n="signup.sign_up") Sign Up diff --git a/app/templates/multiplayer_launch_modal.jade b/app/templates/multiplayer_launch_modal.jade index 15890a585..e42e0a6ff 100644 --- a/app/templates/multiplayer_launch_modal.jade +++ b/app/templates/multiplayer_launch_modal.jade @@ -6,7 +6,9 @@ block modal-header-content block modal-body-content - + .multiplayer-launch-wrapper + + img(src="/images/pages/home/video_border.png") h3(data-i18n="multiplayer_launch.to_battle") To Battle, Developers! diff --git a/app/templates/play/level/modal/docs.jade b/app/templates/play/level/modal/docs.jade index 5851cba94..62a8247c5 100644 --- a/app/templates/play/level/modal/docs.jade +++ b/app/templates/play/level/modal/docs.jade @@ -2,7 +2,7 @@ extends /templates/modal/modal_base block modal-header-content h3(data-i18n="play_level.guide_title") Guide - + block modal-body-content ul.nav.nav-tabs for doc in docs @@ -10,4 +10,7 @@ block modal-body-content a(data-target="#docs_tab_#{doc.slug}", data-toggle="tab") #{doc.name} div.tab-content for doc in docs - div.tab-pane(id="docs_tab_#{doc.slug}")!= doc.html + div.tab-pane(id="docs_tab_#{doc.slug}")!= doc.html + +block modal-footer-content + a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="modal.close").btn.btn-primary Close diff --git a/app/templates/play/level/modal/editor_config.jade b/app/templates/play/level/modal/editor_config.jade index ca622f77c..761616ab3 100644 --- a/app/templates/play/level/modal/editor_config.jade +++ b/app/templates/play/level/modal/editor_config.jade @@ -1,33 +1,33 @@ -.modal-dialog - .modal-header - button(type='button', data-dismiss="modal", aria-hidden="true").close × - h3(data-i18n="play_level.editor_config_title") Editor Configuration - - .modal-body - .form - .form-group.select-group - label.control-label(for="tome-key-bindings" data-i18n="play_level.editor_config_keybindings_label") Key Bindings - select#tome-key-bindings(name="keyBindings", type="checkbox", checked=multiplayer) - option(value="default" selected=(keyBindings === "default") data-i18n="play_level.editor_config_keybindings_default") Default (Ace) - option(value="vim" selected=(keyBindings === "vim")) Vim - option(value="emacs" selected=(keyBindings === "emacs")) Emacs - span.help-block(data-i18n="play_level.editor_config_keybindings_description") Adds additional shortcuts known from the common editors. - .form-group.checkbox - label(for="tome-invisibles") - input#tome-invisibles(name="invisibles", type="checkbox", checked=invisibles) - span(data-i18n="play_level.editor_config_invisibles_label") Show Invisibles - span.help-block(data-i18n="play_level.editor_config_invisibles_description") Displays invisibles such as spaces or tabs. - .form-group.checkbox - label(for="tome-indent-guides") - input#tome-indent-guides(name="indentGuides", type="checkbox", checked=indentGuides) - span(data-i18n="play_level.editor_config_indentguides_label") Show Indent Guides - span.help-block(data-i18n="play_level.editor_config_indentguides_description") Displays vertical lines to see indentation better. - .form-group.checkbox - label(for="tome-behaviors") - input#tome-behaviors(name="behaviors", type="checkbox", checked=behaviors) - span(data-i18n="play_level.editor_config_behaviors_label") Smart Behaviors - span.help-block(data-i18n="play_level.editor_config_behaviors_description") Autocompletes brackets, braces, and quotes. - - .modal-footer - a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="modal.close").btn.btn-primary Close +extends /templates/modal/modal_base + +block modal-header-content + h3(data-i18n="play_level.editor_config_title") Editor Configuration + +block modal-body-content + .form + .form-group.select-group + label.control-label(for="tome-key-bindings" data-i18n="play_level.editor_config_keybindings_label") Key Bindings + select#tome-key-bindings(name="keyBindings", type="checkbox", checked=multiplayer) + option(value="default" selected=(keyBindings === "default") data-i18n="play_level.editor_config_keybindings_default") Default (Ace) + option(value="vim" selected=(keyBindings === "vim")) Vim + option(value="emacs" selected=(keyBindings === "emacs")) Emacs + span.help-block(data-i18n="play_level.editor_config_keybindings_description") Adds additional shortcuts known from the common editors. + .form-group.checkbox + label(for="tome-invisibles") + input#tome-invisibles(name="invisibles", type="checkbox", checked=invisibles) + span(data-i18n="play_level.editor_config_invisibles_label") Show Invisibles + span.help-block(data-i18n="play_level.editor_config_invisibles_description") Displays invisibles such as spaces or tabs. + .form-group.checkbox + label(for="tome-indent-guides") + input#tome-indent-guides(name="indentGuides", type="checkbox", checked=indentGuides) + span(data-i18n="play_level.editor_config_indentguides_label") Show Indent Guides + span.help-block(data-i18n="play_level.editor_config_indentguides_description") Displays vertical lines to see indentation better. + .form-group.checkbox + label(for="tome-behaviors") + input#tome-behaviors(name="behaviors", type="checkbox", checked=behaviors) + span(data-i18n="play_level.editor_config_behaviors_label") Smart Behaviors + span.help-block(data-i18n="play_level.editor_config_behaviors_description") Autocompletes brackets, braces, and quotes. + +block modal-footer-content + a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="modal.close").btn.btn-primary Close diff --git a/app/templates/play/level/modal/infinite_loop.jade b/app/templates/play/level/modal/infinite_loop.jade index 34711bba3..bb563ba2e 100644 --- a/app/templates/play/level/modal/infinite_loop.jade +++ b/app/templates/play/level/modal/infinite_loop.jade @@ -1,11 +1,12 @@ -.modal-dialog - .modal-header - button(type='button', data-dismiss="modal", aria-hidden="true").close × - h3(data-i18n="play_level.infinite_loop_title") Infinite Loop Detected - +extends /templates/modal/modal_base + +block modal-header-content + h3(data-i18n="play_level.infinite_loop_title") Infinite Loop Detected + +block modal-body-content .modal-body p(data-i18n="play_level.infinite_loop_explanation") The initial code to build the world never finished running. It's probably either really slow or has an infinite loop. Or there might be a bug. You can either try running this code again or reset the code to the default state. If that doesn't fix it, please let us know. - - .modal-footer - a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="play_level.infinite_loop_wait").btn#restart-level-infinite-loop-retry-button Try Again - a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="play_level.infinite_loop_reload").btn.btn-primary#restart-level-infinite-loop-confirm-button Reset Level + +block modal-footer-content + a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="play_level.infinite_loop_wait").btn#restart-level-infinite-loop-retry-button Try Again + a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="play_level.infinite_loop_reload").btn.btn-primary#restart-level-infinite-loop-confirm-button Reset Level diff --git a/app/templates/play/level/modal/multiplayer.jade b/app/templates/play/level/modal/multiplayer.jade index 2135e1977..2f19a008b 100644 --- a/app/templates/play/level/modal/multiplayer.jade +++ b/app/templates/play/level/modal/multiplayer.jade @@ -1,37 +1,36 @@ -// TODO: refactor to be like other modals -.modal-dialog - .modal-header - button(type='button', data-dismiss="modal", aria-hidden="true").close × - h3(data-i18n="play_level.multiplayer_title") Multiplayer Settings - - .modal-body - if !ladderGame - .form - .form-group.checkbox - label(for="multiplayer") - input#multiplayer(name="multiplayer", type="checkbox", checked=multiplayer) - | Multiplayer - span.help-block Enable others to join your game. - - hr - - div#link-area - p(data-i18n="play_level.multiplayer_link_description") Give this link to anyone to have them join you. - - textarea.well#multiplayer-join-link(readonly=true)= joinLink - - p - strong(data-i18n="play_level.multiplayer_hint_label") Hint: - span(data-i18n="play_level.multiplayer_hint") Click the link to select all, then press ⌘-C or Ctrl-C to copy the link. - - p(data-i18n="play_level.multiplayer_coming_soon") More multiplayer features to come! +extends /templates/modal/modal_base - if ladderGame - if me.get('anonymous') - p Sign in or create an account and get your solution on the leaderboard! - else - a#go-to-leaderboard-button.btn.btn-primary(href="/play/ladder/#{levelSlug}#my-matches") Go to the leaderboard! - p You can submit your game to be ranked from the leaderboard page. +block modal-header-content + h3(data-i18n="play_level.multiplayer_title") Multiplayer Settings + +block modal-body-content + if !ladderGame + .form + .form-group.checkbox + label(for="multiplayer") + input#multiplayer(name="multiplayer", type="checkbox", checked=multiplayer) + | Multiplayer + span.help-block Enable others to join your game. + + hr - .modal-footer - a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="modal.close").btn.btn-primary Close + div#link-area + p(data-i18n="play_level.multiplayer_link_description") Give this link to anyone to have them join you. + + textarea.well#multiplayer-join-link(readonly=true)= joinLink + + p + strong(data-i18n="play_level.multiplayer_hint_label") Hint: + span(data-i18n="play_level.multiplayer_hint") Click the link to select all, then press ⌘-C or Ctrl-C to copy the link. + + p(data-i18n="play_level.multiplayer_coming_soon") More multiplayer features to come! + + if ladderGame + if me.get('anonymous') + p Sign in or create an account and get your solution on the leaderboard! + else + a#go-to-leaderboard-button.btn.btn-primary(href="/play/ladder/#{levelSlug}#my-matches") Go to the leaderboard! + p You can submit your game to be ranked from the leaderboard page. + +block modal-footer-content + a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="modal.close").btn.btn-primary Close diff --git a/app/views/multiplayer_view.coffee b/app/views/multiplayer_view.coffee index 7def1a548..cf0fdd64b 100644 --- a/app/views/multiplayer_view.coffee +++ b/app/views/multiplayer_view.coffee @@ -10,3 +10,11 @@ module.exports = class MultiplayerLaunchView extends HomeView class MultiplayerLaunchModal extends ModalView template: modalTemplate id: "multiplayer-launch-modal" + + hide: -> + $('#multiplayer-video').attr('src','') + super() + + onHidden: -> + $('#multiplayer-video').attr('src','') + super() \ No newline at end of file diff --git a/app/views/play/level/level_loading_view.coffee b/app/views/play/level/level_loading_view.coffee index c50107b6d..3ac98738d 100644 --- a/app/views/play/level/level_loading_view.coffee +++ b/app/views/play/level/level_loading_view.coffee @@ -8,7 +8,7 @@ module.exports = class LevelLoadingView extends View subscriptions: 'level-loader:progress-changed': 'onLevelLoaderProgressChanged' - + afterRender: -> @$el.find('.tip.rare').remove() if _.random(1, 10) < 9 tips = @$el.find('.tip').addClass('to-remove') @@ -22,11 +22,12 @@ module.exports = class LevelLoadingView extends View @updateProgressBar() updateProgressBar: -> - #@text.text = "BUILDING" if @progress is 1 @$el.find('.progress-bar').css('width', (100 * @progress) + '%') showReady: -> - @$el.find('h2').addClass('ready').text 'Ready!' + ready = $.i18n.t('play_level.loading_ready', defaultValue: 'Ready!') + @$el.find('#tip-wrapper .tip').addClass('ready').text ready + Backbone.Mediator.publish 'play-sound', trigger: 'loading_ready', volume: 0.75 unveil: -> _.delay @reallyUnveil, 1000 diff --git a/app/views/play/level/tome/thang_list_entry_view.coffee b/app/views/play/level/tome/thang_list_entry_view.coffee index f5e44c183..6135a6d53 100644 --- a/app/views/play/level/tome/thang_list_entry_view.coffee +++ b/app/views/play/level/tome/thang_list_entry_view.coffee @@ -102,7 +102,7 @@ module.exports = class ThangListEntryView extends View onThangListEntryPopoverShown: (e) -> # I couldn't figure out how to get the mouseenter / mouseleave to always work, so this is a fallback - # to hide our popover is another Thang's popover gets shown. + # to hide our popover if another Thang's popover gets shown. return if e.entry is @ @hideSpells() @@ -162,6 +162,7 @@ module.exports = class ThangListEntryView extends View destroy: -> @avatar?.destroy() + @popover?.remove() @popover?.off 'mouseenter mouseleave' @popover?.find('code').off 'click' super() diff --git a/app/views/play/level_view.coffee b/app/views/play/level_view.coffee index 6f05b204d..68bca74d8 100644 --- a/app/views/play/level_view.coffee +++ b/app/views/play/level_view.coffee @@ -149,8 +149,8 @@ module.exports = class PlayLevelView extends View onLevelLoaderLoaded: -> return unless @levelLoader.progress() is 1 # double check, since closing the guide may trigger this early + @loadingView.showReady() if window.currentModal and not window.currentModal.destroyed - @loadingView.showReady() return Backbone.Mediator.subscribeOnce 'modal-closed', @onLevelLoaderLoaded, @ # Save latest level played in local storage diff --git a/server/users/user_handler.coffee b/server/users/user_handler.coffee index 125845fe9..919588c0a 100644 --- a/server/users/user_handler.coffee +++ b/server/users/user_handler.coffee @@ -186,4 +186,4 @@ UserHandler = class UserHandler extends Handler res.redirect(document?.get('photoURL') or '/images/generic-wizard-icon.png') res.end() -module.exports = new UserHandler() \ No newline at end of file +module.exports = new UserHandler()