mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2024-11-28 10:06:08 -05:00
Merge remote-tracking branch 'codecombat/master' into translation
This commit is contained in:
commit
b60f9f1bde
8 changed files with 43 additions and 52 deletions
|
@ -437,24 +437,24 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
payment_methods_title: "Metodos de pago aceptados."
|
||||
payment_methods_blurb1: "Actualmente aceptamos tarjetas de credito y Alipay."
|
||||
payment_methods_blurb2: "Si necesitas una forma alternativa de pago, por favor contactarse"
|
||||
# sale_already_subscribed: "You're already subscribed!"
|
||||
sale_already_subscribed: "¡Ya estás subscrito!"
|
||||
sale_blurb1: "Ahorra 35%"
|
||||
# sale_blurb2: "off regular subscription price of $120 for a whole year!" # {changed}
|
||||
# sale_button: "Sale!"
|
||||
# sale_button_title: "Save 35% when you purchase a 1 year subscription"
|
||||
sale_blurb2: "de descuento en el precio regular de una subscripción de $120 USD por un año completo!" # {changed}
|
||||
sale_button: "Venta!"
|
||||
sale_button_title: "Ahorra 35% al adquirir una subscripción por 1 año"
|
||||
sale_click_here: "Haz Click Aquí"
|
||||
sale_ends: "Termina"
|
||||
# sale_extended: "*Existing subscriptions will be extended by 1 year."
|
||||
# sale_feature_here: "Here's what you'll get:"
|
||||
# sale_feature2: "Access to 9 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# sale_feature4: "<strong>42,000 bonus gems</strong> awarded immediately!"
|
||||
# sale_continue: "Ready to continue adventuring?"
|
||||
sale_extended: "*Las subscripciones existentes se extenderán por un año."
|
||||
sale_feature_here: "Esto es lo que obtendrás:"
|
||||
sale_feature2: "¡Acceso a 9 poderosos <strong>nuevos héroes</strong> con habilidades únicas!"
|
||||
sale_feature4: "¡Una bonificación inmediata de <strong>42,000 gemas</strong>!"
|
||||
sale_continue: "¿Estás listo para continuar aventurándote?"
|
||||
sale_limited_time: "¡Oferta por tiempo limitado!"
|
||||
sale_new_heroes: "¡Nuevos héroes!"
|
||||
# sale_title: "Back to School Sale"
|
||||
# sale_view_button: "Buy 1 year subscription for"
|
||||
sale_title: "Venta de regreso a clases"
|
||||
sale_view_button: "Compra la subscripción de 1 año por"
|
||||
stripe_description: "Suscripción Mensual"
|
||||
# stripe_description_year_sale: "1 Year Subscription (35% discount)"
|
||||
stripe_description_year_sale: "Subscripción por 1 año (35% descuento)"
|
||||
subscription_required_to_play: "Necesitas una suscripción para jugar este nivel."
|
||||
unlock_help_videos: "Suscríbete para desbloquear todos los video tutoriales."
|
||||
personal_sub: "Suscripción Personal" # Accounts Subscription View below
|
||||
|
@ -462,14 +462,14 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
managed_by: "Administrado por"
|
||||
will_be_cancelled: "Será cancelado en"
|
||||
currently_free: "Actualmente tienes una suscripción gratuita"
|
||||
currently_free_until: "Actualmente tienes una suscripción gratuita hasta" # {changed}
|
||||
currently_free_until: "Actualmente tienes una suscripción gratuita hasta"
|
||||
was_free_until: "Tuviste una suscripción gratuita hasta"
|
||||
managed_subs: "Suscripciones administradas"
|
||||
managed_subs_desc: "Agregar suscripciones para otros jugadores (alumnos, hijos, etc.)"
|
||||
managed_subs_desc_2: "Los recipientes deben tener una cuenta de CodeCombat asociada con el email que usted provea."
|
||||
group_discounts: "Descuentos por grupo"
|
||||
group_discounts_1: "También ofrecemos descuentos grupales por suscripciones masivas."
|
||||
group_discounts_1st: "1ra suscripción (incluye la tuya)" # {change}
|
||||
group_discounts_1st: "primera suscripción (incluye la tuya)"
|
||||
group_discounts_full: "Precio regular"
|
||||
group_discounts_2nd: "2-11 Suscripciones"
|
||||
group_discounts_20: "20% descuento"
|
||||
|
@ -654,7 +654,7 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
|
||||
teachers_survey:
|
||||
title: "Encuesta para profesores"
|
||||
must_be_logged: "Debe iniiciar sesión primero. Por favor cree una cuenta o inicie sesión desde el menú en la parte superior."
|
||||
must_be_logged: "Debe iniciar sesión primero. Por favor cree una cuenta o inicie sesión desde el menú en la parte superior."
|
||||
retrieving: "Obteniendo información..."
|
||||
being_reviewed_1: "Su solicitud para una prueba gratuita de subscripción está siendo"
|
||||
being_reviewed_2: "revisada."
|
||||
|
@ -665,20 +665,20 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
denied_2: "denegada."
|
||||
contact_1: "Por favor contáctenos"
|
||||
contact_2: "si tiene más preguntas."
|
||||
# description_1: "Ofrecemos free subscriptions to teachers for evaluation purposes. You can find more information on our"
|
||||
description_1: "Ofrecemos suscripciones gratuitas a maestros con propósitos de evaluación. Puede hallar más información en nuestra"
|
||||
description_2: "página"
|
||||
description_3: "de maestros."
|
||||
# description_4: "Por favor fill out this quick survey and we’ll email you setup instructions."
|
||||
description_4: "Por favor llene esta encuesta rápida y le mandaremos por email las instrucciones de configuración."
|
||||
email: "Dirección de email"
|
||||
school: "Nombre del colegio"
|
||||
location: "Nombre de la ciudad"
|
||||
age_students: "¿Qué edad tienen tus estudiantes?"
|
||||
age_students: "¿Qué edad tienen sus estudiantes?"
|
||||
under: "Menor"
|
||||
other: "Otro:"
|
||||
amount_students: "¿A cuantos alumnos les enseñas?"
|
||||
hear_about: "¿Donde escuchaste sobre CodeCombat?"
|
||||
fill_fields: "Porfavor llenar todos los campos."
|
||||
thanks: "Gracias! Vamos a mandarte instrucciónes para iniciar proximamente."
|
||||
amount_students: "¿A cuantos alumnos les enseña?"
|
||||
hear_about: "¿Donde escuchó sobre CodeCombat?"
|
||||
fill_fields: "Porfavor llene todos los campos."
|
||||
thanks: "Gracias! Vamos a mandarle instrucciónes para iniciar proximamente."
|
||||
|
||||
versions:
|
||||
save_version_title: "Guardar nueva versión"
|
||||
|
@ -836,7 +836,7 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
latest_achievement: "último logro"
|
||||
playtime: "Tiempo de juego"
|
||||
last_played: "Último jugado"
|
||||
# leagues_explanation: "Juega en una liga contra otros miembros del clan en these multiplayer arena instances."
|
||||
leagues_explanation: "Juega en una liga contra otros miembros del clan en estas instancias de arena multijugador."
|
||||
|
||||
classes:
|
||||
archmage_title: "Archimago"
|
||||
|
@ -1026,7 +1026,7 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
my_matches: "Mis Partidas"
|
||||
simulate: "Simular"
|
||||
simulation_explanation: "¡Simulando tus juegos puedes mejorar tu posición más rápido!"
|
||||
# simulation_explanation_leagues: "Principalmente ayudarás a simular juegos for allied players in your clans and courses."
|
||||
simulation_explanation_leagues: "Principalmente ayudarás a simular juegos para jugadores aliados en tus clanes y cursos."
|
||||
simulate_games: "¡Simular Juegos!"
|
||||
simulate_all: "REINICIAR Y SIMULAR JUEGOS"
|
||||
games_simulated_by: "Juegos simulados por ti:"
|
||||
|
@ -1219,16 +1219,16 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
arrays: "Arreglos"
|
||||
basic_syntax: "Sintaxis Básica"
|
||||
boolean_logic: "Lógica Booleana"
|
||||
# break_statements: "Break Statements"
|
||||
break_statements: "Sentencias Break"
|
||||
classes: "Clases"
|
||||
# continue_statements: "Continue Statements"
|
||||
continue_statements: "Sentencias Continue"
|
||||
for_loops: "Ciclos For"
|
||||
functions: "Funciones"
|
||||
graphics: "Gráficos"
|
||||
# if_statements: "If Statements"
|
||||
# input_handling: "Input Handling"
|
||||
if_statements: "Sentencias If"
|
||||
input_handling: "Manejo de Entrada"
|
||||
math_operations: "Operaciones Matemáticas"
|
||||
# object_literals: "Object Literals"
|
||||
object_literals: "Literales de Objeto"
|
||||
parameters: "Parámetros"
|
||||
strings: "Cadenas"
|
||||
variables: "Variables"
|
||||
|
@ -1260,9 +1260,9 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
multiplayer_sign_in_leaderboard: "Entra o crea una cuenta y mira tu solución en la tabla de posiciones."
|
||||
|
||||
legal:
|
||||
page_title: "Legal"
|
||||
page_title: "Información legal"
|
||||
opensource_intro: "CodeCombat es completamente open source."
|
||||
opensource_description_prefix: "Echa un vistazo "
|
||||
opensource_description_prefix: "Echa un vistazo a "
|
||||
github_url: "nuestro GitHub"
|
||||
opensource_description_center: "y ayudanos si quieres! CodeCombat esta construido por docenas de proyectos open source, y los amamos. Mira "
|
||||
archmage_wiki_url: "nuestra wiki de Archimago"
|
||||
|
|
|
@ -13,7 +13,6 @@ block header
|
|||
a(href='/clans', data-i18n="clans.clans") Clans
|
||||
a(href='http://discourse.codecombat.com/', data-i18n="nav.forum")
|
||||
a(href='/community', data-i18n="nav.community")
|
||||
//a(href='/play/ladder', data-i18n="home.multiplayer").multiplayer-nav-link
|
||||
|
||||
if me.get('anonymous') === false
|
||||
span.dropdown
|
||||
|
@ -63,6 +62,7 @@ block footer
|
|||
a(href='http://blog.codecombat.com/', data-i18n="nav.blog")
|
||||
a(href='/contribute', tabindex=-1, data-i18n="nav.contribute") Contribute
|
||||
a(href='/legal', tabindex=-1, data-i18n="nav.legal") Legal
|
||||
a(href='/play/ladder', tabindex=-1, data-i18n="home.multiplayer").multiplayer-nav-link
|
||||
if me.isAdmin()
|
||||
a(href='/admin', data-i18n="nav.admin") Admin
|
||||
|
||||
|
|
|
@ -16,8 +16,6 @@ table.table
|
|||
block tableBody
|
||||
for document in documents
|
||||
- var data = document.attributes;
|
||||
- if(data.slug == 'ace-of-coders' && new Date() < new Date(1441863900000))
|
||||
- continue;
|
||||
tr(class=document.getOwner() == me.id ? 'mine' : '')
|
||||
td
|
||||
a(href="/editor/#{page}/#{data.slug || data._id}")
|
||||
|
|
|
@ -17,8 +17,6 @@ if campaign
|
|||
a(href=level.type == 'hero' ? '#' : level.disabled ? "/play" : "/play/#{level.levelPath || 'level'}/#{level.slug}", disabled=level.disabled, data-level-slug=level.slug, data-level-path=level.levelPath || 'level', data-level-name=level.name)
|
||||
if level.slug == 'lost-viking'
|
||||
img.star(src="/file/db/thang.type/5441c3144e9aeb727cc97111/portrait.png")
|
||||
else if level.slug == 'robot-ragnarok'
|
||||
img.star(src="/file/db/thang.type/54ea35fd2b7506e891ca70d5/portrait.png")
|
||||
else if level.requiresSubscription
|
||||
img.star(src="/images/pages/play/star.png")
|
||||
if levelStatusMap[level.slug] === 'complete'
|
||||
|
|
|
@ -191,7 +191,6 @@ module.exports = class ClanDetailsView extends RootView
|
|||
name: utils.i18n(campaign.attributes, 'fullName') or utils.i18n(campaign.attributes, 'name')
|
||||
levels: []
|
||||
for levelID, level of campaign.get('levels')
|
||||
continue if level.slug is 'ace-of-coders' and new Date() < new Date(1441863900000)
|
||||
campaignLevelProgression.levels.push
|
||||
ID: levelID
|
||||
slug: level.slug
|
||||
|
|
|
@ -55,6 +55,13 @@ module.exports = class LadderHomeView extends RootView
|
|||
context
|
||||
|
||||
heroArenas = [
|
||||
{
|
||||
name: 'Ace of Coders'
|
||||
difficulty: 3
|
||||
id: 'ace-of-coders'
|
||||
image: '/file/db/level/55de80407a57948705777e89/Ace-of-Coders-banner.png'
|
||||
description: 'Battle for control over the icy treasure chests as your gigantic warrior marshals his armies against his mirror-match nemesis.'
|
||||
}
|
||||
{
|
||||
name: 'Zero Sum'
|
||||
difficulty: 3
|
||||
|
@ -62,13 +69,6 @@ heroArenas = [
|
|||
image: '/file/db/level/550363b4ec31df9c691ab629/MAR26-Banner_Zero%20Sum.png'
|
||||
description: 'Unleash your coding creativity in both gold gathering and battle tactics in this alpine mirror match between red sorcerer and blue sorcerer.'
|
||||
}
|
||||
{
|
||||
name: 'Ace of Coders'
|
||||
difficulty: 3
|
||||
id: 'ace-of-coders'
|
||||
image: '/file/db/level/550363b4ec31df9c691ab629/MAR26-Banner_Zero%20Sum.png'
|
||||
description: 'Battle for control over the icy treasure chests as your gigantic warrior marshals his armies against his mirror-match nemesis.'
|
||||
}
|
||||
{
|
||||
name: 'Cavern Survival'
|
||||
difficulty: 1
|
||||
|
@ -99,8 +99,6 @@ heroArenas = [
|
|||
}
|
||||
]
|
||||
|
||||
heroArenas = _.reject heroArenas, id: 'ace-of-coders' if new Date() < new Date(1441863900000)
|
||||
|
||||
oldArenas = [
|
||||
{
|
||||
name: 'Criss-Cross'
|
||||
|
|
|
@ -267,7 +267,7 @@ module.exports = class CampaignView extends RootView
|
|||
level.locked = false if @campaign?.get('name') is 'Auditions'
|
||||
level.locked = false if @campaign?.get('name') is 'Intro'
|
||||
level.locked = false if me.isInGodMode()
|
||||
level.locked = false if level.slug is 'robot-ragnarok'
|
||||
#level.locked = false if level.slug is 'robot-ragnarok'
|
||||
level.disabled = true if level.adminOnly and @levelStatusMap[level.slug] not in ['started', 'complete']
|
||||
level.disabled = false if me.isInGodMode()
|
||||
level.color = 'rgb(255, 80, 60)'
|
||||
|
@ -324,8 +324,7 @@ module.exports = class CampaignView extends RootView
|
|||
me.isPremium() or
|
||||
not nextLevel.requiresSubscription or
|
||||
(nextLevel.slug is 'boom-and-bust' and not @levelStatusMap['defense-of-plainswood']) or
|
||||
(nextLevel.slug is 'favorable-odds' and not @levelStatusMap['the-raised-sword']) or
|
||||
(nextLevel.slug is 'robot-ragnarok' and @levelStatusMap['the-raised-sword'])
|
||||
(nextLevel.slug is 'favorable-odds' and not @levelStatusMap['the-raised-sword'])
|
||||
)
|
||||
nextLevel.next = true
|
||||
foundNext = true
|
||||
|
@ -381,7 +380,7 @@ module.exports = class CampaignView extends RootView
|
|||
particleKey.push 'premium' if level.requiresSubscription
|
||||
particleKey.push 'gate' if level.slug in ['kithgard-gates', 'siege-of-stonehold', 'clash-of-clones', 'summits-gate']
|
||||
particleKey.push 'hero' if level.unlocksHero and not level.unlockedHero
|
||||
particleKey.push 'item' if level.slug is 'robot-ragnarok' # TODO: generalize
|
||||
#particleKey.push 'item' if level.slug is 'robot-ragnarok' # TODO: generalize
|
||||
continue if particleKey.length is 2 # Don't show basic levels
|
||||
continue unless level.hidden or _.intersection(particleKey, ['item', 'hero-ladder', 'replayable']).length
|
||||
@particleMan.addEmitter level.position.x / 100, level.position.y / 100, particleKey.join('-')
|
||||
|
|
|
@ -66,7 +66,7 @@ getRandomSessions = (user, callback) ->
|
|||
|
||||
# Sampling by level: we pick a level, then find a human and ogre session for that level, one at random, one biased towards recent submissions.
|
||||
#ladderLevelIDs = ['greed', 'criss-cross', 'brawlwood', 'dungeon-arena', 'gold-rush', 'sky-span'] # Let's not give any extra simulations to old ladders.
|
||||
ladderLevelIDs = ['dueling-grounds', 'cavern-survival', 'multiplayer-treasure-grove', 'harrowland', 'zero-sum', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders']
|
||||
ladderLevelIDs = ['dueling-grounds', 'cavern-survival', 'multiplayer-treasure-grove', 'harrowland', 'zero-sum', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders', 'ace-of-coders']
|
||||
sampleByLevel = (callback) ->
|
||||
levelID = _.sample ladderLevelIDs
|
||||
favorRecentHumans = Math.random() < 0.5 # We pick one session favoring recent submissions, then find another one uniformly to play against
|
||||
|
@ -76,7 +76,6 @@ findRandomSession = (queryParams, callback) ->
|
|||
# In MongoDB 3.2, we will be able to easily get a random document with aggregate $sample: https://jira.mongodb.org/browse/SERVER-533
|
||||
queryParams.submitted = true
|
||||
favorRecent = queryParams.favorRecent
|
||||
favorRecent = false # temp, for Ace of Coders tournament
|
||||
delete queryParams.favorRecent
|
||||
if favorRecent
|
||||
return findRecentRandomSession queryParams, callback
|
||||
|
|
Loading…
Reference in a new issue