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: 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)"

View file

@ -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