mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2024-11-28 01:55:38 -05:00
Merge remote-tracking branch 'upstream/master' into eventcheck-regexp
This commit is contained in:
commit
f6ada477ef
2 changed files with 26 additions and 26 deletions
|
@ -1,6 +1,6 @@
|
||||||
module.exports = nativeDescription: "Deutsch", englishDescription: "German", translation:
|
module.exports = nativeDescription: "Deutsch", englishDescription: "German", translation:
|
||||||
common:
|
common:
|
||||||
loading: "Laden..."
|
loading: "Lade..."
|
||||||
|
|
||||||
modal:
|
modal:
|
||||||
close: "Schliessen"
|
close: "Schliessen"
|
||||||
|
@ -10,14 +10,14 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
|
||||||
page_not_found: "Seite nicht gefunden"
|
page_not_found: "Seite nicht gefunden"
|
||||||
|
|
||||||
nav:
|
nav:
|
||||||
sign_up: "Anmelden"
|
sign_up: "Registrieren"
|
||||||
log_in: "Einloggen"
|
log_in: "Einloggen"
|
||||||
log_out: "Ausloggen"
|
log_out: "Ausloggen"
|
||||||
play: "Start"
|
play: "Spielen"
|
||||||
editor: "Editor"
|
editor: "Editor"
|
||||||
blog: "Blog"
|
blog: "Blog"
|
||||||
forum: "Forum"
|
forum: "Forum"
|
||||||
admin: "Admin"
|
admin: "Administration"
|
||||||
home: "Home"
|
home: "Home"
|
||||||
contribute: "Helfen"
|
contribute: "Helfen"
|
||||||
legal: "Rechtliches"
|
legal: "Rechtliches"
|
||||||
|
@ -48,14 +48,14 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
|
||||||
log_in: "mit Passwort einloggen"
|
log_in: "mit Passwort einloggen"
|
||||||
|
|
||||||
home:
|
home:
|
||||||
slogan: "Lern spielend JavaScript"
|
slogan: "Lerne spielend JavaScript"
|
||||||
no_ie: "CodeCombat läuft nicht im Internet Explorer 9 oder älteren Browsern. Tut uns Leid!"
|
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."
|
no_mobile: "CodeCombat ist nicht für Mobilgeräte optimiert und funktioniert möglicherweise nicht."
|
||||||
play: "Play"
|
play: "Spielen"
|
||||||
|
|
||||||
play:
|
play:
|
||||||
choose_your_level: "Wähle Deinen Level"
|
choose_your_level: "Wähle Deinen Level"
|
||||||
adventurer_prefix: "Du kannst zu jedem Level springen, oder die Levels diskutieren "
|
adventurer_prefix: "Du kannst zu jedem Level springen oder diskutiere die Level "
|
||||||
adventurer_forum: "im Abenteurerforum"
|
adventurer_forum: "im Abenteurerforum"
|
||||||
adventurer_suffix: "."
|
adventurer_suffix: "."
|
||||||
campaign_beginner: "Anfängerkampagne"
|
campaign_beginner: "Anfängerkampagne"
|
||||||
|
@ -77,7 +77,7 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
|
||||||
forum_prefix: "Für alle öffentlichen Themen, benutze "
|
forum_prefix: "Für alle öffentlichen Themen, benutze "
|
||||||
forum_page: "unser Forum"
|
forum_page: "unser Forum"
|
||||||
forum_suffix: " stattdessen."
|
forum_suffix: " stattdessen."
|
||||||
sending: "Senden..."
|
sending: "Sende..."
|
||||||
send: "Sende Feedback"
|
send: "Sende Feedback"
|
||||||
|
|
||||||
diplomat_suggestion:
|
diplomat_suggestion:
|
||||||
|
@ -113,7 +113,7 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
|
||||||
contribute_suffix: " an um mehr zu erfahren."
|
contribute_suffix: " an um mehr zu erfahren."
|
||||||
email_toggle: "Alles wählen"
|
email_toggle: "Alles wählen"
|
||||||
language: "Sprache"
|
language: "Sprache"
|
||||||
saving: "Saving..."
|
saving: "Speichere..."
|
||||||
error_saving: "Fehler beim Speichern"
|
error_saving: "Fehler beim Speichern"
|
||||||
saved: "Änderungen gespeichert"
|
saved: "Änderungen gespeichert"
|
||||||
password_mismatch: "Passwörter stimmen nicht überein."
|
password_mismatch: "Passwörter stimmen nicht überein."
|
||||||
|
@ -139,14 +139,14 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
|
||||||
grid: "Raster"
|
grid: "Raster"
|
||||||
customize_wizard: "Bearbeite den Zauberer"
|
customize_wizard: "Bearbeite den Zauberer"
|
||||||
home: "Home"
|
home: "Home"
|
||||||
guide: "Führung"
|
guide: "Hilfe"
|
||||||
multiplayer: "Multiplayer"
|
multiplayer: "Multiplayer"
|
||||||
restart: "Neustart"
|
restart: "Neustart"
|
||||||
goals: "Ziele"
|
goals: "Ziele"
|
||||||
action_timeline: "Aktionszeitstrahl"
|
action_timeline: "Aktionszeitstrahl"
|
||||||
click_to_select: "Klicke auf eine Einheit, um sie auszuwählen."
|
click_to_select: "Klicke auf eine Einheit, um sie auszuwählen."
|
||||||
reload_title: "Gesamten Code neu laden?"
|
reload_title: "Gesamten Code neu laden?"
|
||||||
reload_really: "Bist Du sicher, dass Du das Level zum Neuanfang neu laden willst?"
|
reload_really: "Bist Du sicher, dass Du das Level neu beginnen willst?"
|
||||||
reload_confirm: "Alles neu laden"
|
reload_confirm: "Alles neu laden"
|
||||||
victory_title_prefix: ""
|
victory_title_prefix: ""
|
||||||
victory_title_suffix: " Abgeschlossen"
|
victory_title_suffix: " Abgeschlossen"
|
||||||
|
@ -163,7 +163,7 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
|
||||||
multiplayer_hint_label: "Hinweis:"
|
multiplayer_hint_label: "Hinweis:"
|
||||||
multiplayer_hint: " Klick den Link um alles auszuwählen, dann drück ⌘-C oder Strg-C um den Link zu kopieren."
|
multiplayer_hint: " Klick den Link um alles auszuwählen, dann drück ⌘-C oder Strg-C um den Link zu kopieren."
|
||||||
multiplayer_coming_soon: "Mehr Multiplayerfeatures werden kommen!"
|
multiplayer_coming_soon: "Mehr Multiplayerfeatures werden kommen!"
|
||||||
guide_title: "Führung"
|
guide_title: "Anleitung"
|
||||||
tome_minion_spells: "Die Zaubersprüche Deiner Knechte"
|
tome_minion_spells: "Die Zaubersprüche Deiner Knechte"
|
||||||
tome_read_only_spells: "Nur-lesen Zauberspüche"
|
tome_read_only_spells: "Nur-lesen Zauberspüche"
|
||||||
tome_other_units: "Andere Einheiten"
|
tome_other_units: "Andere Einheiten"
|
||||||
|
@ -178,4 +178,4 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
|
||||||
tome_select_spell: "Wähle einen Zauber"
|
tome_select_spell: "Wähle einen Zauber"
|
||||||
tome_select_a_thang: "Wähle jemanden aus um "
|
tome_select_a_thang: "Wähle jemanden aus um "
|
||||||
tome_available_spells: "Verfügbare Zauber"
|
tome_available_spells: "Verfügbare Zauber"
|
||||||
hud_continue: "Weiter (drücke Shift+Space)"
|
hud_continue: "Weiter (drücke Enter)"
|
||||||
|
|
|
@ -105,23 +105,23 @@ describe 'Camera (Surface point of view)', ->
|
||||||
|
|
||||||
it 'works at 0 degrees', ->
|
it 'works at 0 degrees', ->
|
||||||
cam = new Camera 100, 100, 100 * Camera.MPP, 100 * Camera.MPP, testLayer, 1, null, 0
|
cam = new Camera 100, 100, 100 * Camera.MPP, 100 * Camera.MPP, testLayer, 1, null, 0
|
||||||
expect(cam.x2y).toBeGreaterThan 9001
|
expect(cam.x2z).toBeGreaterThan 9001
|
||||||
expect(cam.x2z).toBeCloseTo 1
|
expect(cam.x2y).toBeCloseTo 1
|
||||||
expect(cam.z2y).toBeGreaterThan 9001
|
expect(cam.z2y).toBeCloseTo 0
|
||||||
|
|
||||||
it 'works at 45 degrees', ->
|
it 'works at 45 degrees', ->
|
||||||
cam = new Camera 100, 100, 100 * Camera.MPP, 100 * Camera.MPP, testLayer, 1, null, Math.PI / 4
|
cam = new Camera 100, 100, 100 * Camera.MPP, 100 * Camera.MPP, testLayer, 1, null, Math.PI / 4
|
||||||
expect(cam.x2y).toBeCloseTo Math.sqrt(2)
|
expect(cam.x2y).toBeCloseTo 1
|
||||||
expect(cam.x2z).toBeCloseTo Math.sqrt(2)
|
expect(cam.x2z).toBeGreaterThan 9001
|
||||||
expect(cam.z2y).toBeCloseTo 1
|
expect(cam.z2y).toBeCloseTo 0
|
||||||
|
|
||||||
it 'works at default angle of asin(0.75) ~= 48.9 degrees', ->
|
it 'works at default angle of asin(0.75) ~= 48.9 degrees', ->
|
||||||
cam = new Camera 100, 100, 100 * Camera.MPP, 100 * Camera.MPP, testLayer, 1
|
cam = new Camera 100, 100, 100 * Camera.MPP, 100 * Camera.MPP, testLayer, 1
|
||||||
angle = Math.asin 3 / 4
|
angle = 1 / Math.cos angle
|
||||||
expect(cam.angle).toBeCloseTo angle
|
expect(cam.angle).toBeCloseTo angle
|
||||||
expect(cam.x2y).toBeCloseTo 4 / 3
|
expect(cam.x2y).toBeCloseTo 1
|
||||||
expect(cam.x2z).toBeCloseTo 1 / Math.cos angle
|
expect(cam.x2z).toBeGreaterThan 9001
|
||||||
expect(cam.z2y).toBeCloseTo (4 / 3) * Math.cos angle
|
expect(cam.z2y).toBeCloseTo 0
|
||||||
|
|
||||||
it 'works at 2x zoom, 90 degrees', ->
|
it 'works at 2x zoom, 90 degrees', ->
|
||||||
cam = new Camera 100, 100, 100 * Camera.MPP, 100 * Camera.MPP, testLayer, 2, null, Math.PI / 2
|
cam = new Camera 100, 100, 100 * Camera.MPP, 100 * Camera.MPP, testLayer, 2, null, Math.PI / 2
|
||||||
|
@ -145,8 +145,8 @@ describe 'Camera (Surface point of view)', ->
|
||||||
|
|
||||||
it 'works at 2x zoom, 30 degrees', ->
|
it 'works at 2x zoom, 30 degrees', ->
|
||||||
cam = new Camera 100, 100, 100 * Camera.MPP, 2 * 100 * Camera.MPP, testLayer, 2, null, Math.PI / 6
|
cam = new Camera 100, 100, 100 * Camera.MPP, 2 * 100 * Camera.MPP, testLayer, 2, null, Math.PI / 6
|
||||||
expect(cam.x2y).toBeCloseTo 2
|
expect(cam.x2y).toBeCloseTo 1
|
||||||
expect(cam.x2z).toBeCloseTo 1 / Math.cos(Math.PI / 6)
|
expect(cam.x2z).toBeGreaterThan 9001
|
||||||
checkCameraPos cam
|
checkCameraPos cam
|
||||||
wop = x: 5, y: 4, z: 6 * cam.y2z # like x: 5, y: 10 out of world width: 10, height: 20
|
wop = x: 5, y: 4, z: 6 * cam.y2z # like x: 5, y: 10 out of world width: 10, height: 20
|
||||||
sup = cam.worldToSurface wop
|
sup = cam.worldToSurface wop
|
||||||
|
|
Loading…
Reference in a new issue