mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2024-11-24 08:08:15 -05:00
Merge branch 'master' into production
This commit is contained in:
commit
14b03b572d
20 changed files with 376 additions and 258 deletions
Binary file not shown.
Before Width: | Height: | Size: 171 KiB After Width: | Height: | Size: 215 KiB |
|
@ -43,7 +43,7 @@ var console = {
|
|||
var args = [].slice.call(arguments);
|
||||
for(var i = 0; i < args.length; ++i) {
|
||||
if(args[i] && args[i].constructor) {
|
||||
if(args[i].constructor.className === "Thang" || args[i].isComponent)
|
||||
if(args[i].constructor.className === "Thang" || args[i].isComponent || args[i].isVector || args[i].isRectangle || args[i].isEllipse)
|
||||
args[i] = args[i].toString();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -50,7 +50,12 @@ module.exports.loginUser = (userObject, failure=genericFailure, nextURL=null) ->
|
|||
|
||||
module.exports.logoutUser = ->
|
||||
FB?.logout?()
|
||||
res = $.post('/auth/logout', {}, -> window.location.reload())
|
||||
callback = ->
|
||||
if (window.location.href.indexOf("/account/settings") > -1)
|
||||
window.location = '/'
|
||||
else
|
||||
window.location.reload()
|
||||
res = $.post('/auth/logout', {}, callback)
|
||||
res.fail(genericFailure)
|
||||
|
||||
onSetVolume = (e) ->
|
||||
|
|
|
@ -543,8 +543,10 @@
|
|||
violent_2: "If you are comfortable having your students play Angry Birds, you will be comfortable with CodeCombat."
|
||||
for_girls_title: "Is it for girls?"
|
||||
for_girls_1: "There are three game modes in CodeCombat: building, puzzles, and combat. We have intentionally designed each to appeal to both boys and girls and think that the building and puzzle levels especially differentiate the game from violent triple A titles that repel female players."
|
||||
age_recommended_title: "What age is it recommended at?"
|
||||
age_recommended_1: "The recommended minimum age is 9, however children as young as 7 can play the first stages with the assistance of an adult."
|
||||
what_cover_title: "What do we cover?"
|
||||
what_cover_1: "There are 20 levels in the Hour of Code tutorial that teach and reinforce 6 specific computer science concepts:"
|
||||
what_cover_1: "There are 27 levels in the first stage of CodeCombat that teach and reinforce 6 specific computer science concepts:"
|
||||
what_cover_notation_1: "Formal notation"
|
||||
what_cover_notation_2: "- builds an understanding of the importance of syntax in programming."
|
||||
what_cover_methods_1: "Calling methods"
|
||||
|
@ -562,10 +564,12 @@
|
|||
what_cover_logic_2: "- when and how to use if/else to control in-game outcomes."
|
||||
what_cover_input_1: "Handling player input"
|
||||
what_cover_input_2: "- responding to input events to create a user interface."
|
||||
what_cover_array_1: "Arrays"
|
||||
what_cover_array_2: "- allows the player to create and loop through arrays."
|
||||
sys_requirements_title: "System Requirements"
|
||||
sys_requirements_1: "Because CodeCombat is a game, it is more intensive for computers to run smoothly than video or written tutorials. We have optimized it to run quickly on all modern browsers and on older machines so that everyone can play. That said, here are our suggestions for getting the most out of your Hour of Code experience:"
|
||||
sys_requirements_1: "Because CodeCombat is a game, it is more intensive for computers to run smoothly than video or written tutorials. We have optimized it to run quickly on all modern browsers and on older machines so that everyone can play. That said, here are our suggestions for getting the most out of the CodeCombat experience:"
|
||||
sys_requirements_2: "Use newer versions of Chrome or Firefox."
|
||||
sys_requirements_3: "Although CodeCombat will work on browsers as old as IE9, the performance is not as good. Chrome is best."
|
||||
sys_requirements_3: "Although CodeCombat will work on browsers as old as Internet Explorer 9, the performance is not as good. Chrome is best."
|
||||
sys_requirements_4: "Use newer computers."
|
||||
sys_requirements_5: "Older computers, Chromebooks, and netbooks tend to have very few system resources, which makes for a less enjoyable experience. At least 2GB of RAM is required."
|
||||
sys_requirements_6: "Allow players to wear headphones/earbuds to hear the audio."
|
||||
|
@ -604,13 +608,17 @@
|
|||
autosave: "Changes Save Automatically"
|
||||
me_tab: "Me"
|
||||
picture_tab: "Picture"
|
||||
delete_account_tab: "Delete Your Account"
|
||||
wrong_email: "Wrong Email"
|
||||
upload_picture: "Upload a picture"
|
||||
delete_this_account: "Delete this account permanently"
|
||||
god_mode: "God Mode"
|
||||
password_tab: "Password"
|
||||
emails_tab: "Emails"
|
||||
admin: "Admin"
|
||||
new_password: "New Password"
|
||||
new_password_verify: "Verify"
|
||||
type_in_email: "Type in your email to confirm the deletion"
|
||||
email_subscriptions: "Email Subscriptions"
|
||||
email_subscriptions_none: "No Email Subscriptions."
|
||||
email_announcements: "Announcements"
|
||||
|
|
|
@ -42,7 +42,7 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
|
||||
diplomat_suggestion:
|
||||
title: "עזור לתרגם את CodeCombat!" # This shows up when a player switches to a non-English language using the language selector.
|
||||
sub_heading: "!אנחנו צריכים את כישוקי השפה שלך"
|
||||
sub_heading: "אנחנו צריכים את כישורי השפה שלך!"
|
||||
pitch_body: "פיתחנו את המשחק באנגלית, אבל יש הרבה שחקנים מכול העולם. חלק מהם רוצים לשחק בעברית והם לא מבינים אנגלית. אם אתה דובר את שני השפות, עברית ואנגלית, אז בבקשה עזור לנו לתרגם לעברית את האתר ואת השלבים."
|
||||
missing_translations: "עד שנתרגם הכול לעברית, מה שלא תורגם יופיע באנגלית."
|
||||
learn_more: "תלמד עות על תרומת דיפלומטיה"
|
||||
|
@ -309,17 +309,17 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
tip_all_species: ".אנחנו מאמינים בשוויון הזדמנויות לכל היצורים בלמידת תכנות" #translated "species" as "Creatures" because the official translations is translated into "Genders"
|
||||
# tip_reticulating: "Reticulating spines."
|
||||
tip_harry: " ,תה' מכשף"
|
||||
# tip_great_responsibility: "With great coding skill comes great debug responsibility."
|
||||
# tip_munchkin: "If you don't eat your vegetables, a munchkin will come after you while you're asleep."
|
||||
# tip_binary: "There are only 10 types of people in the world: those who understand binary, and those who don't."
|
||||
tip_great_responsibility: "עם כישרון גדול בתכנות באה גם אחריות דיבאגינג גדולה."
|
||||
tip_munchkin: "אם לא תאכל את הירקות, מאצ'קין יבוא אליך בלילה כשאתה ישן."
|
||||
tip_binary: "יש רק 10 אנשים בעולם: כאלה שמבינים בינארית וכאלה שלא."
|
||||
# tip_commitment_yoda: "A programmer must have the deepest commitment, the most serious mind. ~ Yoda"
|
||||
# tip_no_try: "Do. Or do not. There is no try. - Yoda"
|
||||
# tip_patience: "Patience you must have, young Padawan. - Yoda"
|
||||
tip_no_try: "תעשה. או אל תעשה. אין לנסות - יודה"
|
||||
tip_patience: "עליך להיות סבלני, פאדאוואן צעיר - יודה"
|
||||
# tip_documented_bug: "A documented bug is not a bug; it is a feature."
|
||||
# tip_impossible: "It always seems impossible until it's done. - Nelson Mandela"
|
||||
# tip_talk_is_cheap: "Talk is cheap. Show me the code. - Linus Torvalds"
|
||||
tip_impossible: "זה תמיד נראה בלתי אפשרי עד שזה נעשה. - נלסון מנדלה"
|
||||
tip_talk_is_cheap: "דיבור זה זול. תראה לי את הקוד - לינוס טורבאלדס"
|
||||
# tip_first_language: "The most disastrous thing that you can ever learn is your first programming language. - Alan Kay"
|
||||
# tip_hardware_problem: "Q: How many programmers does it take to change a light bulb? A: None, it's a hardware problem."
|
||||
tip_hardware_problem: "ש: כמה מתכנתים צריך כדי להחליף נורה? ת: אפס, זו בכלל בעיה בחומרה."
|
||||
# tip_hofstadters_law: "Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law."
|
||||
# tip_premature_optimization: "Premature optimization is the root of all evil. - Donald Knuth"
|
||||
# tip_brute_force: "When in doubt, use brute force. - Ken Thompson"
|
||||
|
@ -327,13 +327,13 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
tip_superpower: ".תכנות זה הדבר הקרוב ביותר שיש לנו לכוחות על"
|
||||
# tip_control_destiny: "In real open source, you have the right to control your own destiny. - Linus Torvalds"
|
||||
# tip_no_code: "No code is faster than no code."
|
||||
# tip_code_never_lies: "Code never lies, comments sometimes do. — Ron Jeffries"
|
||||
tip_code_never_lies: "קוד אף פעם לא משקר, הערות לפעמים כן. - רון ג'פריס"
|
||||
# tip_reusable_software: "Before software can be reusable it first has to be usable."
|
||||
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is ‘//’"
|
||||
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
|
||||
# tip_source_code: "I want to change the world but they would not give me the source code."
|
||||
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
|
||||
# tip_move_forward: "Whatever you do, keep moving forward. - Martin Luther King Jr."
|
||||
tip_move_forward: "מה שלא תעשה, תמשיך להתקדם - מרטין לותר קינג ג'וניור"
|
||||
tip_google: "!יש בעיה שאתה לא מצליח לפתור? תגגל אותה"
|
||||
tip_adding_evil: ".מוסיף קמצוץ של רשע"
|
||||
# tip_miss_lunch: "Anyone who has lost track of time when using a computer knows the propensity to dream, the urge to make dreams come true and the tendency to miss lunch. - Tim Berners-Lee"
|
||||
|
@ -423,14 +423,14 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
parent_email_send: "שלח מייל"
|
||||
parent_email_sent: "מייל נשלח"
|
||||
parent_email_title: "?מהו המייל של הוריך"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
parents: "להורים"
|
||||
parents_title: "ילדכם ילמד לתכנת."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
stripe_description: "מנוי חודשי"
|
||||
subscription_required_to_play: "יש צורך במנוי כדי לשחק בשלב זה."
|
||||
unlock_help_videos: "רכוש מנוי כדי לפתוח את כל הדרכות הוידאו."
|
||||
|
||||
choose_hero:
|
||||
choose_hero: "בחר גיבור"
|
||||
|
@ -497,41 +497,41 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
editor_config_default_language_label: "ברירת מחדל" #Translated as "default" and not as "default programming language" I found i better for this case
|
||||
editor_config_default_language_description: ".בחר רת שפת התכנות בה תרצה להשתמש בהתחלת שלבים חדשים"
|
||||
editor_config_keybindings_label: "(תצורה(קונפיגורציה"
|
||||
# editor_config_keybindings_default: "Default (Ace)"
|
||||
editor_config_keybindings_default: "(Ace) ברירת מחדל"
|
||||
# editor_config_keybindings_description: "Adds additional shortcuts known from the common editors."
|
||||
# editor_config_livecompletion_label: "Live Autocompletion"
|
||||
# editor_config_livecompletion_description: "Displays autocomplete suggestions while typing."
|
||||
# editor_config_invisibles_label: "Show Invisibles"
|
||||
# editor_config_invisibles_description: "Displays invisibles such as spaces or tabs."
|
||||
editor_config_invisibles_label: "הצג בלתי נראים"
|
||||
editor_config_invisibles_description: "הצג בלתי נראים כמו רווחים וטאבים."
|
||||
# editor_config_indentguides_label: "Show Indent Guides"
|
||||
# editor_config_indentguides_description: "Displays vertical lines to see indentation better."
|
||||
# editor_config_behaviors_label: "Smart Behaviors"
|
||||
editor_config_behaviors_label: "התנהגוץ חכמה" #Converted from plural to singular
|
||||
# editor_config_behaviors_description: "Autocompletes brackets, braces, and quotes."
|
||||
|
||||
about:
|
||||
why_codecombat: "?CodeCombat למה"
|
||||
why_paragraph_1: "If you want to learn to program, you don't need lessons. You need to write a lot of code and have a great time doing it."
|
||||
# why_paragraph_2_prefix: "That's what programming is about. It's gotta be fun. Not fun like"
|
||||
# why_paragraph_2_italic: "yay a badge"
|
||||
# why_paragraph_2_center: "but fun like"
|
||||
# why_paragraph_2_italic_caps: "NO MOM I HAVE TO FINISH THE LEVEL!"
|
||||
why_paragraph_1: "אם אתה רוצה ללמוד לתכנת, אתה לא צריך שיעורים. אתה רק צריך לכתוב המון קוד ושתהנה בזה."
|
||||
why_paragraph_2_prefix: "על זה מדבר תכנות. זה יהיה כיף. לא כיף כמו"
|
||||
why_paragraph_2_italic: "יאי מדליה"
|
||||
why_paragraph_2_center: "אלא כיף כמו"
|
||||
why_paragraph_2_italic_caps: "לא אמא אני צריך לסיים את השלב!"
|
||||
# why_paragraph_2_suffix: "That's why CodeCombat is a multiplayer game, not a gamified lesson course. We won't stop until you can't stop--but this time, that's a good thing."
|
||||
# why_paragraph_3: "If you're going to get addicted to some game, get addicted to this one and become one of the wizards of the tech age."
|
||||
# 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"
|
||||
team: "צוות"
|
||||
george_title: "מנכ\"ל"
|
||||
george_blurb: "ביזנסר"
|
||||
scott_title: "מתכנת"
|
||||
scott_blurb: "אחד סביר"
|
||||
nick_title: "מתכנת"
|
||||
nick_blurb: "גורו מוטיבציה"
|
||||
michael_title: "מתכנת"
|
||||
michael_blurb: "מנהל מערכת"
|
||||
matt_title: "מתכנת"
|
||||
matt_blurb: "רוכב אופניים"
|
||||
|
||||
# teachers:
|
||||
# title: "CodeCombat for Teachers"
|
||||
|
@ -664,7 +664,7 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
introduction: "!תבדוק את הדרכים שאנחנו מציעים לך להיות מעורב ותבחא את הדרך שנראית לך הכי כיפית. אנחנו מצפים לעבוד איתך"
|
||||
level_editor_prefix: "CodeCombat תשתמש ב"
|
||||
# level_editor_suffix: "to create and edit levels. Users have created levels for their classes, friends, hackathons, students, and siblings. If create a new level sounds intimidating you can start by forking one of ours!"
|
||||
# thang_editor_prefix: "We call units within the game 'thangs'. Use the"
|
||||
thang_editor_prefix: "אנחנו קוראים ליחידות בתוך המשחק ,ת\"ת'אנגס\" השתמש ב " #'Thangs' as 'ת'אנגס' equivelent pronounciation as "thang" isn't a real world
|
||||
# thang_editor_suffix: "to modify the CodeCombat source artwork. Allow units to throw projectiles, alter the direction of an animation, change a unit's hit points, or upload your own vector sprites."
|
||||
# article_editor_prefix: "See a mistake in some of our docs? Want to make some instructions for your own creations? Check out the"
|
||||
# article_editor_suffix: "and help CodeCombat players get the most out of their playtime."
|
||||
|
@ -700,7 +700,7 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
editor:
|
||||
main_title: "CodeCombat עורך"
|
||||
article_title: "עורך כותרות"
|
||||
# thang_title: "Thang Editor"
|
||||
thang_title: "עורך ת'אנג"
|
||||
level_title: "עורך שלבים"
|
||||
achievement_title: "עורך הישגים"
|
||||
back: "חזרה"
|
||||
|
@ -713,8 +713,8 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
grassy: "עשבי"
|
||||
small: "קטן"
|
||||
large: "רחב"
|
||||
# fork_title: "Fork New Version"
|
||||
# fork_creating: "Creating Fork..."
|
||||
fork_title: "פצל גירסה חדשה"
|
||||
fork_creating: "יוצר פיצול..."
|
||||
generate_terrain: "צור שטח"
|
||||
more: "עוד"
|
||||
wiki: "ויקי"
|
||||
|
@ -723,19 +723,19 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
# thang_spritesheets: "Spritesheets"
|
||||
thang_colors: "צבעים"
|
||||
level_some_options: "?קצת אפשרויות" #also uncertain about this one
|
||||
# level_tab_thangs: "Thangs"
|
||||
level_tab_thangs: "ת'אנגס"
|
||||
level_tab_scripts: "תסריטים"
|
||||
level_tab_settings: "הגדרות"
|
||||
level_tab_components: "מרכיבים" #Components
|
||||
level_tab_systems: "מערכות"
|
||||
level_tab_docs: "דוקומנטציה"
|
||||
# level_tab_thangs_title: "Current Thangs"
|
||||
level_tab_thangs_title: "ת'אנגס נוכחיים"
|
||||
level_tab_thangs_all: "הכל"
|
||||
level_tab_thangs_conditions: "תנאים התחלתיים"
|
||||
# level_tab_thangs_add: "Add Thangs"
|
||||
level_tab_thangs_add: "הוסף ת'אנגס"
|
||||
add_components: "הוסף מרכיבים"
|
||||
component_configs: "קבע תצורת מרכיבים"
|
||||
# config_thang: "Double click to configure a thang"
|
||||
config_thang: "לחץ פעמיים כדי לשנות ת'אנג"
|
||||
delete: "מחק"
|
||||
duplicate: "שכפל"
|
||||
stop_duplicate: "עצור שכפןל"
|
||||
|
@ -746,7 +746,7 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
level_systems_tab_title: "מערכת נוכחית"
|
||||
level_systems_btn_new: "צור מערכת חדשה"
|
||||
level_systems_btn_add: "הוסף מערכת"
|
||||
# level_components_title: "Back to All Thangs"
|
||||
level_components_title: "בחזרה לכל ה ת'אנגס"
|
||||
level_components_type: "סוג"
|
||||
level_component_edit_title: "ערוך מרכיב"
|
||||
# level_component_config_schema: "Config Schema"
|
||||
|
@ -756,15 +756,15 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
new_component_title: "צור מרכיב חדש"
|
||||
new_component_field_system: "מערכת"
|
||||
new_article_title: "צור כותרת חדשה"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
new_thang_title: "צור סוג ת'אנג חדש"
|
||||
new_level_title: "צור שלב חדש"
|
||||
new_article_title_login: "התחבר כדי ליצור כותרת חדשה"
|
||||
# new_thang_title_login: "Log In to Create a New Thang Type"
|
||||
new_thang_title_login: "היכנס כדי ליצור סוג ת'אנג חדש"
|
||||
new_level_title_login: "התחבר כדי ליצור שלב חדש"
|
||||
new_achievement_title: "צור הישג חדש"
|
||||
new_achievement_title_login: "התחבר כדי ליצור הישג חדש"
|
||||
article_search_title: "חפש כותרות כאן"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
thang_search_title: "חפש סוגי ת'אנגס"
|
||||
level_search_title: "חפש שלבים כאן"
|
||||
achievement_search_title: "חפש הישגים"
|
||||
read_only_warning2: ".הערה: אין באפשרותך לשמור את העריכות שבוצעו כאן, אתה לא מחובר למערכת"
|
||||
|
@ -847,59 +847,59 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
# translating_diplomats: "Our Translating Diplomats:"
|
||||
# helpful_ambassadors: "Our Helpful Ambassadors:"
|
||||
|
||||
# ladder:
|
||||
# please_login: "Please log in first before playing a ladder game."
|
||||
# my_matches: "My Matches"
|
||||
# simulate: "Simulate"
|
||||
# simulation_explanation: "By simulating games you can get your game ranked faster!"
|
||||
# simulate_games: "Simulate Games!"
|
||||
# simulate_all: "RESET AND SIMULATE GAMES"
|
||||
# games_simulated_by: "Games simulated by you:"
|
||||
# games_simulated_for: "Games simulated for you:"
|
||||
# games_simulated: "Games simulated"
|
||||
# games_played: "Games played"
|
||||
# ratio: "Ratio"
|
||||
# leaderboard: "Leaderboard"
|
||||
# battle_as: "Battle as "
|
||||
# summary_your: "Your "
|
||||
# summary_matches: "Matches - "
|
||||
# summary_wins: " Wins, "
|
||||
# summary_losses: " Losses"
|
||||
# rank_no_code: "No New Code to Rank"
|
||||
# rank_my_game: "Rank My Game!"
|
||||
# rank_submitting: "Submitting..."
|
||||
# rank_submitted: "Submitted for Ranking"
|
||||
# rank_failed: "Failed to Rank"
|
||||
# rank_being_ranked: "Game Being Ranked"
|
||||
# rank_last_submitted: "submitted "
|
||||
ladder:
|
||||
please_login: "התחבר בבקשה לפני שתשחק במשחק סולם."
|
||||
my_matches: "המשחקים שלי"
|
||||
simulate: "הדמה" #Simulate
|
||||
simulation_explanation: "באמצעות הדמית משחקים אתה יכול לגרום לשלב שלך להיות מדורג להר יותר!"
|
||||
simulate_games: "הדמה משחקים"
|
||||
simulate_all: "אתחל והדמה משחקים"
|
||||
games_simulated_by: "משחקים שהדמית:"
|
||||
games_simulated_for: "משחקים שהודמו בשבילך:"
|
||||
games_simulated: "משחקים שהודמו"
|
||||
games_played: "מס' משחקים ששיחקת"
|
||||
ratio: "יחס"
|
||||
leaderboard: "שיאים"
|
||||
battle_as: "הילחם כ "
|
||||
summary_your: "נתונים "
|
||||
summary_matches: "משחקים - "
|
||||
summary_wins: " ניצחונות, "
|
||||
summary_losses: " הפסדים"
|
||||
rank_no_code: "אין קוד חדש לדירוג"
|
||||
rank_my_game: "דרג את המשחק שלי!"
|
||||
rank_submitting: "שולח..."
|
||||
rank_submitted: "נשלח לדירוג"
|
||||
rank_failed: "נכשל לדרג"
|
||||
rank_being_ranked: "משחק בדירוג"
|
||||
rank_last_submitted: "נשלח "
|
||||
# help_simulate: "Help simulate games?"
|
||||
# code_being_simulated: "Your new code is being simulated by other players for ranking. This will refresh as new matches come in."
|
||||
# no_ranked_matches_pre: "No ranked matches for the "
|
||||
# no_ranked_matches_post: " team! Play against some competitors and then come back here to get your game ranked."
|
||||
# choose_opponent: "Choose an Opponent"
|
||||
# select_your_language: "Select your language!"
|
||||
# tutorial_play: "Play Tutorial"
|
||||
# tutorial_recommended: "Recommended if you've never played before"
|
||||
# tutorial_skip: "Skip Tutorial"
|
||||
choose_opponent: "בחר יריב"
|
||||
select_your_language: "בחר שפה!"
|
||||
tutorial_play: "הדרכה"
|
||||
tutorial_recommended: "מומלץ אם לא שיחקת לפני"
|
||||
tutorial_skip: "דלג על ההדרכה"
|
||||
# tutorial_not_sure: "Not sure what's going on?"
|
||||
# tutorial_play_first: "Play the Tutorial first."
|
||||
# simple_ai: "Simple AI"
|
||||
# warmup: "Warmup"
|
||||
# friends_playing: "Friends Playing"
|
||||
# log_in_for_friends: "Log in to play with your friends!"
|
||||
simple_ai: "בינה מלאכותית פשוטה"
|
||||
warmup: "חימום"
|
||||
friends_playing: "חברים משחקים"
|
||||
log_in_for_friends: "היכנס כדי לשחק עם חברים"
|
||||
# social_connect_blurb: "Connect and play against your friends!"
|
||||
# invite_friends_to_battle: "Invite your friends to join you in battle!"
|
||||
# fight: "Fight!"
|
||||
# watch_victory: "Watch your victory"
|
||||
# defeat_the: "Defeat the"
|
||||
# tournament_ends: "Tournament ends"
|
||||
# tournament_ended: "Tournament ended"
|
||||
# tournament_rules: "Tournament Rules"
|
||||
fight: "הלחם!"
|
||||
watch_victory: "צפה בניצחון שלך"
|
||||
defeat_the: "הבס את ה"
|
||||
tournament_ends: "תחרות נגמרת בעוד:"
|
||||
tournament_ended: "תחרות נגמרה"
|
||||
tournament_rules: "חוקי תחרות"
|
||||
# tournament_blurb: "Write code, collect gold, build armies, crush foes, win prizes, and upgrade your career in our $40,000 Greed tournament! Check out the details"
|
||||
# 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_blog: "on our blog"
|
||||
# rules: "Rules"
|
||||
# winners: "Winners"
|
||||
rules: "חוקים"
|
||||
winners: "מנצחים"
|
||||
|
||||
user:
|
||||
stats: "נתונים"
|
||||
|
@ -936,7 +936,7 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
|
||||
account:
|
||||
recently_played: "שוחק לאחרונה"
|
||||
# no_recent_games: "No games played during the past two weeks."
|
||||
no_recent_games: "לא שיחקת במשחקים בשבועיים האחרונים."
|
||||
payments: "תשלומים"
|
||||
purchased: "קניות"
|
||||
subscription: "מנויים"
|
||||
|
|
|
@ -32,20 +32,20 @@ module.exports = nativeDescription: "मानक हिन्दी", englishDe
|
|||
twitter_follow: "साथ दें"
|
||||
teachers: "शिक्षक"
|
||||
|
||||
# modal:
|
||||
# close: "Close"
|
||||
# okay: "Okay"
|
||||
modal:
|
||||
close: "बंद करें"
|
||||
okay: "ठीक है"
|
||||
|
||||
# not_found:
|
||||
# page_not_found: "Page not found"
|
||||
not_found:
|
||||
page_not_found: "पेज नहीं मिला"
|
||||
|
||||
diplomat_suggestion:
|
||||
# title: "Help translate CodeCombat!" # This shows up when a player switches to a non-English language using the language selector.
|
||||
# sub_heading: "We need your language skills."
|
||||
pitch_body: "We develop CodeCombat in English, but we already have players all over the world. Many of them want to play in Hindi but don't speak English, so if you can speak both, please consider signing up to be a Diplomat and help translate both the CodeCombat website and all the levels into Hindi."
|
||||
missing_translations: "Until we can translate everything into Hindi, you'll see English when Hindi isn't available."
|
||||
# learn_more: "Learn more about being a Diplomat"
|
||||
# subscribe_as_diplomat: "Subscribe as a Diplomat"
|
||||
title: "CodeCombat अनुवाद में मदद करें!" # This shows up when a player switches to a non-English language using the language selector.
|
||||
sub_heading: "हमें आपके भाषा कौशल की जरूरत है|"
|
||||
pitch_body: "हम CodeCombat को अंग्रेजी में डेवेलोप करते हैं परन्तु हमारे पास दुनिया भर से लोग CodeCombat खेलते हैं| उनमें से कई हिंदी में खेलना चाहते हैं लेकिन नहीं खेल पातें है, इसलिए अगर आप दोनों भाषाओँ को जानते हैं, कृपया राजनयिक बन कर हमारी मदद करें|"
|
||||
missing_translations: "जब तक हम हिंदी में सब कुछ अनुवाद ना कर सकें आपको अंग्रेजी में ही खेलना पड़ेगा|"
|
||||
learn_more: "एक राजनयिक होने के बारे में और अधिक जानें"
|
||||
subscribe_as_diplomat: "एक राजनयिक के रूप में सदस्यता लें"
|
||||
|
||||
# play:
|
||||
# play_as: "Play As" # Ladder page
|
||||
|
|
|
@ -20,8 +20,8 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
blog: "블로그"
|
||||
forum: "포럼"
|
||||
account: "계정"
|
||||
# profile: "Profile"
|
||||
# stats: "Stats"
|
||||
profile: "프로필"
|
||||
stats: "스탯"
|
||||
code: "코드"
|
||||
admin: "관리자" # Only shows up when you are an admin
|
||||
home: "홈"
|
||||
|
@ -51,10 +51,10 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
play_as: "Play As " # Ladder page
|
||||
spectate: "관중모드" # Ladder page
|
||||
# players: "players" # Hover over a level on /play
|
||||
# hours_played: "hours played" # Hover over a level on /play
|
||||
hours_played: "플레이한 시간" # Hover over a level on /play
|
||||
items: "아이템" # Tooltip on item shop button from /play
|
||||
# unlock: "Unlock" # For purchasing items and heroes
|
||||
# confirm: "Confirm"
|
||||
confirm: "확인"
|
||||
# owned: "Owned" # For items you own
|
||||
# locked: "Locked"
|
||||
# purchasable: "Purchasable" # For a hero you unlocked but haven't purchased
|
||||
|
@ -75,7 +75,7 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
campaign_beginner: "초보자 캠페인"
|
||||
# awaiting_levels_adventurer_prefix: "We release five levels per week."
|
||||
# awaiting_levels_adventurer: "Sign up as an Adventurer"
|
||||
# awaiting_levels_adventurer_suffix: "to be the first to play new levels."
|
||||
awaiting_levels_adventurer_suffix: "새로운 레벨을 가장 먼저 체험하세요!"
|
||||
# adjust_volume: "Adjust volume"
|
||||
choose_your_level: "레벨을 선택하세요." # The rest of this section is the old play view at /play-old and isn't very important.
|
||||
adventurer_prefix: "아래에 있는 아무 레벨이나 바로 시작하실 수 있습니다. 또는 포럼에서 레벨에 관해 토론하세요 :"
|
||||
|
@ -107,7 +107,7 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
log_in: "로그인"
|
||||
logging_in: "로그인 중"
|
||||
log_out: "로그아웃"
|
||||
# forgot_password: "Forgot your password?"
|
||||
forgot_password: "비밀번호를 잊으셨나요?"
|
||||
# authenticate_gplus: "Authenticate G+"
|
||||
# load_profile: "Load G+ Profile"
|
||||
# finishing: "Finishing"
|
||||
|
@ -122,12 +122,12 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
log_in: "비밀번호로 로그인"
|
||||
social_signup: "또는 페이스북이나 구글 플러스로 계정을 만들 수 있습니다."
|
||||
required: "진행하기 전에 로그인이 필요합니다."
|
||||
# login_switch: "Already have an account?"
|
||||
login_switch: "이미 계정이 있으신가요?"
|
||||
|
||||
recover:
|
||||
recover_account_title: "계정 복구"
|
||||
send_password: "복구 비밀번호 전송"
|
||||
# recovery_sent: "Recovery email sent."
|
||||
recovery_sent: "메일 전송 완료"
|
||||
|
||||
items:
|
||||
# primary: "Primary"
|
||||
|
@ -154,7 +154,7 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
retry: "재시도"
|
||||
# actions: "Actions"
|
||||
# info: "Info"
|
||||
# help: "Help"
|
||||
help: "도움말"
|
||||
watch: "보기"
|
||||
unwatch: "보기 해제"
|
||||
submit_patch: "패치 제출"
|
||||
|
@ -228,8 +228,8 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
done: "완료"
|
||||
home: "홈" # Not used any more, will be removed soon.
|
||||
# level: "Level" # Like "Level: Dungeons of Kithgard"
|
||||
# skip: "Skip"
|
||||
# game_menu: "Game Menu"
|
||||
skip: "Skip"
|
||||
game_menu: "게임 메뉴"
|
||||
guide: "가이드"
|
||||
restart: "재시작"
|
||||
goals: "목표"
|
||||
|
@ -254,13 +254,13 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
victory_sign_up_poke: "코드를 저장하고 싶으세요? 지금 등록하세요!"
|
||||
victory_rate_the_level: "이번 레벨 평가: " # Only in old-style levels.
|
||||
victory_return_to_ladder: "레더로 돌아가기"
|
||||
# victory_play_continue: "Continue"
|
||||
victory_play_continue: "계속하기"
|
||||
# victory_saving_progress: "Saving Progress"
|
||||
victory_go_home: "홈으로" # Only in old-style levels.
|
||||
victory_review: "리뷰를 남겨주세요" # Only in old-style levels.
|
||||
victory_hour_of_code_done: "정말 종료합니까?"
|
||||
victory_hour_of_code_done_yes: "네 내 Hour of Code™ 완료했습니다!"
|
||||
# victory_experience_gained: "XP Gained"
|
||||
victory_experience_gained: "획득한 경험치"
|
||||
# victory_gems_gained: "Gems Gained"
|
||||
guide_title: "가이드"
|
||||
tome_minion_spells: "미니언의 마법" # Only in old-style levels.
|
||||
|
@ -311,7 +311,7 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
# tip_munchkin: "If you don't eat your vegetables, a munchkin will come after you while you're asleep."
|
||||
# tip_binary: "There are only 10 types of people in the world: those who understand binary, and those who don't."
|
||||
# tip_commitment_yoda: "A programmer must have the deepest commitment, the most serious mind. ~ Yoda"
|
||||
# tip_no_try: "Do. Or do not. There is no try. - Yoda"
|
||||
tip_no_try: "하든가 하지 말든가. 시도같은 건 없어. - 요다"
|
||||
# tip_patience: "Patience you must have, young Padawan. - Yoda"
|
||||
# tip_documented_bug: "A documented bug is not a bug; it is a feature."
|
||||
tip_impossible: "성공하기 전까진 불가능해 보이는 법이죠. - Nelson Mandela"
|
||||
|
@ -325,23 +325,23 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
# tip_superpower: "Coding is the closest thing we have to a superpower."
|
||||
# tip_control_destiny: "In real open source, you have the right to control your own destiny. - Linus Torvalds"
|
||||
# tip_no_code: "No code is faster than no code."
|
||||
# tip_code_never_lies: "Code never lies, comments sometimes do. — Ron Jeffries"
|
||||
tip_code_never_lies: "코드는 절대로 거짓말을 하지 않는다. 주석은 가끔 하지만. — Ron Jeffries"
|
||||
# tip_reusable_software: "Before software can be reusable it first has to be usable."
|
||||
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is ‘//’"
|
||||
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
|
||||
# tip_source_code: "I want to change the world but they would not give me the source code."
|
||||
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
|
||||
# tip_move_forward: "Whatever you do, keep moving forward. - Martin Luther King Jr."
|
||||
# tip_google: "Have a problem you can't solve? Google it!"
|
||||
tip_google: "문제가 너무 어렵다구요? 구글로 검색해보세요!"
|
||||
# tip_adding_evil: "Adding a pinch of evil."
|
||||
# tip_hate_computers: "That's the thing about people who think they hate computers. What they really hate is lousy programmers. - Larry Niven"
|
||||
|
||||
game_menu:
|
||||
# inventory_tab: "Inventory"
|
||||
# save_load_tab: "Save/Load"
|
||||
# options_tab: "Options"
|
||||
# guide_tab: "Guide"
|
||||
# guide_video_tutorial: "Video Tutorial"
|
||||
inventory_tab: "인벤토리"
|
||||
save_load_tab: "저장하기/불러오기"
|
||||
options_tab: "옵션"
|
||||
guide_tab: "가이드"
|
||||
guide_video_tutorial: "영상 튜토리얼"
|
||||
# guide_tips: "Tips"
|
||||
multiplayer_tab: "멀티 플레이"
|
||||
# auth_tab: "Sign Up"
|
||||
|
@ -367,11 +367,11 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
# difficulty: "Difficulty"
|
||||
# gold_collected: "Gold Collected"
|
||||
|
||||
# inventory:
|
||||
# choose_inventory: "Equip Items"
|
||||
# equipped_item: "Equipped"
|
||||
inventory:
|
||||
choose_inventory: "아이템 장착하기"
|
||||
equipped_item: "장착됨"
|
||||
# required_purchase_title: "Required"
|
||||
# available_item: "Available"
|
||||
available_item: "사용 가능"
|
||||
# restricted_title: "Restricted"
|
||||
# should_equip: "(double-click to equip)"
|
||||
# equipped: "(equipped)"
|
||||
|
@ -483,9 +483,9 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
|
||||
options:
|
||||
# general_options: "General Options" # Check out the Options tab in the Game Menu while playing a level
|
||||
# volume_label: "Volume"
|
||||
volume_label: "볼륨"
|
||||
music_label: "음악"
|
||||
# music_description: "Turn background music on/off."
|
||||
music_description: "배경음악 ON/OFF"
|
||||
# autorun_label: "Autorun"
|
||||
# autorun_description: "Control automatic code execution."
|
||||
editor_config: "에디터 설정"
|
||||
|
@ -612,14 +612,14 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
new_password: "새 비밀번호"
|
||||
new_password_verify: "확인(다시한번 입력해주세요)"
|
||||
email_subscriptions: "이메일 구독"
|
||||
# email_subscriptions_none: "No Email Subscriptions."
|
||||
email_subscriptions_none: "이메일 구독 안 함"
|
||||
email_announcements: "공지사항"
|
||||
email_announcements_description: "코드 컴뱃의 개발 및 진행 상황을 이메일로 구독하세요"
|
||||
email_notifications: "알람"
|
||||
email_notifications_summary: "당신의 코드 컴뱃 활동과 관련된 자동 알림 메일을 설정할 수 있습니다."
|
||||
email_any_notes: "모든 알림 받기"
|
||||
email_any_notes_description: "모든 알림 메일 받지 않기"
|
||||
# email_news: "News"
|
||||
email_news: "뉴스"
|
||||
email_recruit_notes: "구인 정보"
|
||||
email_recruit_notes_description: "정말 실력이 좋으시다고 판단되면, 보다 좋은 구직 정보와 관련하여 연락드릴 수도 있습니다."
|
||||
contributor_emails: "조력자들 이메일"
|
||||
|
@ -642,7 +642,7 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
space: "스페이스"
|
||||
enter: "엔터"
|
||||
escape: "Esc"
|
||||
# shift: "Shift"
|
||||
shift: "Shift"
|
||||
# run_code: "Run current code."
|
||||
# run_real_time: "Run in real time."
|
||||
# continue_script: "Continue past current script."
|
||||
|
@ -710,7 +710,7 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
desert: "사막"
|
||||
grassy: "풀로 덮인"
|
||||
small: "작게"
|
||||
# large: "Large"
|
||||
large: "크게"
|
||||
fork_title: "새 버전 가져오기"
|
||||
fork_creating: "포크 생성중..."
|
||||
# generate_terrain: "Generate Terrain"
|
||||
|
|
|
@ -442,7 +442,7 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription:
|
|||
lua_blurb: "Linguagem para scripts de jogos."
|
||||
io_blurb: "Simples mas obscuro."
|
||||
status: "Estado"
|
||||
# hero_type: "Type"
|
||||
hero_type: "Tipo"
|
||||
weapons: "Armas"
|
||||
weapons_warrior: "Espadas - Curto Alcance, Sem Magia"
|
||||
weapons_ranger: "Arcos, Armas - Longo Alcance, Sem Magia"
|
||||
|
@ -835,7 +835,7 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription:
|
|||
# ambassador_attribute_1: "Communication skills. Be able to identify the problems players are having and help them solve them. Also, keep the rest of us informed about what players are saying, what they like and don't like and want more of!"
|
||||
# ambassador_join_desc: "tell us a little about yourself, what you've done and what you'd be interested in doing. We'll go from there!"
|
||||
ambassador_join_note_strong: "Nota"
|
||||
# ambassador_join_note_desc: "One of our top priorities is to build multiplayer where players having difficulty solving levels can summon higher level wizards to help them. This will be a great way for ambassadors to do their thing. We'll keep you posted!"
|
||||
ambassador_join_note_desc: "Uma das nossas maiores prioridades é construir níveis multijogador onde os jogadores com dificuldade a passar níveis podem invocar feiticeiros mais experientes para serem ajudados. Esta será uma ótima forma para os embixadores fazerem o que sabem. Vamos manter-te atualizado!"
|
||||
ambassador_subscribe_desc: "Receber e-mails relativos a novidades do suporte e desenvolvimentos do modo multijogador."
|
||||
changes_auto_save: "As alterações são guardadas automaticamente quando clicas nas caixas."
|
||||
diligent_scribes: "Os Nossos Dedicados Escrivões:"
|
||||
|
|
|
@ -2,16 +2,16 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
home:
|
||||
slogan: "通过游戏学习编程"
|
||||
no_ie: "抱歉! Internet Explorer 8 等旧式预览器无法使用本网站。" # Warning that only shows up in IE8 and older
|
||||
no_mobile: "CodeCombat 不是针对手机设备设计的,所以可能无法达到最好的体验!" # Warning that shows up on mobile devices
|
||||
no_mobile: "CodeCombat不是针对手机设备设计的,所以可能无法达到最好的体验!" # Warning that shows up on mobile devices
|
||||
play: "开始游戏" # The big play button that opens up the campaign view.
|
||||
old_browser: "噢, 你的浏览器太老了, 不能运行CodeCombat. 抱歉!" # Warning that shows up on really old Firefox/Chrome/Safari
|
||||
old_browser_suffix: "你可以继续重试下去,但八成不起作用,更新浏览器吧亲~"
|
||||
ipad_browser: "坏消息: CodeCombat 无法在iPad的浏览器中运行。好消息:我们的iPad应用正在等待苹果公司审批。"
|
||||
ipad_browser: "坏消息:CodeCombat无法在iPad的浏览器中运行。好消息:我们的iPad应用正在等待苹果公司审批。"
|
||||
campaign: "战役模式"
|
||||
for_beginners: "适合初学者"
|
||||
multiplayer: "多人游戏" # Not currently shown on home page
|
||||
for_developers: "适合开发者" # Not currently shown on home page.
|
||||
or_ipad: "或者下载iPad版本"
|
||||
for_developers: "适合开发者" # Not currently shown on home page
|
||||
or_ipad: "或下载入iPad"
|
||||
|
||||
nav:
|
||||
play: "关卡选择" # The top nav bar entry where players choose which levels to play
|
||||
|
@ -40,9 +40,9 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
page_not_found: "找不到网页"
|
||||
|
||||
diplomat_suggestion:
|
||||
title: "帮助我们翻译CodeCombat" # This shows up when a player switches to a non-English language using the language selector.
|
||||
title: "帮助我们翻译CodeCombat" # This shows up when a player switches to a non-English language using the language selector
|
||||
sub_heading: "我们需要您的语言技能"
|
||||
pitch_body: "我们开发了英文版的CodeCombat,但是CodeCombat的玩家遍布全球。对于不熟悉英语的中文玩家,他们希望能玩简体中文版的CodeCombat,如果你中英文都很熟练,考虑加入我们“外交官”行列并参与CodeCombat的翻译,帮忙把CodeCombat 网站和所有关卡翻译成简体中文。感谢!"
|
||||
pitch_body: "我们开发了英文版的CodeCombat,但是CodeCombat的玩家遍布全球。对于不熟悉英语的中文玩家,他们希望能玩简体中文版的CodeCombat,如果你中英文都很熟练,考虑加入我们“外交官”行列并参与CodeCombat的翻译,帮忙把CodeCombat网站和所有关卡翻译成简体中文。感谢!"
|
||||
missing_translations: "没被翻译的文字将以英文显示。"
|
||||
learn_more: "了解更多成为翻译人员的说明"
|
||||
subscribe_as_diplomat: "提交翻译人员申请"
|
||||
|
@ -88,16 +88,16 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
campaign_multiplayer: "多人竞技场"
|
||||
campaign_multiplayer_description: "……在这里你可以与其他玩家进行代码肉搏战。"
|
||||
campaign_player_created: "创建玩家"
|
||||
campaign_player_created_description: "……在这里你可以与你的小伙伴的创造力战斗 <a href=\"/contribute#artisan\">技术指导</a>."
|
||||
campaign_player_created_description: "……在这里你可以与你的小伙伴的创造力战斗 <a href=\"/contribute#artisan\">技术指导</a>。"
|
||||
campaign_classic_algorithms: "经典算法"
|
||||
campaign_classic_algorithms_description: "... 你可以在此学习到计算机科学中最常用的算法"
|
||||
|
||||
share_progress_modal:
|
||||
blurb: "你的进度真快!快告诉其他人你从CodeCombat学到了什么!"
|
||||
email_invalid: "电邮地址不可用。"
|
||||
form_blurb: "输入他们的电邮地址,我们会让他们知道CodeCombat的有趣"
|
||||
form_label: "电邮地址"
|
||||
placeholder: "电邮地址"
|
||||
email_invalid: "邮件地址不可用。"
|
||||
form_blurb: "输入他们的邮件地址,我们会让他们知道CodeCombat的有趣"
|
||||
form_label: "邮件地址"
|
||||
placeholder: "邮件地址"
|
||||
title: "你做的太好了!"
|
||||
tell_friend: "告诉你的好朋友们"
|
||||
tell_parent: "告诉你亲爱的家人"
|
||||
|
@ -127,7 +127,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
recover:
|
||||
recover_account_title: "找回账户"
|
||||
send_password: "发送重置链接"
|
||||
recovery_sent: "找回账户邮件已发送."
|
||||
recovery_sent: "找回账户邮件已发送。"
|
||||
|
||||
items:
|
||||
primary: "右手"
|
||||
|
@ -272,7 +272,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
tome_submit_button: "提交"
|
||||
tome_reload_method: "重载该方法的原始代码" # Title text for individual method reload button.
|
||||
tome_select_method: "选择方法"
|
||||
tome_see_all_methods: "查看所有能够编辑的方法" # Title text for method list selector (shown when there are multiple programmable methdos).
|
||||
tome_see_all_methods: "查看所有能够编辑的方法" # Title text for method list selector (shown when there are multiple programmable methdos)。
|
||||
tome_select_a_thang: "选择人物来 "
|
||||
tome_available_spells: "可用的法术"
|
||||
tome_your_skills: "你的技能"
|
||||
|
@ -293,29 +293,29 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
infinite_loop_reset_level: "重置等级"
|
||||
infinite_loop_comment_out: "为我的代码添加注释"
|
||||
tip_toggle_play: "用 Ctrl+P 来暂停或继续"
|
||||
tip_scrub_shortcut: "用 Ctrl+[ 和 Ctrl+] 来倒退和快进."
|
||||
tip_guide_exists: "点击页面上方的指南, 可以获得更多有用信息."
|
||||
tip_open_source: "CodeCombat 是 100% 开源的!"
|
||||
tip_beta_launch: "CodeCombat 开始于 2013的10月份."
|
||||
tip_think_solution: "思考解决方法, 而不是问题."
|
||||
tip_theory_practice: "在理论研究中,理论和实践之间是没有区别的。但在实践中,它们是有区别的。 - Yogi Berra"
|
||||
tip_error_free: "有两种方式可以写出没有错误的程序;但是只有第三种方式能让程序达到预期的效果。 - Alan Perlis"
|
||||
tip_debugging_program: "如果说调试是清除Bug的过程,那么编码就是放置Bug的过程。- Edsger W. Dijkstra"
|
||||
tip_forums: "到论坛去告诉我们你的想法!"
|
||||
tip_baby_coders: "在未来,就算小孩都能成为大法师."
|
||||
tip_morale_improves: "在士气提升之前会一直进行读取."
|
||||
tip_all_species: "我们相信学习编程的机会对任何种族都是平等的。"
|
||||
tip_scrub_shortcut: "用 Ctrl+[ 和 Ctrl+] 来倒退和快进。"
|
||||
tip_guide_exists: "点击页面上方的指南, 可以获得更多有用信息。"
|
||||
tip_open_source: "CodeCombat是100%开源的!"
|
||||
tip_beta_launch: "CodeCombat开始于2013的10月份。"
|
||||
tip_think_solution: "思考如何解决, 而不是思考问题。"
|
||||
tip_theory_practice: "在理论上,理论和实践之间是没有区别的。但在实践上,它们是有区别的。 - Yogi Berra"
|
||||
tip_error_free: "有两种方式可以写出没有错误的程序;但是只有第三种方式是有效的。 - Alan Perlis"
|
||||
tip_debugging_program: "如果说调试是清除错误的过程,那么编程就是放置错误的过程。- Edsger W. Dijkstra"
|
||||
tip_forums: "到论坛去告诉我们你的想法!"
|
||||
tip_baby_coders: "在未来,就算小孩都能成为大法师。"
|
||||
tip_morale_improves: "在士气提升之前会一直进行读取。"
|
||||
tip_all_species: "我们相信每一个人都有同等的机会学习编程"
|
||||
tip_reticulating: "网格状锯齿。(指Maxis开发的许多游戏,如《模拟城市》、《孢子》中,加载进程中跑动时出现的卡顿现象)"
|
||||
tip_harry: "巫师, "
|
||||
tip_great_responsibility: "更高的编程技巧也意味着更大的调试责任。"
|
||||
tip_great_responsibility: "更强的编程技巧也意味着有更高的责任来进行调试。"
|
||||
tip_munchkin: "如果你不吃掉你的蔬菜, 一个小矮人将在你睡着之后来找你。"
|
||||
tip_binary: "这个世界上只有 10 种人: 那些懂二进制的, 还有那些不懂二进制的."
|
||||
tip_binary: "这个世界上只有10种人: 那些懂二进制的, 还有那些不懂二进制的。"
|
||||
tip_commitment_yoda: "一个程序员必须有高度的责任感和一颗认真的心。 - 尤达大师"
|
||||
tip_no_try: "做. 或是不做. 这世上不存在'尝试'这种东西. - 尤达大师"
|
||||
tip_no_try: "做。 或是不做。 这世上不存在'尝试'这种东西。 - 尤达大师"
|
||||
tip_patience: "你必须要有耐心,年轻的学徒 - 尤达大师"
|
||||
tip_documented_bug: "一个写在文档里的漏洞不算漏洞, 那是个功能."
|
||||
tip_impossible: "在事情未完成之前,一切都看似不可能. - 纳尔逊·曼德拉"
|
||||
tip_talk_is_cheap: "多说无用, 亮出你的代码. - Linus Torvalds"
|
||||
tip_documented_bug: "一个写在文档里的漏洞不算漏洞, 那是个特色。"
|
||||
tip_impossible: "在事情未完成之前,一切都看似不可能。 - 纳尔逊·曼德拉"
|
||||
tip_talk_is_cheap: "多说无用, 亮出你的代码。 - Linus Torvalds"
|
||||
tip_first_language: "你所经历过最可怕的事情是你的第一门编程语言。 - Alan Kay"
|
||||
tip_hardware_problem: "问:换一个电灯泡需要几位程序员参与?答:一个都不需要,因为这属于硬件问题。"
|
||||
tip_hofstadters_law: "侯世达定律:做事所花费的时间总是比你预期的要长,即使你的预期中考虑了侯世达定律。"
|
||||
|
@ -325,13 +325,13 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
tip_superpower: "编程是我们拥有的最接近超能力的技能"
|
||||
tip_control_destiny: "拥有控制自己命运的权利才是真正的开源。 - Linus Torvalds"
|
||||
tip_no_code: "没有什么比不写代码来的更快。"
|
||||
tip_code_never_lies: "代码从来不会说谎,但是注释有时候会. — Ron Jeffries"
|
||||
tip_code_never_lies: "代码从来不会说谎,但是注释有时候会。 — Ron Jeffries"
|
||||
tip_reusable_software: "软件能够重用的前提是,这货必须能用。"
|
||||
tip_optimization_operator: "每个编程语言都有注释符号,大多数语言采用的是‘//’"
|
||||
tip_lines_of_code: "以代码行数为标准管理程序开发的进度跟用重量为标准管理飞船建造的进度一样愚蠢. — Bill Gates"
|
||||
tip_lines_of_code: "以代码行数为标准管理程序开发的进度跟用重量为标准管理飞船建造的进度一样愚蠢。 — Bill Gates"
|
||||
tip_source_code: "我想改变世界,但是他们不给我源代码。"
|
||||
tip_javascript_java: "Java和JavaScript的关系就好比是马和马云. - Chris Heilmann"
|
||||
tip_move_forward: "不管你做什么,前进就对了. - Martin Luther King Jr."
|
||||
tip_javascript_java: "Java和JavaScript的关系就好比是马和马云。 - Chris Heilmann"
|
||||
tip_move_forward: "不管你做什么,前进就对了。 - Martin Luther King Jr."
|
||||
tip_google: "有问题又不能解决?谷歌搜下就行了!"
|
||||
tip_adding_evil: "加入万恶的压力。"
|
||||
tip_hate_computers: "那些认为他们讨厌电脑的人,其实他们讨厌的是垃圾程序编写员。- Larry Niven"
|
||||
|
@ -400,7 +400,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
feature3: "30+ 奖励关卡"
|
||||
feature4: "每月享有3500额外宝石"
|
||||
feature5: "视频教学"
|
||||
feature6: "专业电邮支援"
|
||||
feature6: "专业邮件支援"
|
||||
free: "免费"
|
||||
month: "月"
|
||||
subscribe_title: "订阅"
|
||||
|
@ -408,18 +408,18 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
confirm_unsubscribe: "确认取消订阅"
|
||||
never_mind: "没关系,我们依然喜欢你"
|
||||
thank_you_months_prefix: "感谢您这"
|
||||
thank_you_months_suffix: "个月以来对我们的支持."
|
||||
thank_you_months_suffix: "个月以来对我们的支持。"
|
||||
thank_you: "感谢您支持CodeCombat."
|
||||
sorry_to_see_you_go: "真舍不得亲离开啊! 请一定要让我们知道哪里做的还不够好。"
|
||||
unsubscribe_feedback_placeholder: "噢, 我们做了神马?"
|
||||
parent_button: "请求你的父母"
|
||||
parent_email_description: "我们会发送电邮给你的父母让他们帮你订阅CodeCombat。"
|
||||
parent_email_input_invalid: "电邮地址不正确。"
|
||||
parent_email_input_label: "父母电邮地址"
|
||||
parent_email_input_placeholder: "输入父母电邮地址"
|
||||
parent_email_description: "我们会发送邮件给你的父母让他们帮你订阅CodeCombat。"
|
||||
parent_email_input_invalid: "邮件地址不正确。"
|
||||
parent_email_input_label: "父母邮件地址"
|
||||
parent_email_input_placeholder: "输入父母邮件地址"
|
||||
parent_email_send: "发送邮件"
|
||||
parent_email_sent: "邮件已发送!"
|
||||
parent_email_title: "什么是你父母的电邮地址?"
|
||||
parent_email_title: "什么是你父母的邮件地址?"
|
||||
parents: "致家长"
|
||||
parents_title: "您的孩子将要学习编写程序。"
|
||||
parents_blurb1: "通过使用CodeCombat,您的孩子将学习编写真正的程序代码。他们将学到简单指令,进而处理更复杂的问题。"
|
||||
|
@ -437,12 +437,12 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
experimental: "实验性的"
|
||||
python_blurb: "简单而强大, Python是一个伟大的通用编程语言。"
|
||||
javascript_blurb: "为web开发而生的语言。"
|
||||
coffeescript_blurb: "一种更好的JavaScript语法."
|
||||
coffeescript_blurb: "一种更好的JavaScript语法。"
|
||||
clojure_blurb: "一种现代的列表处理语言。"
|
||||
lua_blurb: "一种游戏脚本语言。"
|
||||
io_blurb: "简单而晦涩。"
|
||||
status: "状态"
|
||||
# hero_type: "Type"
|
||||
hero_type: "种类"
|
||||
weapons: "武器"
|
||||
weapons_warrior: "刀剑 - 近程物理攻击"
|
||||
weapons_ranger: "弓弩,火枪 - 远程物理攻击"
|
||||
|
@ -507,18 +507,18 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
editor_config_behaviors_description: "自动匹配括号、大括号和引号。"
|
||||
|
||||
about:
|
||||
why_codecombat: "为什么选择 CodeCombat?"
|
||||
why_codecombat: "为什么选择CodeCombat?"
|
||||
why_paragraph_1: "如果你想学习如何编程,你根本不需要上课。你需要的是写好多代码,并且享受这个过程。"
|
||||
why_paragraph_2_prefix: "这才是编程的要义。编程应该是有趣的过程。不该是"
|
||||
why_paragraph_2_italic: "哇又一个奖章诶"
|
||||
why_paragraph_2_center: "那种“好玩”,而是"
|
||||
why_paragraph_2_italic_caps: "老妈,我得先把这关打完!"
|
||||
why_paragraph_2_suffix: "这就是为什么 CodeCombat 是个多人游戏,而不是一个游戏化的编程课。你不停,我们就不停——但这次这是件好事。"
|
||||
why_paragraph_2_suffix: "这就是为什么CodeCombat是个多人游戏,而不是一个游戏化的编程课。你不停,我们就不停——但这次这是件好事。"
|
||||
why_paragraph_3: "如果你一定要对游戏上瘾,那就对这个游戏上瘾,然后成为科技时代的法师吧。"
|
||||
press_title: "博客/媒体"
|
||||
press_paragraph_1_prefix: "想要报道我们? 您可以自由下载和使用"
|
||||
press_paragraph_1_link: "成套宣传包"
|
||||
press_paragraph_1_suffix: "里的所有材料. 所有商标和图像的使用都不必事先联系我们。"
|
||||
press_paragraph_1_suffix: "里的所有材料。 所有商标和图像的使用都不必事先联系我们。"
|
||||
team: "团队"
|
||||
george_title: "CEO"
|
||||
george_blurb: "商人"
|
||||
|
@ -556,7 +556,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
what_cover_loops_1: "循环"
|
||||
what_cover_loops_2: "- 建立如何使用循环设计初一个简短的程序的思维。"
|
||||
what_cover_variables_1: "变数"
|
||||
what_cover_variables_2: "- 提升使用随时间变化的代数的技能"
|
||||
what_cover_variables_2: "- 提升使用随时间变化的代数的技能。"
|
||||
what_cover_2: "学生可以持续破超过20关,关键在他们的速度和兴趣在于学习另外两种额外概念在之后的关卡:"
|
||||
what_cover_logic_1: "情况逻辑"
|
||||
what_cover_logic_2: "- 如何使用”if/else“来控制游戏结果?"
|
||||
|
@ -596,7 +596,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
where_reply: "我们应该回复谁?"
|
||||
send: "反馈意见"
|
||||
contact_candidate: "联系参选人" # Deprecated
|
||||
recruitment_reminder: "用这张表格来联系你希望面试的求职者。但请记住如果成功雇佣,CodeCombat会收取与这位员工第一年工资的15%等值的佣金。佣金需在雇佣此员工时就付清并且在之后的90天内如果此员工离职则可退款。兼职,远程办公员工,合同工以及实习生都可免除此费用。" # Deprecated
|
||||
recruitment_reminder: "用这张表格来联系你希望面试的求职者。但请记住如果你雇佣了他,CodeCombat会收取这位员工第一年工资的15%作为佣金。佣金需在雇佣此员工时就付清并且在之后的90天内如果此员工离职会100%退款。兼职,远程办公员工,合同工以及实习生都可免除此费用。" # Deprecated
|
||||
|
||||
account_settings:
|
||||
title: "账户设置"
|
||||
|
@ -632,8 +632,8 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
password_mismatch: "密码不匹配。"
|
||||
password_repeat: "请重新键入密码。"
|
||||
job_profile: "工作经历" # Rest of this section (the job profile stuff and wizard stuff) is deprecated
|
||||
job_profile_approved: "你填写的工作经历将由CodeCombat认证. 雇主将看到这些信息,除非你将它设置为不启用状态或者连续四周没有更新."
|
||||
job_profile_explanation: "你好! 请填写下列信息, 我们将使用它帮你寻找一份软件开发的工作."
|
||||
job_profile_approved: "你填写的工作经历将由CodeCombat认证。 雇主将看到这些信息,除非你将它设置为不启用状态或者连续四周没有更新。"
|
||||
job_profile_explanation: "你好! 请填写下列信息, 我们将使用它帮你寻找一份软件开发的工作。"
|
||||
sample_profile: "查看示例"
|
||||
view_profile: "浏览个人信息"
|
||||
|
||||
|
@ -672,7 +672,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
social_facebook: "关注CodeCombat的Facebook主页"
|
||||
social_twitter: "关注CodeCombat的Twitter"
|
||||
social_gplus: "关注CodeCombat的Google+主页"
|
||||
social_hipchat: "在公共的CodeCombat HipChat房间与我们交流"
|
||||
social_hipchat: "在公共的CodeCombat HipChat聊天室与我们进行交流"
|
||||
contribute_to_the_project: "为项目做贡献"
|
||||
|
||||
classes:
|
||||
|
@ -696,7 +696,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
ambassador_summary: "指导我们亲爱的论坛用户并为他们的问题引出一个正确的方向。我们的使节将CodeCombat带到这个世界上。"
|
||||
|
||||
editor:
|
||||
main_title: "CodeCombat 编辑器"
|
||||
main_title: "CodeCombat编辑器"
|
||||
article_title: "指令编辑器"
|
||||
thang_title: "物品编辑器"
|
||||
level_title: "关卡编辑器"
|
||||
|
@ -770,7 +770,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
achievement_query_misc: "关闭杂项的成就"
|
||||
achievement_query_goals: "关闭通关的成就"
|
||||
level_completion: "关卡完成"
|
||||
pop_i18n: "填写 I18N"
|
||||
pop_i18n: "完善 I18N"
|
||||
tasks: "任务"
|
||||
|
||||
article:
|
||||
|
@ -782,18 +782,18 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
intro_blurb: "CodeCombat是完全开源的软体!上千个玩家帮助了我们建设了这整个游戏,就是你今天看到的一样!快加入我们然后为CodeCombat打开新的章节,将世界带领进入编程世代前进吧!"
|
||||
alert_account_message_intro: "你好!"
|
||||
alert_account_message: "想要订阅邮件? 您必须先登录"
|
||||
archmage_introduction: "制作游戏时,最令人激动的事莫过于整合诸多东西。图像、音响、实时网络交流、社交网络,从底层数据库管理到服务器运维,再到用户界面的设计和实现。制作游戏有很多事情要做,所以如果你有编程经验, 那么你应该选择这个职业。我们会很高兴在制作史上最好编程游戏的路上有你的陪伴."
|
||||
archmage_introduction: "制作游戏时,最令人激动的事莫过于整合诸多东西。图像、音响、实时网络交流、社交网络,从底层数据库管理到服务器运维,再到用户界面的设计和实现。制作游戏有很多事情要做,所以如果你有编程经验, 那么你应该选择这个职业。我们会很高兴在制作史上最好编程游戏的路上有你的陪伴。"
|
||||
class_attributes: "职业说明"
|
||||
archmage_attribute_1_pref: "了解 "
|
||||
archmage_attribute_1_suf: ",或者想要学习。我们的多数代码都是用它写成的。如果你喜欢 Ruby 或者 Python,那你肯定会感到非常熟悉。它就是 JavaScript,但它的语法更友好。"
|
||||
archmage_attribute_2: "编程经验和干劲。我们可以帮你走上正轨,但我们恐怕没多少时间培训你。"
|
||||
how_to_join: "如何加入"
|
||||
join_desc_1: "谁都可以加入!先看看我们的"
|
||||
join_desc_2: ",然后勾选下面的复选框,这样你就会作为勇敢的大法师收到我们的电邮。如果你想和开发人员聊天或者更深入地参与,可以"
|
||||
join_desc_2: ",然后勾选下面的复选框,这样你就会作为勇敢的大法师收到我们的邮件。如果你想和开发人员聊天或者更深入地参与,可以"
|
||||
join_desc_3: " 或者去我们的"
|
||||
join_desc_4: ",然后我们有话好说!"
|
||||
join_url_email: "给我们发邮件"
|
||||
join_url_hipchat: " HipChat 聊天室"
|
||||
join_url_hipchat: " HipChat聊天室"
|
||||
archmage_subscribe_desc: "通过电子邮件获得新的编码机会和公告。"
|
||||
artisan_introduction_pref: "我们必须设计更多的关卡! 大家为了更多的游戏内容在高声呐喊,但是我们靠自己只能创建这些。现在你的电脑就是一关!我们的关卡编辑器刚刚完成了基本功能,所以创造关卡的时候请小心使用。只要你有制作关卡的灵感,不管是简单的for循环还是"
|
||||
artisan_introduction_suf: "这种东西,这个职业都很适合你。"
|
||||
|
@ -801,10 +801,10 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
artisan_attribute_2: "渴望完成全部的测试和迭代。要做一个优秀的关卡,你需要把它给别的玩家观察他们怎么玩,然后时刻准备着找到很多细节去打磨。"
|
||||
artisan_attribute_3: "探险家般的忍耐力。我们的关卡编辑器非常的初级,还会有很多不好用的地方。唔,我已经提前告诉你了~"
|
||||
artisan_join_desc: "如下步骤使用关卡编辑器:"
|
||||
artisan_join_step1: "阅读文档."
|
||||
artisan_join_step2: "创建一个新关卡 以及探索已经存在的关卡."
|
||||
artisan_join_step3: "来我们的 HipChat 聊天室寻求帮助."
|
||||
artisan_join_step4: "吧你的关卡发到论坛让别人给你评价."
|
||||
artisan_join_step1: "阅读文档。"
|
||||
artisan_join_step2: "创建一个新关卡 以及探索已经存在的关卡。"
|
||||
artisan_join_step3: "来我们的HipChat聊天室寻求帮助。"
|
||||
artisan_join_step4: "吧你的关卡发到论坛让别人给你评价。"
|
||||
artisan_subscribe_desc: "通过电子邮件获得关卡编辑器更新和公告。"
|
||||
adventurer_introduction: "现在就来了解你的角色吧:你是一辆战车,并将要承担沉重的攻击。我们需要人来尝试下我们新开的关卡以了解怎么样才能使每一样东西更美好。一开始虽然会非常辛苦;可是制造出一个最好的游戏是一个很长的过程,在这个过程中,没有人可以第一次就成功。如果你挺过去了并且自我感觉良好,那么这个位置就是为你而准备的。"
|
||||
adventurer_attribute_1: "学习的冲动!你想要学好怎么编程,与此同时我们也想要教你怎么编程。虽然你可能会觉得你大多数时间你反而都在教导。这,就是学习。"
|
||||
|
@ -814,25 +814,25 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
adventurer_join_suf: "如果你更喜欢以这些方式被通知, 那就在这里注册吧!"
|
||||
adventurer_subscribe_desc: "通过电子邮件获得新关卡通知。"
|
||||
scribe_introduction_pref: "CodeCombat不只是拥有一堆等级或关卡。它也是个知识的源泉,一个编程的宝典,一个人人都可以参与的,有趣的游戏。比起每个工匠都要详细解释其中的奥秘,他们可以以更简单的方式将自己的东西连接到一篇已经准备好的文章给玩家阅读。 有些东西就像 "
|
||||
scribe_introduction_url_mozilla: "Mozilla 开发者社区"
|
||||
scribe_introduction_url_mozilla: "Mozilla开发者社区"
|
||||
scribe_introduction_suf: " 被建成。如果你那有趣的想法能把编程的理论简易的带出来,那么这里就是你的所属了。"
|
||||
scribe_attribute_1: "在文字语言上的技能就是你所需要的,不仅仅是语法和拼音,重要的是能传达各种各样想法给别人。"
|
||||
scribe_attribute_1: "你需要具备在文字语言上的技能。不仅仅是语法和拼音,重要的是能传达各种各样想法给别人。"
|
||||
contact_us_url: "联系我们"
|
||||
scribe_join_description: "介绍一下你自己, 比如你的编程经历和你喜欢写什么东西, 我们将从这里开始了解你!!"
|
||||
scribe_join_description: "介绍下你自己, 比如你的编程经历和你喜欢的东西, 我们将会努力的去了解你!!"
|
||||
scribe_subscribe_desc: "通过电子邮件获得写作新文档的通知。"
|
||||
diplomat_introduction_pref: "如果说我们从"
|
||||
diplomat_launch_url: "十月的发布"
|
||||
diplomat_introduction_suf: "中得到了什么启发:那就是全世界的人都对 CodeCombat 很感兴趣。我们召集了一群翻译者,尽快地把网站上的信息翻译成各国文字。如果你对即将发布的新内容很感兴趣,想让你的国家的人们玩上,就快来成为外交官吧。"
|
||||
diplomat_introduction_suf: "中得到了什么启发:那就是全世界的人都对很喜欢CodeCombat。我们召集了一群翻译者,希望能尽快地把网站上的信息翻译成各国文字。如果你对CodeCombat的内容很感兴趣,想让世界上的每一个人都有机会一同体验,就快来成为外交官吧。"
|
||||
diplomat_attribute_1: "既会说流利的英语,也熟悉自己的语言。编程是一件很复杂的事情,而要翻译复杂的概念,你必须对两种语言都在行!"
|
||||
diplomat_i18n_page_prefix: "你可以在我们的"
|
||||
diplomat_i18n_page: "翻译页面"
|
||||
diplomat_i18n_page_suffix: "开始翻译游戏,或者在 GitHub 我们的页面上进行。"
|
||||
diplomat_i18n_page_suffix: "开始翻译游戏,或者在我们的GitHub页面上进行。"
|
||||
diplomat_join_pref_github: "在"
|
||||
diplomat_github_url: " GitHub "
|
||||
diplomat_join_suf_github: "找到你的语言文件 (中文的是: codecombat/app/locale/zh-HNAS.coffee),在线编辑它,然后提交一个合并请求。同时,选中下面这个复选框来关注最新的国际化开发!"
|
||||
diplomat_subscribe_desc: "接受有关国际化开发和翻译情况的邮件"
|
||||
ambassador_introduction: "这是一个正在成长的社区,而你将成为我们与世界的联结点。大家可以通过Olark即时聊天、邮件、参与者众多的社交网络来认识了解讨论我们的游戏。如果你想帮助大家尽早参与进来、获得乐趣、感受CodeCombat的脉搏、与我们同行,那么这将是一个适合你的职业。"
|
||||
ambassador_attribute_1: "具备出色的沟通能力。能够分辨出玩家遇到的问题并帮助他们解决这些问题。与此同时,和我们保持联系,及时反馈玩家的喜恶宏愿!"
|
||||
diplomat_github_url: "GitHub"
|
||||
diplomat_join_suf_github: "找到中文语言文件 (简体中文的是:CodeCombat/app/locale/zh-HANS.coffee),在线编辑它,完成后提交一个合并请求。你也可以勾上下面这个复选框来关注最新的国际化开发!"
|
||||
diplomat_subscribe_desc: "接受有关国际化开发和翻译任务的邮件"
|
||||
ambassador_introduction: "这是一个正在成长的社区,而你将成为我们与世界的联结点。大家可以通过各种即时聊天平台、邮件、或是参与者众多的社交网络来认识及讨论我们的游戏。如果你喜欢帮助大家,一起参与各类项目,一起获得乐趣。与我们同行,一起感受CodeCombat的脉搏,绝对是一个适合你的职业。"
|
||||
ambassador_attribute_1: "具备出色的沟通能力。能够分辨出玩家遇到的问题并帮助他们解决问题。与此同时,和我们保持联系,帮助反馈玩家们的喜怒哀乐!"
|
||||
ambassador_join_desc: "介绍一下你自己:你做过什么?你喜欢做什么?我们将从这里开始了解你!"
|
||||
ambassador_join_note_strong: "注意"
|
||||
ambassador_join_note_desc: "我们其中一个想法是要制造一个当玩家们在解决问题上有难度时可以要求其他比较强的玩家来协助他们的多人游戏。这将会是一个很好的办法让使节们可以更容易的协助玩家!如有任何更新,我们会在第一时间通知你!"
|
||||
|
@ -846,7 +846,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
helpful_ambassadors: "我们亲切的使节:"
|
||||
|
||||
ladder:
|
||||
please_login: "请在对奕之前先登录."
|
||||
please_login: "请在对奕之前先登录。"
|
||||
my_matches: "我的对手"
|
||||
simulate: "模拟"
|
||||
simulation_explanation: "通过模拟游戏,你可以让你的游戏更快的得到评分。"
|
||||
|
@ -880,7 +880,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
tutorial_recommended: "如果你从未玩过的话,推荐先玩下教程"
|
||||
tutorial_skip: "跳过教材"
|
||||
tutorial_not_sure: "不知道怎么玩?"
|
||||
tutorial_play_first: "先玩一次教程."
|
||||
tutorial_play_first: "先玩一次教程。"
|
||||
simple_ai: "简单电脑"
|
||||
warmup: "热身"
|
||||
friends_playing: "联机"
|
||||
|
@ -893,7 +893,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
tournament_ends: "锦标赛结束"
|
||||
tournament_ended: "Tournament ended"
|
||||
tournament_rules: "锦标赛规则"
|
||||
tournament_blurb: "写代码,收金币,建军队,碎敌军,赢奖品,以及在我们$40,000的Greed tournament 里升级你的事业! 快去查阅详情!"
|
||||
tournament_blurb: "写代码,收金币,建军队,碎敌军,赢奖品,以及在我们奖励多达$40,000的Greed tournament里升级你的事业! 快去查阅详情!"
|
||||
tournament_blurb_criss_cross: "赢得竞拍,建造道路,智胜对手,夺取宝石,在纵横交错锦标赛中完成生涯晋级! 现在就查看详情!"
|
||||
tournament_blurb_blog: "关注我们的博客"
|
||||
rules: "规则"
|
||||
|
@ -956,16 +956,16 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
|
||||
loading_error:
|
||||
could_not_load: "载入失败"
|
||||
connection_failure: "连接失败."
|
||||
unauthorized: "你需要登录才行. 你是不是把 cookies 禁用了?"
|
||||
forbidden: "你没有权限."
|
||||
not_found: "没找到."
|
||||
not_allowed: "方法不允许."
|
||||
timeout: "服务器超时."
|
||||
conflict: "资源冲突."
|
||||
bad_input: "坏输入."
|
||||
server_error: "服务器错误."
|
||||
unknown: "未知错误."
|
||||
connection_failure: "连接失败。"
|
||||
unauthorized: "你需要登录才行。 你是不是把 cookies 禁用了?"
|
||||
forbidden: "你没有权限。"
|
||||
not_found: "没找到。"
|
||||
not_allowed: "方法不允许。"
|
||||
timeout: "服务器超时。"
|
||||
conflict: "资源冲突。"
|
||||
bad_input: "坏输入。"
|
||||
server_error: "服务器错误。"
|
||||
unknown: "未知错误。"
|
||||
|
||||
resources:
|
||||
sessions: "会期"
|
||||
|
@ -1028,23 +1028,23 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
temp: "临时"
|
||||
|
||||
multiplayer:
|
||||
multiplayer_title: "多人游戏设置" # We'll be changing this around significantly soon. Until then, it's not important to translate.
|
||||
multiplayer_title: "多人游戏设置" # We'll be changing this around significantly soon.Until then, it's not important to translate.
|
||||
multiplayer_toggle: "开启多人模式"
|
||||
multiplayer_toggle_description: "允许其他人加入游戏。"
|
||||
multiplayer_link_description: "把这个链接告诉小伙伴们,一起玩吧。"
|
||||
multiplayer_hint_label: "提示:"
|
||||
multiplayer_hint: " 点击全选,然后按 Apple-C(苹果电脑)或 Ctrl-C 复制链接。"
|
||||
multiplayer_hint: " 点击全选,然后按Apple-C(苹果电脑)或Ctrl-C复制链接。"
|
||||
multiplayer_coming_soon: "多人游戏的更多特性!"
|
||||
multiplayer_sign_in_leaderboard: "注册并登录账号,就可以将你的成就发布到排行榜上。"
|
||||
|
||||
legal:
|
||||
page_title: "法律"
|
||||
opensource_intro: "CodeCombat 是一个自由发挥,完全开源的项目。"
|
||||
opensource_intro: "CodeCombat是一个自由发挥,完全开源的项目。"
|
||||
opensource_description_prefix: "查看 "
|
||||
github_url: "我们的 GitHub"
|
||||
opensource_description_center: "并做你想做的修改吧!CodeCombat是构筑在几十个开源项目之上的,我们爱它们。请查阅"
|
||||
archmage_wiki_url: "我们 大法师的维基页"
|
||||
opensource_description_suffix: " 看看是哪些人让这个游戏成为可能."
|
||||
github_url: "我们的GitHub"
|
||||
opensource_description_center: "并做你想做的修改吧!CodeCombat是构筑在几十个开源项目之上的,然后我们都喜欢它们。看 "
|
||||
archmage_wiki_url: "我们大法师的维基页"
|
||||
opensource_description_suffix: " 看看是哪些人让这个游戏成为可能。"
|
||||
practices_title: "尊重最佳实践"
|
||||
practices_description: "这是我们对您的承诺,即玩家,尽管这在法律用语中略显不足。"
|
||||
privacy_title: "隐私"
|
||||
|
@ -1059,11 +1059,11 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
cost_description: "目前来说,CodeCombat是完全免费的!我们的主要目标之一也是保持目前这种方式,让尽可能多的人玩得更好,不论是否是生活中。如果天空变暗,我们可能会对某些内容采取订阅收费,但我们宁愿不那么做。运气好的话,我们可以维持公司,通过:"
|
||||
copyrights_title: "版权与许可"
|
||||
contributor_title: "贡献者许可协议"
|
||||
contributor_description_prefix: "所有对本网站或是 GitHub 代码库的贡献都依照我们的"
|
||||
contributor_description_prefix: "所有对本网站或是GitHub代码库的贡献都依照我们的"
|
||||
cla_url: "贡献者许可协议(CLA)"
|
||||
contributor_description_suffix: "而这在您贡献之前就应该已经同意。"
|
||||
code_title: "代码 - MIT"
|
||||
code_description_prefix: "所有由CodeCombat拥有或是托管在 codecombat.com 的代码,在 GitHub 版本库或者 codecombat.com 数据库,以上许可协议都依照"
|
||||
code_description_prefix: "所有由CodeCombat拥有或是托管在CodeCombat.com的代码,在GitHub版本库或者CodeCombat.com数据库,以上许可协议都依照"
|
||||
mit_license_url: "MIT 许可证"
|
||||
code_description_suffix: "这包括所有CodeCombat公开的制作关卡用的系统和组件代码。"
|
||||
art_title: "美术和音乐 - Creative Commons"
|
||||
|
@ -1076,10 +1076,10 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
art_sprites: "精灵"
|
||||
art_other: "所有制作关卡时公开的,不是代码的创造性产品。"
|
||||
art_access: "目前还没有简便通用的下载素材的方式。一般来讲,从网站上使用的URL下载,或者联系我们寻找帮助。当然你也可以帮我们扩展网站,让这些资源更容易下载。"
|
||||
art_paragraph_1: "关于署名,请说明并在使用处附近,或对媒体形式来说合适的地方提供一个 codecombat.com 的链接。举例:"
|
||||
use_list_1: "如果是用在电影里或者其他游戏里,请在制作人员表中加入 codecombat.com 。"
|
||||
use_list_2: "如果用在网站上,将链接在使用的地方附近,比如图片下面,或者一个你放置其他 Creative Commons 署名和开源软件协议的专门页面。如果你的内容明确提到关于 CodeCombat,那你就不需要额外署名。"
|
||||
art_paragraph_2: "如果你使用的内容不是由CodeCombat制作,而是由 codecombat.com 上其他的用户制作的,那你应该给他们署名。如果相应资源的页面上有署名指示,那你应该遵循那些指示。"
|
||||
art_paragraph_1: "关于署名,请说明并在使用处附近,或对媒体形式来说合适的地方提供一个CodeCombat.com 的链接。举例:"
|
||||
use_list_1: "如果是用在电影里或者其他游戏里,请在制作人员表中加入CodeCombat.com."
|
||||
use_list_2: "如果用在网站上,将链接在使用的地方附近,比如图片下面,或者一个你放置其他 Creative Commons 署名和开源软件协议的专门页面。如果你的内容明确提到关于CodeCombat,那你就不需要额外署名。"
|
||||
art_paragraph_2: "如果你使用的内容不是由CodeCombat制作,而是由CodeCombat.com 上其他的用户制作的,那你应该给他们署名。如果相应资源的页面上有署名指示,那你应该遵循那些指示。"
|
||||
rights_title: "版权所有"
|
||||
rights_desc: "所有关卡由他们自己版权所有。这包括"
|
||||
rights_scripts: "脚本"
|
||||
|
@ -1089,14 +1089,14 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
rights_media: "声音、音乐以及其他专门为某个关卡制作,而不对其他关卡开放的创造性内容"
|
||||
rights_clarification: "澄清:所有在关卡编辑器里公开用于制作关卡的资源都是在CC协议下发布的,而使用关卡编辑器制作,或者在关卡制作过程中上传的内容则不是。"
|
||||
nutshell_title: "简而言之"
|
||||
nutshell_description: "我们在关卡编辑器里公开的任何资源,你都可以在制作关卡时随意使用,但我们保留限制在 codecombat.com 之上创建的关卡本身传播的权利,因为我们以后可能决定为它们收费。"
|
||||
nutshell_description: "我们在关卡编辑器里公开的任何资源,你都可以在制作关卡时随意使用,但我们保留限制在CodeCombat.com 之上创建的关卡本身传播的权利,因为我们以后可能决定为它们收费。"
|
||||
canonical: "这篇说明的英文版本是权威版本。如果各个翻译版本之间有任何冲突,以英文版为准。"
|
||||
|
||||
ladder_prizes:
|
||||
title: "竞标赛奖项" # This section was for an old tournament and doesn't need new translations now.
|
||||
blurb_1: "这些奖项将会奖励,依据"
|
||||
blurb_2: "锦标赛规则"
|
||||
blurb_3: ", 给顶尖的人类和怪物玩家."
|
||||
blurb_3: ", 给顶尖的人类和怪物玩家。"
|
||||
blurb_4: "两队表示获得的奖励将会是两倍!"
|
||||
blurb_5: "(将有两个第一名, 两个第二名, etc.)"
|
||||
rank: "排名"
|
||||
|
@ -1113,7 +1113,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
oreilly: "你选择的电子书"
|
||||
|
||||
account_profile:
|
||||
settings: "设置" # We are not actively recruiting right now, so there's no need to add new translations for this section.
|
||||
settings: "设置" # We are not actively recruiting right now, so there's no need to add new translations for this section
|
||||
edit_profile: "编辑资料"
|
||||
done_editing: "完成编辑"
|
||||
profile_for_prefix: "关于他的基本资料:"
|
||||
|
@ -1130,7 +1130,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
next_city: "城市?"
|
||||
next_country: "选择你所处的国家"
|
||||
next_name: "名字?"
|
||||
next_short_description: "简短描述下你自己。"
|
||||
next_short_description: "简短描述你自己。"
|
||||
next_long_description: "描述一下你希望找到何种工作。"
|
||||
next_skills: "列出至少五个技能。"
|
||||
next_work: "你的过往工作经验"
|
||||
|
@ -1142,7 +1142,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
example_blog: "你的博客"
|
||||
example_personal_site: "个人主页"
|
||||
links_header: "个人网站链接"
|
||||
links_blurb: "链接任何你希望展示的网站或介绍,例如你的Github,你的领英档案,或是你的博客。"
|
||||
links_blurb: "链接任何你希望展示的网站或介绍,例如你的Github,你的LinkedIn,或是你的博客。"
|
||||
links_name: "链接名称"
|
||||
links_name_help: "你希望链接到什么?"
|
||||
links_link_blurb: "链接的URL"
|
||||
|
@ -1168,7 +1168,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
name_anonymous: "匿名开发者"
|
||||
name_help: "你希望雇主看到的名字,例如‘Nick Winter'。"
|
||||
short_description_header: "写一段简短的自我介绍"
|
||||
short_description_blurb: "在此添加一段简介让雇主一眼就发现你是否是他们正在寻找的开发者."
|
||||
short_description_blurb: "在此添加一段简介让雇主一眼就发现你是否是他们正在寻找的开发者。"
|
||||
short_description: "简短介绍"
|
||||
short_description_help: "你是谁,你在寻求什么?请勿超过140个字符。"
|
||||
skills_header: "技能"
|
||||
|
@ -1220,7 +1220,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
employers:
|
||||
deprecation_warning_title: "抱歉,CodeCombat现不招聘雇员。"
|
||||
deprecation_warning: "我们现在只专注在初学者等级的开发,暂时还不需要雇用天才级开发人员。"
|
||||
hire_developers_not_credentials: "我们只招聘开发人员,不招聘证书。" # We are not actively recruiting right now, so there's no need to add new translations for the rest of this section.
|
||||
hire_developers_not_credentials: "我们只招聘开发人员,不招聘证书。" # We are not actively recruiting right now, so there's no need to add new translations for the rest of this section
|
||||
get_started: "入门"
|
||||
already_screened: "我们已经筛选过所有应征者了"
|
||||
filter_further: ", 但是你也可以进一步筛选:"
|
||||
|
@ -1238,7 +1238,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
filter_experience_recent_grad: "刚毕业"
|
||||
filter_experience_student: "学院生"
|
||||
filter_results: "成绩"
|
||||
start_hiring: "开始招聘."
|
||||
start_hiring: "开始招聘。"
|
||||
reasons: "三个你该通过我们招聘的理由:"
|
||||
everyone_looking: "每一个来这里的人是为了找寻他们的下一个机会。"
|
||||
everyone_looking_blurb: "忘了那20%的LinkedIn InMain回复率。每一个被我们列入这个站点的人希望找到他们的下一个位置以及将会回应你要求自我介绍的请求。"
|
||||
|
@ -1264,7 +1264,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
inactive_developers: "不活跃的开发者"
|
||||
|
||||
admin:
|
||||
av_espionage: "Espionage" # Really not important to translate /admin controls.
|
||||
av_espionage: "Espionage" # Really not important to translate /admin controls
|
||||
av_espionage_placeholder: "邮箱或用户名"
|
||||
av_usersearch: "用户搜索"
|
||||
av_usersearch_placeholder: "邮箱、用户名、姓名、任何东西"
|
||||
|
|
|
@ -6,7 +6,7 @@ module.exports = nativeDescription: "繁体中文", englishDescription: "Chinese
|
|||
play: "開始遊戲" # The big play button that opens up the campaign view.
|
||||
old_browser: "嗯... 您的瀏覽器太老了跑不動CodeCombat,抱歉!" # Warning that shows up on really old Firefox/Chrome/Safari
|
||||
old_browser_suffix: "您還是可以試試看,但它應該不能運行。"
|
||||
ipad_browser: "抱歉,CodeCombat 不能在 iPad 上的瀏覽器運行,但好消息是我們的 iPad App 正在等待蘋果公司審核。"
|
||||
ipad_browser: "抱歉,CodeCombat不能在iPad上的瀏覽器運行,但好消息是我們的iPad App正在等待蘋果公司審核。"
|
||||
campaign: "戰役"
|
||||
for_beginners: "新手專區"
|
||||
multiplayer: "多人連線" # Not currently shown on home page
|
||||
|
@ -442,7 +442,7 @@ module.exports = nativeDescription: "繁体中文", englishDescription: "Chinese
|
|||
lua_blurb: "許多遊戲引擎支援的程式語言。"
|
||||
io_blurb: "簡單但不有名。"
|
||||
status: "狀態"
|
||||
# hero_type: "Type"
|
||||
hero_type: "种类"
|
||||
weapons: "武器"
|
||||
weapons_warrior: "刀劍 - 短距離、非魔法"
|
||||
weapons_ranger: "十字弓, 槍砲 - 長距離、非魔法"
|
||||
|
|
|
@ -276,6 +276,7 @@ _.extend UserSchema.properties,
|
|||
|
||||
earned: c.RewardSchema 'earned by achievements'
|
||||
purchased: c.RewardSchema 'purchased with gems or money'
|
||||
deleted: {type: 'boolean'}
|
||||
spent: {type: 'number'}
|
||||
stripeCustomerID: { type: 'string' } # TODO: Migrate away from this property
|
||||
|
||||
|
|
|
@ -34,6 +34,9 @@
|
|||
.panel-title
|
||||
font-size: 20px
|
||||
|
||||
#delete-account-panel-title
|
||||
color: #F00
|
||||
|
||||
//- Panel specific stuff
|
||||
|
||||
.profile-photo
|
||||
|
|
|
@ -417,3 +417,7 @@ body.ipad #play-heroes-modal
|
|||
// iPad is Python-only for now, and has its own reset button.
|
||||
.form
|
||||
display: none
|
||||
|
||||
body[lang='ru']
|
||||
#play-heroes-modal #confirm-button
|
||||
font-size: 14px
|
||||
|
|
|
@ -48,6 +48,16 @@ else
|
|||
label.control-label(for="password2", data-i18n="account_settings.new_password_verify") Verify
|
||||
input#password2.form-control(name="password2", type="password")
|
||||
|
||||
.panel.panel-default
|
||||
.panel-heading
|
||||
.panel-title#delete-account-panel-title(data-i18n="account_settings.delete_account_tab")
|
||||
.panel-body
|
||||
.form
|
||||
.form-group
|
||||
label.control-label(for="email1", data-i18n="account_settings.type_in_email") Type in your email to confirm the deletion
|
||||
input#email1.form-control(name="email1", type="text")
|
||||
button#delete-account-button.btn.form-control.btn-primary(data-i18n="account_settings.delete_this_account")
|
||||
|
||||
.col-md-6
|
||||
|
||||
#email-panel.panel.panel-default
|
||||
|
|
|
@ -15,9 +15,11 @@ block content
|
|||
#account-links.panel.panel-default
|
||||
.panel-heading(data-i18n="nav.account")
|
||||
ul.list-group
|
||||
li.list-group-item
|
||||
a.btn.btn-lg.btn-primary(href="/user/#{me.getSlugOrID()}", data-i18n="nav.profile")
|
||||
li.list-group-item
|
||||
a.btn.btn-lg.btn-primary(href="/account/settings", data-i18n="play.settings")
|
||||
li.list-group-item
|
||||
a.btn.btn-lg.btn-primary(href="/account/payments", data-i18n="account.payments")
|
||||
li.list-group-item
|
||||
a.btn.btn-lg.btn-primary(href="/account/subscription", data-i18n="account.subscription")
|
||||
a.btn.btn-lg.btn-primary(href="/account/subscription", data-i18n="account.subscription")
|
||||
|
|
|
@ -43,12 +43,19 @@ block content
|
|||
| We have intentionally designed each to appeal to both boys and girls and
|
||||
| think that the building and puzzle levels especially differentiate the game
|
||||
| from violent triple A titles that repel female players.
|
||||
|
||||
|
||||
h3(data-i18n="teachers.age_recommended_title")
|
||||
| What age is it recommended at?
|
||||
|
||||
p(data-i18n="teachers.age_recommended_1")
|
||||
| The recommended minimum age is 9, however children as young as 7 can play the
|
||||
| first stages with the assistance of an adult.
|
||||
|
||||
h3(data-i18n="teachers.what_cover_title")
|
||||
| What do we cover?
|
||||
|
||||
p(data-i18n="teachers.what_cover_1")
|
||||
| There are 20 levels in the Hour of Code tutorial that teach and
|
||||
| There are 27 levels in the first stage of CodeCombat that teach and
|
||||
| reinforce 6 specific computer science concepts:
|
||||
|
||||
ol
|
||||
|
@ -89,6 +96,10 @@ block content
|
|||
strong.spr(data-i18n="teachers.what_cover_input_1") Handling player input
|
||||
span(data-i18n="teachers.what_cover_input_2")
|
||||
| - responding to input events to create a user interface.
|
||||
li
|
||||
strong.spr(data-i18n="teachers.what_cover_array_1") Arrays
|
||||
span(data-i18n="teachers.what_cover_array_2")
|
||||
| - allows the player to create and loop through arrays.
|
||||
|
||||
|
||||
h3(data-i18n="teachers.sys_requirements_title") System Requirements
|
||||
|
@ -98,13 +109,13 @@ block content
|
|||
| to run smoothly than video or written tutorials. We have optimized
|
||||
| it to run quickly on all modern browsers and on older machines so
|
||||
| that everyone can play. That said, here are our suggestions for getting
|
||||
| the most out of your Hour of Code experience:
|
||||
| the most out of the CodeCombat experience:
|
||||
|
||||
ul
|
||||
li
|
||||
strong.spr(data-i18n="teachers.sys_requirements_2") Use newer versions of Chrome or Firefox.
|
||||
span(data-i18n="teachers.sys_requirements_3")
|
||||
| Although CodeCombat will work on browsers as old as IE9, the
|
||||
| Although CodeCombat will work on browsers as old as Internet Explorer 9, the
|
||||
| performance is not as good. Chrome is best.
|
||||
li
|
||||
strong.spr(data-i18n="teachers.sys_requirements_4") Use newer computers.
|
||||
|
|
|
@ -4,6 +4,8 @@ template = require 'templates/account/account-settings-view'
|
|||
forms = require 'core/forms'
|
||||
User = require 'models/User'
|
||||
AuthModal = require 'views/core/AuthModal'
|
||||
ConfirmModal = require 'views/editor/modal/ConfirmModal'
|
||||
{logoutUser, me} = require('core/auth')
|
||||
|
||||
module.exports = class AccountSettingsView extends CocoView
|
||||
id: 'account-settings-view'
|
||||
|
@ -16,6 +18,7 @@ module.exports = class AccountSettingsView extends CocoView
|
|||
'click #toggle-all-button': 'toggleEmailSubscriptions'
|
||||
'click .profile-photo': 'onEditProfilePhoto'
|
||||
'click #upload-photo-button': 'onEditProfilePhoto'
|
||||
'click #delete-account-button': 'confirmAccountDeletion'
|
||||
|
||||
constructor: (options) ->
|
||||
super options
|
||||
|
@ -35,14 +38,17 @@ module.exports = class AccountSettingsView extends CocoView
|
|||
|
||||
|
||||
#- Form input callbacks
|
||||
|
||||
onInputChanged: (e) ->
|
||||
$(e.target).addClass 'changed'
|
||||
@trigger 'input-changed'
|
||||
if (JSON.stringify(document.getElementById('email1').className)).indexOf("changed") > -1
|
||||
$(e.target).removeClass 'changed'
|
||||
else
|
||||
@trigger 'input-changed'
|
||||
|
||||
toggleEmailSubscriptions: =>
|
||||
subs = @getSubscriptions()
|
||||
$('#email-panel input[type="checkbox"]', @$el).prop('checked', not _.any(_.values(subs))).addClass('changed')
|
||||
@trigger 'input-changed'
|
||||
|
||||
checkNameExists: =>
|
||||
name = $('#name', @$el).val()
|
||||
|
@ -61,7 +67,49 @@ module.exports = class AccountSettingsView extends CocoView
|
|||
|
||||
|
||||
#- Just copied from OptionsView, TODO refactor
|
||||
|
||||
|
||||
confirmAccountDeletion: ->
|
||||
forms.clearFormAlerts(@$el)
|
||||
myEmail = me.get 'email'
|
||||
email1 = document.getElementById('email1').value
|
||||
if Boolean(email1) and email1 is myEmail
|
||||
renderData =
|
||||
'confirmTitle': 'Are you really sure?'
|
||||
'confirmBody': 'This will completely delete your account. This action CANNOT be undone. Are you entirely sure?'
|
||||
'confirmDecline': 'Not really'
|
||||
'confirmConfirm': 'Definitely'
|
||||
confirmModal = new ConfirmModal renderData
|
||||
confirmModal.on 'confirm', @deleteAccount
|
||||
@openModalView confirmModal
|
||||
else
|
||||
message = $.i18n.t('account_settings.wrong_email', defaultValue: 'Wrong Email.')
|
||||
err = [message: message, property: 'email1', formatted: true]
|
||||
forms.applyErrorsToForm(@$el, err)
|
||||
$('.nano').nanoScroller({scrollTo: @$el.find('.has-error')})
|
||||
|
||||
deleteAccount: ->
|
||||
myID = me.id
|
||||
$.ajax
|
||||
type: 'DELETE'
|
||||
success: ->
|
||||
noty
|
||||
timeout: 5000
|
||||
text: 'Your account is gone.'
|
||||
type: 'success'
|
||||
layout: 'topCenter'
|
||||
_.delay ->
|
||||
Backbone.Mediator.publish("auth:logging-out", {})
|
||||
window.tracker?.trackEvent 'Log Out', category:'Homepage', ['Google Analytics'] if @id is 'home-view'
|
||||
logoutUser($('#login-email').val())
|
||||
, 500
|
||||
error: (jqXHR, status, error) ->
|
||||
console.error jqXHR
|
||||
timeout: 5000
|
||||
text: "Deleting account failed with error code #{jqXHR.status}"
|
||||
type: 'error'
|
||||
layout: 'topCenter'
|
||||
url: "/db/user/#{myID}"
|
||||
|
||||
onEditProfilePhoto: (e) ->
|
||||
return if window.application.isIPadApp # TODO: have an iPad-native way of uploading a photo, since we don't want to load FilePicker on iPad (memory)
|
||||
photoContainer = @$el.find('.profile-photo')
|
||||
|
|
|
@ -675,7 +675,7 @@ module.exports = class ThangsTabView extends CocoView
|
|||
lank = @surface.lankBoss.lanks[thang.id]
|
||||
lank.update true
|
||||
lank.marks.debug?.destroy()
|
||||
lank.marks.debug = null
|
||||
delete lank.marks.debug
|
||||
lank.setDebug true
|
||||
|
||||
rotateSelectedThangTo: (radians) ->
|
||||
|
|
|
@ -102,6 +102,10 @@ module.exports = class PlayItemsModal extends ModalView
|
|||
model.comingSoon = not model.getFrontFacingStats().props.length and not _.size(model.getFrontFacingStats().stats) and not model.owned # Temp: while there are placeholder items
|
||||
@idToItem[model.id] = model
|
||||
|
||||
if itemFetcher.skip isnt 0
|
||||
# Make sure we render the newly fetched items, except the first time (when it happens automatically).
|
||||
@render()
|
||||
|
||||
if needMore
|
||||
itemFetcher.skip += PAGE_SIZE
|
||||
itemFetcher.fetch({data: {skip: itemFetcher.skip, limit: PAGE_SIZE}})
|
||||
|
|
|
@ -28,6 +28,8 @@ candidateProperties = [
|
|||
UserHandler = class UserHandler extends Handler
|
||||
modelClass: User
|
||||
|
||||
allowedMethods: ['GET', 'POST', 'PUT', 'PATCH', 'DELETE']
|
||||
|
||||
getEditableProperties: (req, document) ->
|
||||
props = super req, document
|
||||
props.push 'permissions' unless config.isProduction
|
||||
|
@ -211,11 +213,31 @@ UserHandler = class UserHandler extends Handler
|
|||
@put(req, res)
|
||||
|
||||
hasAccessToDocument: (req, document) ->
|
||||
if req.route.method in ['put', 'post', 'patch']
|
||||
if req.route.method in ['put', 'post', 'patch', 'delete']
|
||||
return true if req.user?.isAdmin()
|
||||
return req.user?._id.equals(document._id)
|
||||
return true
|
||||
|
||||
delete: (req, res, userID) ->
|
||||
# Instead of just deleting the User object, we should remove all the properties except for _id
|
||||
# And add a `deleted: true` property
|
||||
@getDocumentForIdOrSlug userID, (err, user) => # Check first
|
||||
return @sendDatabaseError res, err if err
|
||||
return @sendNotFoundError res unless user
|
||||
return @sendForbiddenError res unless @hasAccessToDocument(req, user)
|
||||
obj = user.toObject()
|
||||
for prop, val of obj
|
||||
user.set(prop, undefined) unless prop is '_id'
|
||||
user.set('deleted', true)
|
||||
|
||||
# Hack to get saving of Users to work. Probably should replace these props with strings
|
||||
# so that validation doesn't get hung up on Date objects in the documents.
|
||||
delete obj.dateCreated
|
||||
|
||||
user.save (err) =>
|
||||
return @sendDatabaseError(res, err) if err
|
||||
@sendNoContent res
|
||||
|
||||
getByRelationship: (req, res, args...) ->
|
||||
return @agreeToCLA(req, res) if args[1] is 'agreeToCLA'
|
||||
return @agreeToEmployerAgreement(req, res) if args[1] is 'agreeToEmployerAgreement'
|
||||
|
|
Loading…
Reference in a new issue