Merge remote-tracking branch 'upstream/master' into eventcheck-regexp

This commit is contained in:
Paul Buser 2014-01-13 16:59:36 -05:00
commit f6ada477ef
2 changed files with 26 additions and 26 deletions

View file

@ -1,6 +1,6 @@
module.exports = nativeDescription: "Deutsch", englishDescription: "German", translation:
common:
loading: "Laden..."
loading: "Lade..."
modal:
close: "Schliessen"
@ -10,14 +10,14 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
page_not_found: "Seite nicht gefunden"
nav:
sign_up: "Anmelden"
sign_up: "Registrieren"
log_in: "Einloggen"
log_out: "Ausloggen"
play: "Start"
play: "Spielen"
editor: "Editor"
blog: "Blog"
forum: "Forum"
admin: "Admin"
admin: "Administration"
home: "Home"
contribute: "Helfen"
legal: "Rechtliches"
@ -48,14 +48,14 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
log_in: "mit Passwort einloggen"
home:
slogan: "Lern spielend JavaScript"
no_ie: "CodeCombat läuft nicht im Internet Explorer 9 oder älteren Browsern. Tut uns Leid!"
slogan: "Lerne spielend JavaScript"
no_ie: "CodeCombat läuft nicht im IE8 oder älteren Browsern. Tut uns Leid!"
no_mobile: "CodeCombat ist nicht für Mobilgeräte optimiert und funktioniert möglicherweise nicht."
play: "Play"
play: "Spielen"
play:
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_suffix: "."
campaign_beginner: "Anfängerkampagne"
@ -77,7 +77,7 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
forum_prefix: "Für alle öffentlichen Themen, benutze "
forum_page: "unser Forum"
forum_suffix: " stattdessen."
sending: "Senden..."
sending: "Sende..."
send: "Sende Feedback"
diplomat_suggestion:
@ -113,7 +113,7 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
contribute_suffix: " an um mehr zu erfahren."
email_toggle: "Alles wählen"
language: "Sprache"
saving: "Saving..."
saving: "Speichere..."
error_saving: "Fehler beim Speichern"
saved: "Änderungen gespeichert"
password_mismatch: "Passwörter stimmen nicht überein."
@ -139,14 +139,14 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
grid: "Raster"
customize_wizard: "Bearbeite den Zauberer"
home: "Home"
guide: "Führung"
guide: "Hilfe"
multiplayer: "Multiplayer"
restart: "Neustart"
goals: "Ziele"
action_timeline: "Aktionszeitstrahl"
click_to_select: "Klicke auf eine Einheit, um sie auszuwählen."
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"
victory_title_prefix: ""
victory_title_suffix: " Abgeschlossen"
@ -163,7 +163,7 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
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_coming_soon: "Mehr Multiplayerfeatures werden kommen!"
guide_title: "Führung"
guide_title: "Anleitung"
tome_minion_spells: "Die Zaubersprüche Deiner Knechte"
tome_read_only_spells: "Nur-lesen Zauberspüche"
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_a_thang: "Wähle jemanden aus um "
tome_available_spells: "Verfügbare Zauber"
hud_continue: "Weiter (drücke Shift+Space)"
hud_continue: "Weiter (drücke Enter)"

View file

@ -105,23 +105,23 @@ describe 'Camera (Surface point of view)', ->
it 'works at 0 degrees', ->
cam = new Camera 100, 100, 100 * Camera.MPP, 100 * Camera.MPP, testLayer, 1, null, 0
expect(cam.x2y).toBeGreaterThan 9001
expect(cam.x2z).toBeCloseTo 1
expect(cam.z2y).toBeGreaterThan 9001
expect(cam.x2z).toBeGreaterThan 9001
expect(cam.x2y).toBeCloseTo 1
expect(cam.z2y).toBeCloseTo 0
it 'works at 45 degrees', ->
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.x2z).toBeCloseTo Math.sqrt(2)
expect(cam.z2y).toBeCloseTo 1
expect(cam.x2y).toBeCloseTo 1
expect(cam.x2z).toBeGreaterThan 9001
expect(cam.z2y).toBeCloseTo 0
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
angle = Math.asin 3 / 4
angle = 1 / Math.cos angle
expect(cam.angle).toBeCloseTo angle
expect(cam.x2y).toBeCloseTo 4 / 3
expect(cam.x2z).toBeCloseTo 1 / Math.cos angle
expect(cam.z2y).toBeCloseTo (4 / 3) * Math.cos angle
expect(cam.x2y).toBeCloseTo 1
expect(cam.x2z).toBeGreaterThan 9001
expect(cam.z2y).toBeCloseTo 0
it 'works at 2x zoom, 90 degrees', ->
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', ->
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.x2z).toBeCloseTo 1 / Math.cos(Math.PI / 6)
expect(cam.x2y).toBeCloseTo 1
expect(cam.x2z).toBeGreaterThan 9001
checkCameraPos cam
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