From fa7f827fcbce333bd4b8607ef176d6a48ad72ffc Mon Sep 17 00:00:00 2001 From: lukigno95 Date: Tue, 9 Sep 2014 01:10:24 +0200 Subject: [PATCH 01/13] Update it.coffee --- app/locale/it.coffee | 126 +++++++++++++++++++++---------------------- 1 file changed, 63 insertions(+), 63 deletions(-) diff --git a/app/locale/it.coffee b/app/locale/it.coffee index 4bf2a3163..b28a91dfb 100644 --- a/app/locale/it.coffee +++ b/app/locale/it.coffee @@ -3,37 +3,37 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t loading: "Caricamento in corso..." saving: "Salvataggio in corso..." sending: "Invio in corso..." -# send: "Send" + send: "Invia" cancel: "Annulla" save: "Salva" -# publish: "Publish" -# create: "Create" + publish: "Pubblica" + create: "Crea" delay_1_sec: "1 secondo" delay_3_sec: "3 secondi" delay_5_sec: "5 secondi" manual: "Manuale" fork: "Fork" play: "Gioca" -# retry: "Retry" -# watch: "Watch" + retry: "Riprova" + watch: "Guarda" # unwatch: "Unwatch" -# submit_patch: "Submit Patch" + submit_patch: "Invia Patch" # units: -# second: "second" -# seconds: "seconds" -# minute: "minute" -# minutes: "minutes" -# hour: "hour" -# hours: "hours" -# day: "day" -# days: "days" -# week: "week" -# weeks: "weeks" -# month: "month" -# months: "months" -# year: "year" -# years: "years" + second: "secondo" + seconds: "secondi" + minute: "minuto" + minutes: "minuti" + hour: "ora" + hours: "ore" + day: "giorno" + days: "giorni" + week: "settimana" + weeks: "settimane" + month: "mese" + months: "mesi" + year: "anno" + years: "anni" modal: close: "Chiudi" @@ -48,9 +48,9 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t editor: "Editor" blog: "Blog" forum: "Forum" -# account: "Account" -# profile: "Profile" -# stats: "Stats" + account: "Account" + profile: "Profilo" + stats: "Statistiche" # code: "Code" admin: "Amministratore" home: "Pagina iniziale" @@ -90,7 +90,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t creating: "Creazione account..." sign_up: "Registrati" log_in: "Accedi con la password" -# social_signup: "Or, you can sign up through Facebook or G+:" + social_signup: "Oppure puoi registrarti con Facebook o Google+:" # required: "You need to log in before you can go that way." home: @@ -102,7 +102,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t old_browser_suffix: "Puoi provare lo stesso, ma probabilmente non funzionerà." campaign: "Campagna" for_beginners: "Per Principianti" -# multiplayer: "Multiplayer" + multiplayer: "Multiplayer" for_developers: "Per Sviluppatori" # javascript_blurb: "The language of the web. Great for writing websites, web apps, HTML5 games, and servers." # python_blurb: "Simple yet powerful, Python is a great general purpose programming language." @@ -124,13 +124,13 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t campaign_multiplayer_description: "... nelle quali programmi faccia a faccia contro altri giocatori." campaign_player_created: "Creati dai giocatori" campaign_player_created_description: "... nei quali affronterai la creatività dei tuoi compagni Stregoni Artigiani." -# campaign_classic_algorithms: "Classic Algorithms" + campaign_classic_algorithms: "Algoritmi classici" # campaign_classic_algorithms_description: "... in which you learn the most popular algorithms in Computer Science." level_difficulty: "Difficoltà: " play_as: "Gioca come " spectate: "Spettatore" -# players: "players" -# hours_played: "hours played" + players: "giocatori" + hours_played: "ore di gioco" contact: contact_us: "Contatta CodeCombat" @@ -142,7 +142,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t forum_page: "il nostro forum" forum_suffix: " invece." send: "Invia feedback" -# contact_candidate: "Contact Candidate" +# contact_candidate: "Contact Candidate" # recruitment_reminder: "Use this form to reach out to candidates you are interested in interviewing. Remember that CodeCombat charges 15% of first-year salary. The fee is due upon hiring the employee and is refundable for 90 days if the employee does not remain employed. Part time, remote, and contract employees are free, as are interns." diplomat_suggestion: @@ -175,7 +175,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t autosave: "Modifiche salvate automaticamente" me_tab: "Io" picture_tab: "Immagine" -# upload_picture: "Upload a picture" + upload_picture: "Carica immagine" wizard_tab: "Stregone" password_tab: "Password" emails_tab: "Email" @@ -191,9 +191,9 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # email_notifications_summary: "Controls for personalized, automatic email notifications related to your CodeCombat activity." # email_any_notes: "Any Notifications" # email_any_notes_description: "Disable to stop all activity notification emails." -# email_news: "News" -# email_recruit_notes: "Job Opportunities" -# email_recruit_notes_description: "If you play really well, we may contact you about getting you a (better) job." + email_news: "Novità" + email_recruit_notes: "Lavora con noi" + email_recruit_notes_description: "Se sai giocare molto bene potremmo contattarti per offrirti un lavoro (migliore)." contributor_emails: "Email dei collaboratori" contribute_prefix: "Stiamo cercando persone che si uniscano al nostro gruppo! Dai un'occhiata alla " contribute_page: "pagina dei collaboratori" @@ -210,8 +210,8 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # view_profile: "View Your Profile" account_profile: -# settings: "Settings" -# edit_profile: "Edit Profile" + settings: "Impostazioni" + edit_profile: "Modifica Profilo" # done_editing: "Done Editing" profile_for_prefix: "Profilo di " profile_for_suffix: "" @@ -362,15 +362,15 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t done: "Fatto" customize_wizard: "Personalizza stregone" home: "Pagina iniziale" -# stop: "Stop" -# game_menu: "Game Menu" + stop: "Stop" + game_menu: "Menu" guide: "Guida" restart: "Ricomincia" goals: "Obiettivi" # success: "Success!" -# incomplete: "Incomplete" -# timed_out: "Ran out of time" -# failing: "Failing" + incomplete: "Incompleto" + timed_out: "Tempo Scaduto" +# failing: "Failing" action_timeline: "Barra temporale delle azioni" click_to_select: "Clicca un'unità per selezionarla." reload_title: "Ricarica tutto il codice?" @@ -401,7 +401,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t spell_saved: "Magia Salvata" skip_tutorial: "Salta (esc)" # keyboard_shortcuts: "Key Shortcuts" -# loading_ready: "Ready!" + loading_ready: "Pronto!" # 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." @@ -438,18 +438,18 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # infinite_loop_comment_out: "Comment Out My Code" game_menu: -# inventory_tab: "Inventory" -# choose_hero_tab: "Restart Level" -# save_load_tab: "Save/Load" -# options_tab: "Options" -# guide_tab: "Guide" + inventory_tab: "Inventario" + choose_hero_tab: "Ricomincia Livello" + save_load_tab: "Salva/Carico" + options_tab: "Opzioni" + guide_tab: "Guida" multiplayer_tab: "Multigiocatore" # inventory_caption: "Equip your hero" -# choose_hero_caption: "Choose hero, language" + choose_hero_caption: "Scegli eroe, lingua" # save_load_caption: "... and view history" # options_caption: "Configure settings" # guide_caption: "Docs and tips" -# multiplayer_caption: "Play with friends!" + multiplayer_caption: "Gioca con i tuoi amici!" # inventory: # temp: "Temp" @@ -458,12 +458,12 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # temp: "Temp" # save_load: -# granularity_saved_games: "Saved" + granularity_saved_games: "Salvato" # granularity_change_history: "History" # options: # general_options: "General Options" -# volume_label: "Volume" + volume_label: "Volume" # music_label: "Music" # music_description: "Turn background music on/off." # autorun_label: "Autorun" @@ -491,8 +491,8 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t multiplayer: multiplayer_title: "Impostazioni multigiocatore" -# multiplayer_toggle: "Enable multiplayer" -# multiplayer_toggle_description: "Allow others to join your game." + multiplayer_toggle: "Abilita multiplayer" + multiplayer_toggle_description: "Permetti ad altri giocatori di unirsi alla partita." multiplayer_link_description: "Dai questo link a chi vuoi che si unisca a te." multiplayer_hint_label: "Suggerimento:" multiplayer_hint: " Clicca il link per selezionare tutto, quindi premi CMD-C o Ctrl-C per copiare il link." @@ -501,10 +501,10 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # keyboard_shortcuts: # keyboard_shortcuts: "Keyboard Shortcuts" -# space: "Space" -# enter: "Enter" -# escape: "Escape" -# shift: "Shift" + space: "Spazio" + enter: "Invio" + escape: "Esc" + shift: "Maiusc" # cast_spell: "Cast current spell." # run_real_time: "Run in real time." # continue_script: "Continue past current script." @@ -517,7 +517,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # toggle_grid: "Toggle grid overlay." # toggle_pathfinding: "Toggle pathfinding overlay." # beautify: "Beautify your code by standardizing its formatting." -# maximize_editor: "Maximize/minimize code editor." + maximize_editor: "Ingrandisci/rimpicciolisci l'editor di programmazione." # move_wizard: "Move your Wizard around the level." admin: @@ -764,9 +764,9 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # 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_step2: "Create a new level and explore existing levels." + artisan_join_step2: "Crea un nuovo livello ed esplora quelli già esistenti." # artisan_join_step3: "Find us in our public HipChat room for help." -# artisan_join_step4: "Post your levels on the forum for feedback." + artisan_join_step4: "Posta il tuo livello sul forum per ricevere del feedback." more_about_artisan: "Leggi di più su cosa vuol dire diventare un creativo Artigiano" # artisan_subscribe_desc: "Get emails on level editor updates and announcements." # adventurer_summary: "Let us be clear about your role: you are the tank. You are going to take heavy damage. We need people to try out brand-new levels and help identify how to make things better. The pain will be enormous; making good games is a long process and no one gets it right the first time. If you can endure and have a high constitution score, then this class is for you." @@ -784,7 +784,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t scribe_introduction_url_mozilla: "Rete di sviluppo di Mozilla" # scribe_introduction_suf: " has built. If your idea of fun is articulating the concepts of programming in Markdown form, then this class might be for you." # scribe_attribute_1: "Skill in words is pretty much all you need. Not only grammar and spelling, but able to convey complicated ideas to others." -# contact_us_url: "Contact us" + contact_us_url: "Contattaci" # scribe_join_description: "tell us a little about yourself, your experience with programming and what sort of things you'd like to write about. We'll go from there!" more_about_scribe: "Leggi di più su cosa vuol dire diventare un diligente Scrivano" # scribe_subscribe_desc: "Get emails about article writing announcements." @@ -794,7 +794,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t diplomat_introduction_suf: "è che c'è un notevole interesse per CodeCombat negli altri paesi, in particolare in Brasile! Stiamo costruendo un corpo di traduttori per trasformare liste di parole in altre parole, per rendere CodeCombat accessibile il più possibile in tutto il mondo. Se ti piace l'idea di sbirciare nei contenuti futuri e di portare questi livelli ai tuoi connazionali il più presto possibile, questa categoria potrebbe essere la tua." diplomat_attribute_1: "Competenza in inglese e nella lingua in cui vorresti tradurre. Per trasferire idee complesse è importante avere una solida capacità in entrambe!" # diplomat_join_pref_github: "Find your language locale file " -# diplomat_github_url: "on GitHub" + diplomat_github_url: "su GitHub" # diplomat_join_suf_github: ", edit it online, and submit a pull request. Also, check this box below to keep up-to-date on new internationalization developments!" more_about_diplomat: "Leggi di più su cosa vuol dire diventare un grande Diplomatico" diplomat_subscribe_desc: "Ricevi messaggi email sullo sviluppo i18n e i livelli da tradurre." @@ -829,8 +829,8 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t ambassador_title_description: "(Supporto)" ladder: -# please_login: "Please log in first before playing a ladder game." -# my_matches: "My Matches" + please_login: "Per favore esegui il log in first prima di giocare una partita classificata ." + my_matches: "Le mie partite" simulate: "Simula" # simulation_explanation: "By simulating games you can get your game ranked faster!" # simulate_games: "Simulate Games!" From d9ee5c248dfef3b60874c7e51d1d60cdbe65eb14 Mon Sep 17 00:00:00 2001 From: Titounkle Date: Tue, 9 Sep 2014 18:43:28 +0200 Subject: [PATCH 02/13] Update es-ES.coffee Number 219 im not quite sure...I'll think about it. --- app/locale/es-ES.coffee | 120 ++++++++++++++++++++-------------------- 1 file changed, 60 insertions(+), 60 deletions(-) diff --git a/app/locale/es-ES.coffee b/app/locale/es-ES.coffee index 6344629f7..35e022051 100644 --- a/app/locale/es-ES.coffee +++ b/app/locale/es-ES.coffee @@ -79,7 +79,7 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis recover: recover_account_title: "Recuperar Cuenta" send_password: "Enviar recuperación de contraseña" -# recovery_sent: "Recovery email sent." + recovery_sent: "Email de recuperación de contraseña enviado." signup: create_account_title: "Crea una cuenta para guardar tu progreso" @@ -188,7 +188,7 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis email_announcements: "Noticias" email_announcements_description: "Recibe correos electrónicos con las últimas noticias y desarrollos de CodeCombat." email_notifications: "Notificationes" -# email_notifications_summary: "Controls for personalized, automatic email notifications related to your CodeCombat activity." + email_notifications_summary: "Controles para personalizar las notificaciones por email automaticas, relacionadas con tu actividad en CodeCombat." email_any_notes: "Cualquier Notificacion" email_any_notes_description: "Deshabilitar todas las notificaciones por mail." email_news: "Noticias" @@ -216,7 +216,7 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis profile_for_prefix: "Perfil de " profile_for_suffix: "" featured: "Destacado" -# not_featured: "Not Featured" + not_featured: "Sin Destacar" looking_for: "Buscando:" last_updated: "Última actualización:" contact: "Contacto" @@ -234,8 +234,8 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis # next_education: "recount your educational ordeals." next_projects: "Muestranos tres proyectos en los que hayas trabajado." next_links: "añade links personales o de redes sociales." -# next_photo: "add an optional professional photo." -# next_active: "mark yourself open to offers to show up in searches." + next_photo: "añadir una foto para el perfil profesional." + next_active: "mostrarte abierto a ofertas en las busquedas." example_blog: "Blog" example_personal_site: "Web personal" links_header: "Enlaces Personales" @@ -244,38 +244,38 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis links_name_help: "¿Qué estás enlazando?" links_link_blurb: "URL del enlace" basics_header: "Actualizar información básica" -# basics_active: "Open to Offers" -# basics_active_help: "Want interview offers right now?" + basics_active: "Abierto a ofertas" + basics_active_help: "Buscas entrevistas de trabajo ahora?" # basics_job_title: "Desired Job Title" -# basics_job_title_help: "What role are you looking for?" + basics_job_title_help: "Que tipo de rol estas buscando?" basics_city: "Ciudad" basics_city_help: "Ciudad en la que quieres trabajar (o en la que vives actualmente)." basics_country: "País" basics_country_help: "País en la que quieres trabajar (o en la que vives actualmente)." -# basics_visa: "US Work Status" -# basics_visa_help: "Are you authorized to work in the US, or do you need visa sponsorship? (If you live in Canada or Australia, mark authorized.)" -# basics_looking_for: "Looking For" + basics_visa: "Estatus de Trabajo en EEUU" + basics_visa_help: "Estas autorizado a trabajar en EEUU, o necesitas una visa patrocinada? (Si vives en Canada o Australia, marca autorizado.)" + basics_looking_for: "Estoy Buscando" basics_looking_for_full_time: "Full-time (tiempo completo)" -# basics_looking_for_part_time: "Part-time" -# basics_looking_for_remote: "Remote" -# basics_looking_for_contracting: "Contracting" -# basics_looking_for_internship: "Internship" -# basics_looking_for_help: "What kind of developer position do you want?" + basics_looking_for_part_time: "Tiempo Partido" + basics_looking_for_remote: "Desde Casa" + basics_looking_for_contracting: "Contractual" + basics_looking_for_internship: "Interino" + basics_looking_for_help: "Que tipo de puesto de desarrollo te gustaria?" name_header: "Escriba su nombre" name_anonymous: "Desarrollador Anónimo" -# name_help: "Name you want employers to see, like 'Nick Winter'." + name_help: "Esto es lo que quieres que vean las empresas, algo como 'Nick Winter'." short_description_header: "Escriba una breve descripción sobre usted." -# short_description_blurb: "Add a tagline to help an employer quickly learn more about you." + short_description_blurb: "Añade una frase que ayude a las empresas a hacerse una idea de ti." # short_description: "Tagline" short_description_help: "¿Quién eres, y qué estás buscando? 140 caracteres como máximo." -# skills_header: "Skills" + skills_header: "Habilidades" # skills_help: "Tag relevant developer skills in order of proficiency." -# long_description_header: "Describe your desired position" -# long_description_blurb: "Tell employers how awesome you are and what role you want." + long_description_header: "Describenos tu trabajo soñado" + long_description_blurb: "Cuenta a tus empleadores lo impresionante que eres y que trabajo estas buscando." long_description: "Descripción Personal" # long_description_help: "Describe yourself to potential employers. Keep it short and to the point. We recommend outlining the position that would most interest you. Tasteful markdown okay; 600 characters max." work_experience: "Experiencia laboral" -# work_header: "Chronicle your work history" + work_header: "Cuentanos un poco de tu historial laboral" work_years: "Años de experiencia" # work_years_help: "How many years of professional experience (getting paid) developing software do you have?" # work_blurb: "List your relevant work experience, most recent first." @@ -301,51 +301,51 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis our_notes: "Nuestras notas" # remarks: "Remarks" projects: "Proyectos" -# projects_header: "Add 3 projects" -# projects_header_2: "Projects (Top 3)" + projects_header: "Añade 3 proyectos" + projects_header_2: "Proyectos (Top 3)" # projects_blurb: "Highlight your projects to amaze employers." -# project_name: "Project Name" -# project_name_help: "What was the project called?" + project_name: "Nombre del proyecto" + project_name_help: "Como se llamaba el proyecto?" project_description: "Descripción" -# project_description_help: "Briefly describe the project." -# project_picture: "Picture" -# project_picture_help: "Upload a 230x115px or larger image showing off the project." -# project_link: "Link" -# project_link_help: "Link to the project." -# player_code: "Player Code" + project_description_help: "Describe el proyecto brevemente." + project_picture: "Foto" + project_picture_help: "Sube una imagen de 230x115px o mas grande enseñandonos el proyecto." + project_link: "Enlace" + project_link_help: "Enlace al proyecto." + player_code: "Codigo de Jugador" employers: -# hire_developers_not_credentials: "Hire developers, not credentials." -# get_started: "Get Started" + hire_developers_not_credentials: "Contrata desarrolladores, no credenciales." + get_started: "Empezar" # already_screened: "We've already technically screened all our candidates" # filter_further: ", but you can also filter further:" -# filter_visa: "Visa" -# filter_visa_yes: "US Authorized" -# filter_visa_no: "Not Authorized" + filter_visa: "Visa" + filter_visa_yes: "Autorizado en EEUU" + filter_visa_no: "No Autorizado" # filter_education_top: "Top School" # filter_education_other: "Other" -# filter_role_web_developer: "Web Developer" -# filter_role_software_developer: "Software Developer" -# filter_role_mobile_developer: "Mobile Developer" -# filter_experience: "Experience" -# filter_experience_senior: "Senior" -# filter_experience_junior: "Junior" -# filter_experience_recent_grad: "Recent Grad" -# filter_experience_student: "College Student" -# filter_results: "results" -# start_hiring: "Start hiring." -# reasons: "Three reasons you should hire through us:" -# everyone_looking: "Everyone here is looking for their next opportunity." + filter_role_web_developer: "Desarrollador Web" + filter_role_software_developer: "Desarrollador de Software" + filter_role_mobile_developer: "Desarrollador de Mobiles" + filter_experience: "Experiencia" + filter_experience_senior: "Senior" + filter_experience_junior: "Junior" + filter_experience_recent_grad: "Recien Graduado" + filter_experience_student: "Estudiante Universitario" + filter_results: "notas" + start_hiring: "Comenzar a contratar." + reasons: "Tres razones por las que deberias contratar a traves de nosotros:" + everyone_looking: "Todo el mundo aqui esta buscando su proxima oportunidad." # everyone_looking_blurb: "Forget about 20% LinkedIn InMail response rates. Everyone that we list on this site wants to find their next position and will respond to your request for an introduction." -# weeding: "Sit back; we've done the weeding for you." -# weeding_blurb: "Every player that we list has been screened for technical ability. We also perform phone screens for select candidates and make notes on their profiles to save you time." + weeding: "Sientate; nosotros hemos hecho el trabajo por ti." + weeding_blurb: "Todos los jugadores que ponemos en la lista ha sido seguido por sus habilidades tecnicas. Tambien hacemos llamadas de telefono para los candidatos seleccionados y haz notas en sus perfiles para ahorrar tiempo." # pass_screen: "They will pass your technical screen." # pass_screen_blurb: "Review each candidate's code before reaching out. One employer found that 5x as many of our devs passed their technical screen than hiring from Hacker News." -# make_hiring_easier: "Make my hiring easier, please." + make_hiring_easier: "Hacer mi contratacion mas facil, por favor." what: "¿Qué es CodeCombat?" # what_blurb: "CodeCombat is a multiplayer browser programming game. Players write code to control their forces in battle against other developers. Our players have experience with all major tech stacks." -# cost: "How much do we charge?" -# cost_blurb: "We charge 15% of first year's salary and offer a 100% money back guarantee for 90 days. We don't charge for candidates who are already actively being interviewed at your company." + cost: "Cuanto cobramos?" + cost_blurb: "Cobramos el 15% del salario del primer año y ofrecemos reembolso del 100% del dinero durante 90 dias. No cobramos a los candidatos que ya estan siendo entrevistados en tu compañia." candidate_name: "Nombre" candidate_location: "Ubicación" candidate_looking_for: "Buscando" @@ -353,10 +353,10 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis candidate_top_skills: "Mejores Habilidades" candidate_years_experience: "Años Exp" candidate_last_updated: "Última actualización" -# candidate_who: "Who" -# featured_developers: "Featured Developers" -# other_developers: "Other Developers" -# inactive_developers: "Inactive Developers" + candidate_who: "Quien" + featured_developers: "Desarrolladores Destacados" + other_developers: "Otros Desarrolladores" + inactive_developers: "Desarrolladores Inactivos" play_level: done: "Hecho" @@ -446,7 +446,7 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis multiplayer_tab: "Multijugador" inventory_caption: "Equipa a tu heroe" choose_hero_caption: "Elige la lengua del heroe" -# save_load_caption: "... and view history" + save_load_caption: "... y ver la historia" options_caption: "Ajustes de configuracion" guide_caption: "Documentos y pistas" multiplayer_caption: "Juega con amigos!" @@ -467,7 +467,7 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis music_label: "Musica" music_description: "Musica de fondo on/off." # autorun_label: "Autorun" -# autorun_description: "Control automatic code execution." + autorun_description: "Control automatico de codigo en ejecucion." editor_config: "Conf. editor" editor_config_title: "Configuración del editor" editor_config_level_language_label: "Lenguaje para este nivel" From 10132c6fd1ce282976bd304442ae117a04f8509a Mon Sep 17 00:00:00 2001 From: Imperadeiro98 Date: Wed, 10 Sep 2014 11:02:01 +0100 Subject: [PATCH 03/13] Update pt-PT.coffee --- app/locale/pt-PT.coffee | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/app/locale/pt-PT.coffee b/app/locale/pt-PT.coffee index 5a29ba6e1..dda31ff29 100644 --- a/app/locale/pt-PT.coffee +++ b/app/locale/pt-PT.coffee @@ -79,7 +79,7 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription: recover: recover_account_title: "Recuperar Conta" send_password: "Enviar Password de Recuperação" -# recovery_sent: "Recovery email sent." + recovery_sent: "E-mail de recuperação enviado." signup: create_account_title: "Criar Conta para Guardar Progresso" @@ -568,7 +568,7 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription: level_tab_settings: "Configurações" level_tab_components: "Componentes" level_tab_systems: "Sistemas" -# level_tab_docs: "Documentation" + level_tab_docs: "Documentação" level_tab_thangs_title: "Thangs Atuais" level_tab_thangs_all: "Todos" level_tab_thangs_conditions: "Condições Iniciais" @@ -652,10 +652,10 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription: why_paragraph_2_italic_caps: "NÃO MÃE, TENHO DE ACABAR O NÍVEL!" why_paragraph_2_suffix: "É por isso que o CodeCombat é um jogo multijogador, e não um jogo que não passa de um curso com lições. Nós não vamos parar enquanto não puder parar--mas desta vez, isso é uma coisa boa." why_paragraph_3: "Se vai ficar viciado em algum jogo, vicie-se neste e torne-se num dos feiticeiros da idade da tecnologia." -# press_title: "Bloggers/Press" -# press_paragraph_1_prefix: "Want to write about us? Feel free to download and use all of the resources included in our" -# press_paragraph_1_link: "press packet" -# press_paragraph_1_suffix: ". All logos and images may be used without contacting us directly." + press_title: "Bloggers/Imprensa" + press_paragraph_1_prefix: "Quer escrever sobre nós? Sinta-se à vontade para descarregar e usar todos os recursos incluídos no nosso" + press_paragraph_1_link: "pacote de imprensa" + press_paragraph_1_suffix: ". Todos os logótipos e imagens podem ser usados sem nos contactar diretamente." team: "Equipa" george_title: "CEO" george_blurb: "Homem de Negócios" From 74afea5efa6063eac6012b53b019a4ef57da3b06 Mon Sep 17 00:00:00 2001 From: Imperadeiro98 Date: Thu, 11 Sep 2014 14:38:11 +0100 Subject: [PATCH 04/13] Update pt-PT.coffee --- app/locale/pt-PT.coffee | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/locale/pt-PT.coffee b/app/locale/pt-PT.coffee index dda31ff29..8d02401e8 100644 --- a/app/locale/pt-PT.coffee +++ b/app/locale/pt-PT.coffee @@ -307,12 +307,12 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription: project_name: "Nome do Projeto" # project_name_help: "What was the project called?" project_description: "Descrição" -# project_description_help: "Briefly describe the project." + project_description_help: "Descreva o projeto em poucas palavras." project_picture: "Imagem" # project_picture_help: "Upload a 230x115px or larger image showing off the project." project_link: "Ligação" # project_link_help: "Link to the project." -# player_code: "Player Code" + player_code: "Código do Jogador" employers: hire_developers_not_credentials: "Contrate programadores, não cartas de recomendação." @@ -695,9 +695,9 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription: # recruitment_description_italic: "a lot" # recruitment_description_ending: "the site remains free and everybody's happy. That's the plan." copyrights_title: "Direitos Autorais e Licensas" -# contributor_title: "Contributor License Agreement" + contributor_title: "Contrato de Licença do Contribuinte (CLA)" # contributor_description_prefix: "All contributions, both on the site and on our GitHub repository, are subject to our" -# cla_url: "CLA" + cla_url: "CLA" # contributor_description_suffix: "to which you should agree before contributing." code_title: "Código - MIT" # code_description_prefix: "All code owned by CodeCombat or hosted on codecombat.com, both in the GitHub repository or in the codecombat.com database, is licensed under the" From 68808d0e07c89ca24d360a3ac5cf1c173d71f99e Mon Sep 17 00:00:00 2001 From: Nick Winter Date: Thu, 11 Sep 2014 08:38:30 -0700 Subject: [PATCH 05/13] Some fixes for how audio is triggered. --- app/lib/surface/MusicPlayer.coffee | 5 +++-- app/views/game-menu/GameMenuModal.coffee | 11 ++++++++--- app/views/play/level/LevelGoalsView.coffee | 18 +++++++++++++++--- app/views/play/level/LevelLoadingView.coffee | 2 +- .../level/tome/SpellListTabEntryView.coffee | 3 ++- .../level/tome/SpellPaletteEntryView.coffee | 8 ++++---- 6 files changed, 33 insertions(+), 14 deletions(-) diff --git a/app/lib/surface/MusicPlayer.coffee b/app/lib/surface/MusicPlayer.coffee index 4d3e8b47d..606e7eed6 100644 --- a/app/lib/surface/MusicPlayer.coffee +++ b/app/lib/surface/MusicPlayer.coffee @@ -3,6 +3,7 @@ AudioPlayer = require 'lib/AudioPlayer' {me} = require 'lib/auth' CROSSFADE_LENGTH = 1500 +MUSIC_VOLUME = 0.6 module.exports = class MusicPlayer extends CocoClass currentMusic: null @@ -51,7 +52,7 @@ module.exports = class MusicPlayer extends CocoClass return unless @currentMusic @currentMusic.volume = 0.0 if me.get('music') - createjs.Tween.get(@currentMusic).to({volume: 1.0}, CROSSFADE_LENGTH) + createjs.Tween.get(@currentMusic).to({volume: MUSIC_VOLUME}, CROSSFADE_LENGTH) onMusicSettingChanged: -> @updateMusicVolume() @@ -59,7 +60,7 @@ module.exports = class MusicPlayer extends CocoClass updateMusicVolume: -> return unless @currentMusic createjs.Tween.removeTweens(@currentMusic) - @currentMusic.volume = if me.get('music') then 1.0 else 0.0 + @currentMusic.volume = if me.get('music') then MUSIC_VOLUME else 0.0 destroy: -> me.off 'change:music', @onMusicSettingChanged, @ diff --git a/app/views/game-menu/GameMenuModal.coffee b/app/views/game-menu/GameMenuModal.coffee index 2881cc4a7..042c1f9b5 100644 --- a/app/views/game-menu/GameMenuModal.coffee +++ b/app/views/game-menu/GameMenuModal.coffee @@ -15,14 +15,15 @@ module.exports = class GameMenuModal extends ModalView id: 'game-menu-modal' instant: true + events: + 'change input.select': 'onSelectionChanged' + 'shown.bs.tab .nav-tabs a': 'onTabShown' + constructor: (options) -> super options @options.showDevBits = me.isAdmin() or /https?:\/\/localhost/.test(window.location.href) @options.showInventory = @options.level.get('type', true) is 'hero' - events: - 'change input.select': 'onSelectionChanged' - getRenderData: (context={}) -> context = super(context) context.showDevBits = @options.showDevBits @@ -36,6 +37,10 @@ module.exports = class GameMenuModal extends ModalView (if @options.showInventory then @subviews.inventory_view else @subviews.choose_hero_view).$el.addClass 'active' Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'game-menu-open', volume: 1 + onTabShown: -> + Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'game-menu-tab-switch', volume: 1 + onHidden: -> subview.onHidden?() for subviewKey, subview of @subviews me.patch() + Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'game-menu-close', volume: 1 diff --git a/app/views/play/level/LevelGoalsView.coffee b/app/views/play/level/LevelGoalsView.coffee index 15f0b5d7f..4a187879d 100644 --- a/app/views/play/level/LevelGoalsView.coffee +++ b/app/views/play/level/LevelGoalsView.coffee @@ -28,7 +28,7 @@ module.exports = class LevelGoalsView extends CocoView @updatePlacement() onNewGoalStates: (e) -> - firstRun = @previousGoalStatus? + firstRun = not @previousGoalStatus? @previousGoalStatus ?= {} @$el.find('.goal-status').addClass 'secret' classToShow = null @@ -63,8 +63,9 @@ module.exports = class LevelGoalsView extends CocoView goals.push goal if not firstRun and state.status is 'success' and @previousGoalStatus[goal.id] isnt 'success' Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'goal-success', volume: 1 - else if not firstRun and state.status is 'incomplete' and @previousGoalStatus[goal.id] is 'success' + else if not firstRun and state.status isnt 'success' and @previousGoalStatus[goal.id] is 'success' Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'goal-incomplete-again', volume: 1 + @previousGoalStatus[goal.id] = state.status @$el.removeClass('secret') if goals.length > 0 onSurfacePlaybackRestarted: -> @@ -91,9 +92,20 @@ module.exports = class LevelGoalsView extends CocoView sound = if expand then 'goals-expand' else 'goals-collapse' top = if expand then -10 else 26 - @$el.outerHeight() @$el.css 'top', top - Backbone.Mediator.publish 'audio-player:play-sound', trigger: sound, volume: 1 if @expanded? + if @soundTimeout + # Don't play the sound we were going to play after all; the transition has reversed. + clearTimeout @soundTimeout + @soundTimeout = null + else if @expanded? + # Play it when the transition ends, not when it begins. + @soundTimeout = _.delay @playToggleSound, 500, sound @expanded = expand + playToggleSound: (sound) => + return if @destroyed + Backbone.Mediator.publish 'audio-player:play-sound', trigger: sound, volume: 1 + @soundTimeout = null + onSetLetterbox: (e) -> @$el.toggle not e.on @updatePlacement() diff --git a/app/views/play/level/LevelLoadingView.coffee b/app/views/play/level/LevelLoadingView.coffee index 383d969c3..9d8ec311c 100644 --- a/app/views/play/level/LevelLoadingView.coffee +++ b/app/views/play/level/LevelLoadingView.coffee @@ -31,7 +31,7 @@ module.exports = class LevelLoadingView extends CocoView loadingDetails.css 'top', -loadingDetails.outerHeight(true) @$el.find('.left-wing').css left: '-100%', backgroundPosition: 'right -400px top 0' @$el.find('.right-wing').css right: '-100%', backgroundPosition: 'left -400px top 0' - Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'loading-view-unveil', volume: 1 + Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'loading-view-unveil', volume: 0.5 _.delay @onUnveilEnded, duration * 1000 onUnveilEnded: => diff --git a/app/views/play/level/tome/SpellListTabEntryView.coffee b/app/views/play/level/tome/SpellListTabEntryView.coffee index d00e3aa6f..5d30e395c 100644 --- a/app/views/play/level/tome/SpellListTabEntryView.coffee +++ b/app/views/play/level/tome/SpellListTabEntryView.coffee @@ -78,7 +78,8 @@ module.exports = class SpellListTabEntryView extends SpellListEntryView trigger: 'hover' content: docFormatter.formatPopover() container: @$el.parent() - ) + ).on 'show.bs.popover', => + Backbone.Mediator.publish 'audio-player:play-sound', trigger: "spell-tab-entry-open", volume: 0.75 onMouseEnterAvatar: (e) -> # Don't call super onMouseLeaveAvatar: (e) -> # Don't call super diff --git a/app/views/play/level/tome/SpellPaletteEntryView.coffee b/app/views/play/level/tome/SpellPaletteEntryView.coffee index 3f81a5d4c..434a12176 100644 --- a/app/views/play/level/tome/SpellPaletteEntryView.coffee +++ b/app/views/play/level/tome/SpellPaletteEntryView.coffee @@ -44,11 +44,10 @@ module.exports = class SpellPaletteEntryView extends CocoView content: @docFormatter.formatPopover() container: 'body' template: @overridePopoverTemplate - ) - window.element = @$el - @$el.on 'show.bs.popover', => + ).on 'show.bs.popover', => Backbone.Mediator.publish 'tome:palette-hovered', thang: @thang, prop: @doc.name, entry: @ - Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'spell-palette-entry-open', volume: 1 + soundIndex = Math.floor(Math.random() * 4) + Backbone.Mediator.publish 'audio-player:play-sound', trigger: "spell-palette-entry-open-{soundIndex}", volume: 0.75 onMouseEnter: (e) -> # Make sure the doc has the updated Thang so it can regenerate its prop value @@ -65,6 +64,7 @@ module.exports = class SpellPaletteEntryView extends CocoView @$el.add('.spell-palette-popover.popover').removeClass 'pinned' $('.spell-palette-popover.popover .close').remove() @$el.popover 'hide' + Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'spell-palette-entry-unpin', volume: 1 else @popoverPinned = true @$el.popover 'show' From ba554f3ff0249279a904d914dbd831f9a39eeb40 Mon Sep 17 00:00:00 2001 From: Nick Winter Date: Thu, 11 Sep 2014 08:43:36 -0700 Subject: [PATCH 06/13] Fixed some indentation from #1532. --- app/locale/it.coffee | 56 ++++++++++++++++++++++---------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/app/locale/it.coffee b/app/locale/it.coffee index b28a91dfb..3549ad03c 100644 --- a/app/locale/it.coffee +++ b/app/locale/it.coffee @@ -19,7 +19,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # unwatch: "Unwatch" submit_patch: "Invia Patch" -# units: + units: second: "secondo" seconds: "secondi" minute: "minuto" @@ -210,7 +210,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # view_profile: "View Your Profile" account_profile: - settings: "Impostazioni" + settings: "Impostazioni" edit_profile: "Modifica Profilo" # done_editing: "Done Editing" profile_for_prefix: "Profilo di " @@ -368,7 +368,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t restart: "Ricomincia" goals: "Obiettivi" # success: "Success!" - incomplete: "Incompleto" + incomplete: "Incompleto" timed_out: "Tempo Scaduto" # failing: "Failing" action_timeline: "Barra temporale delle azioni" @@ -401,7 +401,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t spell_saved: "Magia Salvata" skip_tutorial: "Salta (esc)" # keyboard_shortcuts: "Key Shortcuts" - loading_ready: "Pronto!" + loading_ready: "Pronto!" # 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." @@ -438,18 +438,18 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # infinite_loop_comment_out: "Comment Out My Code" game_menu: - inventory_tab: "Inventario" - choose_hero_tab: "Ricomincia Livello" - save_load_tab: "Salva/Carico" - options_tab: "Opzioni" - guide_tab: "Guida" + inventory_tab: "Inventario" + choose_hero_tab: "Ricomincia Livello" + save_load_tab: "Salva/Carico" + options_tab: "Opzioni" + guide_tab: "Guida" multiplayer_tab: "Multigiocatore" # inventory_caption: "Equip your hero" - choose_hero_caption: "Scegli eroe, lingua" + choose_hero_caption: "Scegli eroe, lingua" # save_load_caption: "... and view history" # options_caption: "Configure settings" # guide_caption: "Docs and tips" - multiplayer_caption: "Gioca con i tuoi amici!" + multiplayer_caption: "Gioca con i tuoi amici!" # inventory: # temp: "Temp" @@ -457,13 +457,13 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # choose_hero: # temp: "Temp" -# save_load: - granularity_saved_games: "Salvato" + save_load: + granularity_saved_games: "Salvato" # granularity_change_history: "History" -# options: + options: # general_options: "General Options" - volume_label: "Volume" + volume_label: "Volume" # music_label: "Music" # music_description: "Turn background music on/off." # autorun_label: "Autorun" @@ -491,20 +491,20 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t multiplayer: multiplayer_title: "Impostazioni multigiocatore" - multiplayer_toggle: "Abilita multiplayer" - multiplayer_toggle_description: "Permetti ad altri giocatori di unirsi alla partita." + multiplayer_toggle: "Abilita multiplayer" + multiplayer_toggle_description: "Permetti ad altri giocatori di unirsi alla partita." multiplayer_link_description: "Dai questo link a chi vuoi che si unisca a te." multiplayer_hint_label: "Suggerimento:" multiplayer_hint: " Clicca il link per selezionare tutto, quindi premi CMD-C o Ctrl-C per copiare il link." multiplayer_coming_soon: "Ulteriori aggiunte per il multigiocatore in arrivo!" # multiplayer_sign_in_leaderboard: "Sign in or create an account and get your solution on the leaderboard." -# keyboard_shortcuts: + keyboard_shortcuts: # keyboard_shortcuts: "Keyboard Shortcuts" - space: "Spazio" - enter: "Invio" - escape: "Esc" - shift: "Maiusc" + space: "Spazio" + enter: "Invio" + escape: "Esc" + shift: "Maiusc" # cast_spell: "Cast current spell." # run_real_time: "Run in real time." # continue_script: "Continue past current script." @@ -517,7 +517,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # toggle_grid: "Toggle grid overlay." # toggle_pathfinding: "Toggle pathfinding overlay." # beautify: "Beautify your code by standardizing its formatting." - maximize_editor: "Ingrandisci/rimpicciolisci l'editor di programmazione." + maximize_editor: "Ingrandisci/rimpicciolisci l'editor di programmazione." # move_wizard: "Move your Wizard around the level." admin: @@ -766,7 +766,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # artisan_join_step1: "Read the documentation." artisan_join_step2: "Crea un nuovo livello ed esplora quelli già esistenti." # artisan_join_step3: "Find us in our public HipChat room for help." - artisan_join_step4: "Posta il tuo livello sul forum per ricevere del feedback." + artisan_join_step4: "Posta il tuo livello sul forum per ricevere del feedback." more_about_artisan: "Leggi di più su cosa vuol dire diventare un creativo Artigiano" # artisan_subscribe_desc: "Get emails on level editor updates and announcements." # adventurer_summary: "Let us be clear about your role: you are the tank. You are going to take heavy damage. We need people to try out brand-new levels and help identify how to make things better. The pain will be enormous; making good games is a long process and no one gets it right the first time. If you can endure and have a high constitution score, then this class is for you." @@ -784,7 +784,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t scribe_introduction_url_mozilla: "Rete di sviluppo di Mozilla" # scribe_introduction_suf: " has built. If your idea of fun is articulating the concepts of programming in Markdown form, then this class might be for you." # scribe_attribute_1: "Skill in words is pretty much all you need. Not only grammar and spelling, but able to convey complicated ideas to others." - contact_us_url: "Contattaci" + contact_us_url: "Contattaci" # scribe_join_description: "tell us a little about yourself, your experience with programming and what sort of things you'd like to write about. We'll go from there!" more_about_scribe: "Leggi di più su cosa vuol dire diventare un diligente Scrivano" # scribe_subscribe_desc: "Get emails about article writing announcements." @@ -794,7 +794,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t diplomat_introduction_suf: "è che c'è un notevole interesse per CodeCombat negli altri paesi, in particolare in Brasile! Stiamo costruendo un corpo di traduttori per trasformare liste di parole in altre parole, per rendere CodeCombat accessibile il più possibile in tutto il mondo. Se ti piace l'idea di sbirciare nei contenuti futuri e di portare questi livelli ai tuoi connazionali il più presto possibile, questa categoria potrebbe essere la tua." diplomat_attribute_1: "Competenza in inglese e nella lingua in cui vorresti tradurre. Per trasferire idee complesse è importante avere una solida capacità in entrambe!" # diplomat_join_pref_github: "Find your language locale file " - diplomat_github_url: "su GitHub" + diplomat_github_url: "su GitHub" # diplomat_join_suf_github: ", edit it online, and submit a pull request. Also, check this box below to keep up-to-date on new internationalization developments!" more_about_diplomat: "Leggi di più su cosa vuol dire diventare un grande Diplomatico" diplomat_subscribe_desc: "Ricevi messaggi email sullo sviluppo i18n e i livelli da tradurre." @@ -829,8 +829,8 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t ambassador_title_description: "(Supporto)" ladder: - please_login: "Per favore esegui il log in first prima di giocare una partita classificata ." - my_matches: "Le mie partite" + please_login: "Per favore esegui il log in first prima di giocare una partita classificata ." + my_matches: "Le mie partite" simulate: "Simula" # simulation_explanation: "By simulating games you can get your game ranked faster!" # simulate_games: "Simulate Games!" From f5a4442e8a3eac5b7328a421e1d7916d622ef86e Mon Sep 17 00:00:00 2001 From: George Saines Date: Thu, 11 Sep 2014 09:59:50 -0700 Subject: [PATCH 07/13] trying to change SFX volume --- app/views/play/level/LevelPlaybackView.coffee | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/play/level/LevelPlaybackView.coffee b/app/views/play/level/LevelPlaybackView.coffee index fcf691500..0d55383ab 100644 --- a/app/views/play/level/LevelPlaybackView.coffee +++ b/app/views/play/level/LevelPlaybackView.coffee @@ -339,7 +339,7 @@ module.exports = class LevelPlaybackView extends CocoView @slideCount = 0 @wasPlaying = @playing Backbone.Mediator.publish 'level:set-playing', {playing: false} - Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'playback-scrub-start', volume: 1 + Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'playback-scrub-start', volume: .01 stop: (event, ui) => return if @shouldIgnore() @@ -351,7 +351,7 @@ module.exports = class LevelPlaybackView extends CocoView Backbone.Mediator.publish 'level:set-playing', {playing: false} @$el.find('.scrubber-handle').effect('bounce', {times: 2}) else - Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'playback-scrub-end', volume: 1 + Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'playback-scrub-end', volume: .01 ) getScrubRatio: -> From 9eb0dbc6256ed6251f402f8f64ee052b2a0d0560 Mon Sep 17 00:00:00 2001 From: Nick Winter Date: Thu, 11 Sep 2014 10:50:23 -0700 Subject: [PATCH 08/13] Fixed bug with creating new levels. --- app/views/modal/NewModelModal.coffee | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/views/modal/NewModelModal.coffee b/app/views/modal/NewModelModal.coffee index 97ba6fcaf..f394ed55d 100644 --- a/app/views/modal/NewModelModal.coffee +++ b/app/views/modal/NewModelModal.coffee @@ -13,7 +13,7 @@ module.exports = class NewModelModal extends ModalView constructor: (options) -> super options - @model = options.model + @modelClass = options.model @modelLabel = options.modelLabel @properties = options.properties $('#name').ready @focusOnName @@ -25,10 +25,10 @@ module.exports = class NewModelModal extends ModalView c makeNewModel: -> - model = new @model + model = new @modelClass name = @$el.find('#name').val() model.set('name', name) - if @model.schema().properties.permissions + if model.schema().properties.permissions model.set 'permissions', [{access: 'owner', target: me.id}] model.set(key, prop) for key, prop of @properties if @properties? model From 040b901e41f4a6d0917ee11b2ae0c551791bb2eb Mon Sep 17 00:00:00 2001 From: George Saines Date: Thu, 11 Sep 2014 11:08:25 -0700 Subject: [PATCH 09/13] removed merge junk --- app/views/play/level/LevelPlaybackView.coffee | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/app/views/play/level/LevelPlaybackView.coffee b/app/views/play/level/LevelPlaybackView.coffee index 0bb7a1bef..6949fce6e 100644 --- a/app/views/play/level/LevelPlaybackView.coffee +++ b/app/views/play/level/LevelPlaybackView.coffee @@ -339,11 +339,8 @@ module.exports = class LevelPlaybackView extends CocoView @slideCount = 0 @wasPlaying = @playing Backbone.Mediator.publish 'level:set-playing', {playing: false} -<<<<<<< HEAD - Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'playback-scrub-start', volume: .01 -======= Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'playback-scrub-start', volume: 0.5 ->>>>>>> 8c37fabe7990e8409591fee65c18593bb64aee5c + stop: (event, ui) => return if @shouldIgnore() @@ -355,11 +352,8 @@ module.exports = class LevelPlaybackView extends CocoView Backbone.Mediator.publish 'level:set-playing', {playing: false} @$el.find('.scrubber-handle').effect('bounce', {times: 2}) else -<<<<<<< HEAD - Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'playback-scrub-end', volume: .01 -======= Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'playback-scrub-end', volume: 0.5 ->>>>>>> 8c37fabe7990e8409591fee65c18593bb64aee5c + ) getScrubRatio: -> From d5542ffbbc39e8367a972674e967152ff2f7f2d7 Mon Sep 17 00:00:00 2001 From: Nick Winter Date: Thu, 11 Sep 2014 11:23:58 -0700 Subject: [PATCH 10/13] Fixed issues with sprite dragging, and made camera drag panning respect whether sidebars are open. --- .../editor/level/modals/GenerateTerrainModal.coffee | 2 +- app/views/editor/level/thangs/ThangsTabView.coffee | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app/views/editor/level/modals/GenerateTerrainModal.coffee b/app/views/editor/level/modals/GenerateTerrainModal.coffee index c2637bd00..56e67e5bc 100644 --- a/app/views/editor/level/modals/GenerateTerrainModal.coffee +++ b/app/views/editor/level/modals/GenerateTerrainModal.coffee @@ -234,7 +234,7 @@ module.exports = class GenerateTerrainModal extends ModalView template: template plain: true modalWidthPercent: 90 - + events: 'click .choose-option': 'onGenerate' diff --git a/app/views/editor/level/thangs/ThangsTabView.coffee b/app/views/editor/level/thangs/ThangsTabView.coffee index fd5201ed2..03ee1d0a4 100644 --- a/app/views/editor/level/thangs/ThangsTabView.coffee +++ b/app/views/editor/level/thangs/ThangsTabView.coffee @@ -237,11 +237,15 @@ module.exports = class ThangsTabView extends CocoView @dragged = true @surface.camera.dragDisabled = true {stageX, stageY} = e.originalEvent - wop = @surface.camera.screenToWorld x: stageX, y: stageY + cap = @surface.camera.screenToCanvas x: stageX, y: stageY + wop = @surface.camera.canvasToWorld cap wop.z = @selectedExtantThang.depth / 2 @adjustThangPos @selectedExtantSprite, @selectedExtantThang, wop [w, h] = [@surface.camera.canvasWidth, @surface.camera.canvasHeight] - @calculateMovement(stageX / w, stageY / h, w / h) + sidebarWidths = ((if @$el.find(id).hasClass('hide') then 0 else (@$el.find(id).outerWidth() / @surface.camera.canvasScaleFactorX)) for id in ['#all-thangs', '#add-thangs-view']) + w -= sidebarWidth for sidebarWidth in sidebarWidths + cap.x -= sidebarWidths[0] + @calculateMovement(cap.x / w, cap.y / h, w / h) onSpriteMouseUp: (e) -> clearTimeout @backgroundAddClickTimeout @@ -384,7 +388,7 @@ module.exports = class ThangsTabView extends CocoView return unless @addThangSprite wop = @surface.camera.screenToWorld x: e.x, y: e.y wop.z = 0.5 - @adjustThangPos @addThangSprite, @addThangSprite.thang, wop # TODO: this and onSpriteDragged both conflictin' + @adjustThangPos @addThangSprite, @addThangSprite.thang, wop null onSurfaceMouseOver: (e) -> From 5551c622faeec34e3dc86c1bdc54a78a0695ab4e Mon Sep 17 00:00:00 2001 From: Scott Erickson Date: Thu, 11 Sep 2014 11:36:08 -0700 Subject: [PATCH 11/13] Added a new test to webgl: making giant canvases. --- test/demo/easeljs/WebGL.demo.coffee | 32 ++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/test/demo/easeljs/WebGL.demo.coffee b/test/demo/easeljs/WebGL.demo.coffee index 4b2efe59a..2ed4fe634 100644 --- a/test/demo/easeljs/WebGL.demo.coffee +++ b/test/demo/easeljs/WebGL.demo.coffee @@ -472,8 +472,37 @@ class WebGLDemoView extends RootView createjs.Ticker.addEventListener "tick", listener # 20% CPU + + testGiantCanvas: -> + builder = new createjs.SpriteSheetBuilder() + + # mess with these + builder.maxWidth = 4096 + builder.maxHeight = 4096 + scale = 3.9 + duplicates = 100 + + frames = [] + createClass = (frame) -> + class Stub + constructor: -> + sprite = new createjs.Sprite(sheet, frame) + sprite.stop() + return sprite + for name, klass of librarianLib + continue if name is 'Librarian_SideWalk_JSCC' + instance = new klass() + builder.addFrame(instance, instance.nominalBounds, scale) for i in _.range(duplicates) + librarianLib[name] = createClass(frames.length) + frames.push frames.length + + sheet = builder.build() + $('body').attr('class', '').empty().css('background', 'white').append($(sheet._images)) + for image, index in sheet._images + console.log "Sheet ##{index}: #{$(image).attr('width')}x#{$(image).attr('height')}" + afterRender: -> # @testMovieClipWithRasterizedSpriteChildren() # @testMovieClipWithEmptyObjectChildren() @@ -485,7 +514,8 @@ class WebGLDemoView extends RootView # @testAnimateManyRasteredWaterfalls() # @testManualMovieClipUpdating() # @testManyWaterfallsWithManualAnimation() - @testLibrarianHorde() +# @testLibrarianHorde() + @testGiantCanvas() module.exports = -> v = new WebGLDemoView() From e9968b648f53d842c17bfeb90d104bb4820a7c5f Mon Sep 17 00:00:00 2001 From: Nick Winter Date: Thu, 11 Sep 2014 13:05:20 -0700 Subject: [PATCH 12/13] Fixed bugs with click coordinates messing up mouse-down targeting. --- app/lib/surface/Surface.coffee | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/lib/surface/Surface.coffee b/app/lib/surface/Surface.coffee index b809742c6..96e051fe1 100644 --- a/app/lib/surface/Surface.coffee +++ b/app/lib/surface/Surface.coffee @@ -457,12 +457,12 @@ module.exports = Surface = class Surface extends CocoClass onMouseDown: (e) => return if @disabled - newPos = @camera.screenToCanvas({x: e.stageX, y: e.stageY}) + cap = @camera.screenToCanvas({x: e.stageX, y: e.stageY}) # getObject(s)UnderPoint is broken, so we have to use the private method to get what we want - onBackground = not @stage._getObjectsUnderPoint(newPos.x, newPos.y, null, true) + onBackground = not @stage._getObjectsUnderPoint(e.stageX, e.stageY, null, true) - worldPos = @camera.screenToWorld x: e.stageX, y: e.stageY - event = onBackground: onBackground, x: e.stageX, y: e.stageY, originalEvent: e, worldPos: worldPos + wop = @camera.screenToWorld x: e.stageX, y: e.stageY + event = onBackground: onBackground, x: e.stageX, y: e.stageY, originalEvent: e, worldPos: wop Backbone.Mediator.publish 'surface:stage-mouse-down', event Backbone.Mediator.publish 'tome:focus-editor', {} From c08c279f8b3fce3ddff466c15e0ee19e9e2e6906 Mon Sep 17 00:00:00 2001 From: Michael Schmatz Date: Thu, 11 Sep 2014 16:13:06 -0400 Subject: [PATCH 13/13] Removed net neutrality banner --- app/assets/main.html | 4 ---- 1 file changed, 4 deletions(-) diff --git a/app/assets/main.html b/app/assets/main.html index 98c0571ae..d2a3257b4 100644 --- a/app/assets/main.html +++ b/app/assets/main.html @@ -53,10 +53,6 @@ - -