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 @@ - - 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', {} diff --git a/app/locale/es-ES.coffee b/app/locale/es-ES.coffee index 35e022051..bae6ed94d 100644 --- a/app/locale/es-ES.coffee +++ b/app/locale/es-ES.coffee @@ -652,21 +652,21 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis why_paragraph_2_italic_caps: "¡NO MAMA, TENGO QUE TERMINAR EL NIVEL!" why_paragraph_2_suffix: "Por eso Codecombat es multijugador, no un curso con lecciones \"gamificadas\" . No pararemos hasta que tú no puedas parar... pero esta vez, eso será buena señal." why_paragraph_3: "Si vas a engancharte a algún juego, engánchate a este y conviértete en uno de los magos de la era tecnológica." -# 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." -# team: "Team" -# george_title: "CEO" -# george_blurb: "Businesser" -# scott_title: "Programmer" -# scott_blurb: "Reasonable One" -# nick_title: "Programmer" -# nick_blurb: "Motivation Guru" -# michael_title: "Programmer" -# michael_blurb: "Sys Admin" -# matt_title: "Programmer" -# matt_blurb: "Bicyclist" + press_title: "Blogueros/Prensa" + press_paragraph_1_prefix: "Quieres escribir sobre nosotros? Bajate y usa todos los recursos incluidos en nuestro" + press_paragraph_1_link: "paquete de prensa" + press_paragraph_1_suffix: ". Todos los logos y las imagenes pueden ser usados sin necesidad de contactarnos directamente." + team: "Equipo" + george_title: "CEO" + george_blurb: "Hombre de Negocios" + scott_title: "Programador" + scott_blurb: "Razonable" + nick_title: "Programador" + nick_blurb: "Guru Motivacional" + michael_title: "Programador" + michael_blurb: "Administrador de Sistemas" + matt_title: "Programador" + matt_blurb: "Ciclista" legal: page_title: "Legal" @@ -878,7 +878,7 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis tournament_ended: "El torneo ha terminado" tournament_rules: "Reglas del Torneo" tournament_blurb: "Escribe codigo, recolecta oro, construye ejercitos, aplasta a los malos, gana premios, y sube en tu carrera en nuestro Torneo de la Avaricia con $40,000! Ver los detalles" -# tournament_blurb_criss_cross: "Win bids, construct paths, outwit opponents, grab gems, and upgrade your career in our Criss-Cross tournament! Check out the details" + tournament_blurb_criss_cross: "Gana pujas, construye caminos, aniquila a tus oponentes, recoge gemas, y mejora tu carrera en nuestro torneo Criss-Cross! Mira los detalles" tournament_blurb_blog: "en nuestro blog" rules: "Reglas" winners: "Ganadores" @@ -896,7 +896,7 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis in_cash: "en dinero" custom_wizard: "Personaliza tu Mago de CodeCombat" custom_avatar: "Personaliza tu avatar de CoceCombat" -# heap: "for six months of \"Startup\" access" + heap: "Por seis meses de acceso \"Startup\"" credits: "creditos" one_month_coupon: "cupon: elige entre Rails o HTML" one_month_discount: "descuento del 30%: elige entre Rails o HTML" @@ -946,61 +946,61 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis files: "Archivos" top_simulators: "Top simuladores" source_document: "Documento fuente" -# document: "Document" + document: "Documento" # sprite_sheet: "Sprite Sheet" -# employers: "Employers" -# candidates: "Candidates" -# candidate_sessions: "Candidate Sessions" + employers: "Empleados" + candidates: "Candidatos" + candidate_sessions: "Sesiones de Candidato" # user_remark: "User Remark" # user_remarks: "User Remarks" -# versions: "Versions" -# items: "Items" -# wizard: "Wizard" -# achievement: "Achievement" + versions: "Versiones" + items: "Objetos" + wizard: "Mago" + achievement: "Logro" # clas: "CLAs" -# play_counts: "Play Counts" + play_counts: "Contador de Juegos" # feedback: "Feedback" delta: added: "Añadido" modified: "Modificado" deleted: "Eliminado" -# moved_index: "Moved Index" + moved_index: "Indice Movido" # text_diff: "Text Diff" # merge_conflict_with: "MERGE CONFLICT WITH" no_changes: "Sin Cambios" -# user: -# stats: "Stats" -# singleplayer_title: "Singleplayer Levels" -# multiplayer_title: "Multiplayer Levels" -# achievements_title: "Achievements" -# last_played: "Last Played" -# status: "Status" -# status_completed: "Completed" -# status_unfinished: "Unfinished" -# no_singleplayer: "No Singleplayer games played yet." -# no_multiplayer: "No Multiplayer games played yet." -# no_achievements: "No Achievements earned yet." -# favorite_prefix: "Favorite language is " -# favorite_postfix: "." + user: + stats: "Estadisticas" + singleplayer_title: "Niveles Individuales" + multiplayer_title: "Niveles Multijugador" + achievements_title: "Logros" + last_played: "Ultimo Jugado" + status: "Estatus" + status_completed: "Completado" + status_unfinished: "Sin Terminar" + no_singleplayer: "No has jugado ningun nivel individual todavia." + no_multiplayer: "No has jugado ningun nivel multijugador todavia." + no_achievements: "No has alcanzado ningun logro todavia." + favorite_prefix: "Favorite language is " + favorite_postfix: "." -# achievements: -# last_earned: "Last Earned" -# amount_achieved: "Amount" -# achievement: "Achievement" -# category_contributor: "Contributor" -# category_miscellaneous: "Miscellaneous" -# category_levels: "Levels" -# category_undefined: "Uncategorized" -# current_xp_prefix: "" -# current_xp_postfix: " in total" -# new_xp_prefix: "" -# new_xp_postfix: " earned" -# left_xp_prefix: "" -# left_xp_infix: " until level " -# left_xp_postfix: "" + achievements: + last_earned: "Ganado la ultima vez" + amount_achieved: "Cantidad" + achievement: "Logro" + category_contributor: "Contribuidor" + category_miscellaneous: "Miscelanea" + category_levels: "Niveles" + category_undefined: "Sin categorizar" + current_xp_prefix: "" + current_xp_postfix: " en total" + new_xp_prefix: "" + new_xp_postfix: " ganado" + left_xp_prefix: "" + left_xp_infix: " hasta el nivel" + left_xp_postfix: "" -# account: -# recently_played: "Recently Played" -# no_recent_games: "No games played during the past two weeks." + account: + recently_played: "Jugado Recientemente" + no_recent_games: "No he jugado juegos en las ultimas dos semanas." diff --git a/app/locale/pt-BR.coffee b/app/locale/pt-BR.coffee index 8127d9f8e..02fc6f480 100644 --- a/app/locale/pt-BR.coffee +++ b/app/locale/pt-BR.coffee @@ -79,7 +79,7 @@ module.exports = nativeDescription: "português do Brasil", englishDescription: recover: recover_account_title: "Recuperar conta" send_password: "Recuperar senha" -# recovery_sent: "Recovery email sent." + recovery_sent: "Email de recuperação enviado." signup: create_account_title: "Criar conta para salvar progresso" @@ -91,7 +91,7 @@ module.exports = nativeDescription: "português do Brasil", englishDescription: sign_up: "Criar conta" log_in: "Entre com a senha" social_signup: "Ou, você pode fazer login pelo Facebook ou G+:" -# required: "You need to log in before you can go that way." + required: "Você precisa fazer login antes de ir por esse caminho." home: slogan: "Aprenda a programar enquanto se diverte com um jogo." @@ -106,10 +106,10 @@ module.exports = nativeDescription: "português do Brasil", englishDescription: for_developers: "Para Desenvolvedores" javascript_blurb: "A linguagem da web. Ótima para criação de websites, web app, jogos HTML5, e servidores" python_blurb: "Simples mas poderosa, Python é uma linguagem de programação de uso geral" -# coffeescript_blurb: "Nicer JavaScript syntax." -# clojure_blurb: "A modern Lisp." -# lua_blurb: "Game scripting language." -# io_blurb: "Simple but obscure." + coffeescript_blurb: "Sintaxe de JavaScript mais legal." + clojure_blurb: "Um Lisp moderno." + lua_blurb: "Linguagem de script para jogos." + io_blurb: "Simples mas obscura." play: choose_your_level: "Escolha seu estágio" @@ -129,7 +129,7 @@ module.exports = nativeDescription: "português do Brasil", englishDescription: level_difficulty: "Dificuldade: " play_as: "Jogar Como " spectate: "Assistir" -# players: "players" + players: "jogadores" # hours_played: "hours played" contact: @@ -184,14 +184,14 @@ module.exports = nativeDescription: "português do Brasil", englishDescription: new_password: "Nova Senha" new_password_verify: "Confirmação" email_subscriptions: "Assinaturas para Notícias por Email" -# email_subscriptions_none: "No Email Subscriptions." + email_subscriptions_none: "Sem Assinaturas de Email" email_announcements: "Notícias" email_announcements_description: "Receba emails com as últimas notícias e desenvolvimentos do CodeCombat." email_notifications: "Notificações" # 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_any_notes_description: "Desabilitar todas as atividades de notificação por email." + email_news: "Notícias" email_recruit_notes: "Oportunidades de emprego" email_recruit_notes_description: "Se você jogar muito bem, nós podemos lhe contactar para lhe oferecer um emprego (melhor)" contributor_emails: "Emails para as Classes de Contribuidores" @@ -202,7 +202,7 @@ module.exports = nativeDescription: "português do Brasil", englishDescription: error_saving: "Erro no salvamento" saved: "Alterações Salvas" password_mismatch: "As senhas não estão iguais" -# password_repeat: "Please repeat your password." + password_repeat: "Por favor repita sua senha." job_profile: "Perfil de trabalho" # job_profile_approved: "Your job profile has been approved by CodeCombat. Employers will be able to see it until you either mark it inactive or it has not been changed for four weeks." # job_profile_explanation: "Hi! Fill this out, and we will get in touch about finding you a software developer job." @@ -210,9 +210,9 @@ module.exports = nativeDescription: "português do Brasil", englishDescription: view_profile: "Visualizar seu perfil" account_profile: -# settings: "Settings" -# edit_profile: "Edit Profile" -# done_editing: "Done Editing" + settings: "Configurações" + edit_profile: "Edite seu perfil" + done_editing: "Edição Feita" profile_for_prefix: "Perfil de " profile_for_suffix: "" # featured: "Featured" @@ -237,18 +237,18 @@ module.exports = nativeDescription: "português do Brasil", englishDescription: # next_photo: "add an optional professional photo." # next_active: "mark yourself open to offers to show up in searches." example_blog: "Blog" -# example_personal_site: "Personal Site" + example_personal_site: "Site Pessoal" # links_header: "Personal Links" # links_blurb: "Link any other sites or profiles you want to highlight, like your GitHub, your LinkedIn, or your blog." # links_name: "Link Name" # links_name_help: "What are you linking to?" # links_link_blurb: "Link URL" # basics_header: "Update basic info" -# basics_active: "Open to Offers" + basics_active: "Aberto para Ofertas" # basics_active_help: "Want interview offers right now?" # basics_job_title: "Desired Job Title" # basics_job_title_help: "What role are you looking for?" -# basics_city: "City" + basics_city: "Cidade" # basics_city_help: "City you want to work in (or live in now)." basics_country: "País" # basics_country_help: "Country you want to work in (or live in now)." @@ -283,35 +283,35 @@ module.exports = nativeDescription: "português do Brasil", englishDescription: # work_employer_help: "Name of your employer." # work_role: "Job Title" # work_role_help: "What was your job title or role?" -# work_duration: "Duration" + work_duration: "Duração" # work_duration_help: "When did you hold this gig?" -# work_description: "Description" + work_description: "Descrição" # work_description_help: "What did you do there? (140 chars; optional)" education: "Educação" # education_header: "Recount your academic ordeals" # education_blurb: "List your academic ordeals." education_school: "Escola" -# education_school_help: "Name of your school." -# education_degree: "Degree" + education_school_help: "Nome da sua escola." + education_degree: "Grau" # education_degree_help: "What was your degree and field of study?" -# education_duration: "Dates" -# education_duration_help: "When?" -# education_description: "Description" + education_duration: "Datas" + education_duration_help: "Quando?" + education_description: "Descrição" # education_description_help: "Highlight anything about this educational experience. (140 chars; optional)" our_notes: "Nossas notas" # remarks: "Remarks" projects: "Projetos" -# projects_header: "Add 3 projects" -# projects_header_2: "Projects (Top 3)" -# projects_blurb: "Highlight your projects to amaze employers." -# project_name: "Project Name" + projects_header: "Adicione 3 projetos" + projects_header_2: "Projetos (Top 3)" + projects_blurb: "Destaque seus projetos para impressionar os empregadores." + project_name: "Nome do Projeto" # project_name_help: "What was the project called?" -# project_description: "Description" + project_description: "Descrição" # project_description_help: "Briefly describe the project." -# project_picture: "Picture" + project_picture: "Imagem" # project_picture_help: "Upload a 230x115px or larger image showing off the project." -# project_link: "Link" -# project_link_help: "Link to the project." + project_link: "Link" + project_link_help: "Link para o projeto." # player_code: "Player Code" # employers: diff --git a/app/views/editor/level/thangs/AddThangsView.coffee b/app/views/editor/level/thangs/AddThangsView.coffee index aeba64f92..204c6b9d9 100644 --- a/app/views/editor/level/thangs/AddThangsView.coffee +++ b/app/views/editor/level/thangs/AddThangsView.coffee @@ -33,7 +33,7 @@ module.exports = class AddThangsView extends CocoView models = @supermodel.getModels(ThangType) thangTypes = _.uniq models, false, (thangType) -> thangType.get('original') - thangTypes = _.reject thangTypes, (thangType) -> thangType.get('kind') is 'Mark' + thangTypes = _.reject thangTypes, (thangType) -> thangType.get('kind') in ['Mark', 'Item'] groupMap = {} for thangType in thangTypes kind = thangType.get('kind') @@ -49,6 +49,10 @@ module.exports = class AddThangsView extends CocoView thangs: someThangTypes groups.push group + groups = _.sortBy groups, (group) -> + index = ['Wall', 'Floor', 'Unit', 'Doodad', 'Misc'].indexOf group.name + if index is -1 then 9001 else index + context.thangTypes = thangTypes context.groups = groups context