diff options
Diffstat (limited to 'editor')
87 files changed, 3485 insertions, 2311 deletions
diff --git a/editor/connections_dialog.cpp b/editor/connections_dialog.cpp index d3dff3f375..20d29d47f4 100644 --- a/editor/connections_dialog.cpp +++ b/editor/connections_dialog.cpp @@ -714,7 +714,7 @@ void ConnectionsDock::_open_connection_dialog(TreeItem &item) { const String &signalname = signal; String midname = selectedNode->get_name(); for (int i = 0; i < midname.length(); i++) { //TODO: Regex filter may be cleaner. - CharType c = midname[i]; + char32_t c = midname[i]; if (!((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') || c == '_')) { if (c == ' ') { // Replace spaces with underlines. diff --git a/editor/editor_audio_buses.h b/editor/editor_audio_buses.h index 87c060d1f5..b6cf1183b5 100644 --- a/editor/editor_audio_buses.h +++ b/editor/editor_audio_buses.h @@ -230,7 +230,7 @@ private: render_db_value = n.render_db_value; } - _FORCE_INLINE_ AudioNotch operator=(const EditorAudioMeterNotches::AudioNotch &n) { + _FORCE_INLINE_ AudioNotch &operator=(const EditorAudioMeterNotches::AudioNotch &n) { relative_position = n.relative_position; db_value = n.db_value; render_db_value = n.render_db_value; diff --git a/editor/editor_export.cpp b/editor/editor_export.cpp index 16e69734d3..1d7429eb64 100644 --- a/editor/editor_export.cpp +++ b/editor/editor_export.cpp @@ -32,6 +32,7 @@ #include "core/crypto/crypto_core.h" #include "core/io/config_file.h" +#include "core/io/file_access_encrypted.h" #include "core/io/file_access_pack.h" // PACK_HEADER_MAGIC, PACK_FORMAT_VERSION #include "core/io/resource_loader.h" #include "core/io/resource_saver.h" @@ -222,6 +223,42 @@ String EditorExportPreset::get_custom_features() const { return custom_features; } +void EditorExportPreset::set_enc_in_filter(const String &p_filter) { + enc_in_filters = p_filter; + EditorExport::singleton->save_presets(); +} + +String EditorExportPreset::get_enc_in_filter() const { + return enc_in_filters; +} + +void EditorExportPreset::set_enc_ex_filter(const String &p_filter) { + enc_ex_filters = p_filter; + EditorExport::singleton->save_presets(); +} + +String EditorExportPreset::get_enc_ex_filter() const { + return enc_ex_filters; +} + +void EditorExportPreset::set_enc_pck(bool p_enabled) { + enc_pck = p_enabled; + EditorExport::singleton->save_presets(); +} + +bool EditorExportPreset::get_enc_pck() const { + return enc_pck; +} + +void EditorExportPreset::set_enc_directory(bool p_enabled) { + enc_directory = p_enabled; + EditorExport::singleton->save_presets(); +} + +bool EditorExportPreset::get_enc_directory() const { + return enc_directory; +} + void EditorExportPreset::set_script_export_mode(int p_mode) { script_mode = p_mode; EditorExport::singleton->save_presets(); @@ -292,20 +329,55 @@ void EditorExportPlatform::gen_debug_flags(Vector<String> &r_flags, int p_flags) } } -Error EditorExportPlatform::_save_pack_file(void *p_userdata, const String &p_path, const Vector<uint8_t> &p_data, int p_file, int p_total) { +Error EditorExportPlatform::_save_pack_file(void *p_userdata, const String &p_path, const Vector<uint8_t> &p_data, int p_file, int p_total, const Vector<String> &p_enc_in_filters, const Vector<String> &p_enc_ex_filters, const Vector<uint8_t> &p_key) { PackData *pd = (PackData *)p_userdata; SavedData sd; sd.path_utf8 = p_path.utf8(); sd.ofs = pd->f->get_position(); sd.size = p_data.size(); + sd.encrypted = false; + + for (int i = 0; i < p_enc_in_filters.size(); ++i) { + if (p_path.matchn(p_enc_in_filters[i]) || p_path.replace("res://", "").matchn(p_enc_in_filters[i])) { + sd.encrypted = true; + break; + } + } + + for (int i = 0; i < p_enc_ex_filters.size(); ++i) { + if (p_path.matchn(p_enc_ex_filters[i]) || p_path.replace("res://", "").matchn(p_enc_ex_filters[i])) { + sd.encrypted = false; + break; + } + } - pd->f->store_buffer(p_data.ptr(), p_data.size()); - int pad = _get_pad(PCK_PADDING, sd.size); + FileAccessEncrypted *fae = nullptr; + FileAccess *ftmp = pd->f; + + if (sd.encrypted) { + fae = memnew(FileAccessEncrypted); + ERR_FAIL_COND_V(!fae, ERR_SKIP); + + Error err = fae->open_and_parse(ftmp, p_key, FileAccessEncrypted::MODE_WRITE_AES256, false); + ERR_FAIL_COND_V(err != OK, ERR_SKIP); + ftmp = fae; + } + + // Store file content. + ftmp->store_buffer(p_data.ptr(), p_data.size()); + + if (fae) { + fae->release(); + memdelete(fae); + } + + int pad = _get_pad(PCK_PADDING, pd->f->get_position()); for (int i = 0; i < pad; i++) { - pd->f->store_8(0); + pd->f->store_8(Math::rand() % 256); } + // Store MD5 of original file. { unsigned char hash[16]; CryptoCore::md5(p_data.ptr(), p_data.size(), hash); @@ -324,7 +396,7 @@ Error EditorExportPlatform::_save_pack_file(void *p_userdata, const String &p_pa return OK; } -Error EditorExportPlatform::_save_zip_file(void *p_userdata, const String &p_path, const Vector<uint8_t> &p_data, int p_file, int p_total) { +Error EditorExportPlatform::_save_zip_file(void *p_userdata, const String &p_path, const Vector<uint8_t> &p_data, int p_file, int p_total, const Vector<String> &p_enc_in_filters, const Vector<String> &p_enc_ex_filters, const Vector<uint8_t> &p_key) { String path = p_path.replace_first("res://", ""); ZipData *zd = (ZipData *)p_userdata; @@ -694,6 +766,61 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & _edit_filter_list(paths, p_preset->get_include_filter(), false); _edit_filter_list(paths, p_preset->get_exclude_filter(), true); + // Get encryption filters. + bool enc_pck = p_preset->get_enc_pck(); + Vector<String> enc_in_filters; + Vector<String> enc_ex_filters; + Vector<uint8_t> key; + + if (enc_pck) { + Vector<String> enc_in_split = p_preset->get_enc_in_filter().split(","); + for (int i = 0; i < enc_in_split.size(); i++) { + String f = enc_in_split[i].strip_edges(); + if (f.empty()) { + continue; + } + enc_in_filters.push_back(f); + } + + Vector<String> enc_ex_split = p_preset->get_enc_ex_filter().split(","); + for (int i = 0; i < enc_ex_split.size(); i++) { + String f = enc_ex_split[i].strip_edges(); + if (f.empty()) { + continue; + } + enc_ex_filters.push_back(f); + } + + // Get encryption key. + String script_key = p_preset->get_script_encryption_key().to_lower(); + key.resize(32); + if (script_key.length() == 64) { + for (int i = 0; i < 32; i++) { + int v = 0; + if (i * 2 < script_key.length()) { + char32_t ct = script_key[i * 2]; + if (ct >= '0' && ct <= '9') { + ct = ct - '0'; + } else if (ct >= 'a' && ct <= 'f') { + ct = 10 + ct - 'a'; + } + v |= ct << 4; + } + + if (i * 2 + 1 < script_key.length()) { + char32_t ct = script_key[i * 2 + 1]; + if (ct >= '0' && ct <= '9') { + ct = ct - '0'; + } else if (ct >= 'a' && ct <= 'f') { + ct = 10 + ct - 'a'; + } + v |= ct; + } + key.write[i] = v; + } + } + } + Vector<Ref<EditorExportPlugin>> export_plugins = EditorExport::get_singleton()->get_export_plugins(); for (int i = 0; i < export_plugins.size(); i++) { export_plugins.write[i]->set_export_preset(p_preset); @@ -704,7 +831,7 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & } } for (int j = 0; j < export_plugins[i]->extra_files.size(); j++) { - p_func(p_udata, export_plugins[i]->extra_files[j].path, export_plugins[i]->extra_files[j].data, 0, paths.size()); + p_func(p_udata, export_plugins[i]->extra_files[j].path, export_plugins[i]->extra_files[j].data, 0, paths.size(), enc_in_filters, enc_ex_filters, key); } export_plugins.write[i]->_clear(); @@ -756,14 +883,14 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & if (remap == "path") { String remapped_path = config->get_value("remap", remap); Vector<uint8_t> array = FileAccess::get_file_as_array(remapped_path); - err = p_func(p_udata, remapped_path, array, idx, total); + err = p_func(p_udata, remapped_path, array, idx, total, enc_in_filters, enc_ex_filters, key); } else if (remap.begins_with("path.")) { String feature = remap.get_slice(".", 1); if (remap_features.has(feature)) { String remapped_path = config->get_value("remap", remap); Vector<uint8_t> array = FileAccess::get_file_as_array(remapped_path); - err = p_func(p_udata, remapped_path, array, idx, total); + err = p_func(p_udata, remapped_path, array, idx, total, enc_in_filters, enc_ex_filters, key); } } } @@ -774,7 +901,7 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & //also save the .import file Vector<uint8_t> array = FileAccess::get_file_as_array(path + ".import"); - err = p_func(p_udata, path + ".import", array, idx, total); + err = p_func(p_udata, path + ".import", array, idx, total, enc_in_filters, enc_ex_filters, key); if (err != OK) { return err; @@ -795,7 +922,7 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & } for (int j = 0; j < export_plugins[i]->extra_files.size(); j++) { - p_func(p_udata, export_plugins[i]->extra_files[j].path, export_plugins[i]->extra_files[j].data, idx, total); + p_func(p_udata, export_plugins[i]->extra_files[j].path, export_plugins[i]->extra_files[j].data, idx, total, enc_in_filters, enc_ex_filters, key); if (export_plugins[i]->extra_files[j].remap) { do_export = false; //if remap, do not path_remaps.push_back(path); @@ -815,7 +942,7 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & //just store it as it comes if (do_export) { Vector<uint8_t> array = FileAccess::get_file_as_array(path); - p_func(p_udata, path, array, idx, total); + p_func(p_udata, path, array, idx, total, enc_in_filters, enc_ex_filters, key); } } @@ -851,7 +978,7 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & new_file.write[j] = utf8[j]; } - p_func(p_udata, from + ".remap", new_file, idx, total); + p_func(p_udata, from + ".remap", new_file, idx, total, enc_in_filters, enc_ex_filters, key); } } else { //old remap mode, will still work, but it's unused because it's not multiple pck export friendly @@ -864,11 +991,11 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & String splash = ProjectSettings::get_singleton()->get("application/boot_splash/image"); if (icon != String() && FileAccess::exists(icon)) { Vector<uint8_t> array = FileAccess::get_file_as_array(icon); - p_func(p_udata, icon, array, idx, total); + p_func(p_udata, icon, array, idx, total, enc_in_filters, enc_ex_filters, key); } if (splash != String() && FileAccess::exists(splash) && icon != splash) { Vector<uint8_t> array = FileAccess::get_file_as_array(splash); - p_func(p_udata, splash, array, idx, total); + p_func(p_udata, splash, array, idx, total, enc_in_filters, enc_ex_filters, key); } String config_file = "project.binary"; @@ -877,7 +1004,7 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & Vector<uint8_t> data = FileAccess::get_file_as_array(engine_cfb); DirAccess::remove_file_or_error(engine_cfb); - p_func(p_udata, "res://" + config_file, data, idx, total); + p_func(p_udata, "res://" + config_file, data, idx, total, enc_in_filters, enc_ex_filters, key); return OK; } @@ -953,6 +1080,17 @@ Error EditorExportPlatform::save_pack(const Ref<EditorExportPreset> &p_preset, c f->store_32(VERSION_MINOR); f->store_32(VERSION_PATCH); + uint32_t pack_flags = 0; + bool enc_pck = p_preset->get_enc_pck(); + bool enc_directory = p_preset->get_enc_directory(); + if (enc_pck && enc_directory) { + pack_flags |= PACK_DIR_ENCRYPTED; + } + f->store_32(pack_flags); // flags + + uint64_t file_base_ofs = f->get_position(); + f->store_64(0); // files base + for (int i = 0; i < 16; i++) { //reserved f->store_32(0); @@ -960,40 +1098,82 @@ Error EditorExportPlatform::save_pack(const Ref<EditorExportPreset> &p_preset, c f->store_32(pd.file_ofs.size()); //amount of files - int64_t header_size = f->get_position(); + FileAccessEncrypted *fae = nullptr; + FileAccess *fhead = f; + + if (enc_pck && enc_directory) { + String script_key = p_preset->get_script_encryption_key().to_lower(); + Vector<uint8_t> key; + key.resize(32); + if (script_key.length() == 64) { + for (int i = 0; i < 32; i++) { + int v = 0; + if (i * 2 < script_key.length()) { + char32_t ct = script_key[i * 2]; + if (ct >= '0' && ct <= '9') { + ct = ct - '0'; + } else if (ct >= 'a' && ct <= 'f') { + ct = 10 + ct - 'a'; + } + v |= ct << 4; + } - //precalculate header size + if (i * 2 + 1 < script_key.length()) { + char32_t ct = script_key[i * 2 + 1]; + if (ct >= '0' && ct <= '9') { + ct = ct - '0'; + } else if (ct >= 'a' && ct <= 'f') { + ct = 10 + ct - 'a'; + } + v |= ct; + } + key.write[i] = v; + } + } + fae = memnew(FileAccessEncrypted); + ERR_FAIL_COND_V(!fae, ERR_SKIP); - for (int i = 0; i < pd.file_ofs.size(); i++) { - header_size += 4; // size of path string (32 bits is enough) - int string_len = pd.file_ofs[i].path_utf8.length(); - header_size += string_len + _get_pad(4, string_len); ///size of path string - header_size += 8; // offset to file _with_ header size included - header_size += 8; // size of file - header_size += 16; // md5 - } + err = fae->open_and_parse(f, key, FileAccessEncrypted::MODE_WRITE_AES256, false); + ERR_FAIL_COND_V(err != OK, ERR_SKIP); - int header_padding = _get_pad(PCK_PADDING, header_size); + fhead = fae; + } for (int i = 0; i < pd.file_ofs.size(); i++) { int string_len = pd.file_ofs[i].path_utf8.length(); int pad = _get_pad(4, string_len); - f->store_32(string_len + pad); - f->store_buffer((const uint8_t *)pd.file_ofs[i].path_utf8.get_data(), string_len); + fhead->store_32(string_len + pad); + fhead->store_buffer((const uint8_t *)pd.file_ofs[i].path_utf8.get_data(), string_len); for (int j = 0; j < pad; j++) { - f->store_8(0); + fhead->store_8(0); } - f->store_64(pd.file_ofs[i].ofs + header_padding + header_size); - f->store_64(pd.file_ofs[i].size); // pay attention here, this is where file is - f->store_buffer(pd.file_ofs[i].md5.ptr(), 16); //also save md5 for file + fhead->store_64(pd.file_ofs[i].ofs); + fhead->store_64(pd.file_ofs[i].size); // pay attention here, this is where file is + fhead->store_buffer(pd.file_ofs[i].md5.ptr(), 16); //also save md5 for file + uint32_t flags = 0; + if (pd.file_ofs[i].encrypted) { + flags |= PACK_FILE_ENCRYPTED; + } + fhead->store_32(flags); } + if (fae) { + fae->release(); + memdelete(fae); + } + + int header_padding = _get_pad(PCK_PADDING, f->get_position()); for (int i = 0; i < header_padding; i++) { - f->store_8(0); + f->store_8(Math::rand() % 256); } + uint64_t file_base = f->get_position(); + f->seek(file_base_ofs); + f->store_64(file_base); // update files base + f->seek(file_base); + // Save the rest of the data. ftmp = FileAccess::open(tmppath, FileAccess::READ); @@ -1162,6 +1342,10 @@ void EditorExport::_save() { config->set_value(section, "exclude_filter", preset->get_exclude_filter()); config->set_value(section, "export_path", preset->get_export_path()); config->set_value(section, "patch_list", preset->get_patches()); + config->set_value(section, "encryption_include_filters", preset->get_enc_in_filter()); + config->set_value(section, "encryption_exclude_filters", preset->get_enc_ex_filter()); + config->set_value(section, "encrypt_pck", preset->get_enc_pck()); + config->set_value(section, "encrypt_directory", preset->get_enc_directory()); config->set_value(section, "script_export_mode", preset->get_script_export_mode()); config->set_value(section, "script_encryption_key", preset->get_script_encryption_key()); @@ -1337,6 +1521,18 @@ void EditorExport::load_config() { preset->add_patch(patch_list[i]); } + if (config->has_section_key(section, "encrypt_pck")) { + preset->set_enc_pck(config->get_value(section, "encrypt_pck")); + } + if (config->has_section_key(section, "encrypt_directory")) { + preset->set_enc_directory(config->get_value(section, "encrypt_directory")); + } + if (config->has_section_key(section, "encryption_include_filters")) { + preset->set_enc_in_filter(config->get_value(section, "encryption_include_filters")); + } + if (config->has_section_key(section, "encryption_exclude_filters")) { + preset->set_enc_ex_filter(config->get_value(section, "encryption_exclude_filters")); + } if (config->has_section_key(section, "script_export_mode")) { preset->set_script_export_mode(config->get_value(section, "script_export_mode")); } diff --git a/editor/editor_export.h b/editor/editor_export.h index bb701b94ec..ac1051571c 100644 --- a/editor/editor_export.h +++ b/editor/editor_export.h @@ -55,7 +55,6 @@ public: enum ScriptExportMode { MODE_SCRIPT_TEXT, MODE_SCRIPT_COMPILED, - MODE_SCRIPT_ENCRYPTED, }; private: @@ -81,6 +80,11 @@ private: String custom_features; + String enc_in_filters; + String enc_ex_filters; + bool enc_pck = false; + bool enc_directory = false; + int script_mode = MODE_SCRIPT_COMPILED; String script_key; @@ -129,6 +133,18 @@ public: void set_export_path(const String &p_path); String get_export_path() const; + void set_enc_in_filter(const String &p_filter); + String get_enc_in_filter() const; + + void set_enc_ex_filter(const String &p_filter); + String get_enc_ex_filter() const; + + void set_enc_pck(bool p_enabled); + bool get_enc_pck() const; + + void set_enc_directory(bool p_enabled); + bool get_enc_directory() const; + void set_script_export_mode(int p_mode); int get_script_export_mode() const; @@ -156,13 +172,14 @@ class EditorExportPlatform : public Reference { GDCLASS(EditorExportPlatform, Reference); public: - typedef Error (*EditorExportSaveFunction)(void *p_userdata, const String &p_path, const Vector<uint8_t> &p_data, int p_file, int p_total); + typedef Error (*EditorExportSaveFunction)(void *p_userdata, const String &p_path, const Vector<uint8_t> &p_data, int p_file, int p_total, const Vector<String> &p_enc_in_filters, const Vector<String> &p_enc_ex_filters, const Vector<uint8_t> &p_key); typedef Error (*EditorExportSaveSharedObject)(void *p_userdata, const SharedObject &p_so); private: struct SavedData { uint64_t ofs; uint64_t size; + bool encrypted; Vector<uint8_t> md5; CharString path_utf8; @@ -192,8 +209,8 @@ private: void _export_find_dependencies(const String &p_path, Set<String> &p_paths); void gen_debug_flags(Vector<String> &r_flags, int p_flags); - static Error _save_pack_file(void *p_userdata, const String &p_path, const Vector<uint8_t> &p_data, int p_file, int p_total); - static Error _save_zip_file(void *p_userdata, const String &p_path, const Vector<uint8_t> &p_data, int p_file, int p_total); + static Error _save_pack_file(void *p_userdata, const String &p_path, const Vector<uint8_t> &p_data, int p_file, int p_total, const Vector<String> &p_enc_in_filters, const Vector<String> &p_enc_ex_filters, const Vector<uint8_t> &p_key); + static Error _save_zip_file(void *p_userdata, const String &p_path, const Vector<uint8_t> &p_data, int p_file, int p_total, const Vector<String> &p_enc_in_filters, const Vector<String> &p_enc_ex_filters, const Vector<uint8_t> &p_key); void _edit_files_with_filter(DirAccess *da, const Vector<String> &p_filters, Set<String> &r_list, bool exclude); void _edit_filter_list(Set<String> &r_list, const String &p_filter, bool exclude); diff --git a/editor/editor_feature_profile.cpp b/editor/editor_feature_profile.cpp index 418370a7c3..7335563dd9 100644 --- a/editor/editor_feature_profile.cpp +++ b/editor/editor_feature_profile.cpp @@ -271,9 +271,9 @@ void EditorFeatureProfile::_bind_methods() { BIND_ENUM_CONSTANT(FEATURE_SCRIPT); BIND_ENUM_CONSTANT(FEATURE_ASSET_LIB); BIND_ENUM_CONSTANT(FEATURE_SCENE_TREE); - BIND_ENUM_CONSTANT(FEATURE_IMPORT_DOCK); BIND_ENUM_CONSTANT(FEATURE_NODE_DOCK); BIND_ENUM_CONSTANT(FEATURE_FILESYSTEM_DOCK); + BIND_ENUM_CONSTANT(FEATURE_IMPORT_DOCK); BIND_ENUM_CONSTANT(FEATURE_MAX); } diff --git a/editor/editor_help.cpp b/editor/editor_help.cpp index bce34db740..30aebd2b1f 100644 --- a/editor/editor_help.cpp +++ b/editor/editor_help.cpp @@ -244,7 +244,7 @@ void EditorHelp::_add_method(const DocData::MethodDoc &p_method, bool p_overview class_desc->push_cell(); class_desc->push_align(RichTextLabel::ALIGN_RIGHT); } else { - static const CharType prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; + static const char32_t prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; class_desc->add_text(String(prefix)); } @@ -761,7 +761,7 @@ void EditorHelp::_update_doc() { signal_line[cd.signals[i].name] = class_desc->get_line_count() - 2; //gets overridden if description class_desc->push_font(doc_code_font); // monofont class_desc->push_color(headline_color); - static const CharType prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; + static const char32_t prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; class_desc->add_text(String(prefix)); _add_text(cd.signals[i].name); class_desc->pop(); @@ -876,7 +876,7 @@ void EditorHelp::_update_doc() { class_desc->push_font(doc_code_font); class_desc->push_color(headline_color); - static const CharType prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; + static const char32_t prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; class_desc->add_text(String(prefix)); _add_text(enum_list[i].name); class_desc->pop(); @@ -890,7 +890,7 @@ void EditorHelp::_update_doc() { if (enum_list[i].description != "") { class_desc->push_font(doc_font); class_desc->push_color(comment_color); - static const CharType dash[6] = { ' ', ' ', 0x2013 /* en dash */, ' ', ' ', 0 }; + static const char32_t dash[6] = { ' ', ' ', 0x2013 /* en dash */, ' ', ' ', 0 }; class_desc->add_text(String(dash)); _add_text(DTR(enum_list[i].description)); class_desc->pop(); @@ -937,12 +937,12 @@ void EditorHelp::_update_doc() { Vector<float> color = stripped.split_floats(","); if (color.size() >= 3) { class_desc->push_color(Color(color[0], color[1], color[2])); - static const CharType prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; + static const char32_t prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; class_desc->add_text(String(prefix)); class_desc->pop(); } } else { - static const CharType prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; + static const char32_t prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; class_desc->add_text(String(prefix)); } @@ -960,7 +960,7 @@ void EditorHelp::_update_doc() { if (constants[i].description != "") { class_desc->push_font(doc_font); class_desc->push_color(comment_color); - static const CharType dash[6] = { ' ', ' ', 0x2013 /* en dash */, ' ', ' ', 0 }; + static const char32_t dash[6] = { ' ', ' ', 0x2013 /* en dash */, ' ', ' ', 0 }; class_desc->add_text(String(dash)); _add_text(DTR(constants[i].description)); class_desc->pop(); @@ -1002,7 +1002,7 @@ void EditorHelp::_update_doc() { class_desc->push_cell(); class_desc->push_font(doc_code_font); - static const CharType prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; + static const char32_t prefix[3] = { 0x25CF /* filled circle */, ' ', 0 }; class_desc->add_text(String(prefix)); _add_type(cd.properties[i].type, cd.properties[i].enumeration); diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp index 16b8c6e0ac..e90f30496c 100644 --- a/editor/editor_node.cpp +++ b/editor/editor_node.cpp @@ -2625,6 +2625,7 @@ void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) { case SETTINGS_TOGGLE_CONSOLE: { bool was_visible = DisplayServer::get_singleton()->is_console_visible(); DisplayServer::get_singleton()->console_set_visible(!was_visible); + EditorSettings::get_singleton()->set_setting("interface/editor/hide_console_window", was_visible); } break; case EDITOR_SCREENSHOT: { screenshot_timer->start(); diff --git a/editor/editor_run.cpp b/editor/editor_run.cpp index b49c50fa31..7fada633c9 100644 --- a/editor/editor_run.cpp +++ b/editor/editor_run.cpp @@ -192,9 +192,9 @@ Error EditorRun::run(const String &p_scene, const String &p_custom_args, const L String exec = OS::get_singleton()->get_executable_path(); - printf("Running: %ls", exec.c_str()); + printf("Running: %s", exec.utf8().get_data()); for (List<String>::Element *E = args.front(); E; E = E->next()) { - printf(" %ls", E->get().c_str()); + printf(" %s", E->get().utf8().get_data()); }; printf("\n"); diff --git a/editor/editor_run_native.cpp b/editor/editor_run_native.cpp index 9a834977fd..422534a2e1 100644 --- a/editor/editor_run_native.cpp +++ b/editor/editor_run_native.cpp @@ -121,7 +121,7 @@ void EditorRunNative::_run_native(int p_idx, int p_platform) { } if (preset.is_null()) { - EditorNode::get_singleton()->show_warning(TTR("No runnable export preset found for this platform.\nPlease add a runnable preset in the export menu.")); + EditorNode::get_singleton()->show_warning(TTR("No runnable export preset found for this platform.\nPlease add a runnable preset in the Export menu or define an existing preset as runnable.")); return; } diff --git a/editor/editor_sectioned_inspector.cpp b/editor/editor_sectioned_inspector.cpp index eabbf6b0d8..cf19b54cff 100644 --- a/editor/editor_sectioned_inspector.cpp +++ b/editor/editor_sectioned_inspector.cpp @@ -238,7 +238,7 @@ void SectionedInspector::update_category_list() { continue; } - if (!filter.empty() && !filter.is_subsequence_ofi(pi.name) && !filter.is_subsequence_ofi(pi.name.replace("/", " ").capitalize())) { + if (!filter.empty() && pi.name.findn(filter) == -1 && pi.name.replace("/", " ").capitalize().findn(filter) == -1) { continue; } diff --git a/editor/editor_settings.cpp b/editor/editor_settings.cpp index 7b24e6967a..0aefef7018 100644 --- a/editor/editor_settings.cpp +++ b/editor/editor_settings.cpp @@ -334,6 +334,7 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { _initial_set("interface/editor/automatically_open_screenshots", true); _initial_set("interface/editor/single_window_mode", false); hints["interface/editor/single_window_mode"] = PropertyInfo(Variant::BOOL, "interface/editor/single_window_mode", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_RESTART_IF_CHANGED); + _initial_set("interface/editor/hide_console_window", false); _initial_set("interface/editor/save_each_scene_on_quit", true); // Regression _initial_set("interface/editor/quit_confirmation", true); @@ -935,6 +936,7 @@ void EditorSettings::create() { String config_file_name = "editor_settings-" + itos(VERSION_MAJOR) + ".tres"; config_file_path = config_dir.plus_file(config_file_name); if (!dir->file_exists(config_file_name)) { + memdelete(dir); goto fail; } diff --git a/editor/filesystem_dock.cpp b/editor/filesystem_dock.cpp index 31903c89be..0071f169ac 100644 --- a/editor/filesystem_dock.cpp +++ b/editor/filesystem_dock.cpp @@ -2300,6 +2300,7 @@ void FileSystemDock::_tree_rmb_select(const Vector2 &p_pos) { // Right click is pressed in the tree. Vector<String> paths = _tree_get_selected(false); + tree_popup->clear(); if (paths.size() == 1) { if (paths[0].ends_with("/")) { tree_popup->add_icon_item(get_theme_icon("GuiTreeArrowDown", "EditorIcons"), TTR("Expand All"), FOLDER_EXPAND_ALL); @@ -2310,7 +2311,6 @@ void FileSystemDock::_tree_rmb_select(const Vector2 &p_pos) { // Popup. if (!paths.empty()) { - tree_popup->clear(); tree_popup->set_size(Size2(1, 1)); _file_and_folders_fill_popup(tree_popup, paths); tree_popup->set_position(tree->get_screen_position() + p_pos); diff --git a/editor/find_in_files.cpp b/editor/find_in_files.cpp index bd4bb57dcf..c2ccbdb08c 100644 --- a/editor/find_in_files.cpp +++ b/editor/find_in_files.cpp @@ -54,7 +54,7 @@ inline void pop_back(T &container) { } // TODO Copied from TextEdit private, would be nice to extract it in a single place -static bool is_text_char(CharType c) { +static bool is_text_char(char32_t c) { return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') || c == '_'; } @@ -854,7 +854,7 @@ public: String get_line(FileAccess *f) { _line_buffer.clear(); - CharType c = f->get_8(); + char32_t c = f->get_8(); while (!f->eof_reached()) { if (c == '\n') { diff --git a/editor/input_map_editor.cpp b/editor/input_map_editor.cpp index 52cf9c1869..c67e16d371 100644 --- a/editor/input_map_editor.cpp +++ b/editor/input_map_editor.cpp @@ -100,7 +100,7 @@ void InputMapEditor::_notification(int p_what) { } static bool _validate_action_name(const String &p_name) { - const CharType *cstr = p_name.c_str(); + const char32_t *cstr = p_name.get_data(); for (int i = 0; cstr[i]; i++) { if (cstr[i] == '/' || cstr[i] == ':' || cstr[i] == '"' || cstr[i] == '=' || cstr[i] == '\\' || cstr[i] < 32) { diff --git a/editor/plugins/abstract_polygon_2d_editor.cpp b/editor/plugins/abstract_polygon_2d_editor.cpp index 49e67f3605..7a3fb1ff52 100644 --- a/editor/plugins/abstract_polygon_2d_editor.cpp +++ b/editor/plugins/abstract_polygon_2d_editor.cpp @@ -287,7 +287,7 @@ bool AbstractPolygon2DEditor::forward_gui_input(const Ref<InputEvent> &p_event) pre_move_edit = vertices2; edited_point = PosVertex(insert.polygon, insert.vertex + 1, xform.affine_inverse().xform(insert.pos)); vertices2.insert(edited_point.vertex, edited_point.pos); - selected_point = edited_point; + selected_point = Vertex(edited_point.polygon, edited_point.vertex); edge_point = PosVertex(); undo_redo->create_action(TTR("Insert Point")); diff --git a/editor/plugins/canvas_item_editor_plugin.cpp b/editor/plugins/canvas_item_editor_plugin.cpp index 3f9f159d7f..9427f82f9e 100644 --- a/editor/plugins/canvas_item_editor_plugin.cpp +++ b/editor/plugins/canvas_item_editor_plugin.cpp @@ -6256,7 +6256,7 @@ void CanvasItemEditorViewport::_perform_drop_data() { files_str += error_files[i].get_file().get_basename() + ","; } files_str = files_str.substr(0, files_str.length() - 1); - accept->set_text(vformat(TTR("Error instancing scene from %s"), files_str.c_str())); + accept->set_text(vformat(TTR("Error instancing scene from %s"), files_str.get_data())); accept->popup_centered(); } } diff --git a/editor/plugins/debugger_editor_plugin.cpp b/editor/plugins/debugger_editor_plugin.cpp index 0a4d173923..0747e42045 100644 --- a/editor/plugins/debugger_editor_plugin.cpp +++ b/editor/plugins/debugger_editor_plugin.cpp @@ -47,7 +47,7 @@ DebuggerEditorPlugin::DebuggerEditorPlugin(EditorNode *p_editor, MenuButton *p_d ED_SHORTCUT("debugger/keep_debugger_open", TTR("Keep Debugger Open")); ED_SHORTCUT("debugger/debug_with_external_editor", TTR("Debug with External Editor")); - // File Server for deploy with remote fs. + // File Server for deploy with remote filesystem. file_server = memnew(EditorFileServer); EditorDebuggerNode *debugger = memnew(EditorDebuggerNode); @@ -59,19 +59,31 @@ DebuggerEditorPlugin::DebuggerEditorPlugin(EditorNode *p_editor, MenuButton *p_d PopupMenu *p = debug_menu->get_popup(); p->set_hide_on_checkable_item_selection(false); p->add_check_shortcut(ED_SHORTCUT("editor/deploy_with_remote_debug", TTR("Deploy with Remote Debug")), RUN_DEPLOY_REMOTE_DEBUG); - p->set_item_tooltip(p->get_item_count() - 1, TTR("When exporting or deploying, the resulting executable will attempt to connect to the IP of this computer in order to be debugged.")); - p->add_check_shortcut(ED_SHORTCUT("editor/small_deploy_with_network_fs", TTR("Small Deploy with Network FS")), RUN_FILE_SERVER); - p->set_item_tooltip(p->get_item_count() - 1, TTR("When this option is enabled, export or deploy will produce a minimal executable.\nThe filesystem will be provided from the project by the editor over the network.\nOn Android, deploy will use the USB cable for faster performance. This option speeds up testing for games with a large footprint.")); + p->set_item_tooltip( + p->get_item_count() - 1, + TTR("When this option is enabled, using one-click deploy will make the executable attempt to connect to this computer's IP so the running project can be debugged.\nThis option is intended to be used for remote debugging (typically with a mobile device).\nYou don't need to enable it to use the GDScript debugger locally.")); + p->add_check_shortcut(ED_SHORTCUT("editor/small_deploy_with_network_fs", TTR("Small Deploy with Network Filesystem")), RUN_FILE_SERVER); + p->set_item_tooltip( + p->get_item_count() - 1, + TTR("When this option is enabled, using one-click deploy for Android will only export an executable without the project data.\nThe filesystem will be provided from the project by the editor over the network.\nOn Android, deploying will use the USB cable for faster performance. This option speeds up testing for projects with large assets.")); p->add_separator(); p->add_check_shortcut(ED_SHORTCUT("editor/visible_collision_shapes", TTR("Visible Collision Shapes")), RUN_DEBUG_COLLISONS); - p->set_item_tooltip(p->get_item_count() - 1, TTR("Collision shapes and raycast nodes (for 2D and 3D) will be visible on the running game if this option is turned on.")); + p->set_item_tooltip( + p->get_item_count() - 1, + TTR("When this option is enabled, collision shapes and raycast nodes (for 2D and 3D) will be visible in the running project.")); p->add_check_shortcut(ED_SHORTCUT("editor/visible_navigation", TTR("Visible Navigation")), RUN_DEBUG_NAVIGATION); - p->set_item_tooltip(p->get_item_count() - 1, TTR("Navigation meshes and polygons will be visible on the running game if this option is turned on.")); + p->set_item_tooltip( + p->get_item_count() - 1, + TTR("When this option is enabled, navigation meshes and polygons will be visible in the running project.")); p->add_separator(); - p->add_check_shortcut(ED_SHORTCUT("editor/sync_scene_changes", TTR("Sync Scene Changes")), RUN_LIVE_DEBUG); - p->set_item_tooltip(p->get_item_count() - 1, TTR("When this option is turned on, any changes made to the scene in the editor will be replicated in the running game.\nWhen used remotely on a device, this is more efficient with network filesystem.")); - p->add_check_shortcut(ED_SHORTCUT("editor/sync_script_changes", TTR("Sync Script Changes")), RUN_RELOAD_SCRIPTS); - p->set_item_tooltip(p->get_item_count() - 1, TTR("When this option is turned on, any script that is saved will be reloaded on the running game.\nWhen used remotely on a device, this is more efficient with network filesystem.")); + p->add_check_shortcut(ED_SHORTCUT("editor/sync_scene_changes", TTR("Synchronize Scene Changes")), RUN_LIVE_DEBUG); + p->set_item_tooltip( + p->get_item_count() - 1, + TTR("When this option is enabled, any changes made to the scene in the editor will be replicated in the running project.\nWhen used remotely on a device, this is more efficient when the network filesystem option is enabled.")); + p->add_check_shortcut(ED_SHORTCUT("editor/sync_script_changes", TTR("Synchronize Script Changes")), RUN_RELOAD_SCRIPTS); + p->set_item_tooltip( + p->get_item_count() - 1, + TTR("When this option is enabled, any script that is saved will be reloaded in the running project.\nWhen used remotely on a device, this is more efficient when the network filesystem option is enabled.")); // Multi-instance, start/stop instances_menu = memnew(PopupMenu); diff --git a/editor/plugins/editor_preview_plugins.cpp b/editor/plugins/editor_preview_plugins.cpp index 2889cb50a0..3cf4dc5ac8 100644 --- a/editor/plugins/editor_preview_plugins.cpp +++ b/editor/plugins/editor_preview_plugins.cpp @@ -466,7 +466,7 @@ EditorMaterialPreviewPlugin::~EditorMaterialPreviewPlugin() { /////////////////////////////////////////////////////////////////////////// -static bool _is_text_char(CharType c) { +static bool _is_text_char(char32_t c) { return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') || c == '_'; } @@ -525,7 +525,7 @@ Ref<Texture2D> EditorScriptPreviewPlugin::generate(const RES &p_from, const Size bool prev_is_text = false; bool in_keyword = false; for (int i = 0; i < code.length(); i++) { - CharType c = code[i]; + char32_t c = code[i]; if (c > 32) { if (col < thumbnail_size) { Color color = text_color; diff --git a/editor/plugins/node_3d_editor_plugin.cpp b/editor/plugins/node_3d_editor_plugin.cpp index 21a75c2f5d..952487c13c 100644 --- a/editor/plugins/node_3d_editor_plugin.cpp +++ b/editor/plugins/node_3d_editor_plugin.cpp @@ -3729,7 +3729,7 @@ void Node3DEditorViewport::_perform_drop_data() { files_str += error_files[i].get_file().get_basename() + ","; } files_str = files_str.substr(0, files_str.length() - 1); - accept->set_text(vformat(TTR("Error instancing scene from %s"), files_str.c_str())); + accept->set_text(vformat(TTR("Error instancing scene from %s"), files_str.get_data())); accept->popup_centered(); } } diff --git a/editor/plugins/sprite_frames_editor_plugin.cpp b/editor/plugins/sprite_frames_editor_plugin.cpp index 18942b371c..5007983581 100644 --- a/editor/plugins/sprite_frames_editor_plugin.cpp +++ b/editor/plugins/sprite_frames_editor_plugin.cpp @@ -995,11 +995,16 @@ SpriteFramesEditor::SpriteFramesEditor() { animations->connect("item_edited", callable_mp(this, &SpriteFramesEditor::_animation_name_edited)); animations->set_allow_reselect(true); + HBoxContainer *hbc_anim_speed = memnew(HBoxContainer); + hbc_anim_speed->add_child(memnew(Label(TTR("Speed:")))); + vbc_animlist->add_child(hbc_anim_speed); anim_speed = memnew(SpinBox); - vbc_animlist->add_margin_child(TTR("Speed (FPS):"), anim_speed); + anim_speed->set_suffix(TTR("FPS")); anim_speed->set_min(0); anim_speed->set_max(100); anim_speed->set_step(0.01); + anim_speed->set_h_size_flags(SIZE_EXPAND_FILL); + hbc_anim_speed->add_child(anim_speed); anim_speed->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_animation_fps_changed)); anim_loop = memnew(CheckButton); diff --git a/editor/plugins/visual_shader_editor_plugin.cpp b/editor/plugins/visual_shader_editor_plugin.cpp index 217294464c..f5ae3c8bf5 100644 --- a/editor/plugins/visual_shader_editor_plugin.cpp +++ b/editor/plugins/visual_shader_editor_plugin.cpp @@ -81,6 +81,18 @@ void VisualShaderEditor::edit(VisualShader *p_visual_shader) { } #endif visual_shader->set_graph_offset(graph->get_scroll_ofs() / EDSCALE); + + if (visual_shader->get_mode() == VisualShader::MODE_PARTICLES) { + edit_type_standart->set_visible(false); + edit_type_particles->set_visible(true); + edit_type = edit_type_particles; + particles_mode = true; + } else { + edit_type_particles->set_visible(false); + edit_type_standart->set_visible(true); + edit_type = edit_type_standart; + particles_mode = false; + } } else { if (visual_shader.is_valid()) { if (visual_shader->is_connected("changed", callable_mp(this, &VisualShaderEditor::_update_preview))) { @@ -168,41 +180,18 @@ bool VisualShaderEditor::_is_available(int p_mode) { if (p_mode != -1) { switch (current_mode) { - case VisualShader::TYPE_VERTEX: + case 0: // Vertex or Emit current_mode = 1; break; - case VisualShader::TYPE_FRAGMENT: + case 1: // Fragment or Process current_mode = 2; break; - case VisualShader::TYPE_LIGHT: + case 2: // Light or End current_mode = 4; break; - case VisualShader::TYPE_COMPUTE: - current_mode = 8; - break; default: break; } - - int temp_mode = 0; - - if (p_mode & VisualShader::TYPE_FRAGMENT) { - temp_mode |= 2; - } - - if (p_mode & VisualShader::TYPE_LIGHT) { - temp_mode |= 4; - } - - if (p_mode == VisualShader::TYPE_COMPUTE) { - temp_mode = 8; - } - - if (temp_mode == 0) { - temp_mode |= 1; - } - - p_mode = temp_mode; } return (p_mode == -1 || (p_mode & current_mode) != 0); @@ -468,7 +457,8 @@ void VisualShaderEditor::_update_graph() { graph->set_scroll_ofs(visual_shader->get_graph_offset() * EDSCALE); - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); + graph->clear_connections(); //erase all nodes for (int i = 0; i < graph->get_child_count(); i++) { @@ -926,8 +916,18 @@ void VisualShaderEditor::_update_graph() { } } +VisualShader::Type VisualShaderEditor::get_current_shader_type() const { + VisualShader::Type type; + if (particles_mode) { + type = VisualShader::Type(edit_type->get_selected() + 3); + } else { + type = VisualShader::Type(edit_type->get_selected()); + } + return type; +} + void VisualShaderEditor::_add_input_port(int p_node, int p_port, int p_port_type, const String &p_name) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeExpression> node = visual_shader->get_node(type, p_node); if (node.is_null()) { return; @@ -944,7 +944,7 @@ void VisualShaderEditor::_add_input_port(int p_node, int p_port, int p_port_type } void VisualShaderEditor::_add_output_port(int p_node, int p_port, int p_port_type, const String &p_name) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeGroupBase> node = visual_shader->get_node(type, p_node); if (node.is_null()) { return; @@ -961,7 +961,7 @@ void VisualShaderEditor::_add_output_port(int p_node, int p_port, int p_port_typ } void VisualShaderEditor::_change_input_port_type(int p_type, int p_node, int p_port) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeGroupBase> node = visual_shader->get_node(type, p_node); if (node.is_null()) { return; @@ -978,7 +978,7 @@ void VisualShaderEditor::_change_input_port_type(int p_type, int p_node, int p_p } void VisualShaderEditor::_change_output_port_type(int p_type, int p_node, int p_port) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeGroupBase> node = visual_shader->get_node(type, p_node); if (node.is_null()) { return; @@ -995,7 +995,7 @@ void VisualShaderEditor::_change_output_port_type(int p_type, int p_node, int p_ } void VisualShaderEditor::_change_input_port_name(const String &p_text, Object *line_edit, int p_node_id, int p_port_id) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeGroupBase> node = visual_shader->get_node(type, p_node_id); ERR_FAIL_COND(!node.is_valid()); @@ -1009,7 +1009,7 @@ void VisualShaderEditor::_change_input_port_name(const String &p_text, Object *l } void VisualShaderEditor::_change_output_port_name(const String &p_text, Object *line_edit, int p_node_id, int p_port_id) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeGroupBase> node = visual_shader->get_node(type, p_node_id); ERR_FAIL_COND(!node.is_valid()); @@ -1023,7 +1023,7 @@ void VisualShaderEditor::_change_output_port_name(const String &p_text, Object * } void VisualShaderEditor::_remove_input_port(int p_node, int p_port) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeGroupBase> node = visual_shader->get_node(type, p_node); if (node.is_null()) { return; @@ -1066,7 +1066,7 @@ void VisualShaderEditor::_remove_input_port(int p_node, int p_port) { } void VisualShaderEditor::_remove_output_port(int p_node, int p_port) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeGroupBase> node = visual_shader->get_node(type, p_node); if (node.is_null()) { return; @@ -1109,7 +1109,7 @@ void VisualShaderEditor::_remove_output_port(int p_node, int p_port) { } void VisualShaderEditor::_expression_focus_out(Object *text_edit, int p_node) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeExpression> node = visual_shader->get_node(type, p_node); if (node.is_null()) { return; @@ -1137,7 +1137,7 @@ void VisualShaderEditor::_rebuild() { } void VisualShaderEditor::_set_node_size(int p_type, int p_node, const Vector2 &p_size) { - VisualShader::Type type = VisualShader::Type(p_type); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNode> node = visual_shader->get_node(type, p_node); if (node.is_null()) { return; @@ -1184,7 +1184,7 @@ void VisualShaderEditor::_set_node_size(int p_type, int p_node, const Vector2 &p } void VisualShaderEditor::_node_resized(const Vector2 &p_new_size, int p_type, int p_node) { - VisualShader::Type type = VisualShader::Type(p_type); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeGroupBase> node = visual_shader->get_node(type, p_node); if (node.is_null()) { return; @@ -1197,7 +1197,7 @@ void VisualShaderEditor::_node_resized(const Vector2 &p_new_size, int p_type, in } void VisualShaderEditor::_preview_select_port(int p_node, int p_port) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNode> node = visual_shader->get_node(type, p_node); if (node.is_null()) { return; @@ -1215,7 +1215,7 @@ void VisualShaderEditor::_preview_select_port(int p_node, int p_port) { } void VisualShaderEditor::_line_edit_changed(const String &p_text, Object *line_edit, int p_node_id) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeUniform> node = visual_shader->get_node(type, p_node_id); ERR_FAIL_COND(!node.is_valid()); @@ -1240,7 +1240,7 @@ void VisualShaderEditor::_line_edit_focus_out(Object *line_edit, int p_node_id) } void VisualShaderEditor::_port_name_focus_out(Object *line_edit, int p_node_id, int p_port_id, bool p_output) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNodeGroupBase> node = visual_shader->get_node(type, p_node_id); ERR_FAIL_COND(!node.is_valid()); @@ -1291,7 +1291,7 @@ void VisualShaderEditor::_port_name_focus_out(Object *line_edit, int p_node_id, } void VisualShaderEditor::_port_edited() { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Variant value = property_editor->get_variant(); Ref<VisualShaderNode> vsn = visual_shader->get_node(type, editing_node); @@ -1308,7 +1308,7 @@ void VisualShaderEditor::_port_edited() { } void VisualShaderEditor::_edit_port_default_input(Object *p_button, int p_node, int p_port) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNode> vsn = visual_shader->get_node(type, p_node); @@ -1474,7 +1474,7 @@ VisualShaderNode *VisualShaderEditor::_add_node(int p_idx, int p_op_idx) { } saved_node_pos_dirty = false; - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); int id_to_use = visual_shader->get_valid_node_id(type); @@ -1516,7 +1516,7 @@ VisualShaderNode *VisualShaderEditor::_add_node(int p_idx, int p_op_idx) { } void VisualShaderEditor::_node_dragged(const Vector2 &p_from, const Vector2 &p_to, int p_node) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); updating = true; undo_redo->create_action(TTR("Node Moved")); @@ -1529,7 +1529,7 @@ void VisualShaderEditor::_node_dragged(const Vector2 &p_from, const Vector2 &p_t } void VisualShaderEditor::_connection_request(const String &p_from, int p_from_index, const String &p_to, int p_to_index) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); int from = p_from.to_int(); int to = p_to.to_int(); @@ -1560,7 +1560,7 @@ void VisualShaderEditor::_connection_request(const String &p_from, int p_from_in void VisualShaderEditor::_disconnection_request(const String &p_from, int p_from_index, const String &p_to, int p_to_index) { graph->disconnect_node(p_from, p_from_index, p_to, p_to_index); - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); int from = p_from.to_int(); int to = p_to.to_int(); @@ -1588,7 +1588,7 @@ void VisualShaderEditor::_connection_from_empty(const String &p_to, int p_to_slo } void VisualShaderEditor::_delete_request(int which) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); Ref<VisualShaderNode> node = Ref<VisualShaderNode>(visual_shader->get_node(type, which)); undo_redo->create_action(TTR("Delete Node")); @@ -1627,7 +1627,7 @@ void VisualShaderEditor::_delete_request(int which) { } void VisualShaderEditor::_node_selected(Object *p_node) { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); GraphNode *gn = Object::cast_to<GraphNode>(p_node); ERR_FAIL_COND(!gn); @@ -1985,7 +1985,7 @@ void VisualShaderEditor::_paste_nodes(bool p_use_custom_position, const Vector2 } void VisualShaderEditor::_delete_nodes() { - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); List<int> to_erase; for (int i = 0; i < graph->get_child_count(); i++) { @@ -2076,7 +2076,7 @@ void VisualShaderEditor::_input_select_item(Ref<VisualShaderNodeInput> input, St if (type_changed) { //restore connections if type changed - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); int id = visual_shader->find_node_id(type, input); List<VisualShader::Connection> conns; visual_shader->get_node_connections(type, &conns); @@ -2110,7 +2110,7 @@ void VisualShaderEditor::_uniform_select_item(Ref<VisualShaderNodeUniformRef> p_ if (type_changed) { //restore connections if type changed - VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); + VisualShader::Type type = get_current_shader_type(); int id = visual_shader->find_node_id(type, p_uniform_ref); List<VisualShader::Connection> conns; visual_shader->get_node_connections(type, &conns); @@ -2435,15 +2435,26 @@ VisualShaderEditor::VisualShaderEditor() { graph->get_zoom_hbox()->add_child(vs); graph->get_zoom_hbox()->move_child(vs, 0); - edit_type = memnew(OptionButton); - edit_type->add_item(TTR("Vertex")); - edit_type->add_item(TTR("Fragment")); - edit_type->add_item(TTR("Light")); - edit_type->add_item(TTR("Compute")); - edit_type->select(1); - edit_type->connect("item_selected", callable_mp(this, &VisualShaderEditor::_mode_selected)); - graph->get_zoom_hbox()->add_child(edit_type); - graph->get_zoom_hbox()->move_child(edit_type, 0); + edit_type_standart = memnew(OptionButton); + edit_type_standart->add_item(TTR("Vertex")); + edit_type_standart->add_item(TTR("Fragment")); + edit_type_standart->add_item(TTR("Light")); + edit_type_standart->select(1); + edit_type_standart->connect("item_selected", callable_mp(this, &VisualShaderEditor::_mode_selected)); + + edit_type_particles = memnew(OptionButton); + edit_type_particles->add_item(TTR("Emit")); + edit_type_particles->add_item(TTR("Process")); + edit_type_particles->add_item(TTR("End")); + edit_type_particles->select(0); + edit_type_particles->connect("item_selected", callable_mp(this, &VisualShaderEditor::_mode_selected)); + + edit_type = edit_type_standart; + + graph->get_zoom_hbox()->add_child(edit_type_particles); + graph->get_zoom_hbox()->move_child(edit_type_particles, 0); + graph->get_zoom_hbox()->add_child(edit_type_standart); + graph->get_zoom_hbox()->move_child(edit_type_standart, 0); add_node = memnew(Button); add_node->set_flat(true); @@ -2622,6 +2633,7 @@ VisualShaderEditor::VisualShaderEditor() { // INPUT // SPATIAL-FOR-ALL + const String input_param_shader_modes = TTR("'%s' input parameter for all shader modes."); add_options.push_back(AddOption("Camera", "Input", "All", "VisualShaderNodeInput", vformat(input_param_shader_modes, "camera"), "camera", VisualShaderNode::PORT_TYPE_TRANSFORM, -1, Shader::MODE_SPATIAL)); add_options.push_back(AddOption("InvCamera", "Input", "All", "VisualShaderNodeInput", vformat(input_param_shader_modes, "inv_camera"), "inv_camera", VisualShaderNode::PORT_TYPE_TRANSFORM, -1, Shader::MODE_SPATIAL)); @@ -2652,125 +2664,156 @@ VisualShaderEditor::VisualShaderEditor() { const String input_param_for_fragment_shader_mode = TTR("'%s' input parameter for fragment shader mode."); const String input_param_for_light_shader_mode = TTR("'%s' input parameter for light shader mode."); const String input_param_for_vertex_shader_mode = TTR("'%s' input parameter for vertex shader mode."); - const String input_param_for_compute_shader_mode = TTR("'%s' input parameter for compute shader mode."); + const String input_param_for_emit_shader_mode = TTR("'%s' input parameter for emit shader mode."); + const String input_param_for_process_shader_mode = TTR("'%s' input parameter for process shader mode."); + const String input_param_for_end_shader_mode = TTR("'%s' input parameter for end shader mode."); + const String input_param_for_emit_and_process_shader_mode = TTR("'%s' input parameter for emit and process shader mode."); const String input_param_for_vertex_and_fragment_shader_mode = TTR("'%s' input parameter for vertex and fragment shader mode."); - add_options.push_back(AddOption("Alpha", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "alpha"), "alpha", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Binormal", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "binormal"), "binormal", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Color", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "color"), "color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("DepthTexture", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "depth_texture"), "depth_texture", VisualShaderNode::PORT_TYPE_SAMPLER, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("FragCoord", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "fragcoord"), "fragcoord", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("FrontFacing", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "front_facing"), "front_facing", VisualShaderNode::PORT_TYPE_BOOLEAN, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("PointCoord", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "point_coord"), "point_coord", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("ScreenTexture", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "screen_texture"), "screen_texture", VisualShaderNode::PORT_TYPE_SAMPLER, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("ScreenUV", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "screen_uv"), "screen_uv", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Side", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "side"), "side", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Tangent", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "tangent"), "tangent", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("UV", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "uv"), "uv", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("UV2", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "uv2"), "uv2", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Vertex", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "vertex"), "vertex", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("View", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "view"), "view", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SPATIAL)); - - add_options.push_back(AddOption("Albedo", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "albedo"), "albedo", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Attenuation", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "attenuation"), "attenuation", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Diffuse", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "diffuse"), "diffuse", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("FragCoord", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "fragcoord"), "fragcoord", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Light", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light"), "light", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("LightColor", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_color"), "light_color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Roughness", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "roughness"), "roughness", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_LIGHT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Specular", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "specular"), "specular", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Transmission", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "transmission"), "transmission", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("View", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "view"), "view", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_SPATIAL)); - - add_options.push_back(AddOption("Alpha", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "alpha"), "alpha", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_VERTEX, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Binormal", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "binormal"), "binormal", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_VERTEX, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Color", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "color"), "color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_VERTEX, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("ModelView", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "modelview"), "modelview", VisualShaderNode::PORT_TYPE_TRANSFORM, VisualShader::TYPE_VERTEX, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("PointSize", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "point_size"), "point_size", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_VERTEX, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Tangent", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_mode, "tangent"), "tangent", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_VERTEX, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("UV", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "uv"), "uv", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_VERTEX, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("UV2", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "uv2"), "uv2", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_VERTEX, Shader::MODE_SPATIAL)); - add_options.push_back(AddOption("Vertex", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "vertex"), "vertex", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_VERTEX, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Alpha", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "alpha"), "alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Binormal", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "binormal"), "binormal", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Color", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "color"), "color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("DepthTexture", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "depth_texture"), "depth_texture", VisualShaderNode::PORT_TYPE_SAMPLER, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("FragCoord", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "fragcoord"), "fragcoord", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("FrontFacing", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "front_facing"), "front_facing", VisualShaderNode::PORT_TYPE_BOOLEAN, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("PointCoord", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "point_coord"), "point_coord", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("ScreenTexture", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "screen_texture"), "screen_texture", VisualShaderNode::PORT_TYPE_SAMPLER, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("ScreenUV", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "screen_uv"), "screen_uv", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Side", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "side"), "side", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Tangent", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "tangent"), "tangent", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("UV", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "uv"), "uv", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("UV2", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "uv2"), "uv2", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Vertex", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "vertex"), "vertex", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("View", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "view"), "view", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SPATIAL)); + + add_options.push_back(AddOption("Albedo", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "albedo"), "albedo", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Attenuation", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "attenuation"), "attenuation", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Diffuse", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "diffuse"), "diffuse", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("FragCoord", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "fragcoord"), "fragcoord", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Light", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light"), "light", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("LightColor", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_color"), "light_color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Roughness", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "roughness"), "roughness", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_LIGHT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Specular", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "specular"), "specular", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Transmission", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "transmission"), "transmission", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("View", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "view"), "view", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_SPATIAL)); + + add_options.push_back(AddOption("Alpha", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "alpha"), "alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_VERTEX, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Binormal", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "binormal"), "binormal", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_VERTEX, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Color", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "color"), "color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_VERTEX, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("ModelView", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "modelview"), "modelview", VisualShaderNode::PORT_TYPE_TRANSFORM, TYPE_FLAGS_VERTEX, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("PointSize", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "point_size"), "point_size", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_VERTEX, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Tangent", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_mode, "tangent"), "tangent", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_VERTEX, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("UV", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "uv"), "uv", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_VERTEX, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("UV2", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "uv2"), "uv2", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_VERTEX, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("Vertex", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "vertex"), "vertex", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_VERTEX, Shader::MODE_SPATIAL)); // CANVASITEM INPUTS - add_options.push_back(AddOption("FragCoord", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "fragcoord"), "fragcoord", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("LightPass", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "light_pass"), "light_pass", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("NormalTexture", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "normal_texture"), "normal_texture", VisualShaderNode::PORT_TYPE_SAMPLER, VisualShader::TYPE_FRAGMENT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("PointCoord", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "point_coord"), "point_coord", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("ScreenPixelSize", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "screen_pixel_size"), "screen_pixel_size", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("ScreenTexture", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "screen_texture"), "screen_texture", VisualShaderNode::PORT_TYPE_SAMPLER, VisualShader::TYPE_FRAGMENT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("ScreenUV", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "screen_uv"), "screen_uv", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("Texture", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "texture"), "texture", VisualShaderNode::PORT_TYPE_SAMPLER, VisualShader::TYPE_FRAGMENT, Shader::MODE_CANVAS_ITEM)); - - add_options.push_back(AddOption("FragCoord", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "fragcoord"), "fragcoord", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("LightAlpha", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_alpha"), "light_alpha", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("LightColor", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_color"), "light_color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("LightHeight", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_height"), "light_height", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("LightUV", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_uv"), "light_uv", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("LightVector", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_vec"), "light_vec", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("Normal", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "normal"), "normal", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("PointCoord", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "point_coord"), "point_coord", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("ScreenUV", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "screen_uv"), "screen_uv", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("ShadowAlpha", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "shadow_alpha"), "shadow_alpha", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("ShadowColor", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "shadow_color"), "shadow_color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("ShadowVec", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "shadow_vec"), "shadow_vec", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("Texture", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "texture"), "texture", VisualShaderNode::PORT_TYPE_SAMPLER, VisualShader::TYPE_LIGHT, Shader::MODE_CANVAS_ITEM)); - - add_options.push_back(AddOption("Extra", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "extra"), "extra", VisualShaderNode::PORT_TYPE_TRANSFORM, VisualShader::TYPE_VERTEX, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("LightPass", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "light_pass"), "light_pass", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_VERTEX, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("PointSize", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "point_size"), "point_size", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_VERTEX, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("Projection", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "projection"), "projection", VisualShaderNode::PORT_TYPE_TRANSFORM, VisualShader::TYPE_VERTEX, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("Vertex", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "vertex"), "vertex", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_VERTEX, Shader::MODE_CANVAS_ITEM)); - add_options.push_back(AddOption("World", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "world"), "world", VisualShaderNode::PORT_TYPE_TRANSFORM, VisualShader::TYPE_VERTEX, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("FragCoord", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "fragcoord"), "fragcoord", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("LightPass", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "light_pass"), "light_pass", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("NormalTexture", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "normal_texture"), "normal_texture", VisualShaderNode::PORT_TYPE_SAMPLER, TYPE_FLAGS_FRAGMENT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("PointCoord", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "point_coord"), "point_coord", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("ScreenPixelSize", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "screen_pixel_size"), "screen_pixel_size", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("ScreenTexture", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "screen_texture"), "screen_texture", VisualShaderNode::PORT_TYPE_SAMPLER, TYPE_FLAGS_FRAGMENT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("ScreenUV", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "screen_uv"), "screen_uv", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("Texture", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "texture"), "texture", VisualShaderNode::PORT_TYPE_SAMPLER, TYPE_FLAGS_FRAGMENT, Shader::MODE_CANVAS_ITEM)); + + add_options.push_back(AddOption("FragCoord", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "fragcoord"), "fragcoord", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("LightAlpha", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_alpha"), "light_alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("LightColor", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_color"), "light_color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("LightHeight", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_height"), "light_height", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("LightUV", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_uv"), "light_uv", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("LightVector", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_vec"), "light_vec", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("Normal", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "normal"), "normal", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("PointCoord", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "point_coord"), "point_coord", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("ScreenUV", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "screen_uv"), "screen_uv", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("ShadowAlpha", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "shadow_alpha"), "shadow_alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("ShadowColor", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "shadow_color"), "shadow_color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("ShadowVec", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "shadow_vec"), "shadow_vec", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("Texture", "Input", "Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "texture"), "texture", VisualShaderNode::PORT_TYPE_SAMPLER, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM)); + + add_options.push_back(AddOption("Extra", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "extra"), "extra", VisualShaderNode::PORT_TYPE_TRANSFORM, TYPE_FLAGS_VERTEX, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("LightPass", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_and_fragment_shader_modes, "light_pass"), "light_pass", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_VERTEX, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("PointSize", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "point_size"), "point_size", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_VERTEX, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("Projection", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "projection"), "projection", VisualShaderNode::PORT_TYPE_TRANSFORM, TYPE_FLAGS_VERTEX, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("Vertex", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "vertex"), "vertex", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_VERTEX, Shader::MODE_CANVAS_ITEM)); + add_options.push_back(AddOption("World", "Input", "Vertex", "VisualShaderNodeInput", vformat(input_param_for_vertex_shader_mode, "world"), "world", VisualShaderNode::PORT_TYPE_TRANSFORM, TYPE_FLAGS_VERTEX, Shader::MODE_CANVAS_ITEM)); // PARTICLES INPUTS - add_options.push_back(AddOption("Active", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "active"), "active", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("Alpha", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "alpha"), "alpha", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("Color", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "color"), "color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("Custom", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "custom"), "custom", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("CustomAlpha", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "custom_alpha"), "custom_alpha", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("Delta", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "delta"), "delta", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("EmissionTransform", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "emission_transform"), "emission_transform", VisualShaderNode::PORT_TYPE_TRANSFORM, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("Index", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "index"), "index", VisualShaderNode::PORT_TYPE_SCALAR_INT, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("LifeTime", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "lifetime"), "lifetime", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("Restart", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "restart"), "restart", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("Time", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "time"), "time", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("Transform", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "transform"), "transform", VisualShaderNode::PORT_TYPE_TRANSFORM, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); - add_options.push_back(AddOption("Velocity", "Input", "Compute", "VisualShaderNodeInput", vformat(input_param_for_compute_shader_mode, "velocity"), "velocity", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_COMPUTE, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Active", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "active"), "active", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Alpha", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "alpha"), "alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Color", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "color"), "color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Custom", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "custom"), "custom", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("CustomAlpha", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "custom_alpha"), "custom_alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Delta", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "delta"), "delta", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("EmissionTransform", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "emission_transform"), "emission_transform", VisualShaderNode::PORT_TYPE_TRANSFORM, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Index", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "index"), "index", VisualShaderNode::PORT_TYPE_SCALAR_INT, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("LifeTime", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "lifetime"), "lifetime", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Restart", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "restart"), "restart", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Time", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "time"), "time", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Transform", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "transform"), "transform", VisualShaderNode::PORT_TYPE_TRANSFORM, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Velocity", "Input", "Emit", "VisualShaderNodeInput", vformat(input_param_shader_modes, "velocity"), "velocity", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_EMIT, Shader::MODE_PARTICLES)); + + add_options.push_back(AddOption("Active", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "active"), "active", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Alpha", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "alpha"), "alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Color", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "color"), "color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Custom", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "custom"), "custom", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("CustomAlpha", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "custom_alpha"), "custom_alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Delta", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "delta"), "delta", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("EmissionTransform", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "emission_transform"), "emission_transform", VisualShaderNode::PORT_TYPE_TRANSFORM, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Index", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "index"), "index", VisualShaderNode::PORT_TYPE_SCALAR_INT, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("LifeTime", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "lifetime"), "lifetime", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Restart", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "restart"), "restart", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Time", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "time"), "time", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Transform", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "transform"), "transform", VisualShaderNode::PORT_TYPE_TRANSFORM, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Velocity", "Input", "Process", "VisualShaderNodeInput", vformat(input_param_shader_modes, "velocity"), "velocity", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_PROCESS, Shader::MODE_PARTICLES)); + + add_options.push_back(AddOption("Active", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "active"), "active", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Alpha", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "alpha"), "alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Color", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "color"), "color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Custom", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "custom"), "custom", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("CustomAlpha", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "custom_alpha"), "custom_alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Delta", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "delta"), "delta", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("EmissionTransform", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "emission_transform"), "emission_transform", VisualShaderNode::PORT_TYPE_TRANSFORM, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Index", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "index"), "index", VisualShaderNode::PORT_TYPE_SCALAR_INT, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("LifeTime", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "lifetime"), "lifetime", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Restart", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "restart"), "restart", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Time", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "time"), "time", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Transform", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "transform"), "transform", VisualShaderNode::PORT_TYPE_TRANSFORM, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); + add_options.push_back(AddOption("Velocity", "Input", "End", "VisualShaderNodeInput", vformat(input_param_shader_modes, "velocity"), "velocity", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_END, Shader::MODE_PARTICLES)); // SKY INPUTS - add_options.push_back(AddOption("AtCubeMapPass", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "at_cubemap_pass"), "at_cubemap_pass", VisualShaderNode::PORT_TYPE_BOOLEAN, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("AtHalfResPass", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "at_half_res_pass"), "at_half_res_pass", VisualShaderNode::PORT_TYPE_BOOLEAN, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("AtQuarterResPass", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "at_quarter_res_pass"), "at_quarter_res_pass", VisualShaderNode::PORT_TYPE_BOOLEAN, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("EyeDir", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "eyedir"), "eyedir", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("HalfResColor", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "half_res_color"), "half_res_color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("HalfResAlpha", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "half_res_alpha"), "half_res_alpha", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light0Color", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light0_color"), "light0_color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light0Direction", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light0_direction"), "light0_direction", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light0Enabled", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light0_enabled"), "light0_enabled", VisualShaderNode::PORT_TYPE_BOOLEAN, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light0Energy", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light0_energy"), "light0_energy", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light1Color", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light1_color"), "light1_color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light1Direction", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light1_direction"), "light1_direction", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light1Enabled", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light1_enabled"), "light1_enabled", VisualShaderNode::PORT_TYPE_BOOLEAN, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light1Energy", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light1_energy"), "light1_energy", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light2Color", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light2_color"), "light2_color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light2Direction", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light2_direction"), "light2_direction", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light2Enabled", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light2_enabled"), "light2_enabled", VisualShaderNode::PORT_TYPE_BOOLEAN, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light2Energy", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light2_energy"), "light2_energy", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light3Color", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light3_color"), "light3_color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light3Direction", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light3_direction"), "light3_direction", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light3Enabled", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light3_enabled"), "light3_enabled", VisualShaderNode::PORT_TYPE_BOOLEAN, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Light3Energy", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light3_energy"), "light3_energy", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Position", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "position"), "position", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("QuarterResColor", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "quarter_res_color"), "quarter_res_color", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("QuarterResAlpha", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "quarter_res_alpha"), "quarter_res_alpha", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Radiance", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "radiance"), "radiance", VisualShaderNode::PORT_TYPE_SAMPLER, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("ScreenUV", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "screen_uv"), "screen_uv", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("SkyCoords", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "sky_coords"), "sky_coords", VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); - add_options.push_back(AddOption("Time", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "time"), "time", VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("AtCubeMapPass", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "at_cubemap_pass"), "at_cubemap_pass", VisualShaderNode::PORT_TYPE_BOOLEAN, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("AtHalfResPass", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "at_half_res_pass"), "at_half_res_pass", VisualShaderNode::PORT_TYPE_BOOLEAN, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("AtQuarterResPass", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "at_quarter_res_pass"), "at_quarter_res_pass", VisualShaderNode::PORT_TYPE_BOOLEAN, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("EyeDir", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "eyedir"), "eyedir", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("HalfResColor", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "half_res_color"), "half_res_color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("HalfResAlpha", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "half_res_alpha"), "half_res_alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light0Color", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light0_color"), "light0_color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light0Direction", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light0_direction"), "light0_direction", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light0Enabled", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light0_enabled"), "light0_enabled", VisualShaderNode::PORT_TYPE_BOOLEAN, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light0Energy", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light0_energy"), "light0_energy", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light1Color", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light1_color"), "light1_color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light1Direction", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light1_direction"), "light1_direction", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light1Enabled", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light1_enabled"), "light1_enabled", VisualShaderNode::PORT_TYPE_BOOLEAN, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light1Energy", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light1_energy"), "light1_energy", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light2Color", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light2_color"), "light2_color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light2Direction", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light2_direction"), "light2_direction", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light2Enabled", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light2_enabled"), "light2_enabled", VisualShaderNode::PORT_TYPE_BOOLEAN, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light2Energy", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light2_energy"), "light2_energy", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light3Color", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light3_color"), "light3_color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light3Direction", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light3_direction"), "light3_direction", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light3Enabled", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light3_enabled"), "light3_enabled", VisualShaderNode::PORT_TYPE_BOOLEAN, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Light3Energy", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "light3_energy"), "light3_energy", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Position", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "position"), "position", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("QuarterResColor", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "quarter_res_color"), "quarter_res_color", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("QuarterResAlpha", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "quarter_res_alpha"), "quarter_res_alpha", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Radiance", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "radiance"), "radiance", VisualShaderNode::PORT_TYPE_SAMPLER, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("ScreenUV", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "screen_uv"), "screen_uv", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("SkyCoords", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "sky_coords"), "sky_coords", VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); + add_options.push_back(AddOption("Time", "Input", "Fragment", "VisualShaderNodeInput", vformat(input_param_for_fragment_shader_mode, "time"), "time", VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT, Shader::MODE_SKY)); // SCALAR @@ -2862,7 +2905,7 @@ VisualShaderEditor::VisualShaderEditor() { add_options.push_back(AddOption("CubeMapUniform", "Textures", "Variables", "VisualShaderNodeCubemapUniform", TTR("Cubic texture uniform lookup."), -1, -1)); add_options.push_back(AddOption("Texture2DArray", "Textures", "Functions", "VisualShaderNodeTexture2DArray", TTR("Perform the 2D-array texture lookup."), -1, -1, -1, -1, -1)); add_options.push_back(AddOption("TextureUniform", "Textures", "Variables", "VisualShaderNodeTextureUniform", TTR("2D texture uniform lookup."), -1, -1)); - add_options.push_back(AddOption("TextureUniformTriplanar", "Textures", "Variables", "VisualShaderNodeTextureUniformTriplanar", TTR("2D texture uniform lookup with triplanar."), -1, -1, VisualShader::TYPE_FRAGMENT | VisualShader::TYPE_LIGHT, Shader::MODE_SPATIAL)); + add_options.push_back(AddOption("TextureUniformTriplanar", "Textures", "Variables", "VisualShaderNodeTextureUniformTriplanar", TTR("2D texture uniform lookup with triplanar."), -1, -1, TYPE_FLAGS_FRAGMENT | TYPE_FLAGS_LIGHT, Shader::MODE_SPATIAL)); add_options.push_back(AddOption("Texture2DArrayUniform", "Textures", "Variables", "VisualShaderNodeTexture2DArrayUniform", TTR("2D array of textures uniform lookup."), -1, -1, -1, -1, -1)); // TRANSFORM @@ -2960,15 +3003,15 @@ VisualShaderEditor::VisualShaderEditor() { add_options.push_back(AddOption("GlobalExpression", "Special", "", "VisualShaderNodeGlobalExpression", TTR("Custom Godot Shader Language expression, which is placed on top of the resulted shader. You can place various function definitions inside and call it later in the Expressions. You can also declare varyings, uniforms and constants."))); add_options.push_back(AddOption("UniformRef", "Special", "", "VisualShaderNodeUniformRef", TTR("A reference to an existing uniform."))); - add_options.push_back(AddOption("ScalarDerivativeFunc", "Special", "Common", "VisualShaderNodeScalarDerivativeFunc", TTR("(Fragment/Light mode only) Scalar derivative function."), -1, VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT | VisualShader::TYPE_LIGHT, -1, -1, true)); - add_options.push_back(AddOption("VectorDerivativeFunc", "Special", "Common", "VisualShaderNodeVectorDerivativeFunc", TTR("(Fragment/Light mode only) Vector derivative function."), -1, VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT | VisualShader::TYPE_LIGHT, -1, -1, true)); + add_options.push_back(AddOption("ScalarDerivativeFunc", "Special", "Common", "VisualShaderNodeScalarDerivativeFunc", TTR("(Fragment/Light mode only) Scalar derivative function."), -1, VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT | TYPE_FLAGS_LIGHT, -1, -1, true)); + add_options.push_back(AddOption("VectorDerivativeFunc", "Special", "Common", "VisualShaderNodeVectorDerivativeFunc", TTR("(Fragment/Light mode only) Vector derivative function."), -1, VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT | TYPE_FLAGS_LIGHT, -1, -1, true)); - add_options.push_back(AddOption("DdX", "Special", "Derivative", "VisualShaderNodeVectorDerivativeFunc", TTR("(Fragment/Light mode only) (Vector) Derivative in 'x' using local differencing."), VisualShaderNodeVectorDerivativeFunc::FUNC_X, VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT | VisualShader::TYPE_LIGHT, -1, -1, true)); - add_options.push_back(AddOption("DdXS", "Special", "Derivative", "VisualShaderNodeScalarDerivativeFunc", TTR("(Fragment/Light mode only) (Scalar) Derivative in 'x' using local differencing."), VisualShaderNodeScalarDerivativeFunc::FUNC_X, VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT | VisualShader::TYPE_LIGHT, -1, -1, true)); - add_options.push_back(AddOption("DdY", "Special", "Derivative", "VisualShaderNodeVectorDerivativeFunc", TTR("(Fragment/Light mode only) (Vector) Derivative in 'y' using local differencing."), VisualShaderNodeVectorDerivativeFunc::FUNC_Y, VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT | VisualShader::TYPE_LIGHT, -1, -1, true)); - add_options.push_back(AddOption("DdYS", "Special", "Derivative", "VisualShaderNodeScalarDerivativeFunc", TTR("(Fragment/Light mode only) (Scalar) Derivative in 'y' using local differencing."), VisualShaderNodeScalarDerivativeFunc::FUNC_Y, VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT | VisualShader::TYPE_LIGHT, -1, -1, true)); - add_options.push_back(AddOption("Sum", "Special", "Derivative", "VisualShaderNodeVectorDerivativeFunc", TTR("(Fragment/Light mode only) (Vector) Sum of absolute derivative in 'x' and 'y'."), VisualShaderNodeVectorDerivativeFunc::FUNC_SUM, VisualShaderNode::PORT_TYPE_VECTOR, VisualShader::TYPE_FRAGMENT | VisualShader::TYPE_LIGHT, -1, -1, true)); - add_options.push_back(AddOption("SumS", "Special", "Derivative", "VisualShaderNodeScalarDerivativeFunc", TTR("(Fragment/Light mode only) (Scalar) Sum of absolute derivative in 'x' and 'y'."), VisualShaderNodeScalarDerivativeFunc::FUNC_SUM, VisualShaderNode::PORT_TYPE_SCALAR, VisualShader::TYPE_FRAGMENT | VisualShader::TYPE_LIGHT, -1, -1, true)); + add_options.push_back(AddOption("DdX", "Special", "Derivative", "VisualShaderNodeVectorDerivativeFunc", TTR("(Fragment/Light mode only) (Vector) Derivative in 'x' using local differencing."), VisualShaderNodeVectorDerivativeFunc::FUNC_X, VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT | TYPE_FLAGS_LIGHT, -1, -1, true)); + add_options.push_back(AddOption("DdXS", "Special", "Derivative", "VisualShaderNodeScalarDerivativeFunc", TTR("(Fragment/Light mode only) (Scalar) Derivative in 'x' using local differencing."), VisualShaderNodeScalarDerivativeFunc::FUNC_X, VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT | TYPE_FLAGS_LIGHT, -1, -1, true)); + add_options.push_back(AddOption("DdY", "Special", "Derivative", "VisualShaderNodeVectorDerivativeFunc", TTR("(Fragment/Light mode only) (Vector) Derivative in 'y' using local differencing."), VisualShaderNodeVectorDerivativeFunc::FUNC_Y, VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT | TYPE_FLAGS_LIGHT, -1, -1, true)); + add_options.push_back(AddOption("DdYS", "Special", "Derivative", "VisualShaderNodeScalarDerivativeFunc", TTR("(Fragment/Light mode only) (Scalar) Derivative in 'y' using local differencing."), VisualShaderNodeScalarDerivativeFunc::FUNC_Y, VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT | TYPE_FLAGS_LIGHT, -1, -1, true)); + add_options.push_back(AddOption("Sum", "Special", "Derivative", "VisualShaderNodeVectorDerivativeFunc", TTR("(Fragment/Light mode only) (Vector) Sum of absolute derivative in 'x' and 'y'."), VisualShaderNodeVectorDerivativeFunc::FUNC_SUM, VisualShaderNode::PORT_TYPE_VECTOR, TYPE_FLAGS_FRAGMENT | TYPE_FLAGS_LIGHT, -1, -1, true)); + add_options.push_back(AddOption("SumS", "Special", "Derivative", "VisualShaderNodeScalarDerivativeFunc", TTR("(Fragment/Light mode only) (Scalar) Sum of absolute derivative in 'x' and 'y'."), VisualShaderNodeScalarDerivativeFunc::FUNC_SUM, VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_FRAGMENT | TYPE_FLAGS_LIGHT, -1, -1, true)); custom_node_option_idx = add_options.size(); ///////////////////////////////////////////////////////////////////// diff --git a/editor/plugins/visual_shader_editor_plugin.h b/editor/plugins/visual_shader_editor_plugin.h index 9b80488b22..6284c9a530 100644 --- a/editor/plugins/visual_shader_editor_plugin.h +++ b/editor/plugins/visual_shader_editor_plugin.h @@ -63,7 +63,9 @@ class VisualShaderEditor : public VBoxContainer { Button *add_node; Button *preview_shader; - OptionButton *edit_type; + OptionButton *edit_type = nullptr; + OptionButton *edit_type_standart; + OptionButton *edit_type_particles; PanelContainer *error_panel; Label *error_label; @@ -84,6 +86,19 @@ class VisualShaderEditor : public VBoxContainer { MenuButton *tools; bool preview_showed; + bool particles_mode; + + enum TypeFlags { + TYPE_FLAGS_VERTEX = 1, + TYPE_FLAGS_FRAGMENT = 2, + TYPE_FLAGS_LIGHT = 4, + }; + + enum ParticlesTypeFlags { + TYPE_FLAGS_EMIT = 1, + TYPE_FLAGS_PROCESS = 2, + TYPE_FLAGS_END = 4 + }; enum ToolsMenuOptions { EXPAND_ALL, @@ -234,6 +249,8 @@ class VisualShaderEditor : public VBoxContainer { void _input_select_item(Ref<VisualShaderNodeInput> input, String name); void _uniform_select_item(Ref<VisualShaderNodeUniformRef> p_uniform, String p_name); + VisualShader::Type get_current_shader_type() const; + void _add_input_port(int p_node, int p_port, int p_port_type, const String &p_name); void _remove_input_port(int p_node, int p_port); void _change_input_port_type(int p_type, int p_node, int p_port); diff --git a/editor/project_export.cpp b/editor/project_export.cpp index f45161d87b..1f553ba0de 100644 --- a/editor/project_export.cpp +++ b/editor/project_export.cpp @@ -310,6 +310,24 @@ void ProjectExportDialog::_edit_preset(int p_index) { _update_export_all(); child_controls_changed(); + String enc_in_filters_str = current->get_enc_in_filter(); + String enc_ex_filters_str = current->get_enc_ex_filter(); + if (!updating_enc_filters) { + enc_in_filters->set_text(enc_in_filters_str); + enc_ex_filters->set_text(enc_ex_filters_str); + } + + bool enc_pck_mode = current->get_enc_pck(); + enc_pck->set_pressed(enc_pck_mode); + + enc_directory->set_disabled(!enc_pck_mode); + enc_in_filters->set_editable(enc_pck_mode); + enc_ex_filters->set_editable(enc_pck_mode); + script_key->set_editable(enc_pck_mode); + + bool enc_directory_mode = current->get_enc_directory(); + enc_directory->set_pressed(enc_directory_mode); + int script_export_mode = current->get_script_export_mode(); script_mode->select(script_export_mode); @@ -317,7 +335,7 @@ void ProjectExportDialog::_edit_preset(int p_index) { if (!updating_script_key) { script_key->set_text(key); } - if (script_export_mode == EditorExportPreset::MODE_SCRIPT_ENCRYPTED) { + if (enc_pck_mode) { script_key->set_editable(true); bool key_valid = _validate_script_encryption_key(key); @@ -519,6 +537,56 @@ void ProjectExportDialog::_export_path_changed(const StringName &p_property, con _update_presets(); } +void ProjectExportDialog::_enc_filters_changed(const String &p_filters) { + if (updating) { + return; + } + + Ref<EditorExportPreset> current = get_current_preset(); + ERR_FAIL_COND(current.is_null()); + + current->set_enc_in_filter(enc_in_filters->get_text()); + current->set_enc_ex_filter(enc_ex_filters->get_text()); + + updating_enc_filters = true; + _update_current_preset(); + updating_enc_filters = false; +} + +void ProjectExportDialog::_open_key_help_link() { + OS::get_singleton()->shell_open("https://docs.godotengine.org/en/latest/development/compiling/compiling_with_script_encryption_key.html"); +} + +void ProjectExportDialog::_enc_pck_changed(bool p_pressed) { + if (updating) { + return; + } + + Ref<EditorExportPreset> current = get_current_preset(); + ERR_FAIL_COND(current.is_null()); + + current->set_enc_pck(p_pressed); + enc_directory->set_disabled(!p_pressed); + enc_in_filters->set_editable(p_pressed); + enc_ex_filters->set_editable(p_pressed); + script_key->set_editable(p_pressed); + + _update_current_preset(); +} + +void ProjectExportDialog::_enc_directory_changed(bool p_pressed) { + if (updating) { + return; + } + + Ref<EditorExportPreset> current = get_current_preset(); + ERR_FAIL_COND(current.is_null()); + + current->set_enc_directory(p_pressed); + + _update_current_preset(); +} + void ProjectExportDialog::_script_export_mode_changed(int p_mode) { if (updating) { return; @@ -1148,6 +1216,12 @@ ProjectExportDialog::ProjectExportDialog() { exclude_filters); exclude_filters->connect("text_changed", callable_mp(this, &ProjectExportDialog::_filter_changed)); + script_mode = memnew(OptionButton); + resources_vb->add_margin_child(TTR("Script Export Mode:"), script_mode); + script_mode->add_item(TTR("Text"), (int)EditorExportPreset::MODE_SCRIPT_TEXT); + script_mode->add_item(TTR("Compiled"), (int)EditorExportPreset::MODE_SCRIPT_COMPILED); + script_mode->connect("item_selected", callable_mp(this, &ProjectExportDialog::_script_export_mode_changed)); + // Patch packages. VBoxContainer *patch_vb = memnew(VBoxContainer); @@ -1205,23 +1279,50 @@ ProjectExportDialog::ProjectExportDialog() { // Script export parameters. updating_script_key = false; + updating_enc_filters = false; + + VBoxContainer *sec_vb = memnew(VBoxContainer); + sec_vb->set_name(TTR("Encryption")); + + enc_pck = memnew(CheckButton); + enc_pck->connect("toggled", callable_mp(this, &ProjectExportDialog::_enc_pck_changed)); + enc_pck->set_text(TTR("Encrypt exported PCK")); + sec_vb->add_child(enc_pck); + + enc_directory = memnew(CheckButton); + enc_directory->connect("toggled", callable_mp(this, &ProjectExportDialog::_enc_directory_changed)); + enc_directory->set_text("Encrypt index (file names and info)."); + sec_vb->add_child(enc_directory); + + enc_in_filters = memnew(LineEdit); + enc_in_filters->connect("text_changed", callable_mp(this, &ProjectExportDialog::_enc_filters_changed)); + sec_vb->add_margin_child( + TTR("Filters to include files/folders\n(comma-separated, e.g: *.tscn, *.tres, scenes/*)"), + enc_in_filters); + + enc_ex_filters = memnew(LineEdit); + enc_ex_filters->connect("text_changed", callable_mp(this, &ProjectExportDialog::_enc_filters_changed)); + sec_vb->add_margin_child( + TTR("Filters to exclude files/folders\n(comma-separated, e.g: *.stex, *.import, music/*)"), + enc_ex_filters); - VBoxContainer *script_vb = memnew(VBoxContainer); - script_vb->set_name(TTR("Script")); - script_mode = memnew(OptionButton); - script_vb->add_margin_child(TTR("Script Export Mode:"), script_mode); - script_mode->add_item(TTR("Text"), (int)EditorExportPreset::MODE_SCRIPT_TEXT); - script_mode->add_item(TTR("Compiled"), (int)EditorExportPreset::MODE_SCRIPT_COMPILED); - script_mode->add_item(TTR("Encrypted (Provide Key Below)"), (int)EditorExportPreset::MODE_SCRIPT_ENCRYPTED); - script_mode->connect("item_selected", callable_mp(this, &ProjectExportDialog::_script_export_mode_changed)); script_key = memnew(LineEdit); script_key->connect("text_changed", callable_mp(this, &ProjectExportDialog::_script_encryption_key_changed)); script_key_error = memnew(Label); script_key_error->set_text("- " + TTR("Invalid Encryption Key (must be 64 characters long)")); script_key_error->add_theme_color_override("font_color", EditorNode::get_singleton()->get_gui_base()->get_theme_color("error_color", "Editor")); - script_vb->add_margin_child(TTR("Script Encryption Key (256-bits as hex):"), script_key); - script_vb->add_child(script_key_error); - sections->add_child(script_vb); + sec_vb->add_margin_child(TTR("Encryption Key (256-bits as hex):"), script_key); + sec_vb->add_child(script_key_error); + sections->add_child(sec_vb); + + Label *sec_info = memnew(Label); + sec_info->set_text(TTR("Note: Encryption key needs to be stored in the binary,\nyou need to build the export templates from source.")); + sec_vb->add_child(sec_info); + + LinkButton *sec_more_info = memnew(LinkButton); + sec_more_info->set_text(TTR("More Info...")); + sec_more_info->connect("pressed", callable_mp(this, &ProjectExportDialog::_open_key_help_link)); + sec_vb->add_child(sec_more_info); sections->connect("tab_changed", callable_mp(this, &ProjectExportDialog::_tab_changed)); diff --git a/editor/project_export.h b/editor/project_export.h index cfa00773d8..75402dc334 100644 --- a/editor/project_export.h +++ b/editor/project_export.h @@ -145,6 +145,11 @@ private: CheckBox *export_debug; CheckBox *export_pck_zip_debug; + CheckButton *enc_pck; + CheckButton *enc_directory; + LineEdit *enc_in_filters; + LineEdit *enc_ex_filters; + void _open_export_template_manager(); void _export_pck_zip(); @@ -161,10 +166,16 @@ private: void _custom_features_changed(const String &p_text); bool updating_script_key; + bool updating_enc_filters; + void _enc_pck_changed(bool p_pressed); + void _enc_directory_changed(bool p_pressed); + void _enc_filters_changed(const String &p_text); void _script_export_mode_changed(int p_mode); void _script_encryption_key_changed(const String &p_key); bool _validate_script_encryption_key(const String &p_key); + void _open_key_help_link(); + void _tab_changed(int); protected: diff --git a/editor/translations/af.po b/editor/translations/af.po index 90dca850de..526fe331ae 100644 --- a/editor/translations/af.po +++ b/editor/translations/af.po @@ -1186,6 +1186,16 @@ msgid "Gold Sponsors" msgstr "Goue Borge" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Silver Skenkers" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Brons Skenkers" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Borge" diff --git a/editor/translations/ar.po b/editor/translations/ar.po index 075bc25f6e..d5b9ecc9d4 100644 --- a/editor/translations/ar.po +++ b/editor/translations/ar.po @@ -48,8 +48,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-08-11 14:04+0000\n" -"Last-Translator: Musab Alasaifer <mousablasefer@gmail.com>\n" +"PO-Revision-Date: 2020-08-20 15:20+0000\n" +"Last-Translator: أحمد مصطفى الطبراني <eltabaraniahmed@gmail.com>\n" "Language-Team: Arabic <https://hosted.weblate.org/projects/godot-engine/" "godot/ar/>\n" "Language: ar\n" @@ -58,12 +58,12 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " "&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n" -"X-Generator: Weblate 4.2-dev\n" +"X-Generator: Weblate 4.2.1-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." -msgstr "معامل type خاطئ لدالة Convert, استخدم احدى الثوابت من مجموعة TYPE_*." +msgstr "معامل خاطئ لدالة ()Convert, استخدم احدى الثوابت من مجموعة TYPE_*." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp msgid "Expected a string of length 1 (a character)." @@ -157,11 +157,11 @@ msgstr "أدخل المفتاح هنا" #: editor/animation_bezier_editor.cpp msgid "Duplicate Selected Key(s)" -msgstr "استنساخ المفاتيح المحدد(ة)" +msgstr "تكرار المفتاح(المفاتيح) المحدد(ة)" #: editor/animation_bezier_editor.cpp msgid "Delete Selected Key(s)" -msgstr "إمسح المفاتيح المحدد(ة)" +msgstr "إمسح المفتاح(المفاتيح) المحدد(ة)" #: editor/animation_bezier_editor.cpp msgid "Add Bezier Point" @@ -185,7 +185,7 @@ msgstr "تغيير وقت الإطار الرئيسي للحركة" #: editor/animation_track_editor.cpp msgid "Anim Change Transition" -msgstr "تغيير إنتقالية التحريك" +msgstr "تغيير إنتقالية الرسوم المتحركة" #: editor/animation_track_editor.cpp msgid "Anim Change Transform" @@ -254,11 +254,11 @@ msgstr "شريط ضبط الحركة" #: editor/animation_track_editor.cpp msgid "Animation length (frames)" -msgstr "مدة الحركة (frames)" +msgstr "مدة الحركة (بالإطارات)" #: editor/animation_track_editor.cpp msgid "Animation length (seconds)" -msgstr "مدة الحركة (seconds)" +msgstr "مدة الحركة (بالثواني)" #: editor/animation_track_editor.cpp msgid "Add Track" @@ -381,7 +381,7 @@ msgstr "حذف مسار التحريك" #: editor/animation_track_editor.cpp msgid "Create NEW track for %s and insert key?" -msgstr "أنشئ مسار جديد لـ %s و أدخل مفتاح؟" +msgstr "أنشئ مسار جديد لـ %s و إدخال مفتاح؟" #: editor/animation_track_editor.cpp msgid "Create %d NEW tracks and insert keys?" @@ -445,11 +445,11 @@ msgstr "" #: editor/animation_track_editor.cpp msgid "Animation tracks can only point to AnimationPlayer nodes." -msgstr "مسارات الحركة يمكنها فقط أن تشير إلى عقد مشغّل الحركة." +msgstr "مسارات الحركة يمكنها فقط أن تشير إلى عُقد مشغّل الحركة." #: editor/animation_track_editor.cpp msgid "An animation player can't animate itself, only other players." -msgstr "مشغل الحركة لا يمكنه تحريك نفسه, فقط الاعبين الأخرين." +msgstr "مشغل الحركة لا يمكنه أن يحرك نفسه, فقط الاعبين الأخرين." #: editor/animation_track_editor.cpp msgid "Not possible to add a new track without a root" @@ -457,11 +457,11 @@ msgstr "لا يمكن إضافة مقطع جديد بدون جذر" #: editor/animation_track_editor.cpp msgid "Invalid track for Bezier (no suitable sub-properties)" -msgstr "مقطع غير متوافق مع منحنى بيزير Bezier (خصائص فرعية غير متوافقة)" +msgstr "مقطع غير متوافق مع منحنى بيزر (Bezier) (خصائص فرعية غير متوافقة)" #: editor/animation_track_editor.cpp msgid "Add Bezier Track" -msgstr "إضافة مسار لمنحنى بريزير" +msgstr "إضافة مسار لمنحنى بيزر" #: editor/animation_track_editor.cpp msgid "Track path is invalid, so can't add a key." @@ -469,7 +469,7 @@ msgstr "مسار المقطع غير صالح, إذن لا يمكن إضافة #: editor/animation_track_editor.cpp msgid "Track is not of type Spatial, can't insert key" -msgstr "المقطع ليس من نوع مكاني (Spatial), لا يمكن إضافة مفتاح." +msgstr "المقطع ليس من نوع مكاني (Spatial), لا يمكن إضافة مفتاح" #: editor/animation_track_editor.cpp msgid "Add Transform Track Key" @@ -497,7 +497,7 @@ msgstr "مفتاح حركة التحريك" #: editor/animation_track_editor.cpp msgid "Clipboard is empty" -msgstr "ذاكرة التخزين المؤقت (Clipboard) فارغة" +msgstr "الحافظة (Clipboard) فارغة" #: editor/animation_track_editor.cpp msgid "Paste Tracks" @@ -510,7 +510,7 @@ msgstr "مفتاح تكبير حركة" #: editor/animation_track_editor.cpp msgid "" "This option does not work for Bezier editing, as it's only a single track." -msgstr "هذا الخيار لا يعمل لتعديل خط (Bezier), لأنه فقط مقطع واحد." +msgstr "هذا الخيار لا يعمل لتعديل منحنى بيزر (Bezier), لأنه فقط مقطع واحد." #: editor/animation_track_editor.cpp msgid "" @@ -524,12 +524,14 @@ msgid "" "Alternatively, use an import preset that imports animations to separate " "files." msgstr "" -"هذا الانيميشن ينتمي الى مشهد مستورد، لذا فإن أي تغييرات في المسارات " -"المستوردة لن يتم حفظها.\n" +"هذه الحركة (رسوم متحركة) تنتمي الى مشهد مستورد، لذا فإن أي تغييرات في " +"المسارات المستوردة لن يتم حفظها.\n" "\n" "لتشغيل الامكانية لإضافة مسارات خاصة، انتقل إلى إعدادات استيراد المشهد واضبط " -"\"Animation > Storage\" إلى \"Files\"، شغل \"Animation > Keep Custom Tracks" -"\"، ثم ..." +"\"رسوم متحركة > تخزين\" إلى \"ملفات\"،\n" +"شغل \"رسوم متحركة > أحتفظ بالمقاطع (المسارات) المخصصة\"، ثم اعد الاستيراد.\n" +"يمكنك ايضاً استخدام إعدادات استيراد مسبقة تقوم باستيراد الرسم المتحرك الى " +"ملفات متفرقة." #: editor/animation_track_editor.cpp msgid "Warning: Editing imported animation" @@ -595,7 +597,7 @@ msgstr "تكرير المحدد" #: editor/animation_track_editor.cpp msgid "Duplicate Transposed" -msgstr "نسخ محمّل" +msgstr "نقل مكرر" #: editor/animation_track_editor.cpp msgid "Delete Selection" @@ -623,7 +625,7 @@ msgstr "إختار العقدة التي سوف يتم تحريكها:" #: editor/animation_track_editor.cpp msgid "Use Bezier Curves" -msgstr "إستعمل منحنيات بيزية" +msgstr "إستعمل منحنيات بيزر" #: editor/animation_track_editor.cpp msgid "Anim. Optimizer" @@ -796,7 +798,7 @@ msgid "" "Target method not found. Specify a valid method or attach a script to the " "target node." msgstr "" -"لم يتم العثور على الدالة المستهدفة. حدّد دالة سليمة أو أرفق كود للعقدة " +"لم يتم العثور على الدالة المستهدفة. حدّد دالة سليمة أو أرفق نص برمجي للعقدة " "المستهدفة." #: editor/connections_dialog.cpp @@ -922,7 +924,7 @@ msgstr "تعديل الإتصال:" #: editor/connections_dialog.cpp msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "هل أنت(ي) متأكد(ة) أنك تود إزالة كل الإتصالات من الإشارة \"%s\"؟" +msgstr "هل أنت متأكد أنك تود إزالة كل الإتصالات من الإشارة \"%s\"؟" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -930,7 +932,7 @@ msgstr "الإشارات" #: editor/connections_dialog.cpp msgid "Are you sure you want to remove all connections from this signal?" -msgstr "هل أنت(ي) متأكد(ة) أنك تود إزالة كل الإتصالات من هذه الإشارة؟" +msgstr "هل أنت متأكد أنك تود إزالة كل الإتصالات من هذه الإشارة؟" #: editor/connections_dialog.cpp msgid "Disconnect All" @@ -991,7 +993,7 @@ msgstr "البحث عن بديل لـ:" #: editor/dependency_editor.cpp msgid "Dependencies For:" -msgstr "تابعة لـ:" +msgstr "تبعيات لـ:" #: editor/dependency_editor.cpp msgid "" @@ -1096,7 +1098,7 @@ msgstr "اخطاء في التحميل!" #: editor/dependency_editor.cpp msgid "Permanently delete %d item(s)? (No undo!)" -msgstr "إمسح نهائيا %d عنصر(عناصر)؟ (بلا رجعة!)" +msgstr "هل تريد حذف %d عنصر (عناصر) نهائيًا؟ (لا تراجع!)" #: editor/dependency_editor.cpp msgid "Show Dependencies" @@ -1132,11 +1134,11 @@ msgstr "تغيير قيمة في القاموس" #: editor/editor_about.cpp msgid "Thanks from the Godot community!" -msgstr "شكراً من مجتمع Godot!" +msgstr "شكراً من مجتمع غودوت!" #: editor/editor_about.cpp msgid "Godot Engine contributors" -msgstr "المسهامين في محرك Godot" +msgstr "المسهامين في محرك غودوت" #: editor/editor_about.cpp msgid "Project Founders" @@ -1167,6 +1169,16 @@ msgid "Gold Sponsors" msgstr "الرعاة الذهبيين" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "المانحين الفضيين" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "المانحين البرنزيين" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "الرعاة الصغار" @@ -1201,9 +1213,9 @@ msgid "" "is an exhaustive list of all such third-party components with their " "respective copyright statements and license terms." msgstr "" -"محرك \"Godot\" يعتمد على عدد من المكتبات و المكونات البرمجية لملاك اخرين و " -"لكنها مجانية و مفتوحة المصدر، و كلها متفقة مع شروط الاستخدام لرخصة \"MIT\". " -"في ما يلي قائمة تحوي جميع هذه المكونات اضافة الى حقوق النشر و شروط الاستخدام " +"محرك غودوت يعتمد على عدد من المكتبات و المكونات البرمجية لملاك اخرين و لكنها " +"مجانية و مفتوحة المصدر، و كلها متفقة مع شروط الاستخدام لرخصة \"MIT\". في ما " +"يلي قائمة تحوي جميع هذه المكونات اضافة الى حقوق النشر و شروط الاستخدام " "الخاصة بها." #: editor/editor_about.cpp @@ -1224,7 +1236,7 @@ msgstr "حدث خطأ عندفتح ملف الحزمة بسبب أن الملف #: editor/editor_asset_installer.cpp msgid "%s (Already Exists)" -msgstr "%s (موجود أصلاً!)" +msgstr "%s (موجود بالفعل!)" #: editor/editor_asset_installer.cpp msgid "Uncompressing Assets" @@ -1269,39 +1281,39 @@ msgstr "أضف تأثير" #: editor/editor_audio_buses.cpp msgid "Rename Audio Bus" -msgstr "إعادة تسمية بيوس الصوت" +msgstr "إعادة تسمية مسار الصوت" #: editor/editor_audio_buses.cpp msgid "Change Audio Bus Volume" -msgstr "تغيير حجم صوت البيوس" +msgstr "تغيير حجم صوت مسار الصوت" #: editor/editor_audio_buses.cpp msgid "Toggle Audio Bus Solo" -msgstr "تبديل بيوس الصوت إلي فردي" +msgstr "تبديل مسار الصوت إلي فردي" #: editor/editor_audio_buses.cpp msgid "Toggle Audio Bus Mute" -msgstr "تبديل بيوس الصوت إلي صامت" +msgstr "تبديل مسار الصوت إلي صامت" #: editor/editor_audio_buses.cpp msgid "Toggle Audio Bus Bypass Effects" -msgstr "تبديل بيوس الصوت إلي موثرات التبديل" +msgstr "تبديل مسار الصوت إلي موثرات التبديل" #: editor/editor_audio_buses.cpp msgid "Select Audio Bus Send" -msgstr "حدد بيوس الصوت للإرسال" +msgstr "حدد مسار الصوت للإرسال" #: editor/editor_audio_buses.cpp msgid "Add Audio Bus Effect" -msgstr "أضف موثرات إلي بيوس الصوت" +msgstr "أضف موثرات إلي مسار الصوت" #: editor/editor_audio_buses.cpp msgid "Move Bus Effect" -msgstr "حرك مؤثر البيوس" +msgstr "حرك ثأثير مسار الصوت" #: editor/editor_audio_buses.cpp msgid "Delete Bus Effect" -msgstr "مسح تأثير البيوس" +msgstr "مسح تأثير مسار الصوت" #: editor/editor_audio_buses.cpp msgid "Drag & drop to rearrange." @@ -1321,7 +1333,7 @@ msgstr "تخطي" #: editor/editor_audio_buses.cpp msgid "Bus options" -msgstr "إعدادات البيوس" +msgstr "إعدادات مسار الصوت" #: editor/editor_audio_buses.cpp editor/filesystem_dock.cpp #: editor/plugins/animation_player_editor_plugin.cpp editor/scene_tree_dock.cpp @@ -1342,31 +1354,31 @@ msgstr "الصوت" #: editor/editor_audio_buses.cpp msgid "Add Audio Bus" -msgstr "أضف بيوس الصوت" +msgstr "أضف مسار الصوت" #: editor/editor_audio_buses.cpp msgid "Master bus can't be deleted!" -msgstr "البيوس الأساسي لا يمكن مسحة!" +msgstr "مسار الصوت الأساسي لا يمكن مسحة!" #: editor/editor_audio_buses.cpp msgid "Delete Audio Bus" -msgstr "إمسح بيوس الصوت" +msgstr "إمسح مسار الصوت" #: editor/editor_audio_buses.cpp msgid "Duplicate Audio Bus" -msgstr "تكرير بيوس الصوت" +msgstr "تكرار مسار الصوت" #: editor/editor_audio_buses.cpp msgid "Reset Bus Volume" -msgstr "إرجاع صوت البيس" +msgstr "إرجاع صوت المسار" #: editor/editor_audio_buses.cpp msgid "Move Audio Bus" -msgstr "تحريك بيوس الصوت" +msgstr "تحريك مسار الصوت" #: editor/editor_audio_buses.cpp msgid "Save Audio Bus Layout As..." -msgstr "إحفظ نسق بيوس الصوت كـ..." +msgstr "حفظ تخطيط مسار الصوت كـ…" #: editor/editor_audio_buses.cpp msgid "Location for New Layout..." @@ -1374,7 +1386,7 @@ msgstr "المكان للنسق الجديد..." #: editor/editor_audio_buses.cpp msgid "Open Audio Bus Layout" -msgstr "إفتح نسق بيوس الصوت" +msgstr "إفتح نسق مسار الصوت" #: editor/editor_audio_buses.cpp msgid "There is no '%s' file." @@ -1386,15 +1398,15 @@ msgstr "المخطط" #: editor/editor_audio_buses.cpp msgid "Invalid file, not an audio bus layout." -msgstr "ملف خطأ، ليس ملف نسق بيوس الصوت." +msgstr "ملف خطأ، ليس ملف نسق مسار الصوت." #: editor/editor_audio_buses.cpp msgid "Error saving file: %s" -msgstr "خطأ !خطأ في تسجيل الملف: s%" +msgstr "خطأ في تحميل الملف: s%" #: editor/editor_audio_buses.cpp msgid "Add Bus" -msgstr "أضف بيوس" +msgstr "أضف مسار" #: editor/editor_audio_buses.cpp msgid "Add a new Audio Bus to this layout." @@ -1408,7 +1420,7 @@ msgstr "تحميل" #: editor/editor_audio_buses.cpp msgid "Load an existing Bus Layout." -msgstr "تحميل نسق بيوس موجود مسبقاً." +msgstr "تحميل نسق مسار موجود مسبقاً." #: editor/editor_audio_buses.cpp msgid "Save As" @@ -1416,7 +1428,7 @@ msgstr "حفظ بأسم" #: editor/editor_audio_buses.cpp msgid "Save this Bus Layout to a file." -msgstr "إحفظ نسق البيوس هذا إلي ملف." +msgstr "إحفظ نسق هذا مسار إلي ملف." #: editor/editor_audio_buses.cpp editor/import_dock.cpp msgid "Load Default" @@ -1424,11 +1436,11 @@ msgstr "تحميل الإفتراضي" #: editor/editor_audio_buses.cpp msgid "Load the default Bus Layout." -msgstr "تحميل نسق البيوس الإفتراضي." +msgstr "تحميل نسق المسار الإفتراضي." #: editor/editor_audio_buses.cpp msgid "Create a new Bus Layout." -msgstr "أنشئ نسق بيوس جديد." +msgstr "أنشئ نسق مسار جديد." #: editor/editor_autoload_settings.cpp msgid "Invalid name." @@ -1476,7 +1488,7 @@ msgstr "ازالة التحميل التلقائي" #: editor/editor_autoload_settings.cpp editor/editor_plugin_settings.cpp msgid "Enable" -msgstr "تمكين" +msgstr "تفعيل" #: editor/editor_autoload_settings.cpp msgid "Rearrange Autoloads" @@ -1484,7 +1496,7 @@ msgstr "اعادة ترتيب التحميلات التلقائية" #: editor/editor_autoload_settings.cpp msgid "Can't add autoload:" -msgstr "لا يمكن اضافة التحميل التلقائي" +msgstr "لا يمكن إضافة التحميل التلقائي:" #: editor/editor_autoload_settings.cpp msgid "Add AutoLoad" @@ -1679,7 +1691,7 @@ msgstr "(المُحرر مُعطّل)" #: editor/editor_feature_profile.cpp msgid "Class Options:" -msgstr "إعدادات الصف Class:" +msgstr "إعدادات الصف (Class):" #: editor/editor_feature_profile.cpp msgid "Enable Contextual Editor" @@ -1748,7 +1760,7 @@ msgstr "إعدادات الصف Class" #: editor/editor_feature_profile.cpp msgid "New profile name:" -msgstr "اسم مَلف profile جديد:" +msgstr "اسم مَلف (profile) جديد:" #: editor/editor_feature_profile.cpp msgid "Erase Profile" @@ -1978,11 +1990,11 @@ msgstr "الافتراضي:" #: editor/editor_help.cpp msgid "Methods" -msgstr "قائمة الطرق" +msgstr "الطُرق" #: editor/editor_help.cpp msgid "Theme Properties" -msgstr "خصائص الثمة" +msgstr "خصائص الثِمة" #: editor/editor_help.cpp msgid "Enumerations" @@ -2010,7 +2022,7 @@ msgstr "" #: editor/editor_help.cpp msgid "Method Descriptions" -msgstr "أوصاف الدوال Method" +msgstr "أوصاف الدوال" #: editor/editor_help.cpp msgid "" @@ -2087,7 +2099,7 @@ msgstr "خاصية" #: editor/editor_help_search.cpp msgid "Theme Property" -msgstr "خاصية الموضوع Theme" +msgstr "خاصية الموضوع (Theme)" #: editor/editor_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" @@ -2232,7 +2244,7 @@ msgstr "حفظ المشهد" #: editor/editor_node.cpp msgid "Analyzing" -msgstr "يحلل" +msgstr "جاري التحليل" #: editor/editor_node.cpp msgid "Creating Thumbnail" @@ -2240,7 +2252,7 @@ msgstr "ينشئ الصورة المصغرة" #: editor/editor_node.cpp msgid "This operation can't be done without a tree root." -msgstr "هذه العملية لا يمكنها الإكتمال من غير جذر شجرة ." +msgstr "هذه العملية لا يمكنها الإكتمال من غير شجرة رئيسة." #: editor/editor_node.cpp msgid "" @@ -2386,7 +2398,7 @@ msgstr "يتطلب حفظ المشهد توافر عُقدة رئيسة." #: editor/editor_node.cpp msgid "Save Scene As..." -msgstr "حفظ المشهد كـ..." +msgstr "حفظ المشهد كـ…" #: editor/editor_node.cpp msgid "No" @@ -2497,31 +2509,33 @@ msgstr "غير قادر علي تفعيل إضافة البرنامج المُس #: editor/editor_node.cpp msgid "Unable to find script field for addon plugin at: 'res://addons/%s'." msgstr "" -"غير قادر علي إيجاد منطقة الكود من أجل إضافة البرنامج في: 'res://addons/%s'." +"غير قادر علي إيجاد منطقة النص البرمجي من أجل إضافة البرنامج في: 'res://" +"addons/%s'." #: editor/editor_node.cpp msgid "Unable to load addon script from path: '%s'." -msgstr "غير قادر علي تحميل كود الإضافة من المسار: '%s'." +msgstr "غير قادر علي تحميل النص البرمجي للإضافة من المسار: '%s'." #: editor/editor_node.cpp msgid "" "Unable to load addon script from path: '%s' There seems to be an error in " "the code, please check the syntax." msgstr "" -"غير قادر علي تحميل كود الإضافة من المسار: '%s' يبدو أن الكود يوجد فيه " -"أخطاء , الرجاء مراجعة الكود." +"غير قادر علي تحميل النص البرمجي الإضافب من المسار: '%s' يبدو أن شِفرة " +"البرمجية يوجد بها أخطاء , الرجاء مراجعة الشِفرة البرمجية." #: editor/editor_node.cpp msgid "" "Unable to load addon script from path: '%s' Base type is not EditorPlugin." msgstr "" -"غير قادر علي تحميل كود الإضافة من المسار: '%s' النوع الأساسي ليس إضافة " -"المُعدل." +"غير قادر علي تحميل النص البرمجي الإضافي من المسار: '%s' النوع الأساسي ليس " +"إضافة المُعدل." #: editor/editor_node.cpp msgid "Unable to load addon script from path: '%s' Script is not in tool mode." msgstr "" -"غير قادر علي تحميل كود الإضافة من المسار: '%s' الكود ليس في وضع الأداة." +"غير قادر علي تحميل النص البرمجي الإضافي من المسار: '%s' النص البرمجي ليس في " +"وضع الأداة." #: editor/editor_node.cpp msgid "" @@ -2706,7 +2720,7 @@ msgstr "تحويل الي..." #: editor/editor_node.cpp msgid "MeshLibrary..." -msgstr "مكتبة الميش..." +msgstr "مكتبة المجسم..." #: editor/editor_node.cpp msgid "TileSet..." @@ -2737,7 +2751,7 @@ msgstr "إعدادات المشروع..." #: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp msgid "Version Control" -msgstr "التحكم في الإصدار" +msgstr "التحكم بالإصدار" #: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp msgid "Set Up Version Control" @@ -2761,7 +2775,7 @@ msgstr "فتح مجلد بيانات المشروع" #: editor/editor_node.cpp editor/plugins/tile_set_editor_plugin.cpp msgid "Tools" -msgstr "ادوات" +msgstr "أدوات" #: editor/editor_node.cpp msgid "Orphan Resource Explorer..." @@ -2769,7 +2783,7 @@ msgstr "متصفح الموارد أورفان..." #: editor/editor_node.cpp msgid "Quit to Project List" -msgstr "غادر إلى قائمه المشاريع" +msgstr "العودة إلى قائمة المشاريع" #: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp #: editor/project_export.cpp @@ -2801,11 +2815,11 @@ msgid "" "On Android, deploy will use the USB cable for faster performance. This " "option speeds up testing for games with a large footprint." msgstr "" -"حينما يتم تفعيل هذا الإعداد، التصدير او النشر سوف ينتج ملف تشغيل بالحد " -"الأدني.\n" +"حينما يتم تفعيل هذا الإعداد، التصدير أو النشر سوف ينتج ملف تشغيل بالحد " +"الأدنى (مبسط).\n" "نظام الملفات سوف يتم توفيره بواسطة المُعدل من خلال الشبكة.\n" -"علي الأندرويد، النشر سوف يستخدم وصلة اليو اس بي من أجل أداء أسرع. هذا " -"الأعداد يسرع الإختبار للإلعاب مع الملفات الكثيرة." +"على الأندرويد، النشر سوف يستخدم وصلة اليو إس بي من أجل أداء أسرع. هذا " +"الإعداد يسرّع إختبار الألعاب ذو الحجم الكبير." #: editor/editor_node.cpp msgid "Visible Collision Shapes" @@ -2816,8 +2830,8 @@ msgid "" "Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " "running game if this option is turned on." msgstr "" -"أشكال الإصطدام و وعقد الراي كاست (من أجل 2D و 3D) سوف تكون ظاهرة في اللعبة " -"العاملة إذا كان هذا الإعداد مُفعل." +"أشكال الإصطدام و عُقد الراي كاست (من أجل 2D و 3D) سوف تكون ظاهرة في اللعبة " +"العاملة إذا كان هذا الإعداد مُفعّل." #: editor/editor_node.cpp msgid "Visible Navigation" @@ -2827,7 +2841,8 @@ msgstr "الإنتقال المرئي" msgid "" "Navigation meshes and polygons will be visible on the running game if this " "option is turned on." -msgstr "ميشات التنقل والبوليجين سوف يكونون ظاهرين حينما يتم تفعيل هذا الإعداد." +msgstr "" +"مجسمات التنقل والأشكال المضلعة سوف تكون ظاهرة حينما يتم تفعيل هذا الإعداد." #: editor/editor_node.cpp msgid "Sync Scene Changes" @@ -2856,22 +2871,22 @@ msgid "" "When used remotely on a device, this is more efficient with network " "filesystem." msgstr "" -"حينما يكون هذا الإعداد مُفعل، أي كود يتم حفظه سيتم إعادة تشغيلة في اللعبة " -"العاملة.\n" -"حينما يتم إستخدامة عن بعد علي جهاز، سيكون هذا أكثر فعالية مع نظام شبكات " +"حينما يكون هذا الإعداد مُفعل، أي نص برمجي يتم حفظه سيتم إعادة تحميله في " +"اللعبة العاملة.\n" +"حينما يتم إستخدامه عن بُعد على جهاز، سيكون هذا أكثر فعالية مع نظام شبكات " "الملفات." #: editor/editor_node.cpp editor/script_create_dialog.cpp msgid "Editor" -msgstr "المُعدل" +msgstr "المحرّر" #: editor/editor_node.cpp msgid "Editor Settings..." -msgstr "إعدادات المحرّر" +msgstr "إعدادات المحرّر…" #: editor/editor_node.cpp msgid "Editor Layout" -msgstr "نسق المُعدل" +msgstr "تنسيق المحرّر" #: editor/editor_node.cpp msgid "Take Screenshot" @@ -2879,11 +2894,11 @@ msgstr "أخذ صورة للشاشة" #: editor/editor_node.cpp msgid "Screenshots are stored in the Editor Data/Settings Folder." -msgstr "لقطات الشاشة تكون محفوظة في مجلّد البيانات/الإعدادت داخل المحرّر" +msgstr "لقطات الشاشة تكون محفوظة في مجلّد بيانات/إعدادات المحرّر." #: editor/editor_node.cpp msgid "Toggle Fullscreen" -msgstr "إلغاء/تفعيل وضع الشاشة الكاملة" +msgstr "تفعيل/إلغاء وضع الشاشة الكاملة" #: editor/editor_node.cpp msgid "Toggle System Console" @@ -2891,11 +2906,11 @@ msgstr "إظهار/إخفاء وحدة التحكم بالنظام" #: editor/editor_node.cpp msgid "Open Editor Data/Settings Folder" -msgstr "فتح مجلّد البيانات/الإعدادت المحرّر" +msgstr "فتح مجلّد بيانات/إعدادات المحرّر" #: editor/editor_node.cpp msgid "Open Editor Data Folder" -msgstr "افتح ملف بيانات المحرر" +msgstr "فتح مجلّد بيانات المحرّر" #: editor/editor_node.cpp msgid "Open Editor Settings Folder" @@ -2903,7 +2918,7 @@ msgstr "فتح مجلّد إعدادات المحرّر" #: editor/editor_node.cpp msgid "Manage Editor Features..." -msgstr "إدارة ميّزات المحرّر" +msgstr "إدارة ميّزات المحرّر…" #: editor/editor_node.cpp msgid "Manage Export Templates..." @@ -2933,7 +2948,7 @@ msgstr "الأسئلة و الأجوبة" #: editor/editor_node.cpp msgid "Report a Bug" -msgstr "إرسال تقرير عن bug أو خلل في شيء ما" +msgstr "إرسال تقرير عن خلل برمجي" #: editor/editor_node.cpp msgid "Send Docs Feedback" @@ -2945,7 +2960,7 @@ msgstr "المجتمع" #: editor/editor_node.cpp msgid "About" -msgstr "عن" +msgstr "عن هذا التطبيق" #: editor/editor_node.cpp msgid "Play the project." @@ -2957,11 +2972,11 @@ msgstr "تشغيل" #: editor/editor_node.cpp msgid "Pause the scene execution for debugging." -msgstr "إيقاف جلسة المشهد من أجل تنقيح الكبوات البرمجية debugging." +msgstr "إيقاف المشهد الحالي من أجل المعالجة البرمجية." #: editor/editor_node.cpp msgid "Pause Scene" -msgstr "إيقاف مؤقت للمشهد" +msgstr "إيقاف مؤقّت للمشهد" #: editor/editor_node.cpp msgid "Stop the scene." @@ -2969,7 +2984,7 @@ msgstr "إيقاف المشهد." #: editor/editor_node.cpp msgid "Play the edited scene." -msgstr "تشغيل المشهد المُعدل." +msgstr "تشغيل المشهد المُعدّل." #: editor/editor_node.cpp msgid "Play Scene" @@ -2994,7 +3009,7 @@ msgstr "حفظ و إعادة تشغيل" #: editor/editor_node.cpp msgid "Spins when the editor window redraws." -msgstr "يدور حينما يتم إعادة رسم نافذة المحرّر" +msgstr "قم بالتدوير أثناء إعادة رسم نافذة المحرّر." #: editor/editor_node.cpp msgid "Update Continuously" @@ -3014,7 +3029,7 @@ msgstr "نظام الملفات" #: editor/editor_node.cpp msgid "Inspector" -msgstr "مُراقب" +msgstr "المُراقب" #: editor/editor_node.cpp msgid "Expand Bottom Panel" @@ -3099,27 +3114,27 @@ msgstr "حدد" #: editor/editor_node.cpp msgid "Open 2D Editor" -msgstr "فتح المُعدل 2D" +msgstr "فتح المُحرر 2D" #: editor/editor_node.cpp msgid "Open 3D Editor" -msgstr "فتح المُعدل 3D" +msgstr "فتح المُحرر 3D" #: editor/editor_node.cpp msgid "Open Script Editor" -msgstr "فتح مُعدل الكود" +msgstr "فتح محرر النص البرمجي" #: editor/editor_node.cpp editor/project_manager.cpp msgid "Open Asset Library" -msgstr "فتح مكتبة الأصول" +msgstr "فتح مكتبة المُلحقات" #: editor/editor_node.cpp msgid "Open the next Editor" -msgstr "فتح في المُعدل التالي" +msgstr "فتح في المُحرر التالي" #: editor/editor_node.cpp msgid "Open the previous Editor" -msgstr "إفتح المُعدل السابق" +msgstr "إفتح المُحرر السابق" #: editor/editor_node.h msgid "Warning!" @@ -3236,7 +3251,7 @@ msgstr "إلحاق..." #: editor/editor_properties.cpp msgid "Invalid RID" -msgstr "إسم RID غير صالح." +msgstr "RID غير صالح" #: editor/editor_properties.cpp msgid "" @@ -3584,7 +3599,7 @@ msgstr "حدد ملف القالب" #: editor/export_template_manager.cpp msgid "Godot Export Templates" -msgstr "إدارة قوالب التصدير Godot" +msgstr "إدارة قوالب التصدير لغودوت" #: editor/export_template_manager.cpp msgid "Export Template Manager" @@ -3708,11 +3723,11 @@ msgstr "مشهد جديد..." #: editor/filesystem_dock.cpp editor/plugins/script_editor_plugin.cpp msgid "New Script..." -msgstr "فتح السكريبت..." +msgstr "فتح النص البرمجي..." #: editor/filesystem_dock.cpp msgid "New Resource..." -msgstr "مورد جديد..." +msgstr "مصدر جديد..." #: editor/filesystem_dock.cpp editor/plugins/visual_shader_editor_plugin.cpp #: editor/script_editor_debugger.cpp @@ -3733,7 +3748,7 @@ msgstr "إعادة التسمية" #: editor/filesystem_dock.cpp msgid "Previous Folder/File" -msgstr "المجلد/الملف السابق" +msgstr "المجلد/الملف السابق" #: editor/filesystem_dock.cpp msgid "Next Folder/File" @@ -3793,7 +3808,7 @@ msgstr "مجلد:" #: editor/find_in_files.cpp msgid "Filters:" -msgstr "فلتر:" +msgstr "تنقيات:" #: editor/find_in_files.cpp msgid "" @@ -3822,7 +3837,7 @@ msgstr "إيجاد: " #: editor/find_in_files.cpp msgid "Replace: " -msgstr "إستبدال:" +msgstr "إستبدال: " #: editor/find_in_files.cpp msgid "Replace all (no undo)" @@ -3895,7 +3910,7 @@ msgstr "إستيراد كمشهد واحد" #: editor/import/resource_importer_scene.cpp msgid "Import with Separate Animations" -msgstr "إستيراد مع إنميشن منفصلة" +msgstr "إستيراد مع رسوم متحركة منفصلة" #: editor/import/resource_importer_scene.cpp msgid "Import with Separate Materials" @@ -3911,15 +3926,15 @@ msgstr "إستيراد مع عناصر+موارد منفصلة" #: editor/import/resource_importer_scene.cpp msgid "Import with Separate Objects+Animations" -msgstr "إستيراد مع عناصر + إنميشن منفصلة" +msgstr "إستيراد مع عناصر + رسوم متحركة منفصلة" #: editor/import/resource_importer_scene.cpp msgid "Import with Separate Materials+Animations" -msgstr "إستيراد مع مصادر+ إنميشن منفصلة" +msgstr "إستيراد مع مصادر+ رسوم متحركة منفصلة" #: editor/import/resource_importer_scene.cpp msgid "Import with Separate Objects+Materials+Animations" -msgstr "إستيراد مع عناصر + مصادر + إنميشين منفصلين" +msgstr "إستيراد مع عناصر + مصادر + رسوم متحركة منفصلين" #: editor/import/resource_importer_scene.cpp msgid "Import as Multiple Scenes" @@ -3944,23 +3959,23 @@ msgstr "انشاء خارطة الضوء" #: editor/import/resource_importer_scene.cpp msgid "Generating for Mesh: " -msgstr "انشاء من اجل الميش: " +msgstr "انشاء من اجل المجسم: " #: editor/import/resource_importer_scene.cpp msgid "Running Custom Script..." -msgstr "تشغيل الكود المُخصص..." +msgstr "تشغيل النص البرمجي المُخصص..." #: editor/import/resource_importer_scene.cpp msgid "Couldn't load post-import script:" -msgstr "لا يمكن تحميل الكود المستورد أو المطبوع:" +msgstr "لا يمكن تحميل النص البرمجي المستورد أو المطبوع:" #: editor/import/resource_importer_scene.cpp msgid "Invalid/broken script for post-import (check console):" -msgstr "كود مستورد-ملصق متضرر/خاطئ (تحقق من وحدة التحكم):" +msgstr "النص البرمجي مستورد-ملصق متضرر/خاطئ (تحقق من وحدة التحكم):" #: editor/import/resource_importer_scene.cpp msgid "Error running post-import script:" -msgstr "خطأ في تشغيل الكود الملصق- المستورد:" +msgstr "خطأ في تشغيل النص البرمجي الملصق- المستورد:" #: editor/import/resource_importer_scene.cpp msgid "Did you return a Node-derived object in the `post_import()` method?" @@ -3980,15 +3995,15 @@ msgstr "حدد كإفتراضي من أجل '%s'" #: editor/import_dock.cpp msgid "Clear Default for '%s'" -msgstr "إخلاء الإفتراضي لـ '%s'" +msgstr "إخلاء الإفتراضي ل '%s'" #: editor/import_dock.cpp msgid "Import As:" -msgstr "إستيراد كـ:" +msgstr "إستيراد ك:" #: editor/import_dock.cpp msgid "Preset" -msgstr "إعداد مُسبق..." +msgstr "إعداد مُسبق" #: editor/import_dock.cpp msgid "Reimport" @@ -4429,38 +4444,38 @@ msgstr "إلغاء/تفعيل التشغيل التلقائي" #: editor/plugins/animation_player_editor_plugin.cpp msgid "New Animation Name:" -msgstr "إسم الحركة الجديد:" +msgstr "إسم رسم المتحرك جديد:" #: editor/plugins/animation_player_editor_plugin.cpp msgid "New Anim" -msgstr "حركة جديدة" +msgstr "رسم متحرك جديدة" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Change Animation Name:" -msgstr "تغيير إسم الحركة:" +msgstr "تغيير إسم الرسم المتحرك:" #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Delete Animation?" -msgstr "مسح الحركة؟" +msgstr "مسح الرسم المتحرك؟" #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Remove Animation" -msgstr "مسح الحركة" +msgstr "مسح الرسم المتحرك" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Invalid animation name!" -msgstr "خطأ: إسم الرسوم المتحركة خاطئ!" +msgstr "إسم الرسم المتحرك خاطئ!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation name already exists!" -msgstr "اسم الحركة موجود بالفعل!" +msgstr "إسم الرسم المتحرك موجود بالفعل!" #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Rename Animation" -msgstr "إعادة تسمية الحركة" +msgstr "إعادة تسمية الرسم المتحرك" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Blend Next Changed" @@ -4472,23 +4487,23 @@ msgstr "تغيير وقت الدمج" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Load Animation" -msgstr "تحميل حركة" +msgstr "تحميل الرسم المتحرك" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Duplicate Animation" -msgstr "تكرير الحركة" +msgstr "تكرار الرسم المتحرك" #: editor/plugins/animation_player_editor_plugin.cpp msgid "No animation to copy!" -msgstr "لا حركة رسومية لنسخها!" +msgstr "لا رسم متحرك لنسخها!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "No animation resource on clipboard!" -msgstr "لا يوجد مورد لرسومية متحركة في الحافظة clipboard!" +msgstr "لا يوجد مورد لرسم متحرك في الحافظة clipboard!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Pasted Animation" -msgstr "الحركة الرسومية المُلصقة" +msgstr "تم لصق الرسوم المتحركة" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Paste Animation" @@ -4500,39 +4515,39 @@ msgstr "لا رسومات متحركة لتحريرها!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Play selected animation backwards from current pos. (A)" -msgstr "تشغيل الحركة المختارة بشكل عكسي من الموقع الحالي. (زر A)" +msgstr "تشغيل الرسم المتحرك المختار بشكل عكسي من الموقع الحالي. (زر A)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Play selected animation backwards from end. (Shift+A)" -msgstr "تشيل الحركة المختارة بشكل عكسي من النهاية. (Shift+ش)" +msgstr "تشغيل الرسم المتحرك المختار بشكل عكسي من النهاية. (Shift+A)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Stop animation playback. (S)" -msgstr "إيقاف تشغيل الحركة. (س)" +msgstr "إيقاف تشغيل الرسم المتحرك. (S)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Play selected animation from start. (Shift+D)" -msgstr "تشغيل الحركة المحددة من البداية. (Shift+ي)" +msgstr "تشغيل الرسم المتحرك المحدد من البداية. (Shift+D)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Play selected animation from current pos. (D)" -msgstr "تشغيل الحركة المختارة من الموقع الحالي. (زر D)" +msgstr "تشغيل الرسم المتحرك المختار من الموقع الحالي. (D)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation position (in seconds)." -msgstr "موقع الحركة (بالثواني)." +msgstr "موقع الرسم المتحرك (بالثواني)." #: editor/plugins/animation_player_editor_plugin.cpp msgid "Scale animation playback globally for the node." -msgstr "تكبير تشغيل الحركة عالمياً من العقدة." +msgstr "تكبير تشغيل الرسم المتحرك عالمياً من العقدة." #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation Tools" -msgstr "أدوات الحركة" +msgstr "أدوات الرسم المتحرك" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation" -msgstr "صورة متحركة" +msgstr "الرسم المتحرك" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Edit Transitions..." @@ -4604,11 +4619,11 @@ msgstr "تثبيت مُشغّل الرسوميات المتحركة" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Create New Animation" -msgstr "إنشاء حركة جديدة" +msgstr "إنشاء رسوم متحركة جديدة" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation Name:" -msgstr "إسم الحركة:" +msgstr "إسم الرسم المتحرك:" #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/resource_preloader_editor_plugin.cpp @@ -4858,7 +4873,7 @@ msgstr "عقدة التنقل" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Import Animations..." -msgstr "إستيراد الحركة..." +msgstr "إستيراد الرسوم المتحركة..." #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Edit Node Filters" @@ -4922,7 +4937,7 @@ msgstr "فشل الطلب ، انتهت المهلة" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Timeout." -msgstr "إنتهى الوقت" +msgstr "انتهت المهلة." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Bad download hash, assuming file has been tampered with." @@ -4962,7 +4977,7 @@ msgstr "خطأ في إنشاء الطلب" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Idle" -msgstr "عاطل" +msgstr "الخمول (idle)" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Install..." @@ -7320,7 +7335,6 @@ msgid "Audio Listener" msgstr "المستمع الصوتي" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Enable Doppler" msgstr "تفعيل دوبلر" @@ -7548,7 +7562,6 @@ msgid "View Z-Near:" msgstr "إظهار Z-Near:" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "View Z-Far:" msgstr "إظهار Z-Far:" @@ -7655,9 +7668,8 @@ msgid "Invalid geometry, can't create light occluder." msgstr "هندسياً غير صالح، لا يمكن إنشاء حِظار (occluder) الضوء." #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Create LightOccluder2D Sibling" -msgstr "أنشئ شكل مُطبق" +msgstr "أنشاء ضوء محجوب ثنائي الأبعاد" #: editor/plugins/sprite_editor_plugin.cpp msgid "Sprite" @@ -7918,7 +7930,7 @@ msgstr "عنصر مُفعل اختياري" #: editor/plugins/theme_editor_plugin.cpp msgid "Named Sep." -msgstr "الفاصل المُسمّى" +msgstr "الفاصل المُسمّى." #: editor/plugins/theme_editor_plugin.cpp msgid "Submenu" @@ -7998,9 +8010,8 @@ msgid "Erase Selection" msgstr "إزالة عملية الاختيار" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Fix Invalid Tiles" -msgstr "اسم غير صالح." +msgstr "أصلح البلاطة غير الصالحة" #: editor/plugins/tile_map_editor_plugin.cpp #: modules/gridmap/grid_map_editor_plugin.cpp @@ -8028,9 +8039,8 @@ msgid "Erase TileMap" msgstr "مسح خريطة البلاط TileMap" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Find Tile" -msgstr "جد" +msgstr "جد البلاطة" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Transpose" @@ -8045,9 +8055,8 @@ msgid "Enable Priority" msgstr "تمكين الأولوية" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Filter tiles" -msgstr "فلتر الملفات..." +msgstr "تنقية البلاطات" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Give a TileSet resource to this TileMap to use its tiles." @@ -8095,9 +8104,8 @@ msgid "Add Texture(s) to TileSet." msgstr "إضافة نقش(نقوش) إلى مُحدد البلاط TileSet." #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Remove selected Texture from TileSet." -msgstr "مسح المدخلة الحالية" +msgstr "مسح النقش المُختار من رزمة البلاطات." #: editor/plugins/tile_set_editor_plugin.cpp msgid "Create from Scene" @@ -8112,9 +8120,8 @@ msgid "New Single Tile" msgstr "بلاطة مُفردة جديدة" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "New Autotile" -msgstr "إظهار الملفات" +msgstr "بلاط-تلقائي جديد" #: editor/plugins/tile_set_editor_plugin.cpp msgid "New Atlas" @@ -8150,23 +8157,23 @@ msgstr "الإطباق Occlusion" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Navigation" -msgstr "التصفح" +msgstr "التنقل" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Bitmask" -msgstr "قناع البِت Bitmask" +msgstr "قناع البِت" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Priority" -msgstr "التفاضل Priority" +msgstr "الأولية" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Z Index" -msgstr "تراتبية المحور Z" +msgstr "ترتيبية المحور Z" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Region Mode" -msgstr "وضع الأقليم Region" +msgstr "وضع الأقليم" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Collision Mode" @@ -8174,19 +8181,19 @@ msgstr "وضع التصادم" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Occlusion Mode" -msgstr "وضع الإطباق Occlusion" +msgstr "وضع الإطباق" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Navigation Mode" -msgstr "وضع التصفح" +msgstr "وضع التنقل" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Bitmask Mode" -msgstr "وضع Bitmask" +msgstr "وضع قناع-البِت" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Priority Mode" -msgstr "وضع التفاضل Priority" +msgstr "وضع الأولية" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Icon Mode" @@ -8194,21 +8201,19 @@ msgstr "وضع الأيقونة" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Z Index Mode" -msgstr "وضع Z Index" +msgstr "وضع ترتيبية المحور Z" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Copy bitmask." -msgstr "نسخ bitmask." +msgstr "نسخ قناع-البِت." #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Paste bitmask." -msgstr "لصق الحركة" +msgstr "لصق قناع-البِت" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Erase bitmask." -msgstr "زر الفأرة الأيمن: مسح النقطة." +msgstr "مسح قناع-البِت." #: editor/plugins/tile_set_editor_plugin.cpp msgid "Create a new rectangle." @@ -8497,7 +8502,7 @@ msgstr "الحالة" #: editor/plugins/version_control_editor_plugin.cpp msgid "View file diffs before committing them to the latest version" -msgstr "إظهار آخر تعديلات الملف قبل قبولهم في آخر نسخة." +msgstr "إظهار آخر تعديلات الملف قبل قبولهم في آخر نسخة" #: editor/plugins/version_control_editor_plugin.cpp msgid "No file diff is active" @@ -8846,11 +8851,11 @@ msgstr "ثابت جذر-العدد2 (1.414214)، أي قيمة جذر العدد #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the absolute value of the parameter." -msgstr "يحسب القيمة المطلقة لقيمة المَعلم." +msgstr "يُرجع القيمة المطلقة لقيمة المَعلم." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the arc-cosine of the parameter." -msgstr "يُرجع قيمة جيب التمام \"arc-cosine\" للمَعلم." +msgstr "يُرجع قيمة جيب التمام للمَعلم." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the inverse hyperbolic cosine of the parameter." @@ -8866,11 +8871,11 @@ msgstr "يُرجع قيمة جيب القطع الزائد العكسي للمَ #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the arc-tangent of the parameter." -msgstr "يُرجع قيمة ظل الزاوية العكسية \"arc-tangent\" للمَعلم." +msgstr "يُرجع قيمة ظل الزاوية العكسية للمَعلم." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the arc-tangent of the parameters." -msgstr "يُرجع قيمة ظل الزاوية العكسي \"arc-tangent\" للمعالم." +msgstr "يُرجع قيمة ظل الزاوية العكسي للمَعالم." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the inverse hyperbolic tangent of the parameter." @@ -8900,11 +8905,11 @@ msgstr "يحوّل قيمة (كمية) من الراديان إلى الدرجا #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Base-e Exponential." -msgstr "الدالة Base-e." +msgstr "الدالة الأسية Base-e." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Base-2 Exponential." -msgstr "الدالة Base-2." +msgstr "الدالة الأسية Base-2." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Finds the nearest integer less than or equal to the parameter." @@ -8953,7 +8958,7 @@ msgstr "يُرجع قيمة المَعلم الأول مرفوعاً إلى قو #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Converts a quantity in degrees to radians." -msgstr "يحول الكمية المقاسة بالدرجات إلى الراديان." +msgstr "يحول الكمية المقاسة بالدرجات إلى الراديان (الدائري)." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "1.0 / scalar" @@ -8977,11 +8982,11 @@ msgstr "يستخرج إشارة المَعلم." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the sine of the parameter." -msgstr "يُرجع جيب sine المَعلم parameter." +msgstr "يُرجع جيب المَعلم." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the hyperbolic sine of the parameter." -msgstr "يُرجع قيمة الجيب العكس hyperbolic sine للمَعلم." +msgstr "يُرجع قيمة الجيب العكس للمَعلم." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the square root of the parameter." @@ -9014,15 +9019,15 @@ msgstr "" #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the tangent of the parameter." -msgstr "يُرجع قيمة ظل الزاوية tangent للمَعلم." +msgstr "يُرجع قيمة ظل الزاوية للمَعلم." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the hyperbolic tangent of the parameter." -msgstr "يُرجع قيمة ظل الزاوية العكسي hyperbolic tangent للمَعلم." +msgstr "يُرجع قيمة ظل الزاوية العكسي للمَعلم." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Finds the truncated value of the parameter." -msgstr "يجد قيمة الاقتطاع truncated للمَعلم." +msgstr "يجد قيمة الاقتطاع للمَعلم." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Adds scalar to scalar." @@ -9061,7 +9066,6 @@ msgid "Perform the texture lookup." msgstr "إجراء البحث عن النقش." #: editor/plugins/visual_shader_editor_plugin.cpp -#, fuzzy msgid "Cubic texture uniform lookup." msgstr "البحث عن النقش المكعبي الموحد." @@ -9150,7 +9154,7 @@ msgstr "فكّ تركيب المُتجه إلى ثلاث كميات قياسية #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Calculates the cross product of two vectors." -msgstr "حساب المنتوج الوسيط للمُتجهين." +msgstr "حساب حاصل الضرب الاتجاهي لمتجهين." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the distance between two points." @@ -9273,7 +9277,7 @@ msgstr "جداء (مضاعفة) مُتجه بمُتجه." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the remainder of the two vectors." -msgstr "يُرجع باقي كل من المُتجهين (الشعاعين)." +msgstr "يُرجع باقي قسمة كل من المُتجهين (الشعاعين)." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Subtracts vector from vector." @@ -9945,7 +9949,7 @@ msgid "" "Invalid action name. it cannot be empty nor contain '/', ':', '=', '\\' or " "'\"'" msgstr "" -"اسم فعالية غير صحيح. لا يمكن أن يكون فارغاً أو يتضمن '/'، ':'، '='، '\\' أو " +"اسم فعالية غير صحيح. لا يمكن أن يكون فارغاً أو يتضمن '/'، ':'، '='، '\\' أو " "'\"'" #: editor/project_settings_editor.cpp @@ -10530,7 +10534,7 @@ msgstr "حذف العُقدة %d مع جميع أبنائها؟" #: editor/scene_tree_dock.cpp msgid "Delete %d nodes?" -msgstr "حذف العُقد %d" +msgstr "حذف العُقد %d؟" #: editor/scene_tree_dock.cpp msgid "Delete the root node \"%s\"?" @@ -10677,9 +10681,8 @@ msgid "Change Type" msgstr "تغيير النوع" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Reparent to New Node" -msgstr "إنشاء %s جديد" +msgstr "تعين لعقدة جديدة" #: editor/scene_tree_dock.cpp msgid "Make Scene Root" @@ -10735,22 +10738,19 @@ msgstr "مسح الموروث؟ (لا تراجع!)" #: editor/scene_tree_editor.cpp msgid "Toggle Visible" -msgstr "تشغيل/إطفاء الوضوحية" +msgstr "تشغيل/إطفاء الوضوحية" #: editor/scene_tree_editor.cpp -#, fuzzy msgid "Unlock Node" -msgstr "عقدة اللقطة الواحدة" +msgstr "إلغاء تأمين العقدة" #: editor/scene_tree_editor.cpp -#, fuzzy msgid "Button Group" -msgstr "إضافة إلي مجموعة" +msgstr "مجموعة الأزرار" #: editor/scene_tree_editor.cpp -#, fuzzy msgid "(Connecting From)" -msgstr "خطأ في الإتصال" +msgstr "(الإتصال من)" #: editor/scene_tree_editor.cpp msgid "Node configuration warning:" @@ -10845,23 +10845,20 @@ msgid "Path is not local." msgstr "المسار ليس محلياً." #: editor/script_create_dialog.cpp -#, fuzzy msgid "Invalid base path." msgstr "مسار غير صالح." #: editor/script_create_dialog.cpp -#, fuzzy msgid "A directory with the same name exists." -msgstr "ملف أو مجلد مع هذا الأسم موجود بالفعل." +msgstr "يوجد ملف/مجلد بنفس الاسم." #: editor/script_create_dialog.cpp msgid "File does not exist." msgstr "الملف غير موجود." #: editor/script_create_dialog.cpp -#, fuzzy msgid "Invalid extension." -msgstr "يجب أن يستخدم صيغة صحيحة." +msgstr "صيغة غير صالحة." #: editor/script_create_dialog.cpp msgid "Wrong extension chosen." @@ -10912,33 +10909,28 @@ msgid "Invalid inherited parent name or path." msgstr "إن اسم أو مسار الأب (الأصل parent) الموروث غير صالح." #: editor/script_create_dialog.cpp -#, fuzzy msgid "Script path/name is valid." -msgstr "شجرة الحركة صحيحة." +msgstr "مسار/اسم البرنامج النصي صالح." #: editor/script_create_dialog.cpp msgid "Allowed: a-z, A-Z, 0-9, _ and ." -msgstr "المسموح: a-z، A-Z ، 0-9 ، _ و ." +msgstr "المسموح: a-z، A-Z ، 0-9 ، _ و ." #: editor/script_create_dialog.cpp -#, fuzzy msgid "Built-in script (into scene file)." -msgstr "عمليات مع ملفات المشهد." +msgstr "نص برمجي مدموج (داخل ملف المشهد)." #: editor/script_create_dialog.cpp -#, fuzzy msgid "Will create a new script file." -msgstr "إنشاء ملف كود جديد" +msgstr "سيتم إنشاء ملف برمجي جديد." #: editor/script_create_dialog.cpp -#, fuzzy msgid "Will load an existing script file." -msgstr "تحميل نسق بيوس موجود مسبقاً." +msgstr "سيتم تحميل ملف برمجي موجود مسبقاً." #: editor/script_create_dialog.cpp -#, fuzzy msgid "Script file already exists." -msgstr "التحميل التلقائي '%s' موجود اصلا!" +msgstr "الملف البرمجي موجود بالفعل." #: editor/script_create_dialog.cpp msgid "" @@ -10949,19 +10941,16 @@ msgstr "" "تعديلها باستخدام مُحرر خارجي." #: editor/script_create_dialog.cpp -#, fuzzy msgid "Class Name:" -msgstr "إسم صنف" +msgstr "اسم الفئة:" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Template:" -msgstr "مسح القالب" +msgstr "القالب:" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Built-in Script:" -msgstr "فتح الكود" +msgstr "ملف النص المُدمج:" #: editor/script_create_dialog.cpp msgid "Attach Node Script" @@ -10976,39 +10965,32 @@ msgid "Bytes:" msgstr "Bytes:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Warning:" -msgstr "تحذيرات" +msgstr "تحذير:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Error:" -msgstr "خطأ!" +msgstr "خطأ:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "C++ Error" -msgstr "خطأ في نسخ" +msgstr "خطأ في C++" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "C++ Error:" -msgstr "خطأ في نسخ" +msgstr "خطأ C++ :" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "C++ Source" -msgstr "مورد" +msgstr "مصدر C++" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Source:" -msgstr "مورد" +msgstr "مصدر:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "C++ Source:" -msgstr "مورد" +msgstr "مصدر C++:" #: editor/script_editor_debugger.cpp msgid "Stack Trace" @@ -11019,9 +11001,8 @@ msgid "Errors" msgstr "أخطاء" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Child process connected." -msgstr "غير متصل" +msgstr "العملية التابعة متصلة." #: editor/script_editor_debugger.cpp msgid "Copy Error" @@ -11029,12 +11010,11 @@ msgstr "خطأ في نسخ" #: editor/script_editor_debugger.cpp msgid "Video RAM" -msgstr "ذاكرة الفيديو Video RAM" +msgstr "الذاكرة العشوائية للفيديو" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Skip Breakpoints" -msgstr "مسح النقاط" +msgstr "تخطي نقاط التكسّر" #: editor/script_editor_debugger.cpp msgid "Inspect Previous Instance" @@ -11081,9 +11061,8 @@ msgid "Total:" msgstr "المجموع الكلي:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Export list to a CSV file" -msgstr "تصدير الملف" +msgstr "تصدير القائمة إلى ملف CSV" #: editor/script_editor_debugger.cpp msgid "Resource Path" @@ -11126,18 +11105,16 @@ msgid "Export measures as CSV" msgstr "تصدير القياسات ك CSV" #: editor/settings_config_dialog.cpp -#, fuzzy msgid "Erase Shortcut" -msgstr "تخفيف للخارج" +msgstr "حذف الاختصار" #: editor/settings_config_dialog.cpp msgid "Restore Shortcut" msgstr "إعادة تعيين الاختصارات" #: editor/settings_config_dialog.cpp -#, fuzzy msgid "Change Shortcut" -msgstr "تغيير المرتكزات" +msgstr "تغيير الاختصارات" #: editor/settings_config_dialog.cpp msgid "Editor Settings" @@ -11209,19 +11186,16 @@ msgid "Change Ray Shape Length" msgstr "تعديل طول الشكل الشعاعي" #: modules/csg/csg_gizmos.cpp -#, fuzzy msgid "Change Cylinder Radius" -msgstr "تغيير وقت الدمج" +msgstr "تغيير نصف قطر الاسطوانة" #: modules/csg/csg_gizmos.cpp -#, fuzzy msgid "Change Cylinder Height" -msgstr "تغيير وقت الدمج" +msgstr "تغيير ارتفاع الاسطوانة" #: modules/csg/csg_gizmos.cpp -#, fuzzy msgid "Change Torus Inner Radius" -msgstr "تغيير المرتكزات و الهوامش" +msgstr "تغيير نصف قطر الدائرة الداخلي" #: modules/csg/csg_gizmos.cpp msgid "Change Torus Outer Radius" @@ -11265,12 +11239,11 @@ msgstr "مكتبة GDNativeLibrary" #: modules/gdnative/gdnative_library_singleton_editor.cpp msgid "Enabled GDNative Singleton" -msgstr "تمكين نمط البرمجة Singleton لِ GDNative" +msgstr "تمكين نمط البرمجة Singleton لـ GDNative" #: modules/gdnative/gdnative_library_singleton_editor.cpp -#, fuzzy msgid "Disabled GDNative Singleton" -msgstr "تعطيل دوار التحديث" +msgstr "تعطيل نمط البرمجة Singleton لـ GDNative" #: modules/gdnative/gdnative_library_singleton_editor.cpp msgid "Library" @@ -11285,17 +11258,16 @@ msgid "GDNative" msgstr "GDNative" #: modules/gdscript/gdscript_functions.cpp -#, fuzzy msgid "Step argument is zero!" -msgstr "الخطوة (المتغيرة المدخلة/argument) تساوي صفر !" +msgstr "معامل الخطوة تساوي صفر!" #: modules/gdscript/gdscript_functions.cpp msgid "Not a script with an instance" -msgstr "ليس كود مع نموذج" +msgstr "ليس نص برمجي مع نموذج" #: modules/gdscript/gdscript_functions.cpp msgid "Not based on a script" -msgstr "لا تستند الى شفرة مصدرية" +msgstr "لا تستند الى نص برمجي" #: modules/gdscript/gdscript_functions.cpp msgid "Not based on a resource file" @@ -11303,42 +11275,35 @@ msgstr "لا تستند على ملف مورد" #: modules/gdscript/gdscript_functions.cpp msgid "Invalid instance dictionary format (missing @path)" -msgstr "" -"instance dictionary format نموذج الشكل القاموسي غير صالح - المسار مفقود" +msgstr "نموذج الشكل القاموسي غير صالح (@المسار مفقود)" #: modules/gdscript/gdscript_functions.cpp msgid "Invalid instance dictionary format (can't load script at @path)" -msgstr "" -"instance dictionary format نموذج الشكل القاموسي غير صالح - لا يمكن تحميل " -"السكريبت من المسار" +msgstr "نموذج الشكل القاموسي غير صالح (لا يمكن تحميل النص البرمجي من @المسار)" #: modules/gdscript/gdscript_functions.cpp msgid "Invalid instance dictionary format (invalid script at @path)" -msgstr "" -"instance dictionary format نموذج الشكل القاموسي غير صالح - السكريبت في " -"المسار غير صالح" +msgstr "نموذج الشكل القاموسي غير صالح ( النص البرمجي غير صالح في @المسار)" #: modules/gdscript/gdscript_functions.cpp msgid "Invalid instance dictionary (invalid subclasses)" -msgstr "مجسّد القاموس غير صالح (أصناف فرعية غير صالحة)" +msgstr "نموذج القاموس غير صالح (أصناف فرعية غير صالحة)" #: modules/gdscript/gdscript_functions.cpp msgid "Object can't provide a length." -msgstr "لا يمكن للكائن Object أن يمنح طولاً." +msgstr "لا يمكن للكائن أن يمنح طولاً." #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Next Plane" msgstr "التبويب التالي" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Previous Plane" msgstr "التبويب السابق" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Plane:" -msgstr "المستوى:" +msgstr "التبويت:" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Next Floor" @@ -11357,14 +11322,12 @@ msgid "GridMap Delete Selection" msgstr "خريطة الشبكة GridMap لحذف المُختار" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "GridMap Fill Selection" -msgstr "كُل المُحدد" +msgstr "تحديد الملئ خريطة-الشبكة" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "GridMap Paste Selection" -msgstr "كُل المُحدد" +msgstr "تحديد اللصق خريطة-الشبكة" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "GridMap Paint" @@ -11431,9 +11394,8 @@ msgid "Cursor Clear Rotation" msgstr "مسح تدوير المؤشر" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Paste Selects" -msgstr "كُل المُحدد" +msgstr "تحديد اللصق" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Clear Selection" @@ -11452,9 +11414,8 @@ msgid "Pick Distance:" msgstr "اختر المسافة:" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Filter meshes" -msgstr "وضع المُصفي:" +msgstr "تنقية المجسمات" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Give a MeshLibrary resource to this GridMap to use its meshes." @@ -11561,7 +11522,7 @@ msgstr "عثر على تسلسل بت ولكن ليس العقدة في المك #: modules/visual_script/visual_script.cpp msgid "Stack overflow with stack depth: " -msgstr "" +msgstr "حدوث تجاوز للتكدس ( Stack overflow) مع عمق التكدس: " #: modules/visual_script/visual_script_editor.cpp msgid "Change Signal Arguments" @@ -11584,42 +11545,36 @@ msgid "Set Variable Type" msgstr "تحيد نوع المتغير" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Input Port" -msgstr "أضف مدخله" +msgstr "أضف منفذ أدخال" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Output Port" -msgstr "أضف مدخله" +msgstr "أضف منفذ إخراج" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Override an existing built-in function." -msgstr "إسم غير صالح، يجب أن لا يتصادم مع الأسماء المبنية تلقائياً الموجودة." +msgstr "تجاوز لدالة مُدمجة موجودة مسبقًا." #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Create a new function." -msgstr "إنشاء %s جديد" +msgstr "إنشاء دالة جديدة." #: modules/visual_script/visual_script_editor.cpp msgid "Variables:" msgstr "المتغيرات:" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Create a new variable." -msgstr "إنشاء %s جديد" +msgstr "إنشاء متغير جديد." #: modules/visual_script/visual_script_editor.cpp msgid "Signals:" msgstr "الإشارات:" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Create a new signal." -msgstr "أنشئ شكل جديد من لا شئ." +msgstr "إنشاء إشارة جديدة." #: modules/visual_script/visual_script_editor.cpp msgid "Name is not a valid identifier:" @@ -11646,9 +11601,8 @@ msgid "Add Function" msgstr "إضافة وظيفة برمجية" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Delete input port" -msgstr "مسح النقطة" +msgstr "مسح منفذ إدخال" #: modules/visual_script/visual_script_editor.cpp msgid "Add Variable" @@ -11659,14 +11613,12 @@ msgid "Add Signal" msgstr "إضافة إشارة" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Remove Input Port" -msgstr "مسح النقطة" +msgstr "حذف منفذ إدخال" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Remove Output Port" -msgstr "مسح النقطة" +msgstr "حذف منفذ إخراج" #: modules/visual_script/visual_script_editor.cpp msgid "Change Expression" @@ -11750,19 +11702,16 @@ msgid "Connect Nodes" msgstr "وصل العُقد" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Disconnect Nodes" -msgstr "غير متصل" +msgstr "عُقد غير متصلة" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Connect Node Data" -msgstr "صلها بالعقدة:" +msgstr "ربط بيانات العقدة" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Connect Node Sequence" -msgstr "صلها بالعقدة:" +msgstr "ربط تسلسل العقدة" #: modules/visual_script/visual_script_editor.cpp msgid "Script already has function '%s'" @@ -11773,9 +11722,8 @@ msgid "Change Input Value" msgstr "تعديل قيمة الإدخال" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Resize Comment" -msgstr "تعديل العنصر القماشي" +msgstr "تغيير حجم التعليق" #: modules/visual_script/visual_script_editor.cpp msgid "Can't copy the function node." @@ -11807,9 +11755,8 @@ msgid "Try to only have one sequence input in selection." msgstr "حاول أن يكون لديك تسلسل إدخال واحد من المُختار." #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Create Function" -msgstr "عمل اشتراك" +msgstr "إنشاء دالة" #: modules/visual_script/visual_script_editor.cpp msgid "Remove Function" @@ -11832,33 +11779,28 @@ msgid "Editing Signal:" msgstr "تحرير الإشارة:" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Make Tool:" -msgstr "أنشئ عظام" +msgstr "عمل أداة:" #: modules/visual_script/visual_script_editor.cpp msgid "Members:" msgstr "الأعضاء:" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Change Base Type:" -msgstr "غير نوع %s" +msgstr "تغيير اساس النوع:" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Nodes..." -msgstr "إضافة %s..." +msgstr "إضافة عُقد..." #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Function..." -msgstr "مسح المهمة" +msgstr "إضافة دالة…" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "function_name" -msgstr "الإعدادات:" +msgstr "أسم_الدالة" #: modules/visual_script/visual_script_editor.cpp msgid "Select or create a function to edit its graph." @@ -11881,19 +11823,16 @@ msgid "Cut Nodes" msgstr "قص العُقد" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Make Function" -msgstr "مسح المهمة" +msgstr "عمل دالة" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Refresh Graph" -msgstr "تحديث" +msgstr "تحديث الرسم البياني" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Edit Member" -msgstr "الأعضاء" +msgstr "تعديل العضو" #: modules/visual_script/visual_script_flow_control.cpp msgid "Input type not iterable: " @@ -11941,7 +11880,7 @@ msgstr "لم يتم إيجاد (مُحدد المُتغير) VariableSet في ا #: modules/visual_script/visual_script_nodes.cpp msgid "Custom node has no _step() method, can't process graph." -msgstr "العقدة المخصصة لا تحتوي طريقة ()step_ ، لا يمكن معالجة المخطوط." +msgstr "العقدة المخصصة لا تحتوي طريقة ()step_ ، لا يمكن معالجة الشكل البياني." #: modules/visual_script/visual_script_nodes.cpp msgid "" @@ -11952,9 +11891,8 @@ msgstr "" "(خطأ)." #: modules/visual_script/visual_script_property_selector.cpp -#, fuzzy msgid "Search VisualScript" -msgstr "إخلاء الكود" +msgstr "بحث VisualScript" #: modules/visual_script/visual_script_property_selector.cpp msgid "Get %s" @@ -12009,11 +11947,8 @@ msgstr "" "الموضوعة سلفاً." #: platform/android/export/export.cpp -#, fuzzy msgid "Release keystore incorrectly configured in the export preset." -msgstr "" -"مُنقح أخطاء مفتاح المتجر keystore غير مُهيئ في إعدادت المُحرر أو في الإعدادات " -"الموضوعة سلفاً." +msgstr "تحرر مخزن المفاتيح غير مُهيئ بشكل صحيح في إعدادت المسبقة للتصدير." #: platform/android/export/export.cpp msgid "Custom build requires a valid Android SDK path in Editor Settings." @@ -12045,26 +11980,34 @@ msgid "" "Invalid \"GodotPaymentV3\" module included in the \"android/modules\" " "project setting (changed in Godot 3.2.2).\n" msgstr "" +"وحدة \"GodotPaymentV3\" المضمنة في إعدادات المشروع \"android / modules\" غير " +"صالحة (تم تغييره في Godot 3.2.2).\n" #: platform/android/export/export.cpp msgid "\"Use Custom Build\" must be enabled to use the plugins." -msgstr "" +msgstr "يجب تفعيل \"Use Custom Build\" لإستخدام الإضافات." #: platform/android/export/export.cpp msgid "" "\"Degrees Of Freedom\" is only valid when \"Xr Mode\" is \"Oculus Mobile VR" "\"." msgstr "" +"\"Degrees Of Freedom\" تكون صالحة فقط عندما يكون وضع الـ \"Xr Mode\"هو " +"\"Oculus Mobile VR\"." #: platform/android/export/export.cpp msgid "" "\"Hand Tracking\" is only valid when \"Xr Mode\" is \"Oculus Mobile VR\"." msgstr "" +"\"Hand Tracking\" تكون صالحة فقط عندما يكون وضع الـ \"Xr Mode\"هو \"Oculus " +"Mobile VR\"." #: platform/android/export/export.cpp msgid "" "\"Focus Awareness\" is only valid when \"Xr Mode\" is \"Oculus Mobile VR\"." msgstr "" +"\"Focus Awareness\" تكون صالحة فقط عندما يكون وضع الـ \"Xr Mode\"هو \"Oculus " +"Mobile VR\"." #: platform/android/export/export.cpp msgid "" @@ -12213,13 +12156,12 @@ msgid "Invalid splash screen image dimensions (should be 620x300)." msgstr "أبعاد شاشة البداية غير صالحة (ينبغي أن تكون 620×300)." #: scene/2d/animated_sprite.cpp -#, fuzzy msgid "" "A SpriteFrames resource must be created or set in the \"Frames\" property in " "order for AnimatedSprite to display frames." msgstr "" -"ليتم إظهار الأطر (اللقطات) في الAnimatedSprite (النقوش المتحركة), يجب تكوين " -"مصدر لها من نوع SpriteFrames و ضبط خاصية الFrames (الأطر) بها." +"ليتم إظهار الإطارات في الAnimatedSprite (النقوش المتحركة), يجب تكوين مصدر " +"لها من نوع SpriteFrames و ضبط خاصية الFrames (الأطر) بها." #: scene/2d/canvas_modulate.cpp msgid "" @@ -12255,7 +12197,9 @@ msgstr "" #: scene/2d/collision_polygon_2d.cpp msgid "An empty CollisionPolygon2D has no effect on collision." -msgstr "مُضلع تصادم ثنائي الأبعاد فارغ ليس له أي تأثير على التصادم." +msgstr "" +"مُضلع تصادم ثنائي الأبعاد (CollisionPolygon2D) الفارغ ليس له أي تأثير على " +"التصادم." #: scene/2d/collision_shape_2d.cpp msgid "" @@ -12263,32 +12207,37 @@ msgid "" "CollisionObject2D derived node. Please only use it as a child of Area2D, " "StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." msgstr "" -"يعمل مُضلع التصادم ثنائي الأبعاد CollisionPolygon2D فقط كشكل تصادمي لكل العُقد " -"المشتقة من الكائن التصادمي ثنائي الأبعاد CollisionObject2D. من فضلك استخدمه " -"فقط لكل أبناء الحيز ثنائي الأبعاد Area2D، الجسم السكوني ثنائي الأبعاد " -"StaticBody2D و الجسم الجامد ثنائي الأبعاد RigidBody2D، والجسم المتحرك ثنائي " -"الأبعاد KinematicBody2D إلخ.. لكي تمنح كل منهم شكلاً." +"يعمل جسم-تصادم-ثنائي-البُعد (CollisionPolygon2D) فقط كشكل تصادمي لكل العُقد " +"المشتقة من الكائن التصادمي ثنائي الأبعاد (CollisionObject2D). من فضلك " +"استخدمه فقط لكل أبناء الحيز-ثنائي-البُعد (Area2D)، الجسم-الثابت-ثنائي-البُعد " +"(StaticBody2D) و الجسم-الصلب-ثنائي-البُعد (RigidBody2D)، والجسم-المتحرك-ثنائي-" +"البُعد (KinematicBody2D) إلخ.. لكي تمنح كل منهم شكلاً." #: scene/2d/collision_shape_2d.cpp msgid "" "A shape must be provided for CollisionShape2D to function. Please create a " "shape resource for it!" msgstr "" -"يجب تزويد ال CollisionShape2D بإحدى الأشكال (من نوع Shape2D) لتعمل بالشكل " -"المطلوب. الرجاء تكوين و ضبط الشكل لها اولا!" +"يجب تزويد جسم-تصادم-ثنائي-البُعد (CollisionShape2D) بإحدى الأشكال (من نوع " +"Shape2D) لتعمل بالشكل المطلوب. الرجاء تكوين و ضبط الشكل لها اولا!" #: scene/2d/collision_shape_2d.cpp msgid "" "Polygon-based shapes are not meant be used nor edited directly through the " "CollisionShape2D node. Please use the CollisionPolygon2D node instead." msgstr "" +"الأشكال المستندة إلى المضلع (Polygon-based shapes) لا تعني انك قادر على " +"استخدامها او تعديلها بشكل مباشر من خلال عقدة جسم-تصادم-ثنائي-البُعد " +"(CollisionShape2D). الرجاء استخدام عقدة مضلع-تصادم-ثنائي-البُعد " +"(CollisionPolygon2D) بدلاً من ذلك." #: scene/2d/cpu_particles_2d.cpp msgid "" "CPUParticles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" -"تتطلب الرسوم المتحركة CPUParticles2D استخدام CanvasItemMaterial مع تمكين " +"تتطلب الرسوم المتحركة للجسيمات-وحدة-المعالجة-المركزية-ثنائية-الأبعاد " +"(CPUParticles2D) استخدام لوحة-مادة-العنصر (CanvasItemMaterial) مع تفعيل" "\"الرسوم المتحركة للجزيئات\"." #: scene/2d/light_2d.cpp @@ -12301,27 +12250,34 @@ msgstr "يجب توريد نقش بهيئة الضوء لخاصية \"النقش msgid "" "An occluder polygon must be set (or drawn) for this occluder to take effect." msgstr "" +"المُضلع المُغلق(occluder polygon) يجب تعينه (او رسمه) ليأخذ هذا الغَلق تأثيره." #: scene/2d/light_occluder_2d.cpp msgid "The occluder polygon for this occluder is empty. Please draw a polygon." -msgstr "" +msgstr "المُضلع المُغلق لهذا الغَلق فارغ. الرجاء رسم مُضلع." #: scene/2d/navigation_polygon.cpp msgid "" "A NavigationPolygon resource must be set or created for this node to work. " "Please set a property or draw a polygon." msgstr "" +"يجب تعيين مصدر مُضلع-التنقل (NavigationPolygon) أو إنشاؤه حتى تعمل هذه " +"العقدة. يُرجى تعيين خاصية أو رسم مضلع." #: scene/2d/navigation_polygon.cpp msgid "" "NavigationPolygonInstance must be a child or grandchild to a Navigation2D " "node. It only provides navigation data." msgstr "" +"يجب أن يكون نموذج-المضلع-المتنقل (NavigationPolygonInstance) تابعًا أو حفيدًا " +"لعقدة التنقل-ثنائي-الأبعاد (Navigation2D). انه فقط يوفر بيانات التنقل." #: scene/2d/parallax_layer.cpp msgid "" "ParallaxLayer node only works when set as child of a ParallaxBackground node." msgstr "" +"تعمل عقدة طبقة-المنظهر (ParallaxLayer) فقط عند تعيينها كعقدة تابعة لعقدة " +"خلفية-المنظر ParallaxBackground." #: scene/2d/particles_2d.cpp msgid "" @@ -12329,22 +12285,31 @@ msgid "" "Use the CPUParticles2D node instead. You can use the \"Convert to " "CPUParticles\" option for this purpose." msgstr "" +"لا يدعم برنامج تشغيل الفيديو GLES2 الجسيمات القائمة على وحدة معالجة الرسومات " +"(GPU-based particles).\n" +"استخدم عقدة جسيمات-وحدة-المعالجة-المركزية-ثنائية-البُعد (CPUParticles2D) بدلاً " +"من ذلك. يمكنك استخدام خيار \"التحويل إلى CPUParticles\" لهذا الغرض." #: scene/2d/particles_2d.cpp scene/3d/particles.cpp msgid "" "A material to process the particles is not assigned, so no behavior is " "imprinted." msgstr "" +"لا يوجد مادة (material) لمعالجة الجسيمات ، لذلك لا يتم طبع او عمل أي سلوك." #: scene/2d/particles_2d.cpp msgid "" "Particles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"تتطلب الرسوم المتحركة للجسيمات-ثنائية-البُعد (Particles2D) استخدام لوحة-مادة-" +"العنصر (CanvasItemMaterial) مع تمكين \"الرسوم المتحركة للجسيمات\"." #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." msgstr "" +"لا يعمل اتباع-المسار-ثنائي-البُعد (PathFollow2D) إلا عند جعل عقدة مسار-ثنائي-" +"البُعد (Path2D) تابعًا له." #: scene/2d/physics_body_2d.cpp msgid "" @@ -12352,10 +12317,14 @@ msgid "" "by the physics engine when running.\n" "Change the size in children collision shapes instead." msgstr "" +"تغييرات الحجم للجسم-صلب-ثنائي-البُعد (RigidBody2D) (في أوضاع الشخصيات أو " +"الأوضاع الصلبة) سيتم تجاوزها بواسطة محرك الفيزياء عند التشغيل.\n" +"قم بتغيير الحجم في أشكال تصادم التابعين له بدلاً من ذلك." #: scene/2d/remote_transform_2d.cpp msgid "Path property must point to a valid Node2D node to work." msgstr "" +"يجب أن تشير خاصية المسار إلى عُقدة-ثنائية-البُعد (Node2D) صالحة لكي تعمل." #: scene/2d/skeleton_2d.cpp msgid "This Bone2D chain should end at a Skeleton2D node." @@ -12366,11 +12335,15 @@ msgstr "" #: scene/2d/skeleton_2d.cpp msgid "A Bone2D only works with a Skeleton2D or another Bone2D as parent node." msgstr "" +"يعمل عظم-ثنائي-البُعد (Bone2D) فقط مع هيكلية-ثنائية-البُعد (Skeleton2D) أو " +"Bone2D آخر كعقدة رئيسية." #: scene/2d/skeleton_2d.cpp msgid "" "This bone lacks a proper REST pose. Go to the Skeleton2D node and set one." msgstr "" +"هذا العظم يفتقر إلى وضع الراحة المناسب. انتقل إلى عقدة هيكلية ثنائية " +"البُعد(Skeleton2D) وقم بتعيين واحدة." #: scene/2d/tile_map.cpp msgid "" @@ -12378,40 +12351,56 @@ msgid "" "to. Please use it as a child of Area2D, StaticBody2D, RigidBody2D, " "KinematicBody2D, etc. to give them a shape." msgstr "" +"يحتاج خريطة-البلاط (TileMap) مع تفعيل خاصية إستخدام الأصل (Use Parent) إلى " +"ان يكون تابعًا لكائن-تصادمي-ثنائي-البُعد (CollisionObject2D) لإعطاء الأشكال. " +"يرجى استخدامه كتابع لحيز-ثنائي-البُعد(ِArea2D)، جسم-ثابت-ثنائي-البُعد " +"(StaticBody2D)، جسم-صلب-ثنائي-البُعد (RigidBody2D)، أو جسم-متحرك-ثنائي-البُعد " +"(KinematicBody2D)، وما إلى ذلك لمنحهم شكلاً." #: scene/2d/visibility_notifier_2d.cpp msgid "" "VisibilityEnabler2D works best when used with the edited scene root directly " "as parent." msgstr "" +"يعمل مُمَكِن-الرؤية-ثنائي-البُعد (VisibilityEnabler2D) بشكل أفضل عند استخدامه مع " +"المشهد الرئيس الذي تم تحريره مباشرةً باعتباره الأصل." #: scene/3d/arvr_nodes.cpp msgid "ARVRCamera must have an ARVROrigin node as its parent." -msgstr "" +msgstr "يجب أن تحتوي ARVRCamera على عقدة ARVROrigin كأصل لها." #: scene/3d/arvr_nodes.cpp msgid "ARVRController must have an ARVROrigin node as its parent." -msgstr "" +msgstr "يجب أن تحتوي ARVRController على عقدة ARVROrigin كأصل لها." #: scene/3d/arvr_nodes.cpp msgid "" "The controller ID must not be 0 or this controller won't be bound to an " "actual controller." msgstr "" +"يجب ألا يكون معرف وحدة التحكم تساوي 0 أو لن تكون وحدة التحكم هذه مقيدة بوحدة " +"تحكم فعلية." #: scene/3d/arvr_nodes.cpp msgid "ARVRAnchor must have an ARVROrigin node as its parent." -msgstr "" +msgstr "يجب أن يحتوي ARVRController على عقدة ARVROrigin كأصل له." #: scene/3d/arvr_nodes.cpp msgid "" "The anchor ID must not be 0 or this anchor won't be bound to an actual " "anchor." msgstr "" +"يجب ألا يكون معرف الإرتكاز (The anchor) يساوي 0 أو لن يكون هذا الإرتكاز مقيد " +"بإرتكاز فِعلي." #: scene/3d/arvr_nodes.cpp msgid "ARVROrigin requires an ARVRCamera child node." msgstr "" +"يحتاج خريطة-البلاط (TileMap) مع تفعيل خاصية إستخدام الأصل (Use Parent) إلى " +"ان يكون تابعًا لكائن-تصادمي-ثنائي-البُعد (CollisionObject2D) لإعطاء الأشكال. " +"يرجى استخدامه كتابع لحيز-ثنائي-البُعد(ِArea2D)، جسم-ثابت-ثنائي-البُعد " +"(StaticBody2D)، جسم-صلب-ثنائي-البُعد (RigidBody2D)، أو جسم-متحرك-ثنائي-البُعد " +"(KinematicBody2D)، وما إلى ذلك لمنحهم شكلاً." #: scene/3d/baked_lightmap.cpp msgid "%d%%" @@ -12423,19 +12412,19 @@ msgstr "(الوقت المتبقي: %d:%02d ثانية)" #: scene/3d/baked_lightmap.cpp msgid "Plotting Meshes: " -msgstr "" +msgstr "تخطيط المجسمات: " #: scene/3d/baked_lightmap.cpp msgid "Plotting Lights:" -msgstr "" +msgstr "تخطيط الإضاءات:" #: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp msgid "Finishing Plot" -msgstr "" +msgstr "الانتهاء من التخطيط" #: scene/3d/baked_lightmap.cpp msgid "Lighting Meshes: " -msgstr "" +msgstr "إضاءة المجسمات: " #: scene/3d/collision_object.cpp msgid "" @@ -12443,6 +12432,8 @@ msgid "" "Consider adding a CollisionShape or CollisionPolygon as a child to define " "its shape." msgstr "" +"هذه العقدة ليس لها شكل، لذلك لا يمكن أن تصطدم أو تتفاعل مع الكائنات الأخرى.\n" +"ضع في الإعتبار إضافة شكل تصادم أو مضلع تصادم كتابع لتعريف شكله." #: scene/3d/collision_polygon.cpp msgid "" @@ -12450,6 +12441,10 @@ msgid "" "CollisionObject derived node. Please only use it as a child of Area, " "StaticBody, RigidBody, KinematicBody, etc. to give them a shape." msgstr "" +"يعمل مضلع التصادم (CollisionPolygon) فقط على توفير شكل تصادم لعقدة كائن " +"التصادم (CollisionObject) المشتقة. يُرجى استخدامه فقط كتابع لحيز (Area)، جسم " +"ثابت (StaticBody)، جسم صلب (StaticBody)، أو جسم حركي (KinematicBody)، وما " +"إلى ذلك لمنحهم شكلاً." #: scene/3d/collision_polygon.cpp msgid "An empty CollisionPolygon has no effect on collision." @@ -12461,46 +12456,58 @@ msgid "" "derived node. Please only use it as a child of Area, StaticBody, RigidBody, " "KinematicBody, etc. to give them a shape." msgstr "" +"يعمل شكل التصادم (CollisionPolygon) فقط على توفير شكل تصادم لعقدة كائن " +"التصادم (CollisionObject) المشتقة. يُرجى استخدامه فقط كتابع لحيز (Area)، جسم " +"ثابت (StaticBody)، جسم صلب (StaticBody)، أو جسم حركي (KinematicBody)، وما " +"إلى ذلك لمنحهم شكلاً." #: scene/3d/collision_shape.cpp -#, fuzzy msgid "" "A shape must be provided for CollisionShape to function. Please create a " "shape resource for it." msgstr "" -"يجب تزويد ال CollisionShape2D بإحدى الأشكال (من نوع Shape2D) لتعمل بالشكل " -"المطلوب. الرجاء تكوين و ضبط الشكل لها اولا!" +"يجب توفير شكل لـ CollisionShape2D بإحدى الأشكال (من نوع Shape2D) لتعمل " +"بالشكل المطلوب. الرجاء تكوين و ضبط الشكل لها." #: scene/3d/collision_shape.cpp msgid "" "Plane shapes don't work well and will be removed in future versions. Please " "don't use them." msgstr "" +"لا تعمل أشكال التبويت (Plane shapes) بشكل جيد وسيتم إزالتها في الإصدارات " +"المستقبلية. من فضلك لا تستخدمها." #: scene/3d/collision_shape.cpp msgid "" "ConcavePolygonShape doesn't support RigidBody in another mode than static." msgstr "" +"الشكل المضلع المُقعر (ConcavePolygonShape) لا يدعم الجسم الصلب (RigidBody) في " +"أي وضع غير الوضع الثابت." #: scene/3d/cpu_particles.cpp msgid "Nothing is visible because no mesh has been assigned." -msgstr "" +msgstr "لا شيء مرئي لأنه لم يتم تعيين أي مجسم." #: scene/3d/cpu_particles.cpp msgid "" "CPUParticles animation requires the usage of a SpatialMaterial whose " "Billboard Mode is set to \"Particle Billboard\"." msgstr "" +"تتطلب الرسوم المتحركة لجسيمات وحدة المعالجة المركزية( CPUParticles) استخدام " +"مادة مكانية (SpatialMaterial) التي تم ضبط وضع اللوحة (Billboard Mode) الخاص " +"بها على \"لوحة الجسيمات\"." #: scene/3d/gi_probe.cpp msgid "Plotting Meshes" -msgstr "" +msgstr "تخطيط المجسمات" #: scene/3d/gi_probe.cpp msgid "" "GIProbes are not supported by the GLES2 video driver.\n" "Use a BakedLightmap instead." msgstr "" +"GIProbes لا يدعم برنامج تشغيل الفيديو GLES2.\n" +"استخدم BakedLightmap بدلاً من ذلك." #: scene/3d/light.cpp msgid "A SpotLight with an angle wider than 90 degrees cannot cast shadows." @@ -12509,12 +12516,15 @@ msgstr "بقعة الضوء بزاوية أكبر من 90 درجة لا يمكن #: scene/3d/navigation_mesh.cpp msgid "A NavigationMesh resource must be set or created for this node to work." msgstr "" +"يجب تعيين مصدر مجسم-التنقل (NavigationMesh) أو إنشاؤه حتى تعمل هذه العقدة." #: scene/3d/navigation_mesh.cpp msgid "" "NavigationMeshInstance must be a child or grandchild to a Navigation node. " "It only provides navigation data." msgstr "" +"يجب أن يكون نموذج-مجسم-التنقل (NavigationMeshInstance) تابعًا أو حفيدًا لعقدة " +"التنقل (Navigation node). انه يوفر فقط بيانات التنقل." #: scene/3d/particles.cpp msgid "" @@ -12522,17 +12532,23 @@ msgid "" "Use the CPUParticles node instead. You can use the \"Convert to CPUParticles" "\" option for this purpose." msgstr "" +"الجسيمات القائمة على وحدة معالجة الرسومات (GPU-based particles) لا تدعم " +"برنامج تشغيل الفيديو GLES2 .\n" +"استخدم عقدة CPUParticles بدلاً من ذلك. يمكنك استخدام خيار \"التحويل إلى " +"CPUParticles\" لهذا الغرض." #: scene/3d/particles.cpp msgid "" "Nothing is visible because meshes have not been assigned to draw passes." -msgstr "" +msgstr "لا يوجد شيء مرئي لأن المجسمات لم يتم تعيين لها رسم التمريرات." #: scene/3d/particles.cpp msgid "" "Particles animation requires the usage of a SpatialMaterial whose Billboard " "Mode is set to \"Particle Billboard\"." msgstr "" +"تتطلب الرسوم المتحركة للجسيمات استخدام مادة مكانية (SpatialMaterial) التي تم " +"ضبط وضع اللوحة (Billboard Mode) الخاص بها على \"لوحة الجسيمات\"." #: scene/3d/path.cpp msgid "PathFollow only works when set as a child of a Path node." @@ -12543,6 +12559,8 @@ msgid "" "PathFollow's ROTATION_ORIENTED requires \"Up Vector\" to be enabled in its " "parent Path's Curve resource." msgstr "" +"يتطلب ROTATION_ORIENTED الخاص بأتباع-المسار (PathFollow) تمكين \"Up Vector\" " +"في مصدر منحنى مسار الأصل (Parent Path's)." #: scene/3d/physics_body.cpp msgid "" @@ -12550,16 +12568,21 @@ msgid "" "by the physics engine when running.\n" "Change the size in children collision shapes instead." msgstr "" +"تغير حجم الجسم الصلب (RigidBody) (في الشخصية أو الأوضاع الصلبة) سيتم تجاوزها " +"بواسطة محرك الفيزياء عند التشغيل.\n" +"قم بتغيير الحجم في أشكال تصادم الأتباع (Children) بدلاً من ذلك." #: scene/3d/remote_transform.cpp msgid "" "The \"Remote Path\" property must point to a valid Spatial or Spatial-" "derived node to work." msgstr "" +"يجب أن تشير خاصية \"المسار البعيد\" إلى عقدة مكانية أو مشتقة مكانية صالحة " +"لكي تعمل." #: scene/3d/soft_body.cpp msgid "This body will be ignored until you set a mesh." -msgstr "سيتم تجاهل هذا الجسم حتى تضع تحدد سطحاً mesh." +msgstr "سيتم تجاهل هذا الجسم حتى تضع تحدد له مجسمًا." #: scene/3d/soft_body.cpp msgid "" @@ -12567,42 +12590,52 @@ msgid "" "running.\n" "Change the size in children collision shapes instead." msgstr "" +"تغير حجم الجسم الناعم (SoftBody) سيتم تجاوزها بواسطة محرك الفيزياء عند " +"التشغيل.\n" +"قم بتغيير الحجم في أشكال تصادم الأتباع (Children) بدلاً من ذلك." #: scene/3d/sprite_3d.cpp -#, fuzzy msgid "" "A SpriteFrames resource must be created or set in the \"Frames\" property in " "order for AnimatedSprite3D to display frames." msgstr "" -"ليتم إظهار الأطر (اللقطات) في الAnimatedSprite (النقوش المتحركة), يجب تكوين " -"مصدر لها من نوع SpriteFrames و ضبط خاصية الFrames (الأطر) بها." +"يجب إنشاء مصدر إطارات الرسم (SpriteFrames) أو تعيينه في خاصية \"الإطارات\" " +"حتى يتمكن الرسوم المتحركة للرسم ثلاثي الُعد (AnimatedSprite3D) من عرض " +"الإطارات." #: scene/3d/vehicle_body.cpp msgid "" "VehicleWheel serves to provide a wheel system to a VehicleBody. Please use " "it as a child of a VehicleBody." msgstr "" +"تعمل عجلة المركبة (VehicleWheel) على توفير نظام عجلات لجسم " +"المركبة(VehicleBody). يرجى استخدامه كتابع لجسم المركبة." #: scene/3d/world_environment.cpp msgid "" "WorldEnvironment requires its \"Environment\" property to contain an " "Environment to have a visible effect." msgstr "" +"تتطلب بيئة-العالم (WorldEnvironment) خاصية\"البيئة\" الخاصة بها لاحتواء بيئة " +"ليكون لها تأثير مرئي." #: scene/3d/world_environment.cpp msgid "" "Only one WorldEnvironment is allowed per scene (or set of instanced scenes)." -msgstr "" +msgstr "يُسمح فقط ببيئة عالمية واحدة لكل مشهد (أو مجموعة من المشاهد المتوافقة)." #: scene/3d/world_environment.cpp msgid "" "This WorldEnvironment is ignored. Either add a Camera (for 3D scenes) or set " "this environment's Background Mode to Canvas (for 2D scenes)." msgstr "" +"يتم تجاهل هذه البيئة العالمية. إما أن تضيف كاميرا (للمشاهد ثلاثية البُعد) أو " +"اضبط وضع الخلفية لهذه البيئة على لوحة (Canvas) (للمشاهد ثنائية البُعد)." #: scene/animation/animation_blend_tree.cpp msgid "On BlendTree node '%s', animation not found: '%s'" msgstr "" +"في عقدة خليط-الشجرة (BlendTree) '%s'، لم يتم العثور على الرسوم المتحركة:'%s '" #: scene/animation/animation_blend_tree.cpp msgid "Animation not found: '%s'" @@ -12679,12 +12712,18 @@ msgid "" "children placement behavior.\n" "If you don't intend to add a script, use a plain Control node instead." msgstr "" +"لا تخدم الحاوية في حد ذاتها أي غرض ما لم يقم النص البرمجي بتكوين سلوك وضع " +"الأتباع الخاص به .\n" +"إذا كنت لا تنوي إضافة نص برمجي ، فاستخدم عقدة تحكم عادية بدلاً من ذلك." #: scene/gui/control.cpp msgid "" "The Hint Tooltip won't be displayed as the control's Mouse Filter is set to " "\"Ignore\". To solve this, set the Mouse Filter to \"Stop\" or \"Pass\"." msgstr "" +"لن يتم عرض أداة التلميح أثناء تعيين عامل تصفية الفأره الخاص بعنصر التحكم, تم " +"وضعه على \"تجاهل\". لحل هذه المشكلة ، اضبط تصفية الفأره على \"إيقاف\" أو " +"\"تمرير\"." #: scene/gui/dialogs.cpp msgid "Alert!" @@ -12700,10 +12739,13 @@ msgid "" "functions. Making them visible for editing is fine, but they will hide upon " "running." msgstr "" +"ستختفي النوافذ المنبثقة افتراضيًا ما لم تقم باستدعاء popup() أو أي من وظائف " +"popup(). من الجيد جعلها مرئية للتحرير ، لكنها ستختفي عند التشغيل." #: scene/gui/range.cpp msgid "If \"Exp Edit\" is enabled, \"Min Value\" must be greater than 0." msgstr "" +"إذا تم تفعيل الـ\"Exp Edit\" يجب على ان يكون \"Min Value\" اعلى من صفر." #: scene/gui/scroll_container.cpp msgid "" @@ -12711,6 +12753,9 @@ msgid "" "Use a container as child (VBox, HBox, etc.), or a Control and set the custom " "minimum size manually." msgstr "" +"تم تصميم ScrollContainer للعمل مع عنصر تحكم تابع واحد.\n" +"استخدم حاوية كتابع (VBox ، HBox ، إلخ) ، أو عنصر تحكم واضبط الحد الأدنى " +"المخصص للحجم يدويًا." #: scene/gui/tree.cpp msgid "(Other)" @@ -12721,6 +12766,8 @@ msgid "" "Default Environment as specified in Project Settings (Rendering -> " "Environment -> Default Environment) could not be loaded." msgstr "" +"تعذر تحميل البيئة الافتراضية كما هو محدد في إعدادات المشروع (التقديم -> " +"البيئة -> البيئة الافتراضية)." #: scene/main/viewport.cpp msgid "" @@ -12729,6 +12776,9 @@ msgid "" "obtain a size. Otherwise, make it a RenderTarget and assign its internal " "texture to some node for display." msgstr "" +"لم يتم تعيين منفذ العرض هذا كهدف عرض. إذا كنت تنوي عرض محتوياته مباشرة على " +"الشاشة ، اجعله تابعًا لعنصر تحكم حتى يتمكن من الحصول على الحجم. خلاف ذلك ، " +"اجعلها RenderTarget وقم بتعيين نسيجها الداخلي لبعض العقد لعرضها." #: scene/main/viewport.cpp msgid "Viewport size must be greater than 0 to render anything." diff --git a/editor/translations/bg.po b/editor/translations/bg.po index b0378d612c..6582fc6fec 100644 --- a/editor/translations/bg.po +++ b/editor/translations/bg.po @@ -1118,6 +1118,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/bn.po b/editor/translations/bn.po index 5fdcfb385b..e92b95ae74 100644 --- a/editor/translations/bn.po +++ b/editor/translations/bn.po @@ -1215,6 +1215,16 @@ msgid "Gold Sponsors" msgstr "গোল্ড স্পনসর" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "সিলভার ডোনার" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "ব্রোঞ্জ ডোনার" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "মিনি স্পনসর" diff --git a/editor/translations/ca.po b/editor/translations/ca.po index 359aea8184..5f1f1c4cc5 100644 --- a/editor/translations/ca.po +++ b/editor/translations/ca.po @@ -1148,6 +1148,16 @@ msgid "Gold Sponsors" msgstr "Patrocinadors Gold" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Donants Silver" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Donants Bronze" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Patrocinadors" diff --git a/editor/translations/cs.po b/editor/translations/cs.po index 0d2ae15065..3a77f37c2a 100644 --- a/editor/translations/cs.po +++ b/editor/translations/cs.po @@ -25,8 +25,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-08-11 14:04+0000\n" -"Last-Translator: Daniel Kříž <Daniel.kriz@protonmail.com>\n" +"PO-Revision-Date: 2020-08-16 03:50+0000\n" +"Last-Translator: Zbyněk <zbynek.fiala@gmail.com>\n" "Language-Team: Czech <https://hosted.weblate.org/projects/godot-engine/godot/" "cs/>\n" "Language: cs\n" @@ -1154,6 +1154,16 @@ msgid "Gold Sponsors" msgstr "Zlatí sponzoři" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Stříbrní dárci" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Bronzoví dárci" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Malí sponzoři" @@ -1622,7 +1632,7 @@ msgstr "Editor skriptů" #: editor/editor_feature_profile.cpp msgid "Asset Library" -msgstr "Otevřít knihovnu assetů" +msgstr "Knihovna zdrojů (AssetLib)" #: editor/editor_feature_profile.cpp msgid "Scene Tree Editing" diff --git a/editor/translations/da.po b/editor/translations/da.po index da54615917..d472b338d8 100644 --- a/editor/translations/da.po +++ b/editor/translations/da.po @@ -1189,6 +1189,16 @@ msgid "Gold Sponsors" msgstr "Guld Sponsorer" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Sølv Donorer" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Bronze Donorer" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Sponsorer" diff --git a/editor/translations/de.po b/editor/translations/de.po index 081dfb8e4f..9b89e7e1d6 100644 --- a/editor/translations/de.po +++ b/editor/translations/de.po @@ -55,12 +55,15 @@ # Günther Bohn <ciscouser@gmx.de>, 2020. # Tom Wor <mail@tomwor.com>, 2020. # Bjarne Hiller <bjarne.hiller@gmail.com>, 2020. +# Dirk Federmann <weblategodot@dirkfedermann.de>, 2020. +# Helmut Hirtes <helmut.h@gmx.de>, 2020. +# Michal695 <michalek.jedrzejak@gmail.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-08-05 16:58+0000\n" -"Last-Translator: Bjarne Hiller <bjarne.hiller@gmail.com>\n" +"PO-Revision-Date: 2020-08-28 13:09+0000\n" +"Last-Translator: Michal695 <michalek.jedrzejak@gmail.com>\n" "Language-Team: German <https://hosted.weblate.org/projects/godot-engine/" "godot/de/>\n" "Language: de\n" @@ -68,7 +71,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.2-dev\n" +"X-Generator: Weblate 4.2.1-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -77,13 +80,13 @@ msgstr "Ungültiger Argument-Typ in convert(), TYPE_*-Konstanten benötigt." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp msgid "Expected a string of length 1 (a character)." -msgstr "Zeichenkette der Länge 1 erwartet (exakt ein Symbol)." +msgstr "Zeichenkette der Länge 1 erwartet (exakt ein Zeichen)." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/mono/glue/gd_glue.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Not enough bytes for decoding bytes, or invalid format." -msgstr "Nicht genügend Bytes zum Dekodieren oder ungültiges Format." +msgstr "Nicht genügend Bytes zur Dekodierung oder ungültiges Format." #: core/math/expression.cpp msgid "Invalid input %i (not passed) in expression" @@ -1194,6 +1197,16 @@ msgid "Gold Sponsors" msgstr "Gold-Sponsoren" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Silber-Unterstützer" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Bronze-Unterstützer" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini-Sponsoren" @@ -1660,11 +1673,11 @@ msgstr "3D-Editor" #: editor/editor_feature_profile.cpp msgid "Script Editor" -msgstr "Skripteditor" +msgstr "Skript Editor" #: editor/editor_feature_profile.cpp msgid "Asset Library" -msgstr "Nutzerinhaltesammlung" +msgstr "Bestandsbibliothek" #: editor/editor_feature_profile.cpp msgid "Scene Tree Editing" @@ -3011,7 +3024,7 @@ msgstr "Projekt abspielen." #: editor/editor_node.cpp msgid "Play" -msgstr "Starten" +msgstr "Abspielen" #: editor/editor_node.cpp msgid "Pause the scene execution for debugging." @@ -3031,7 +3044,7 @@ msgstr "Spiele die bearbeitete Szene." #: editor/editor_node.cpp msgid "Play Scene" -msgstr "Szene starten" +msgstr "Szene abspielen" #: editor/editor_node.cpp msgid "Play custom scene" @@ -3039,7 +3052,7 @@ msgstr "Spiele angepasste Szene" #: editor/editor_node.cpp msgid "Play Custom Scene" -msgstr "Spiele angepasste Szene" +msgstr "Angepasste Szene abspielen" #: editor/editor_node.cpp msgid "Changing the video driver requires restarting the editor." @@ -3256,7 +3269,7 @@ msgstr "Gesamt" #: editor/editor_profiler.cpp msgid "Self" -msgstr "Eigenanteil" +msgstr "Selbst" #: editor/editor_profiler.cpp msgid "Frame #:" @@ -5695,7 +5708,7 @@ msgstr "Pose kopieren" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Clear Pose" -msgstr "Pose zurücksetzen" +msgstr "Pose/Stellung löschen" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Multiply grid step by 2" @@ -6833,7 +6846,7 @@ msgstr "Schiebe hoch" #: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "Move Down" -msgstr "Schiebe herunter" +msgstr "Schiebe runter" #: editor/plugins/script_editor_plugin.cpp msgid "Next script" @@ -6878,7 +6891,7 @@ msgstr "Vorwärts im Verlauf" #: editor/plugins/script_editor_plugin.cpp #: editor/plugins/theme_editor_plugin.cpp msgid "Theme" -msgstr "Theme" +msgstr "Designvorlagen (Thema)" #: editor/plugins/script_editor_plugin.cpp msgid "Import Theme..." @@ -7110,7 +7123,7 @@ msgstr "Symbol vervollständigen" #: editor/plugins/script_text_editor.cpp msgid "Evaluate Selection" -msgstr "Auswahl auswerten" +msgstr "Springe zum vorigen Haltepunkt" #: editor/plugins/script_text_editor.cpp msgid "Trim Trailing Whitespace" @@ -9398,9 +9411,9 @@ msgid "" "Returns falloff based on the dot product of surface normal and view " "direction of camera (pass associated inputs to it)." msgstr "" -"Gibt den Fresnelabfall abgeleitet aus dem Skalarprodukt aus " -"Oberflächennormalenvektor und Kamerablickrichtung zurück (zugeordnete " -"Eingänge müssen übergeben werden)." +"Gibt den Abfall basierend auf dem Punktprodukt der Oberflächennormalen und " +"der Blickrichtung der Kamera zurück (übergeben Sie die zugehörigen Eingaben " +"an diese)." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "" @@ -10323,7 +10336,7 @@ msgstr "Umleitungen nach Lokalisierung:" #: editor/project_settings_editor.cpp msgid "Locale" -msgstr "Lokalisierung" +msgstr "Gebietsschema" #: editor/project_settings_editor.cpp msgid "Locales Filter" @@ -10756,7 +10769,7 @@ msgstr "Unter-Ressourcen" #: editor/scene_tree_dock.cpp msgid "Clear Inheritance" -msgstr "Leere Vererbung" +msgstr "Löse Vererbung" #: editor/scene_tree_dock.cpp msgid "Editable Children" @@ -10845,7 +10858,7 @@ msgstr "Lokal" #: editor/scene_tree_dock.cpp msgid "Clear Inheritance? (No Undo!)" -msgstr "Vererbung wirklich leeren? (Lässt sich nicht rückgängig machen!)" +msgstr "Vererbung wirklich lösen? (Lässt sich nicht rückgängig machen!)" #: editor/scene_tree_editor.cpp msgid "Toggle Visible" @@ -11926,7 +11939,7 @@ msgstr "" #: modules/visual_script/visual_script_editor.cpp msgid "Delete Selected" -msgstr "Ausgewähltes löschen" +msgstr "Auswahl löschen" #: modules/visual_script/visual_script_editor.cpp msgid "Find Node Type" @@ -11942,7 +11955,7 @@ msgstr "Nodes trennen" #: modules/visual_script/visual_script_editor.cpp msgid "Make Function" -msgstr "Funktion bauen" +msgstr "Funktion erstellen" #: modules/visual_script/visual_script_editor.cpp msgid "Refresh Graph" diff --git a/editor/translations/editor.pot b/editor/translations/editor.pot index 87dca17afd..93e62289e0 100644 --- a/editor/translations/editor.pot +++ b/editor/translations/editor.pot @@ -1101,6 +1101,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/el.po b/editor/translations/el.po index 7c2a202767..c0c08edc2f 100644 --- a/editor/translations/el.po +++ b/editor/translations/el.po @@ -1147,6 +1147,16 @@ msgid "Gold Sponsors" msgstr "Χρυσοί Χορυγοί" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Αργυροί Δωρητές" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Χάλκινοι Δωρητές" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Μικροί Χορηγοί" diff --git a/editor/translations/eo.po b/editor/translations/eo.po index e740ea7d7a..3b58b56f85 100644 --- a/editor/translations/eo.po +++ b/editor/translations/eo.po @@ -1140,6 +1140,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/es.po b/editor/translations/es.po index 172ce58604..a685eeb7ff 100644 --- a/editor/translations/es.po +++ b/editor/translations/es.po @@ -1193,6 +1193,16 @@ msgid "Gold Sponsors" msgstr "Patrocinadores Oro" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Donantes Plata" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Donantes Bronce" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Patrocinadores" diff --git a/editor/translations/es_AR.po b/editor/translations/es_AR.po index f2c72ce1be..f80c3ba2c0 100644 --- a/editor/translations/es_AR.po +++ b/editor/translations/es_AR.po @@ -1154,6 +1154,16 @@ msgid "Gold Sponsors" msgstr "Sponsor Oro" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Donantes Plata" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Donantes Bronce" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Sponsors" diff --git a/editor/translations/et.po b/editor/translations/et.po index 504de558d5..b2b51b8676 100644 --- a/editor/translations/et.po +++ b/editor/translations/et.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2020-08-11 14:04+0000\n" +"PO-Revision-Date: 2020-09-01 10:38+0000\n" "Last-Translator: StReef <streef.gtx@gmail.com>\n" "Language-Team: Estonian <https://hosted.weblate.org/projects/godot-engine/" "godot/et/>\n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.2-dev\n" +"X-Generator: Weblate 4.2.1-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -799,7 +799,7 @@ msgstr "" #: editor/connections_dialog.cpp msgid "Advanced" -msgstr "" +msgstr "Täpsem" #: editor/connections_dialog.cpp msgid "Deferred" @@ -912,23 +912,23 @@ msgstr "" #: editor/create_dialog.cpp editor/editor_file_dialog.cpp #: editor/filesystem_dock.cpp msgid "Favorites:" -msgstr "" +msgstr "Lemmikud:" #: editor/create_dialog.cpp editor/editor_file_dialog.cpp msgid "Recent:" -msgstr "" +msgstr "Hiljutised:" #: editor/create_dialog.cpp editor/plugins/script_editor_plugin.cpp #: editor/property_selector.cpp editor/quick_open.cpp #: modules/visual_script/visual_script_property_selector.cpp msgid "Search:" -msgstr "" +msgstr "Otsi:" #: editor/create_dialog.cpp editor/plugins/script_editor_plugin.cpp #: editor/property_selector.cpp editor/quick_open.cpp #: modules/visual_script/visual_script_property_selector.cpp msgid "Matches:" -msgstr "" +msgstr "Vasted:" #: editor/create_dialog.cpp editor/editor_plugin_settings.cpp #: editor/plugin_config_dialog.cpp @@ -936,7 +936,7 @@ msgstr "" #: editor/plugins/visual_shader_editor_plugin.cpp editor/property_selector.cpp #: modules/visual_script/visual_script_property_selector.cpp msgid "Description:" -msgstr "" +msgstr "Kirjeldus:" #: editor/dependency_editor.cpp msgid "Search Replacement For:" @@ -1059,7 +1059,7 @@ msgstr "" #: editor/plugins/sprite_frames_editor_plugin.cpp editor/project_export.cpp #: editor/project_settings_editor.cpp editor/scene_tree_dock.cpp msgid "Delete" -msgstr "" +msgstr "Kustuta" #: editor/dependency_editor.cpp msgid "Owns" @@ -1079,7 +1079,7 @@ msgstr "" #: editor/editor_about.cpp msgid "Thanks from the Godot community!" -msgstr "Tänu Godot kogukonnale!" +msgstr "Suur tänu Godot kogukonnalt!" #: editor/editor_about.cpp msgid "Godot Engine contributors" @@ -1114,6 +1114,16 @@ msgid "Gold Sponsors" msgstr "Kuldsponsorid" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Hõbennetajad" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Pronksannetajad" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Väikesponsorid" @@ -1148,14 +1158,18 @@ msgid "" "is an exhaustive list of all such third-party components with their " "respective copyright statements and license terms." msgstr "" +"Godot mängumootor tugineb mitmetele kolmandate osapoolte tasuta ja avatud " +"lähtekoodiga teekidele, mis kõik on kooskõlas MIT-litsentsi tingimustega. " +"Järgnev on kõigi selliste kolmandate osapoolte komponentide täielik loetelu " +"koos vastavate autoriõiguste avalduste ja litsentsitingimustega." #: editor/editor_about.cpp msgid "All Components" -msgstr "" +msgstr "Kõik komponendid" #: editor/editor_about.cpp msgid "Components" -msgstr "" +msgstr "Komponendid" #: editor/editor_about.cpp msgid "Licenses" @@ -1204,7 +1218,7 @@ msgstr "" #: editor/editor_audio_buses.cpp msgid "Speakers" -msgstr "" +msgstr "Heliväljundi" #: editor/editor_audio_buses.cpp msgid "Add Effect" @@ -1269,7 +1283,7 @@ msgstr "" #: editor/editor_audio_buses.cpp editor/filesystem_dock.cpp #: editor/plugins/animation_player_editor_plugin.cpp editor/scene_tree_dock.cpp msgid "Duplicate" -msgstr "" +msgstr "Duplikeeri" #: editor/editor_audio_buses.cpp msgid "Reset Volume" @@ -2287,15 +2301,15 @@ msgstr "" #: editor/editor_node.cpp msgid "Quick Open..." -msgstr "" +msgstr "Ava kiiresti..." #: editor/editor_node.cpp msgid "Quick Open Scene..." -msgstr "" +msgstr "Ava kiiresti stseen..." #: editor/editor_node.cpp msgid "Quick Open Script..." -msgstr "" +msgstr "Ava kiiresti skript..." #: editor/editor_node.cpp msgid "Save & Close" @@ -2423,22 +2437,28 @@ msgstr "" #: editor/editor_node.cpp msgid "Unable to load addon script from path: '%s'." -msgstr "" +msgstr "Lisa-skripti ei olnud võimalik laadida teelt: '%s'." #: editor/editor_node.cpp msgid "" "Unable to load addon script from path: '%s' There seems to be an error in " "the code, please check the syntax." msgstr "" +"Lisa-skripti ei olnud võimalik laadida teelt: '%s'. Tundub, et koodis on " +"viga, palun kontrolli süntaksi." #: editor/editor_node.cpp msgid "" "Unable to load addon script from path: '%s' Base type is not EditorPlugin." msgstr "" +"Lisa-skripti ei olnud võimalik laadida teelt: '%s'. Baastüüp ei ole " +"EditorPlugin." #: editor/editor_node.cpp msgid "Unable to load addon script from path: '%s' Script is not in tool mode." msgstr "" +"Lisa-skripti ei olnud võimalik laadida teelt: '%s'. Skript ei ole tööriista " +"režiimis." #: editor/editor_node.cpp msgid "" @@ -2609,7 +2629,7 @@ msgstr "Salvesta kõik stseenid" #: editor/editor_node.cpp msgid "Convert To..." -msgstr "" +msgstr "Teisenda..." #: editor/editor_node.cpp msgid "MeshLibrary..." @@ -2827,7 +2847,7 @@ msgstr "Teavita veast" #: editor/editor_node.cpp msgid "Send Docs Feedback" -msgstr "Saada dokumentatsioonide tagasisede" +msgstr "Saada dokumentatsioonide tagasiside" #: editor/editor_node.cpp editor/plugins/asset_library_editor_plugin.cpp msgid "Community" @@ -2971,7 +2991,7 @@ msgstr "" #: editor/editor_node.cpp msgid "Load Errors" -msgstr "" +msgstr "Laadimisvead" #: editor/editor_node.cpp editor/plugins/tile_map_editor_plugin.cpp msgid "Select" @@ -3027,36 +3047,36 @@ msgstr "" #: editor/editor_plugin_settings.cpp msgid "Installed Plugins:" -msgstr "" +msgstr "Paigaldatud pistikprogrammid:" #: editor/editor_plugin_settings.cpp editor/plugin_config_dialog.cpp msgid "Update" -msgstr "" +msgstr "Uuenda" #: editor/editor_plugin_settings.cpp editor/plugin_config_dialog.cpp #: editor/plugins/asset_library_editor_plugin.cpp msgid "Version:" -msgstr "" +msgstr "Versioon:" #: editor/editor_plugin_settings.cpp editor/plugin_config_dialog.cpp msgid "Author:" -msgstr "" +msgstr "Autor:" #: editor/editor_plugin_settings.cpp msgid "Status:" -msgstr "" +msgstr "Olek:" #: editor/editor_plugin_settings.cpp msgid "Edit:" -msgstr "" +msgstr "Muuda:" #: editor/editor_profiler.cpp msgid "Measure:" -msgstr "" +msgstr "Mõõda:" #: editor/editor_profiler.cpp msgid "Frame Time (sec)" -msgstr "" +msgstr "Kaadri aeg (sek)" #: editor/editor_profiler.cpp msgid "Average Time (sec)" @@ -3064,7 +3084,7 @@ msgstr "" #: editor/editor_profiler.cpp msgid "Frame %" -msgstr "" +msgstr "Kaadri %" #: editor/editor_profiler.cpp msgid "Physics Frame %" @@ -3080,15 +3100,15 @@ msgstr "" #: editor/editor_profiler.cpp msgid "Frame #:" -msgstr "" +msgstr "Kaader nr:" #: editor/editor_profiler.cpp msgid "Time" -msgstr "" +msgstr "Aeg" #: editor/editor_profiler.cpp msgid "Calls" -msgstr "" +msgstr "Kutsungid" #: editor/editor_properties.cpp msgid "Edit Text:" @@ -3140,15 +3160,15 @@ msgstr "" #: editor/editor_properties.cpp editor/property_editor.cpp msgid "Pick a Viewport" -msgstr "" +msgstr "Vali vaateaken" #: editor/editor_properties.cpp editor/property_editor.cpp msgid "New Script" -msgstr "" +msgstr "Uus skript" #: editor/editor_properties.cpp editor/scene_tree_dock.cpp msgid "Extend Script" -msgstr "" +msgstr "Laienda skripti" #: editor/editor_properties.cpp editor/property_editor.cpp msgid "New %s" @@ -3199,7 +3219,7 @@ msgstr "" #: editor/editor_properties_array_dict.cpp msgid "New Value:" -msgstr "" +msgstr "Uus väärtus:" #: editor/editor_properties_array_dict.cpp msgid "Add Key/Value Pair" @@ -3428,7 +3448,7 @@ msgstr "" #: editor/export_template_manager.cpp msgid "Current Version:" -msgstr "" +msgstr "Praegune versioon:" #: editor/export_template_manager.cpp msgid "Installed Versions:" @@ -3540,7 +3560,7 @@ msgstr "" #: editor/filesystem_dock.cpp msgid "Add to Favorites" -msgstr "" +msgstr "Lisa lemmikutesse" #: editor/filesystem_dock.cpp msgid "Remove from Favorites" @@ -3548,45 +3568,45 @@ msgstr "" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." -msgstr "" +msgstr "Redigeeri sõltuvusi..." #: editor/filesystem_dock.cpp msgid "View Owners..." -msgstr "" +msgstr "Kuva omanikud..." #: editor/filesystem_dock.cpp editor/plugins/animation_player_editor_plugin.cpp msgid "Rename..." -msgstr "" +msgstr "Muuda nime..." #: editor/filesystem_dock.cpp msgid "Duplicate..." -msgstr "" +msgstr "Duplikeeri..." #: editor/filesystem_dock.cpp msgid "Move To..." -msgstr "" +msgstr "Teisalda..." #: editor/filesystem_dock.cpp msgid "New Scene..." -msgstr "" +msgstr "Uus stseen..." #: editor/filesystem_dock.cpp editor/plugins/script_editor_plugin.cpp msgid "New Script..." -msgstr "" +msgstr "Uus skript..." #: editor/filesystem_dock.cpp msgid "New Resource..." -msgstr "" +msgstr "Uus ressurss..." #: editor/filesystem_dock.cpp editor/plugins/visual_shader_editor_plugin.cpp #: editor/script_editor_debugger.cpp msgid "Expand All" -msgstr "" +msgstr "Laienda kõik" #: editor/filesystem_dock.cpp editor/plugins/visual_shader_editor_plugin.cpp #: editor/script_editor_debugger.cpp msgid "Collapse All" -msgstr "" +msgstr "Ahenda kõik" #: editor/filesystem_dock.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp @@ -3597,11 +3617,11 @@ msgstr "Nimeta ümber" #: editor/filesystem_dock.cpp msgid "Previous Folder/File" -msgstr "" +msgstr "Eelmine kaust/fail" #: editor/filesystem_dock.cpp msgid "Next Folder/File" -msgstr "" +msgstr "Järgmine kaust/fail" #: editor/filesystem_dock.cpp msgid "Re-Scan Filesystem" @@ -3609,7 +3629,7 @@ msgstr "" #: editor/filesystem_dock.cpp msgid "Toggle Split Mode" -msgstr "" +msgstr "Lülita jagamisrežiim sisse/välja" #: editor/filesystem_dock.cpp msgid "Search files" @@ -3639,7 +3659,7 @@ msgstr "Loo stseen" #: editor/filesystem_dock.cpp editor/plugins/script_editor_plugin.cpp msgid "Create Script" -msgstr "" +msgstr "Loo skript" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp msgid "Find in Files" @@ -3954,7 +3974,7 @@ msgstr "" #: editor/plugin_config_dialog.cpp msgid "Edit a Plugin" -msgstr "" +msgstr "Pistikprogrammi muutmine" #: editor/plugin_config_dialog.cpp msgid "Create a Plugin" @@ -3962,7 +3982,7 @@ msgstr "" #: editor/plugin_config_dialog.cpp msgid "Plugin Name:" -msgstr "" +msgstr "Pistikprogrammi nimi:" #: editor/plugin_config_dialog.cpp msgid "Subfolder:" @@ -3970,11 +3990,11 @@ msgstr "" #: editor/plugin_config_dialog.cpp editor/script_create_dialog.cpp msgid "Language:" -msgstr "" +msgstr "Keel:" #: editor/plugin_config_dialog.cpp msgid "Script Name:" -msgstr "" +msgstr "Skripti nimi:" #: editor/plugin_config_dialog.cpp msgid "Activate now?" @@ -4214,7 +4234,7 @@ msgstr "" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/scene_tree_dock.cpp msgid "Delete Node(s)" -msgstr "" +msgstr "Kustuta sõlm(ed)" #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "Toggle Filter On/Off" @@ -4379,7 +4399,7 @@ msgstr "Animatsiooni tööriistad" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation" -msgstr "" +msgstr "Animatsioon" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Edit Transitions..." @@ -4443,7 +4463,7 @@ msgstr "" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Include Gizmos (3D)" -msgstr "" +msgstr "Kaasa vidinad (3D)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Pin AnimationPlayer" @@ -4715,7 +4735,7 @@ msgstr "" #: editor/plugins/asset_library_editor_plugin.cpp msgid "View Files" -msgstr "" +msgstr "Kuva failid" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Connection error, please try again." @@ -4875,7 +4895,7 @@ msgstr "" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Plugins..." -msgstr "" +msgstr "Pistikprogrammid..." #: editor/plugins/asset_library_editor_plugin.cpp editor/project_manager.cpp msgid "Sort:" @@ -4934,7 +4954,7 @@ msgstr "" #: editor/plugins/camera_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp editor/rename_dialog.cpp msgid "Preview" -msgstr "" +msgstr "Eelvaade" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Configure Snap" @@ -5349,7 +5369,7 @@ msgstr "" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp msgid "View" -msgstr "" +msgstr "Kuva" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Always Show Grid" @@ -5373,7 +5393,7 @@ msgstr "" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Viewport" -msgstr "" +msgstr "Kuva vaateaken" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" @@ -6392,7 +6412,7 @@ msgstr "" #: editor/scene_tree_editor.cpp editor/script_editor_debugger.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Type:" -msgstr "" +msgstr "Tüüp:" #: editor/plugins/resource_preloader_editor_plugin.cpp #: editor/scene_tree_dock.cpp editor/scene_tree_editor.cpp @@ -6530,21 +6550,21 @@ msgstr "" #: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "Move Up" -msgstr "" +msgstr "Liiguta üles" #: editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "Move Down" -msgstr "" +msgstr "Liiguta allapoole" #: editor/plugins/script_editor_plugin.cpp msgid "Next script" -msgstr "" +msgstr "Järgmine skript" #: editor/plugins/script_editor_plugin.cpp msgid "Previous script" -msgstr "" +msgstr "Eelmine skript" #: editor/plugins/script_editor_plugin.cpp msgid "File" @@ -6617,12 +6637,12 @@ msgstr "" #: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp msgid "Break" -msgstr "" +msgstr "Paus" #: editor/plugins/script_editor_plugin.cpp editor/project_manager.cpp #: editor/script_editor_debugger.cpp msgid "Continue" -msgstr "" +msgstr "Jätka" #: editor/plugins/script_editor_plugin.cpp msgid "Keep Debugger Open" @@ -7095,7 +7115,7 @@ msgstr "Kuva keskkond" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Gizmos" -msgstr "" +msgstr "Kuva vidinad" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Information" @@ -7262,44 +7282,44 @@ msgstr "" #: editor/plugins/spatial_editor_plugin.cpp msgid "1 Viewport" -msgstr "" +msgstr "1 vaateaken" #: editor/plugins/spatial_editor_plugin.cpp msgid "2 Viewports" -msgstr "" +msgstr "2 vaateakent" #: editor/plugins/spatial_editor_plugin.cpp msgid "2 Viewports (Alt)" -msgstr "" +msgstr "2 vaateakent (alt)" #: editor/plugins/spatial_editor_plugin.cpp msgid "3 Viewports" -msgstr "" +msgstr "3 vaateakent" #: editor/plugins/spatial_editor_plugin.cpp msgid "3 Viewports (Alt)" -msgstr "" +msgstr "3 vaateakent (alt)" #: editor/plugins/spatial_editor_plugin.cpp msgid "4 Viewports" -msgstr "" +msgstr "4 vaateakent" #: editor/plugins/spatial_editor_plugin.cpp msgid "Gizmos" -msgstr "" +msgstr "Vidinad" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Origin" -msgstr "" +msgstr "Kuva lähtekoht" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Grid" -msgstr "" +msgstr "Kuva ruudustik" #: editor/plugins/spatial_editor_plugin.cpp #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Settings..." -msgstr "" +msgstr "Sätted..." #: editor/plugins/spatial_editor_plugin.cpp msgid "Snap Settings" @@ -7319,7 +7339,7 @@ msgstr "" #: editor/plugins/spatial_editor_plugin.cpp msgid "Viewport Settings" -msgstr "" +msgstr "Vaateakna sätted" #: editor/plugins/spatial_editor_plugin.cpp msgid "Perspective FOV (deg.):" @@ -7475,7 +7495,7 @@ msgstr "" #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Unable to load images" -msgstr "" +msgstr "Pilte ei saa laadida" #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "ERROR: Couldn't load frame resource!" @@ -7748,7 +7768,7 @@ msgstr "" #: editor/plugins/theme_editor_plugin.cpp msgid "Data Type:" -msgstr "" +msgstr "Andmetüüp:" #: editor/plugins/theme_editor_plugin.cpp #: editor/plugins/tile_set_editor_plugin.cpp @@ -7876,7 +7896,7 @@ msgstr "" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Merge from Scene" -msgstr "" +msgstr "Liida stseenist" #: editor/plugins/tile_set_editor_plugin.cpp msgid "New Single Tile" @@ -8247,7 +8267,7 @@ msgstr "" #: editor/plugins/version_control_editor_plugin.cpp #: modules/gdnative/gdnative_library_singleton_editor.cpp msgid "Status" -msgstr "" +msgstr "Olek" #: editor/plugins/version_control_editor_plugin.cpp msgid "View file diffs before committing them to the latest version" @@ -9119,7 +9139,7 @@ msgstr "" #: editor/project_export.cpp editor/project_settings_editor.cpp msgid "Add..." -msgstr "" +msgstr "Lisa..." #: editor/project_export.cpp msgid "" @@ -9193,7 +9213,7 @@ msgstr "" #: editor/project_export.cpp msgid "Script" -msgstr "" +msgstr "Skript" #: editor/project_export.cpp msgid "Script Export Mode:" @@ -9807,15 +9827,15 @@ msgstr "" #: editor/project_settings_editor.cpp msgid "Localization" -msgstr "" +msgstr "Tõlked" #: editor/project_settings_editor.cpp msgid "Translations" -msgstr "" +msgstr "Tõlked" #: editor/project_settings_editor.cpp msgid "Translations:" -msgstr "" +msgstr "Tõlked:" #: editor/project_settings_editor.cpp msgid "Remaps" @@ -9859,7 +9879,7 @@ msgstr "" #: editor/project_settings_editor.cpp msgid "Plugins" -msgstr "" +msgstr "Pistikprogrammid" #: editor/property_editor.cpp msgid "Preset..." @@ -9935,7 +9955,7 @@ msgstr "" #: editor/rename_dialog.cpp msgid "Advanced Options" -msgstr "" +msgstr "Täpsemad sätted" #: editor/rename_dialog.cpp msgid "Substitute" @@ -10218,7 +10238,7 @@ msgstr "" #: editor/scene_tree_dock.cpp msgid "Attach Script" -msgstr "" +msgstr "Manusta skript" #: editor/scene_tree_dock.cpp msgid "Remove Node(s)" @@ -10244,7 +10264,7 @@ msgstr "" #: editor/scene_tree_dock.cpp msgid "Sub-Resources" -msgstr "" +msgstr "Alamressursid" #: editor/scene_tree_dock.cpp msgid "Clear Inheritance" @@ -10260,7 +10280,7 @@ msgstr "" #: editor/scene_tree_dock.cpp msgid "Open Documentation" -msgstr "" +msgstr "Ava dokumentatsioon" #: editor/scene_tree_dock.cpp msgid "" @@ -10275,11 +10295,11 @@ msgstr "Lisa alamsõlm" #: editor/scene_tree_dock.cpp msgid "Expand/Collapse All" -msgstr "" +msgstr "Laienda/ahenda kõik" #: editor/scene_tree_dock.cpp msgid "Change Type" -msgstr "" +msgstr "Muuda tüüpi" #: editor/scene_tree_dock.cpp msgid "Reparent to New Node" @@ -10287,7 +10307,7 @@ msgstr "" #: editor/scene_tree_dock.cpp msgid "Make Scene Root" -msgstr "" +msgstr "Tee stseeni juurikaks" #: editor/scene_tree_dock.cpp msgid "Merge From Scene" @@ -10295,11 +10315,11 @@ msgstr "" #: editor/scene_tree_dock.cpp editor/script_editor_debugger.cpp msgid "Save Branch as Scene" -msgstr "" +msgstr "Salvesta filiaal stseenina" #: editor/scene_tree_dock.cpp editor/script_editor_debugger.cpp msgid "Copy Node Path" -msgstr "" +msgstr "Kopeeri sõlme tee" #: editor/scene_tree_dock.cpp msgid "Delete (No Confirm)" @@ -10477,7 +10497,7 @@ msgstr "" #: editor/script_create_dialog.cpp msgid "Open Script" -msgstr "" +msgstr "Ava skript" #: editor/script_create_dialog.cpp msgid "File exists, it will be reused." @@ -10583,7 +10603,7 @@ msgstr "" #: editor/script_editor_debugger.cpp msgid "Errors" -msgstr "" +msgstr "Vead" #: editor/script_editor_debugger.cpp msgid "Child process connected." @@ -10591,11 +10611,11 @@ msgstr "" #: editor/script_editor_debugger.cpp msgid "Copy Error" -msgstr "" +msgstr "Kopeeri viga" #: editor/script_editor_debugger.cpp msgid "Video RAM" -msgstr "" +msgstr "Videomälu" #: editor/script_editor_debugger.cpp msgid "Skip Breakpoints" @@ -10611,7 +10631,7 @@ msgstr "" #: editor/script_editor_debugger.cpp msgid "Stack Frames" -msgstr "" +msgstr "Virnakaadrid" #: editor/script_editor_debugger.cpp msgid "Profiler" @@ -10623,15 +10643,15 @@ msgstr "" #: editor/script_editor_debugger.cpp msgid "Monitor" -msgstr "" +msgstr "Jälgija" #: editor/script_editor_debugger.cpp msgid "Value" -msgstr "" +msgstr "Väärtus" #: editor/script_editor_debugger.cpp msgid "Monitors" -msgstr "" +msgstr "Jälgijad" #: editor/script_editor_debugger.cpp msgid "Pick one or more items from the list to display the graph." @@ -10639,7 +10659,7 @@ msgstr "" #: editor/script_editor_debugger.cpp msgid "List of Video Memory Usage by Resource:" -msgstr "" +msgstr "Videomälu kasutamise loetelu ressursside kaupa:" #: editor/script_editor_debugger.cpp msgid "Total:" @@ -10651,7 +10671,7 @@ msgstr "" #: editor/script_editor_debugger.cpp msgid "Resource Path" -msgstr "" +msgstr "Ressursi tee" #: editor/script_editor_debugger.cpp msgid "Type" @@ -10659,15 +10679,15 @@ msgstr "" #: editor/script_editor_debugger.cpp msgid "Format" -msgstr "" +msgstr "Formaat" #: editor/script_editor_debugger.cpp msgid "Usage" -msgstr "" +msgstr "Kasutus" #: editor/script_editor_debugger.cpp msgid "Misc" -msgstr "" +msgstr "Muud" #: editor/script_editor_debugger.cpp msgid "Clicked Control:" @@ -10686,8 +10706,9 @@ msgid "Set From Tree" msgstr "" #: editor/script_editor_debugger.cpp +#, fuzzy msgid "Export measures as CSV" -msgstr "" +msgstr "Ekspordi mõõtmed/meetmed CSV-vormingus" #: editor/settings_config_dialog.cpp msgid "Erase Shortcut" @@ -10831,11 +10852,11 @@ msgstr "" #: modules/gdnative/gdnative_library_singleton_editor.cpp msgid "Library" -msgstr "" +msgstr "Teek" #: modules/gdnative/gdnative_library_singleton_editor.cpp msgid "Libraries: " -msgstr "" +msgstr "Teegid: " #: modules/gdnative/register_types.cpp msgid "GDNative" diff --git a/editor/translations/eu.po b/editor/translations/eu.po index 906a258f32..f2f5f51348 100644 --- a/editor/translations/eu.po +++ b/editor/translations/eu.po @@ -1111,6 +1111,16 @@ msgid "Gold Sponsors" msgstr "Urrezko babesleak" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Zilarrezko emaileak" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Brontzezko emaileak" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini babesleak" diff --git a/editor/translations/extract.py b/editor/translations/extract.py index 02ed65131f..0dafd20eed 100755 --- a/editor/translations/extract.py +++ b/editor/translations/extract.py @@ -49,27 +49,27 @@ msgstr "" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\\n" "MIME-Version: 1.0\\n" "Content-Type: text/plain; charset=UTF-8\\n" -"Content-Transfer-Encoding: 8-bit\\n" +"Content-Transfer-Encoding: 8-bit\\n"\n """ def _write_message(msgctx, msg, msg_plural, location): global main_po - main_po += "\n#: " + location + "\n" + main_po += "#: " + location + "\n" if msgctx != "": main_po += 'msgctxt "' + msgctx + '"\n' main_po += 'msgid "' + msg + '"\n' if msg_plural != "": main_po += 'msgid_plural "' + msg_plural + '"\n' main_po += 'msgstr[0] ""\n' - main_po += 'msgstr[1] ""\n' + main_po += 'msgstr[1] ""\n\n' else: - main_po += 'msgstr ""\n' + main_po += 'msgstr ""\n\n' def _add_additional_location(msgctx, msg, location): global main_po - # Add additional location to previous occurrence + # Add additional location to previous occurrence. msg_pos = -1 if msgctx != "": msg_pos = main_po.find('\nmsgctxt "' + msgctx + '"\nmsgid "' + msg + '"') @@ -81,18 +81,138 @@ def _add_additional_location(msgctx, msg, location): main_po = main_po[:msg_pos] + " " + location + main_po[msg_pos:] +def _write_translator_comment(msgctx, msg, translator_comment): + if translator_comment == "": + return + + global main_po + msg_pos = -1 + if msgctx != "": + msg_pos = main_po.find('\nmsgctxt "' + msgctx + '"\nmsgid "' + msg + '"') + else: + msg_pos = main_po.find('\nmsgid "' + msg + '"') + + # If it's a new message, just append comment to the end of PO file. + if msg_pos == -1: + main_po += _format_translator_comment(translator_comment, True) + return + + # Find position just before location. Translator comment will be added there. + translator_comment_pos = main_po.rfind("\n\n#", 0, msg_pos) + 2 + if translator_comment_pos - 2 == -1: + print("translator_comment_pos not found") + return + + # Check if a previous translator comment already exists. If so, merge them together. + if main_po.find("TRANSLATORS:", translator_comment_pos, msg_pos) != -1: + translator_comment_pos = main_po.find("\n#:", translator_comment_pos, msg_pos) + 1 + if translator_comment_pos == 0: + print('translator_comment_pos after "TRANSLATORS:" not found') + return + main_po = ( + main_po[:translator_comment_pos] + + _format_translator_comment(translator_comment, False) + + main_po[translator_comment_pos:] + ) + return + + main_po = ( + main_po[:translator_comment_pos] + + _format_translator_comment(translator_comment, True) + + main_po[translator_comment_pos:] + ) + + +def _format_translator_comment(comment, new): + if not comment: + return "" + + comment_lines = comment.split("\n") + + formatted_comment = "" + if not new: + for comment in comment_lines: + formatted_comment += "#. " + comment.strip() + "\n" + return formatted_comment + + formatted_comment = "#. TRANSLATORS: " + for i in range(len(comment_lines)): + if i == 0: + formatted_comment += comment_lines[i].strip() + "\n" + else: + formatted_comment += "#. " + comment_lines[i].strip() + "\n" + return formatted_comment + + +def _is_block_translator_comment(translator_line): + line = translator_line.strip() + if line.find("//") == 0: + return False + else: + return True + + +def _extract_translator_comment(line, is_block_translator_comment): + line = line.strip() + reached_end = False + extracted_comment = "" + + start = line.find("TRANSLATORS:") + if start == -1: + start = 0 + else: + start += len("TRANSLATORS:") + + if is_block_translator_comment: + # If '*/' is found, then it's the end. + if line.rfind("*/") != -1: + extracted_comment = line[start : line.rfind("*/")] + reached_end = True + else: + extracted_comment = line[start:] + else: + # If beginning is not '//', then it's the end. + if line.find("//") != 0: + reached_end = True + else: + start = 2 if start == 0 else start + extracted_comment = line[start:] + + return (not reached_end, extracted_comment) + + def process_file(f, fname): global main_po, unique_str, unique_loc + patterns = ['RTR("', 'TTR("', 'TTRC("', 'TTRN("', 'RTRN("'] + l = f.readline() lc = 1 + reading_translator_comment = False + is_block_translator_comment = False + translator_comment = "" + while l: - patterns = ['RTR("', 'TTR("', 'TTRC("', 'TTRN("', 'RTRN("'] + # Detect translator comments. + if not reading_translator_comment and l.find("TRANSLATORS:") != -1: + reading_translator_comment = True + is_block_translator_comment = _is_block_translator_comment(l) + translator_comment = "" + + # Gather translator comments. It will be gathered for the next translation function. + if reading_translator_comment: + reading_translator_comment, extracted_comment = _extract_translator_comment(l, is_block_translator_comment) + if extracted_comment != "": + translator_comment += extracted_comment + "\n" + if not reading_translator_comment: + translator_comment = translator_comment[:-1] # Remove extra \n at the end. + idx = 0 pos = 0 - while pos >= 0: + + while not reading_translator_comment and pos >= 0: # Loop until a pattern is found. If not, next line. pos = l.find(patterns[idx], pos) if pos == -1: @@ -140,6 +260,10 @@ def process_file(f, fname): if line_nb: location += ":" + str(lc) + # Write translator comment. + _write_translator_comment(msgctx, msg, translator_comment) + translator_comment = "" + if msgctx != "": # If it's a new context or a new message within an existing context, then write new msgid. # Else add location to existing msgid. @@ -160,6 +284,7 @@ def process_file(f, fname): elif not location in unique_loc[msg]: _add_additional_location(msgctx, msg, location) unique_loc[msg].append(location) + l = f.readline() lc += 1 diff --git a/editor/translations/fa.po b/editor/translations/fa.po index dc7ae9ec69..0b87c12532 100644 --- a/editor/translations/fa.po +++ b/editor/translations/fa.po @@ -1141,6 +1141,16 @@ msgid "Gold Sponsors" msgstr "حامیان طلایی (درجه ۲)" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "اهداکنندگان نقرهای" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "اهداکنندگان برنزی" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "اسپانسرهای کوچک" diff --git a/editor/translations/fi.po b/editor/translations/fi.po index 124ae4f2e0..62c2e7a951 100644 --- a/editor/translations/fi.po +++ b/editor/translations/fi.po @@ -1138,6 +1138,16 @@ msgid "Gold Sponsors" msgstr "Kultasponsorit" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Hopealahjoittajat" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Pronssilahjoittajat" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Minisponsorit" diff --git a/editor/translations/fil.po b/editor/translations/fil.po index 490d9d92ec..faf4436839 100644 --- a/editor/translations/fil.po +++ b/editor/translations/fil.po @@ -5,11 +5,12 @@ # Marco Santos <enum.scima@gmail.com>, 2019. # Amado Wilkins <epicalert68@gmail.com>, 2019. # Bakainkorp <Ryan.Bautista86@myhunter.cuny.edu>, 2019. +# Jethro Parker <lionbearjet@hotmail.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2019-12-21 08:37+0000\n" -"Last-Translator: Bakainkorp <Ryan.Bautista86@myhunter.cuny.edu>\n" +"PO-Revision-Date: 2020-08-14 03:56+0000\n" +"Last-Translator: Jethro Parker <lionbearjet@hotmail.com>\n" "Language-Team: Filipino <https://hosted.weblate.org/projects/godot-engine/" "godot/fil/>\n" "Language: fil\n" @@ -17,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n != 1 && n != 2 && n != 3 && (n % 10 == 4 " "|| n % 10 == 6 || n % 10 == 9);\n" -"X-Generator: Weblate 3.10\n" +"X-Generator: Weblate 4.2-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -28,7 +29,7 @@ msgstr "" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp msgid "Expected a string of length 1 (a character)." -msgstr "" +msgstr "Nanghihingi ng string na may habang 1 (character)." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/mono/glue/gd_glue.cpp @@ -185,12 +186,12 @@ msgstr "" #: editor/animation_track_editor.cpp msgid "Change Animation Length" -msgstr "" +msgstr "Ibahin ang haba ng Animation" #: editor/animation_track_editor.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Change Animation Loop" -msgstr "" +msgstr "Ibahin ang ulit ng Animation" #: editor/animation_track_editor.cpp msgid "Property Track" @@ -218,44 +219,44 @@ msgstr "" #: editor/animation_track_editor.cpp msgid "Animation length (frames)" -msgstr "" +msgstr "Haba ng animation (frames)" #: editor/animation_track_editor.cpp msgid "Animation length (seconds)" -msgstr "" +msgstr "Haba ng animation (segundo)" #: editor/animation_track_editor.cpp msgid "Add Track" -msgstr "" +msgstr "Magdagdag ng Track" #: editor/animation_track_editor.cpp msgid "Animation Looping" -msgstr "" +msgstr "Pagulit ng Animation" #: editor/animation_track_editor.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Functions:" -msgstr "" +msgstr "Functions:" #: editor/animation_track_editor.cpp msgid "Audio Clips:" -msgstr "" +msgstr "Mga clip ng tunog:" #: editor/animation_track_editor.cpp msgid "Anim Clips:" -msgstr "" +msgstr "Mga clip ng Anim:" #: editor/animation_track_editor.cpp msgid "Change Track Path" -msgstr "" +msgstr "Ibahin ang landas ng Track" #: editor/animation_track_editor.cpp msgid "Toggle this track on/off." -msgstr "" +msgstr "Ilipat sa on/off ang track na ito." #: editor/animation_track_editor.cpp msgid "Update Mode (How this property is set)" -msgstr "" +msgstr "Baguhin ang Mode (Kung paano na-set ang property)" #: editor/animation_track_editor.cpp msgid "Interpolation Mode" @@ -1114,6 +1115,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" @@ -1893,7 +1902,7 @@ msgstr "" #: editor/editor_help.cpp msgid "Description" -msgstr "" +msgstr "Paglalarawan" #: editor/editor_help.cpp msgid "Online Tutorials" @@ -2816,11 +2825,11 @@ msgstr "" #: editor/editor_node.cpp editor/plugins/asset_library_editor_plugin.cpp msgid "Community" -msgstr "" +msgstr "Komunidad" #: editor/editor_node.cpp msgid "About" -msgstr "" +msgstr "Tungkol" #: editor/editor_node.cpp msgid "Play the project." diff --git a/editor/translations/fr.po b/editor/translations/fr.po index 9bb04cb2b0..8c1d67af83 100644 --- a/editor/translations/fr.po +++ b/editor/translations/fr.po @@ -1217,6 +1217,16 @@ msgid "Gold Sponsors" msgstr "Sponsors Or" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Donateurs Argent" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Donateurs Bronze" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Sponsors" diff --git a/editor/translations/ga.po b/editor/translations/ga.po index a496566c2e..da64cfe007 100644 --- a/editor/translations/ga.po +++ b/editor/translations/ga.po @@ -1107,6 +1107,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/he.po b/editor/translations/he.po index 0f9a19c842..48bb2ad5c0 100644 --- a/editor/translations/he.po +++ b/editor/translations/he.po @@ -15,11 +15,12 @@ # Anonymous <noreply@weblate.org>, 2020. # Daniel Kariv <danielkariv98@gmail.com>, 2020. # Ziv D <wizdavid@gmail.com>, 2020. +# yariv benj <yariv4400@gmail.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-08-11 14:04+0000\n" +"PO-Revision-Date: 2020-09-04 06:51+0000\n" "Last-Translator: Ziv D <wizdavid@gmail.com>\n" "Language-Team: Hebrew <https://hosted.weblate.org/projects/godot-engine/" "godot/he/>\n" @@ -29,16 +30,16 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && " "n % 10 == 0) ? 2 : 3));\n" -"X-Generator: Weblate 4.2-dev\n" +"X-Generator: Weblate 4.3-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." -msgstr "משתנה סוג לא חוקי לפונקציית convert(), יש להשתמש בקבועי TYPE_*." +msgstr "סוג משתנה לא חוקי לפונקציית convert(), יש להשתמש בקבועי TYPE_*." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp msgid "Expected a string of length 1 (a character)." -msgstr "צפויה מחרוזת באורך 1 (תו)." +msgstr "היתה צפויה מחרוזת באורך 1 (תו)." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/mono/glue/gd_glue.cpp @@ -52,7 +53,7 @@ msgstr "קלט שגוי %I (לא הועבר) בתוך הביטוי" #: core/math/expression.cpp msgid "self can't be used because instance is null (not passed)" -msgstr "לא ניתן להשתמש ב־self כיוון שהמופע הוא אפס (null - לא הועבר)" +msgstr "'self' לא ניתן לשימוש כי המופע הינו 'null' ( לא הועבר)" #: core/math/expression.cpp msgid "Invalid operands to operator %s, %s and %s." @@ -64,7 +65,7 @@ msgstr "שם מאפיין האינדקס מסוג %s עבור בסיס %s שגו #: core/math/expression.cpp msgid "Invalid named index '%s' for base type %s" -msgstr "שם אינדקס לא תקין '%s' לסוג בסיס '%s'" +msgstr "שם אינדקס לא תקין '%s' לסוג בסיס %s" #: core/math/expression.cpp msgid "Invalid arguments to construct '%s'" @@ -76,7 +77,7 @@ msgstr "בקריאה ל־‚%s’:" #: core/ustring.cpp msgid "B" -msgstr "ב׳" +msgstr "B" #: core/ustring.cpp msgid "KiB" @@ -124,15 +125,15 @@ msgstr "ערך:" #: editor/animation_bezier_editor.cpp msgid "Insert Key Here" -msgstr "הכנס מפתח כאן" +msgstr "הכנס כאן מפתח" #: editor/animation_bezier_editor.cpp msgid "Duplicate Selected Key(s)" -msgstr "לשכפל את הקבצים הנבחרים" +msgstr "שכפול מפתח(ות) שנבחרו" #: editor/animation_bezier_editor.cpp msgid "Delete Selected Key(s)" -msgstr "למחוק את הקבצים הנבחרים" +msgstr "מחיקת מפתח(ות) שנבחרו" #: editor/animation_bezier_editor.cpp msgid "Add Bezier Point" @@ -267,7 +268,7 @@ msgstr "עדכן מצב (איך המאפיין הזה נקבע)" #: editor/animation_track_editor.cpp msgid "Interpolation Mode" -msgstr "מצב אינתרפולציה" +msgstr "מצב אינטרפולציה" #: editor/animation_track_editor.cpp msgid "Loop Wrap Mode (Interpolate end with beginning on loop)" @@ -336,7 +337,6 @@ msgid "Delete Key(s)" msgstr "מחיקת מפתח(ות)" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Change Animation Update Mode" msgstr "שינוי מצב עדכון הנפשה" @@ -373,7 +373,6 @@ msgid "Create" msgstr "יצירה" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Anim Insert" msgstr "הוסף הנפשה" @@ -400,9 +399,8 @@ msgid "Change Animation Step" msgstr "ניקוי ההנפשה" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Rearrange Tracks" -msgstr "סידור רצועות" +msgstr "סדר רצועות מחדש" #: editor/animation_track_editor.cpp msgid "Transform tracks only apply to Spatial-based nodes." @@ -478,9 +476,8 @@ msgid "Anim Move Keys" msgstr "" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Clipboard is empty" -msgstr "לוח גזירי המשאבים ריק!" +msgstr "לוח העתקה ריק" #: editor/animation_track_editor.cpp #, fuzzy @@ -541,7 +538,7 @@ msgstr "" #: editor/animation_track_editor.cpp msgid "FPS" -msgstr "" +msgstr "FPS" #: editor/animation_track_editor.cpp editor/editor_properties.cpp #: editor/plugins/polygon_2d_editor_plugin.cpp @@ -665,7 +662,7 @@ msgstr "הגדרת מעברונים אל:" #: editor/plugins/sprite_frames_editor_plugin.cpp editor/property_editor.cpp #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Copy" -msgstr "העתקה" +msgstr "העתק" #: editor/animation_track_editor.cpp #, fuzzy @@ -703,7 +700,7 @@ msgstr "מעבר לשורה" #: editor/code_editor.cpp msgid "Line Number:" -msgstr "מספר השורה:" +msgstr "שורה מספר:" #: editor/code_editor.cpp msgid "%d replaced." @@ -711,7 +708,7 @@ msgstr "%d הוחלף." #: editor/code_editor.cpp editor/editor_help.cpp msgid "%d match." -msgstr "%d התאמות." +msgstr "%d התאמה." #: editor/code_editor.cpp editor/editor_help.cpp msgid "%d matches." @@ -727,7 +724,7 @@ msgstr "מילים שלמות" #: editor/code_editor.cpp editor/rename_dialog.cpp msgid "Replace" -msgstr "להחליף" +msgstr "החלף" #: editor/code_editor.cpp msgid "Replace All" @@ -934,9 +931,8 @@ msgid "Edit..." msgstr "עריכה..." #: editor/connections_dialog.cpp -#, fuzzy msgid "Go To Method" -msgstr "שיטות" +msgstr "מעבר למתודה" #: editor/create_dialog.cpp msgid "Change %s Type" @@ -1127,7 +1123,7 @@ msgstr "תודה רבה מקהילת Godot!" #: editor/editor_about.cpp msgid "Godot Engine contributors" -msgstr "מתנדבי מנוע Godot" +msgstr "מתנדבי מנוע גודו" #: editor/editor_about.cpp msgid "Project Founders" @@ -1158,6 +1154,16 @@ msgid "Gold Sponsors" msgstr "מממני זהב" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "תורמים בדרגת כסף" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "תורמים בדרגת ארד" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "מממנים זעירים" @@ -1212,9 +1218,8 @@ msgid "Error opening package file, not in ZIP format." msgstr "פתיחת קובץ החבילה נכשלה, המבנה אינו zip." #: editor/editor_asset_installer.cpp -#, fuzzy msgid "%s (Already Exists)" -msgstr "הפעולה ‚%s’ כבר קיימת!" +msgstr "%s (כבר קיים)" #: editor/editor_asset_installer.cpp msgid "Uncompressing Assets" @@ -1801,13 +1806,11 @@ msgid "Copy Path" msgstr "העתקת נתיב" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp -#, fuzzy msgid "Open in File Manager" -msgstr "הצגה במנהל הקבצים" +msgstr "פתיחה במנהל הקבצים" #: editor/editor_file_dialog.cpp editor/editor_node.cpp #: editor/filesystem_dock.cpp editor/project_manager.cpp -#, fuzzy msgid "Show in File Manager" msgstr "הצגה במנהל הקבצים" @@ -1857,39 +1860,39 @@ msgstr "שמירת קובץ" #: editor/editor_file_dialog.cpp msgid "Go Back" -msgstr "חזרה אחורה" +msgstr "מעבר אחורה" #: editor/editor_file_dialog.cpp msgid "Go Forward" -msgstr "התקדמות קדימה" +msgstr "מעבר קדימה" #: editor/editor_file_dialog.cpp msgid "Go Up" -msgstr "עלייה למעלה" +msgstr "מעבר מעלה" #: editor/editor_file_dialog.cpp msgid "Toggle Hidden Files" -msgstr "החלפת מצב תצוגה לקבצים מוסתרים" +msgstr "הצג/הסתר קבצים מוסתרים" #: editor/editor_file_dialog.cpp msgid "Toggle Favorite" -msgstr "החלפת מצב מועדפים" +msgstr "הוספת/ביטול מועדף" #: editor/editor_file_dialog.cpp msgid "Toggle Mode" -msgstr "החלפת מצב" +msgstr "שינוי מצב" #: editor/editor_file_dialog.cpp msgid "Focus Path" -msgstr "התמקדות על נתיב" +msgstr "מיקוד נתיב" #: editor/editor_file_dialog.cpp msgid "Move Favorite Up" -msgstr "העברת מועדף למעלה" +msgstr "העברת מועדף מעלה" #: editor/editor_file_dialog.cpp msgid "Move Favorite Down" -msgstr "העברת מועדף למטה" +msgstr "העברת מועדף מטה" #: editor/editor_file_dialog.cpp msgid "Go to previous folder." @@ -1900,18 +1903,16 @@ msgid "Go to next folder." msgstr "מעבר לתיקיה הבאה." #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Go to parent folder." -msgstr "מעבר לתיקייה שמעל" +msgstr "מעבר לתיקיית העל." #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Refresh files." msgstr "רענן קבצים." #: editor/editor_file_dialog.cpp -#, fuzzy msgid "(Un)favorite current folder." -msgstr "לא ניתן ליצור תיקייה." +msgstr "(בטל) העדפת תיקייה נוכחית." #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Toggle the visibility of hidden files." @@ -1951,11 +1952,11 @@ msgstr "סריקת מקורות" msgid "" "There are multiple importers for different types pointing to file %s, import " "aborted" -msgstr "" +msgstr "יש מספר מייבאים לסוגים שונים המצביעים לקובץ %s, הייבוא בוטל" #: editor/editor_file_system.cpp msgid "(Re)Importing Assets" -msgstr "" +msgstr "ייבוא משאבים (מחדש)" #: editor/editor_help.cpp editor/plugins/spatial_editor_plugin.cpp msgid "Top" @@ -1975,14 +1976,12 @@ msgid "Inherited by:" msgstr "מוריש אל:" #: editor/editor_help.cpp -#, fuzzy msgid "Description" -msgstr "תיאור:" +msgstr "תיאור" #: editor/editor_help.cpp -#, fuzzy msgid "Online Tutorials" -msgstr "מסמכים מקוונים" +msgstr "הדרכות מקוונות" #: editor/editor_help.cpp msgid "Properties" @@ -1990,21 +1989,19 @@ msgstr "מאפיינים" #: editor/editor_help.cpp msgid "override:" -msgstr "" +msgstr "דריסה:" #: editor/editor_help.cpp -#, fuzzy msgid "default:" -msgstr "טעינת בררת המחדל" +msgstr "ברירת מחדל:" #: editor/editor_help.cpp msgid "Methods" -msgstr "שיטות" +msgstr "מתודות" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties" -msgstr "מאפיינים" +msgstr "מאפייני ערכת עיצוב" #: editor/editor_help.cpp msgid "Enumerations" @@ -2015,31 +2012,32 @@ msgid "Constants" msgstr "קבועים" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions" -msgstr "תיאור המאפיין:" +msgstr "תיאורי מאפיינים" #: editor/editor_help.cpp -#, fuzzy msgid "(value)" -msgstr "ערך:" +msgstr "(ערך)" #: editor/editor_help.cpp msgid "" "There is currently no description for this property. Please help us by " "[color=$color][url=$url]contributing one[/url][/color]!" msgstr "" +"כרגע אין תיאור למאפיין זה. בבקשה עזור לנו על-ידי [/color][/url]כתיבת " +"תיאור[url=$url][color=$color]!" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions" -msgstr "תיאור השיטה:" +msgstr "תיאורי מתודות" #: editor/editor_help.cpp msgid "" "There is currently no description for this method. Please help us by [color=" "$color][url=$url]contributing one[/url][/color]!" msgstr "" +"כרגע אין תיאור למתודה זו. בבקשה עזור לנו על-ידי [/url][/color]כתיבת תיאור " +"[color=$color][url=$url]!" #: editor/editor_help_search.cpp editor/editor_node.cpp #: editor/plugins/script_editor_plugin.cpp @@ -2051,99 +2049,84 @@ msgid "Case Sensitive" msgstr "תלוי רישיות" #: editor/editor_help_search.cpp -#, fuzzy msgid "Show Hierarchy" -msgstr "חיפוש" +msgstr "הצג היררכיה" #: editor/editor_help_search.cpp -#, fuzzy msgid "Display All" -msgstr "הצגה נורמלית" +msgstr "הצג הכל" #: editor/editor_help_search.cpp -#, fuzzy msgid "Classes Only" -msgstr "מחלקות" +msgstr "מחלקות בלבד" #: editor/editor_help_search.cpp -#, fuzzy msgid "Methods Only" -msgstr "שיטות" +msgstr "מתודות בלבד" #: editor/editor_help_search.cpp -#, fuzzy msgid "Signals Only" -msgstr "אותות" +msgstr "אותות בלבד" #: editor/editor_help_search.cpp -#, fuzzy msgid "Constants Only" -msgstr "קבועים" +msgstr "קבועים בלבד" #: editor/editor_help_search.cpp -#, fuzzy msgid "Properties Only" -msgstr "מאפיינים" +msgstr "מאפיינים בלבד" #: editor/editor_help_search.cpp -#, fuzzy msgid "Theme Properties Only" -msgstr "מאפיינים" +msgstr "מאפייני ערכת עיצוב בלבד" #: editor/editor_help_search.cpp -#, fuzzy msgid "Member Type" -msgstr "חברים" +msgstr "סוג שדה" #: editor/editor_help_search.cpp -#, fuzzy msgid "Class" -msgstr "מחלקה:" +msgstr "מחלקה" #: editor/editor_help_search.cpp -#, fuzzy msgid "Method" -msgstr "שיטות" +msgstr "מתודה" #: editor/editor_help_search.cpp editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Signal" -msgstr "אותות" +msgstr "אות" #: editor/editor_help_search.cpp editor/plugins/theme_editor_plugin.cpp msgid "Constant" msgstr "קבוע" #: editor/editor_help_search.cpp -#, fuzzy msgid "Property" -msgstr "מאפיינים" +msgstr "מאפיין" #: editor/editor_help_search.cpp -#, fuzzy msgid "Theme Property" -msgstr "מאפיינים" +msgstr "מאפיין ערכת עיצוב" #: editor/editor_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" -msgstr "" +msgstr "מאפיין:" #: editor/editor_inspector.cpp msgid "Set" -msgstr "" +msgstr "קבע" #: editor/editor_inspector.cpp msgid "Set Multiple:" -msgstr "" +msgstr "קביעה מרובה:" #: editor/editor_log.cpp msgid "Output:" msgstr "פלט:" #: editor/editor_log.cpp editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Copy Selection" -msgstr "הסרת הבחירה" +msgstr "העתקת בחירה" #: editor/editor_log.cpp editor/editor_network_profiler.cpp #: editor/editor_profiler.cpp editor/editor_properties.cpp @@ -2153,11 +2136,11 @@ msgstr "הסרת הבחירה" #: modules/gdnative/gdnative_library_editor_plugin.cpp scene/gui/line_edit.cpp #: scene/gui/text_edit.cpp msgid "Clear" -msgstr "מחיקה" +msgstr "ניקוי" #: editor/editor_log.cpp msgid "Clear Output" -msgstr "מחיקת הפלט" +msgstr "ניקוי פלט" #: editor/editor_network_profiler.cpp editor/editor_node.cpp #: editor/editor_profiler.cpp @@ -2167,20 +2150,19 @@ msgstr "עצירה" #: editor/editor_network_profiler.cpp editor/editor_profiler.cpp #: editor/plugins/animation_state_machine_editor.cpp editor/rename_dialog.cpp msgid "Start" -msgstr "" +msgstr "התחלה" #: editor/editor_network_profiler.cpp msgid "%s/s" -msgstr "" +msgstr "%s לשנייה" #: editor/editor_network_profiler.cpp -#, fuzzy msgid "Down" msgstr "הורדה" #: editor/editor_network_profiler.cpp msgid "Up" -msgstr "" +msgstr "העלאה" #: editor/editor_network_profiler.cpp editor/editor_node.cpp msgid "Node" @@ -2188,32 +2170,32 @@ msgstr "מפרק" #: editor/editor_network_profiler.cpp msgid "Incoming RPC" -msgstr "" +msgstr "RPC נכנס" #: editor/editor_network_profiler.cpp msgid "Incoming RSET" -msgstr "" +msgstr "RSET נכנס" #: editor/editor_network_profiler.cpp msgid "Outgoing RPC" -msgstr "" +msgstr "RPC יוצא" #: editor/editor_network_profiler.cpp msgid "Outgoing RSET" -msgstr "" +msgstr "RSET יוצא" #: editor/editor_node.cpp editor/project_manager.cpp msgid "New Window" -msgstr "" +msgstr "חלון חדש" #: editor/editor_node.cpp msgid "Imported resources can't be saved." -msgstr "" +msgstr "משאבים מיובאים לא נשמרו." #: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp #: scene/gui/dialogs.cpp msgid "OK" -msgstr "" +msgstr "אישור" #: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp msgid "Error saving resource!" @@ -2224,6 +2206,7 @@ msgid "" "This resource can't be saved because it does not belong to the edited scene. " "Make it unique first." msgstr "" +"המשאב לא יכול להישמר מפני שאינו שייך לסצנה שנערכה, הפוך אותו קודם לייחודי." #: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp msgid "Save Resource As..." @@ -2235,7 +2218,7 @@ msgstr "לא ניתן לפתוח קובץ לכתיבה:" #: editor/editor_node.cpp msgid "Requested file format unknown:" -msgstr "תבנית הקובץ המבוקשת לא ידועה:" +msgstr "סוג הקובץ המבוקש לא ידוע:" #: editor/editor_node.cpp msgid "Error while saving." @@ -2243,27 +2226,27 @@ msgstr "שגיאה בעת השמירה." #: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp msgid "Can't open '%s'. The file could have been moved or deleted." -msgstr "" +msgstr "לא יכול לפתוח את 's%'. יכול להיות שהקובץ הועבר או נמחק." #: editor/editor_node.cpp msgid "Error while parsing '%s'." -msgstr "הפענוח של ‚%s’ נכשל." +msgstr "שגיאה בפענוח 's%'." #: editor/editor_node.cpp msgid "Unexpected end of file '%s'." -msgstr "סוף הקובץ בלתי צפוי ‚%s’." +msgstr "סוף קובץ בלתי צפוי '%s'." #: editor/editor_node.cpp msgid "Missing '%s' or its dependencies." -msgstr "" +msgstr "חסר 's%' או תלות שלו." #: editor/editor_node.cpp msgid "Error while loading '%s'." -msgstr "הטעינה של ‚%s’ נכשלה." +msgstr "שגיאה בטעינת 's%'." #: editor/editor_node.cpp msgid "Saving Scene" -msgstr "הסצנה נשמרת" +msgstr "שומר סצנה" #: editor/editor_node.cpp msgid "Analyzing" @@ -2271,7 +2254,7 @@ msgstr "מתבצע ניתוח" #: editor/editor_node.cpp msgid "Creating Thumbnail" -msgstr "נוצרת תמונה ממוזערת" +msgstr "יצירת תמונה ממוזערת" #: editor/editor_node.cpp msgid "This operation can't be done without a tree root." @@ -2282,34 +2265,34 @@ msgid "" "This scene can't be saved because there is a cyclic instancing inclusion.\n" "Please resolve it and then attempt to save again." msgstr "" +"סצנה זו לא יכולה להישמר מפני שיש הכללת מופע מעגלית.\n" +"בבקשה פתור זאת ואז נסה לשמור שוב." #: editor/editor_node.cpp msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." -msgstr "" -"לא ניתן לשמור את הסצנה. כפי הנראה עקב תלויות (מופעים או ירושות) שאינן " -"מסופקות." +msgstr "לא ניתן לשמור את הסצנה. כנראה עקב תלות (מופע או ירושה) שלא מסופקת." #: editor/editor_node.cpp editor/scene_tree_dock.cpp msgid "Can't overwrite scene that is still open!" -msgstr "" +msgstr "לא ניתן להחליף סצנה שעדיין פתוחה!" #: editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" -msgstr "" +msgstr "לא ניתן לטעון את MeshLibrary למיזוג!" #: editor/editor_node.cpp msgid "Error saving MeshLibrary!" -msgstr "" +msgstr "שגיאה בשמירת MeshLibrary!" #: editor/editor_node.cpp msgid "Can't load TileSet for merging!" -msgstr "" +msgstr "לא ניתן לטעון TileSet למיזוג!" #: editor/editor_node.cpp msgid "Error saving TileSet!" -msgstr "" +msgstr "שגיאה בשמירת TileSet!" #: editor/editor_node.cpp msgid "Error trying to save layout!" @@ -2317,7 +2300,7 @@ msgstr "שמירת הפריסה נכשלה!" #: editor/editor_node.cpp msgid "Default editor layout overridden." -msgstr "בררת המחדל של פריסת העורך שוכתבה." +msgstr "ברירת המחדל של עורך הפריסה נדרסה." #: editor/editor_node.cpp msgid "Layout name not found!" @@ -2325,7 +2308,7 @@ msgstr "שם הפריסה לא נמצא!" #: editor/editor_node.cpp msgid "Restored default layout to base settings." -msgstr "פריסת בררת המחדל שוחזרה להגדרות הבסיס." +msgstr "פריסת ברירת המחדל שוחזרה להגדרות הבסיס." #: editor/editor_node.cpp msgid "" @@ -2333,20 +2316,24 @@ msgid "" "Please read the documentation relevant to importing scenes to better " "understand this workflow." msgstr "" +"משאב זה שייך לסצנה שיובאה ולא ניתן לעריכה.\n" +"בבקשה קרא/י את התיעוד הקשור לייבוא סצנות כדי להבין טוב יותר את שיטת עבודה." #: editor/editor_node.cpp msgid "" "This resource belongs to a scene that was instanced or inherited.\n" "Changes to it won't be kept when saving the current scene." msgstr "" +"משאב זה שייך לסצנה שנוצר לה מופע או שעברה ירושה.\n" +"שינויים במשאב לא יישמרו בשמירת הסצינה הנוכחית." #: editor/editor_node.cpp msgid "" "This resource was imported, so it's not editable. Change its settings in the " "import panel and then re-import." msgstr "" -"משאב זה עבר יבוא, לכן אין אפשרות לערוך אותו. יש לשנות את ההגדרות שלו בחלונית " -"הייבוא ואז לייבא שוב." +"משאב זה מיובא ואין אפשרות לערוך אותו. יש לשנות את הגדרותיו בחלון הייבוא " +"ולייבא מחדש." #: editor/editor_node.cpp msgid "" @@ -2355,6 +2342,9 @@ msgid "" "Please read the documentation relevant to importing scenes to better " "understand this workflow." msgstr "" +"סצנה זו מיובאת, כל שינוי בה לא יישמר.\n" +"יצירת מופע או ירושה תאפשר לעשות בה שינויים.\n" +"בבקשה קרא/י את התיעוד הקשור לייבוא סצנות כדי להבין טוב יותר את שיטת העבודה." #: editor/editor_node.cpp msgid "" @@ -2362,6 +2352,8 @@ msgid "" "Please read the documentation relevant to debugging to better understand " "this workflow." msgstr "" +"זהו אובייקט מרוחק לכן שינויים בו לא יישמרו.\n" +"בבקשה קרא/י את התיועד הקשור לניפוי שגיאות כדי להבין טוב יותר את שיטת העבודה." #: editor/editor_node.cpp msgid "There is no defined scene to run." @@ -2380,9 +2372,8 @@ msgid "Open Base Scene" msgstr "פתיחת סצנת בסיס" #: editor/editor_node.cpp -#, fuzzy msgid "Quick Open..." -msgstr "פתיחת סצנה מהירה…" +msgstr "פתיחה מהירה…" #: editor/editor_node.cpp msgid "Quick Open Scene..." @@ -2398,16 +2389,15 @@ msgstr "שמירה וסגירה" #: editor/editor_node.cpp msgid "Save changes to '%s' before closing?" -msgstr "לשמור את השינויים ל־‚%s’ לפני הסגירה?" +msgstr "לשמור את השינויים ל־'%s' לפני הסגירה?" #: editor/editor_node.cpp -#, fuzzy msgid "Saved %s modified resource(s)." -msgstr "טעינת המשאב נכשלה." +msgstr "נשמרו %s משאבים שהשתנו." #: editor/editor_node.cpp msgid "A root node is required to save the scene." -msgstr "" +msgstr "מפרק עליון דרוש כדי לשמור את הסצינה." #: editor/editor_node.cpp msgid "Save Scene As..." @@ -2431,7 +2421,7 @@ msgstr "לא ניתן לבצע פעולה זו ללא סצנה." #: editor/editor_node.cpp msgid "Export Mesh Library" -msgstr "" +msgstr "ייצוא Mesh Library" #: editor/editor_node.cpp msgid "This operation can't be done without a root node." @@ -2439,7 +2429,7 @@ msgstr "לא ניתן לבצע פעולה זו ללא מפרק עליון." #: editor/editor_node.cpp msgid "Export Tile Set" -msgstr "" +msgstr "ייצוא Tile Set" #: editor/editor_node.cpp msgid "This operation can't be done without a selected node." @@ -2454,19 +2444,20 @@ msgid "Can't reload a scene that was never saved." msgstr "לא ניתן לרענן סצנה שמעולם לא נשמרה." #: editor/editor_node.cpp -#, fuzzy msgid "Reload Saved Scene" -msgstr "שמירת סצנה" +msgstr "טעינה מחדש של סצינה שמורה" #: editor/editor_node.cpp msgid "" "The current scene has unsaved changes.\n" "Reload the saved scene anyway? This action cannot be undone." msgstr "" +"הסצינה הנוכחית כוללת שינויים שלא נשמרו.\n" +"האם לטעון מחדש את הסצינה? לא ניתן לבטל פעולה זו." #: editor/editor_node.cpp msgid "Quick Run Scene..." -msgstr "" +msgstr "הפעלה מהירה של הסצנה..." #: editor/editor_node.cpp msgid "Quit" @@ -2509,56 +2500,61 @@ msgid "Close Scene" msgstr "סגירת סצנה" #: editor/editor_node.cpp -#, fuzzy msgid "Reopen Closed Scene" -msgstr "סגירת סצנה" +msgstr "פתיחה מחדש של סצנה סגורה" #: editor/editor_node.cpp msgid "Unable to enable addon plugin at: '%s' parsing of config failed." -msgstr "לא ניתן לפתוח את תוסף ההרחבות תחת: ‚%s’ פענוח ההגדרות נכשל." +msgstr "לא ניתן לפתוח את תוסף ההרחבות בנתיב: '%s' פענוח ההגדרות נכשל." #: editor/editor_node.cpp msgid "Unable to find script field for addon plugin at: 'res://addons/%s'." -msgstr "לא ניתן למצוא שדה סקריפט עבור תוסף הרחבה תחת ‚res://addons/%s’." +msgstr "לא ניתן למצוא שדה סקריפט עבור תוסף הרחבה בנתיב 'res://addons/%s'." #: editor/editor_node.cpp msgid "Unable to load addon script from path: '%s'." -msgstr "לא ניתן לטעון סקריפט הרחבה מהנתיב: ‚%s’." +msgstr "לא ניתן לטעון סקריפט הרחבה מנתיב: '%s'." #: editor/editor_node.cpp msgid "" "Unable to load addon script from path: '%s' There seems to be an error in " "the code, please check the syntax." msgstr "" +"לא ניתן לטעון סקריפט הרחבה מנתיב: '%s' נראה שיש שגיאה בקוד, אנא בדוק את " +"התחביר." #: editor/editor_node.cpp msgid "" "Unable to load addon script from path: '%s' Base type is not EditorPlugin." -msgstr "" +msgstr "לא ניתן לטעון סקריפט הרחבה מנתיב: '%s' סוג הבסיס אינו EditorPlugin." #: editor/editor_node.cpp msgid "Unable to load addon script from path: '%s' Script is not in tool mode." -msgstr "" +msgstr "לא ניתן לטעון סקריפט הרחבה מנתיב: '%s' סקריפט אינו מוגדר ככלי (tool)." #: editor/editor_node.cpp msgid "" "Scene '%s' was automatically imported, so it can't be modified.\n" "To make changes to it, a new inherited scene can be created." msgstr "" +"הסצינה '%s' יובאה באופן אוטומטי ואין אפשרות לשנות אותה.\n" +"כדי לבצע בה שינויים, ניתן ליצור סצינה חדשה בירושה." #: editor/editor_node.cpp msgid "" "Error loading scene, it must be inside the project path. Use 'Import' to " "open the scene, then save it inside the project path." msgstr "" +"שגיאה בטעינת הסצנה, היא חייבת להיות בתוך נתיב המיזם. השתמש ב'ייבוא' כדי " +"לפתוח את הסצינה, ואז שמור אותה בנתיב המיזם." #: editor/editor_node.cpp msgid "Scene '%s' has broken dependencies:" -msgstr "" +msgstr "לסצינה '%s' יש תלות חסרה:" #: editor/editor_node.cpp msgid "Clear Recent Scenes" -msgstr "" +msgstr "נקה סצינות אחרונות" #: editor/editor_node.cpp msgid "" @@ -2566,6 +2562,8 @@ msgid "" "You can change it later in \"Project Settings\" under the 'application' " "category." msgstr "" +"לא הוגדרה סצנה ראשית, לבחור אחת?\n" +"אפשר לשנות זאת מאוחר יותר ב-\"הגדרות מיזם\" תחת הקטגוריה 'יישום'." #: editor/editor_node.cpp msgid "" @@ -2573,6 +2571,8 @@ msgid "" "You can change it later in \"Project Settings\" under the 'application' " "category." msgstr "" +"הסצינה שנבחרה '%s' לא קיימת, לבחור סצנה קיימת?\n" +"אפשר לשנות זאת מאוחר יותר ב\"הגדרות מיזם\" תחת הקטגוריה 'יישום'." #: editor/editor_node.cpp msgid "" @@ -2580,81 +2580,78 @@ msgid "" "You can change it later in \"Project Settings\" under the 'application' " "category." msgstr "" +"הסצינה שנבחרה '%s' אינה קובץ סצינה, לבחור קובץ סצינה אחר?\n" +"אפשר לשנות זאת מאוחר יותר ב-\"הגדרות מיזם\" תחת הקטגוריה 'יישום'." #: editor/editor_node.cpp msgid "Save Layout" -msgstr "" +msgstr "שמירת פריסה" #: editor/editor_node.cpp msgid "Delete Layout" -msgstr "" +msgstr "מחיקת פריסה" #: editor/editor_node.cpp editor/import_dock.cpp #: editor/script_create_dialog.cpp msgid "Default" -msgstr "" +msgstr "בחירת מחדל" #: editor/editor_node.cpp editor/editor_properties.cpp #: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp -#, fuzzy msgid "Show in FileSystem" -msgstr "הצגה במערכת הקבצים" +msgstr "הצגה בחלון הקבצים" #: editor/editor_node.cpp -#, fuzzy msgid "Play This Scene" -msgstr "נגינת הסצנה" +msgstr "הרצת הסצנה" #: editor/editor_node.cpp -#, fuzzy msgid "Close Tab" -msgstr "לסגור לשוניות אחרות" +msgstr "סגירת לשונית" #: editor/editor_node.cpp -#, fuzzy msgid "Undo Close Tab" -msgstr "לסגור לשוניות אחרות" +msgstr "ביטול סגירת לשונית" #: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp msgid "Close Other Tabs" -msgstr "לסגור לשוניות אחרות" +msgstr "סגירת לשוניות אחרות" #: editor/editor_node.cpp msgid "Close Tabs to the Right" -msgstr "" +msgstr "סגירת לשוניות מימין" #: editor/editor_node.cpp -#, fuzzy msgid "Close All Tabs" -msgstr "לסגור הכול" +msgstr "סגירת כל הלשוניות" #: editor/editor_node.cpp msgid "Switch Scene Tab" -msgstr "" +msgstr "החלפת לשונית סצנה" #: editor/editor_node.cpp msgid "%d more files or folders" -msgstr "" +msgstr "%d קבצים או תיקיות נוספים" #: editor/editor_node.cpp msgid "%d more folders" -msgstr "" +msgstr "%d תיקיות נוספות" #: editor/editor_node.cpp msgid "%d more files" -msgstr "" +msgstr "%d קבצים נוספים" #: editor/editor_node.cpp msgid "Dock Position" -msgstr "" +msgstr "מיקום הפנל" #: editor/editor_node.cpp msgid "Distraction Free Mode" -msgstr "" +msgstr "מצב ללא הסחות דעת" #: editor/editor_node.cpp msgid "Toggle distraction-free mode." -msgstr "" +msgstr "הפעל/בטל מצב ללא הסחות דעת." #: editor/editor_node.cpp msgid "Add a new scene." @@ -2666,12 +2663,11 @@ msgstr "סצנה" #: editor/editor_node.cpp msgid "Go to previously opened scene." -msgstr "מעבר לסצנה שנפתחה קודם לכן." +msgstr "מעבר לסצנה הקודמת." #: editor/editor_node.cpp -#, fuzzy msgid "Copy Text" -msgstr "העתקת נתיב" +msgstr "העתקת טקסט" #: editor/editor_node.cpp msgid "Next tab" @@ -2683,7 +2679,7 @@ msgstr "הלשונית הקודמת" #: editor/editor_node.cpp msgid "Filter Files..." -msgstr "" +msgstr "סנן קבצים..." #: editor/editor_node.cpp msgid "Operations with scene files." @@ -2710,7 +2706,6 @@ msgid "Save Scene" msgstr "שמירת סצנה" #: editor/editor_node.cpp -#, fuzzy msgid "Save All Scenes" msgstr "שמירת כל הסצנות" @@ -2720,11 +2715,11 @@ msgstr "המרה אל…" #: editor/editor_node.cpp msgid "MeshLibrary..." -msgstr "" +msgstr "MeshLibrary..." #: editor/editor_node.cpp msgid "TileSet..." -msgstr "" +msgstr "TileSet..." #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp @@ -2750,17 +2745,16 @@ msgid "Project Settings..." msgstr "הגדרות מיזם..." #: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp -#, fuzzy msgid "Version Control" -msgstr "גרסה:" +msgstr "בקרת גירסאות" #: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp msgid "Set Up Version Control" -msgstr "" +msgstr "קביעת בקרת גירסאות" #: editor/editor_node.cpp msgid "Shut Down Version Control" -msgstr "" +msgstr "סגור בקרת גירסאות" #: editor/editor_node.cpp msgid "Export..." @@ -2768,7 +2762,7 @@ msgstr "ייצוא..." #: editor/editor_node.cpp msgid "Install Android Build Template..." -msgstr "" +msgstr "התקנת תבנית בנייה לאנדרואיד..." #: editor/editor_node.cpp msgid "Open Project Data Folder" @@ -2784,7 +2778,7 @@ msgstr "סייר משאבים יתומים ..." #: editor/editor_node.cpp msgid "Quit to Project List" -msgstr "יציאה לרשימת המיזמים" +msgstr "יציאה לרשימת מיזמים" #: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp #: editor/project_export.cpp @@ -2816,16 +2810,22 @@ msgid "" "On Android, deploy will use the USB cable for faster performance. This " "option speeds up testing for games with a large footprint." msgstr "" +"כאשר אפשרות זו מופעלת, ייצוא או פריסה יפיקו קובץ הפעלה מינימלי.\n" +"מערכת הקבצים תסופק מהמיזם על ידי העורך ברשת.\n" +"באנדרואיד, הפריסה תשתמש בכבל USB לביצועים מהירים יותר. אפשרות זו מזרזת בדיקה " +"של משחקים עם קובץ הרצה גדול." #: editor/editor_node.cpp msgid "Visible Collision Shapes" -msgstr "" +msgstr "צורות התנגשות גלויים" #: editor/editor_node.cpp msgid "" "Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " "running game if this option is turned on." msgstr "" +"צורות התנגשויות ומפרקי קרניים (עבור דו ותלת מימד) יהיו גלויים בהרצת המשחק אם " +"אפשרות זאת מופעלת." #: editor/editor_node.cpp msgid "Visible Navigation" @@ -2835,7 +2835,7 @@ msgstr "ניווט גלוי" msgid "" "Navigation meshes and polygons will be visible on the running game if this " "option is turned on." -msgstr "" +msgstr "רשתות ניווט ומצולעים יהיו גלויים בהרצת המשחק אם אפשרות זאת מופעלת." #: editor/editor_node.cpp msgid "Sync Scene Changes" @@ -2848,6 +2848,8 @@ msgid "" "When used remotely on a device, this is more efficient with network " "filesystem." msgstr "" +"כאשר אפשרות זו מופעלת, כל השינויים שיבוצעו בסצנה בעורך יוצגו בהרצת המשחק.\n" +"בשימוש עם מכשיר מרוחק, מערכת קבצים ברשת (NFS) תהיה יעילה יותר ." #: editor/editor_node.cpp msgid "Sync Script Changes" @@ -2860,6 +2862,8 @@ msgid "" "When used remotely on a device, this is more efficient with network " "filesystem." msgstr "" +"כאשר אפשרות זו מופעלת, כל סקריפט שנשמר יטען מחדש בהרצת המשחק.\n" +"בשימוש עם מכשיר מרוחק, מערכת קבצים ברשת (NFS) תהיה יעילה יותר ." #: editor/editor_node.cpp editor/script_create_dialog.cpp msgid "Editor" @@ -2874,46 +2878,40 @@ msgid "Editor Layout" msgstr "פריסת עורך" #: editor/editor_node.cpp -#, fuzzy msgid "Take Screenshot" -msgstr "שמירת סצנה" +msgstr "שמירת צילום מסך" #: editor/editor_node.cpp -#, fuzzy msgid "Screenshots are stored in the Editor Data/Settings Folder." -msgstr "הגדרות עורך" +msgstr "צילומי מסך נשמרים בתיקיית נתוני/הגדרות העורך." #: editor/editor_node.cpp msgid "Toggle Fullscreen" -msgstr "כניסה אל/יציאה ממסך מלא" +msgstr "הפעלת/ביטול מסך מלא" #: editor/editor_node.cpp -#, fuzzy msgid "Toggle System Console" -msgstr "החלפת מצב" +msgstr "הפעלת/ביטול מסוף מערכת" #: editor/editor_node.cpp msgid "Open Editor Data/Settings Folder" -msgstr "פתח תיקיית נתונים/הגדרות של העורך" +msgstr "פתיחת תיקיית נתוני/הגדרות העורך" #: editor/editor_node.cpp msgid "Open Editor Data Folder" -msgstr "" +msgstr "פתיחת תיקיית נתוני העורך" #: editor/editor_node.cpp -#, fuzzy msgid "Open Editor Settings Folder" -msgstr "הגדרות עורך" +msgstr "פתיחת תיקיית הגדרות העורך" #: editor/editor_node.cpp -#, fuzzy msgid "Manage Editor Features..." -msgstr "ניהול תבניות ייצוא" +msgstr "ניהול תכונות העורך..." #: editor/editor_node.cpp -#, fuzzy msgid "Manage Export Templates..." -msgstr "ניהול תבניות ייצוא" +msgstr "ניהול תבניות ייצוא..." #: editor/editor_node.cpp editor/plugins/shader_editor_plugin.cpp msgid "Help" @@ -2938,13 +2936,12 @@ msgid "Q&A" msgstr "שאלות ותשובות נפוצות" #: editor/editor_node.cpp -#, fuzzy msgid "Report a Bug" -msgstr "ייבוא מחדש" +msgstr "דיווח על תקלה (באג)" #: editor/editor_node.cpp msgid "Send Docs Feedback" -msgstr "" +msgstr "שליחת משוב על התיעוד" #: editor/editor_node.cpp editor/plugins/asset_library_editor_plugin.cpp msgid "Community" @@ -2952,19 +2949,19 @@ msgstr "קהילה" #: editor/editor_node.cpp msgid "About" -msgstr "על" +msgstr "על אודות" #: editor/editor_node.cpp msgid "Play the project." -msgstr "נגינת המיזם…" +msgstr "הרצת המיזם." #: editor/editor_node.cpp msgid "Play" -msgstr "נגינה" +msgstr "הרצה" #: editor/editor_node.cpp msgid "Pause the scene execution for debugging." -msgstr "" +msgstr "הפסקת הרצת הסצנה לניפוי שגיאות." #: editor/editor_node.cpp msgid "Pause Scene" @@ -2976,49 +2973,44 @@ msgstr "עצירת הסצנה." #: editor/editor_node.cpp msgid "Play the edited scene." -msgstr "נגינת הסצנה שנערכה." +msgstr "הרצת הסצנה שנערכה." #: editor/editor_node.cpp msgid "Play Scene" -msgstr "נגינת הסצנה" +msgstr "הרצת הסצנה" #: editor/editor_node.cpp msgid "Play custom scene" -msgstr "נגינת סצנה מותאמת אישית" +msgstr "הרצת סצנה מותאמת אישית" #: editor/editor_node.cpp msgid "Play Custom Scene" -msgstr "נגינת סצנה בהתאמה אישית" +msgstr "הרצת סצנה בהתאמה אישית" #: editor/editor_node.cpp msgid "Changing the video driver requires restarting the editor." -msgstr "" +msgstr "שינוי מנהל התקן הווידאו דורש הפעלת העורך מחדש." #: editor/editor_node.cpp editor/project_settings_editor.cpp #: editor/settings_config_dialog.cpp -#, fuzzy msgid "Save & Restart" -msgstr "לשמור ולצאת" +msgstr "שמירה והפעלה מחדש" #: editor/editor_node.cpp -#, fuzzy msgid "Spins when the editor window redraws." -msgstr "מסתובב כאשר חלון העורך מצויר מחדש!" +msgstr "מסתובב כאשר חלון העורך מצויר מחדש." #: editor/editor_node.cpp -#, fuzzy msgid "Update Continuously" -msgstr "מתמשך" +msgstr "עדכון רציף" #: editor/editor_node.cpp -#, fuzzy msgid "Update When Changed" -msgstr "עדכון שינויים" +msgstr "עדכון בעת שינוי" #: editor/editor_node.cpp -#, fuzzy msgid "Hide Update Spinner" -msgstr "השבתת שבשבת עדכון" +msgstr "הסתרת מחוון העדכון" #: editor/editor_node.cpp msgid "FileSystem" @@ -3029,9 +3021,8 @@ msgid "Inspector" msgstr "חוקר" #: editor/editor_node.cpp -#, fuzzy msgid "Expand Bottom Panel" -msgstr "להרחיב הכול" +msgstr "הרחבת פאנל תחתון" #: editor/editor_node.cpp msgid "Output" @@ -3043,12 +3034,11 @@ msgstr "לא לשמור" #: editor/editor_node.cpp msgid "Android build template is missing, please install relevant templates." -msgstr "" +msgstr "חסרה תבנית בנייה לאנדרואיד, נא להתקין תבניות רלוונטיות." #: editor/editor_node.cpp -#, fuzzy msgid "Manage Templates" -msgstr "ניהול תבניות ייצוא" +msgstr "ניהול תבניות" #: editor/editor_node.cpp msgid "" @@ -3060,6 +3050,12 @@ msgid "" "the \"Use Custom Build\" option should be enabled in the Android export " "preset." msgstr "" +"פעולה זו תגדיר את המיזם שלך לבניית אנדרואיד מותאמת אישית על ידי התקנת תבנית " +"המקור ל- \"res://android/build\".\n" +"לאחר מכן אפשר להחיל שינויים ולבנות APK מותאם אישית בייצוא (הוספת מודולים, " +"שינוי AndroidManifest.xml, וכו').\n" +"כדי לערוך בנייה מותאמת אישית במקום שימוש בתבנית קיימת, יש לאפשר את \"השתמש " +"בבניה מותאמת אישית\" בהגדרות הייצוא לאנדרואיד." #: editor/editor_node.cpp msgid "" @@ -3127,9 +3123,8 @@ msgid "Open the previous Editor" msgstr "פתיחת העורך הקודם" #: editor/editor_node.h -#, fuzzy msgid "Warning!" -msgstr "אזהרות" +msgstr "אזהרה!" #: editor/editor_path.cpp msgid "No sub-resources found." @@ -3596,9 +3591,8 @@ msgid "Download Templates" msgstr "הורדת תבניות" #: editor/export_template_manager.cpp -#, fuzzy msgid "Select mirror from list: (Shift+Click: Open in Browser)" -msgstr "בחירת אתר מראה מהרשימה: " +msgstr "בחר אתר חלופי מהרשימה: (Shift+Click: פתיחה בדפדפן)" #: editor/filesystem_dock.cpp #, fuzzy @@ -3663,9 +3657,8 @@ msgid "Duplicating folder:" msgstr "תיקייה משוכפלת:" #: editor/filesystem_dock.cpp -#, fuzzy msgid "New Inherited Scene" -msgstr "סצנה חדשה בירושה…" +msgstr "סצנה חדשה יורשת" #: editor/filesystem_dock.cpp #, fuzzy @@ -3800,9 +3793,8 @@ msgid "Create Script" msgstr "יצירת סקריפט" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Find in Files" -msgstr "איתור…" +msgstr "איתור בקבצים" #: editor/find_in_files.cpp #, fuzzy @@ -3869,9 +3861,8 @@ msgid "Remove from Group" msgstr "הסרה מקבוצה" #: editor/groups_editor.cpp -#, fuzzy msgid "Group name already exists." -msgstr "הפעולה ‚%s’ כבר קיימת!" +msgstr "שם הקבוצה כבר קיים." #: editor/groups_editor.cpp #, fuzzy @@ -4064,9 +4055,8 @@ msgid "Copy Params" msgstr "העתקת משתנים" #: editor/inspector_dock.cpp -#, fuzzy msgid "Edit Resource Clipboard" -msgstr "לוח גזירי המשאבים ריק!" +msgstr "ערוך לוח העתקת משאבים" #: editor/inspector_dock.cpp msgid "Copy Resource" @@ -4308,9 +4298,8 @@ msgid "Open Animation Node" msgstr "שם הנפשה חדשה:" #: editor/plugins/animation_blend_space_2d_editor.cpp -#, fuzzy msgid "Triangle already exists." -msgstr "הפעולה ‚%s’ כבר קיימת!" +msgstr "המשולש כבר קיים." #: editor/plugins/animation_blend_space_2d_editor.cpp #, fuzzy @@ -4365,14 +4354,13 @@ msgid "Blend:" msgstr "" #: editor/plugins/animation_blend_tree_editor_plugin.cpp -#, fuzzy msgid "Parameter Changed" -msgstr "שינויי חומרים" +msgstr "משתנה השתנה" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Edit Filters" -msgstr "" +msgstr "עריכת מסננים" #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "Output node can't be added to the blend tree." @@ -4405,15 +4393,14 @@ msgid "Nodes Disconnected" msgstr "מנותק" #: editor/plugins/animation_blend_tree_editor_plugin.cpp -#, fuzzy msgid "Set Animation" -msgstr "שם הנפשה חדשה:" +msgstr "קביעת הנפשה" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/visual_shader_editor_plugin.cpp #, fuzzy msgid "Delete Node" -msgstr "מחיקת שורה" +msgstr "מחק מפרק" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/scene_tree_dock.cpp @@ -4508,9 +4495,8 @@ msgid "Remove Animation" msgstr "" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Invalid animation name!" -msgstr "שם שגוי." +msgstr "שם הנפשה לא חוקי!" #: editor/plugins/animation_player_editor_plugin.cpp #, fuzzy @@ -4539,14 +4525,12 @@ msgid "Duplicate Animation" msgstr "" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "No animation to copy!" -msgstr "תקריב הנפשה." +msgstr "אין הנפשה להעתקה!" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "No animation resource on clipboard!" -msgstr "לא בנתיב המשאב." +msgstr "אין משאב הנפשה בלוח ההעתקה!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Pasted Animation" @@ -4557,9 +4541,8 @@ msgid "Paste Animation" msgstr "" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "No animation to edit!" -msgstr "שם הנפשה חדשה:" +msgstr "אין הנפשה לעריכה!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Play selected animation backwards from current pos. (A)" @@ -4702,9 +4685,8 @@ msgid "Move Node" msgstr "מצב הזזה (W)" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition exists!" -msgstr "מעברון" +msgstr "המעברון קיים!" #: editor/plugins/animation_state_machine_editor.cpp #, fuzzy @@ -6473,7 +6455,7 @@ msgstr "הזזת נקודה" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "" "The skeleton property of the Polygon2D does not point to a Skeleton2D node" -msgstr "" +msgstr "מאפיין 'skeleton' של Polygon2D אינו מצביע על מפרק Skeleton2D" #: editor/plugins/polygon_2d_editor_plugin.cpp #, fuzzy @@ -6648,9 +6630,8 @@ msgid "Show Grid" msgstr "" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Configure Grid:" -msgstr "הגדרת הצמדה…" +msgstr "הגדר רשת:" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Grid Offset X:" @@ -7038,9 +7019,8 @@ msgid "Line" msgstr "שורה:" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function" -msgstr "מעבר לפונקציה…" +msgstr "עבור לפונקציה" #: editor/plugins/script_text_editor.cpp msgid "Only resources from filesystem can be dropped." @@ -8841,9 +8821,8 @@ msgid "Create Shader Node" msgstr "יצירת תיקייה" #: editor/plugins/visual_shader_editor_plugin.cpp -#, fuzzy msgid "Color function." -msgstr "מעבר לפונקציה…" +msgstr "פונקציית צבע." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Color operator." @@ -9333,9 +9312,8 @@ msgid "Transform uniform." msgstr "התמרה" #: editor/plugins/visual_shader_editor_plugin.cpp -#, fuzzy msgid "Vector function." -msgstr "מעבר לפונקציה…" +msgstr "פונקציה וקטורית." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Vector operator." @@ -10061,9 +10039,8 @@ msgid "" msgstr "" #: editor/project_settings_editor.cpp -#, fuzzy msgid "An action with the name '%s' already exists." -msgstr "הפעולה ‚%s’ כבר קיימת!" +msgstr "פעולה עם השם '%s' כבר קיימת." #: editor/project_settings_editor.cpp msgid "Rename Input Action Event" @@ -10657,7 +10634,6 @@ msgid "Delete %d nodes and any children?" msgstr "מחיקת שורה" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Delete %d nodes?" msgstr "מחק %d מפרקים?" @@ -10953,19 +10929,16 @@ msgid "Select a Node" msgstr "" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Path is empty." -msgstr "לוח גזירי המשאבים ריק!" +msgstr "הנתיב ריק." #: editor/script_create_dialog.cpp -#, fuzzy msgid "Filename is empty." -msgstr "לוח גזירי המשאבים ריק!" +msgstr "שם הקובץ ריק." #: editor/script_create_dialog.cpp -#, fuzzy msgid "Path is not local." -msgstr "הנתיב לא מוביל מפרק!" +msgstr "הנתיב אינו מקומי." #: editor/script_create_dialog.cpp #, fuzzy @@ -11063,9 +11036,8 @@ msgid "Will load an existing script file." msgstr "טעינת פריסת אפיקי שמע." #: editor/script_create_dialog.cpp -#, fuzzy msgid "Script file already exists." -msgstr "הפעולה ‚%s’ כבר קיימת!" +msgstr "קובץ סקריפט כבר קיים." #: editor/script_create_dialog.cpp msgid "" @@ -11642,334 +11614,324 @@ msgid "Done!" msgstr "" #: modules/visual_script/visual_script.cpp +#, fuzzy msgid "" "A node yielded without working memory, please read the docs on how to yield " "properly!" msgstr "" +"מפרק ביצע yield ללא זיכרון עבודה, אנא קרא את התיעוד על איך לעשות yield כראוי!" #: modules/visual_script/visual_script.cpp msgid "" "Node yielded, but did not return a function state in the first working " "memory." -msgstr "" +msgstr "המפרק ביצע yield, אבל לא החזיר את מצב הפונקציה בזיכרון העבודה הראשון." #: modules/visual_script/visual_script.cpp msgid "" "Return value must be assigned to first element of node working memory! Fix " "your node please." msgstr "" +"יש להקצות את הערך המוחזר לאלמנט הראשון של זיכרון עבודה של המפרק! יש לתקן את " +"המפרק בבקשה." #: modules/visual_script/visual_script.cpp msgid "Node returned an invalid sequence output: " -msgstr "" +msgstr "מפרק החזיר פלט סדר (sequence) לא חוקי: " #: modules/visual_script/visual_script.cpp msgid "Found sequence bit but not the node in the stack, report bug!" -msgstr "" +msgstr "סיבית הסדר (sequence bit) נמצאה אבל המפרק לא במחסנית, דווח על שגיאה!" #: modules/visual_script/visual_script.cpp msgid "Stack overflow with stack depth: " -msgstr "" +msgstr "גלישת מחסנית עם עומק מחסנית: " #: modules/visual_script/visual_script_editor.cpp msgid "Change Signal Arguments" -msgstr "" +msgstr "שינוי ארגומנטים של אות" #: modules/visual_script/visual_script_editor.cpp msgid "Change Argument Type" -msgstr "" +msgstr "שינוי סוג ארגומנט" #: modules/visual_script/visual_script_editor.cpp msgid "Change Argument name" -msgstr "" +msgstr "שינוי שם ארגומנט" #: modules/visual_script/visual_script_editor.cpp msgid "Set Variable Default Value" -msgstr "" +msgstr "קביעת ערך ברירת מחדל של משתנה" #: modules/visual_script/visual_script_editor.cpp msgid "Set Variable Type" -msgstr "" +msgstr "קביעת סוג משתנה" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Input Port" -msgstr "מועדפים:" +msgstr "הוספת פורט כניסה" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Output Port" -msgstr "מועדפים:" +msgstr "הוספת פורט יציאה" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Override an existing built-in function." -msgstr "שם שגוי. לא יכול לחפוף לשם סוג מובנה קיים." +msgstr "דריסה של פונקציה מובנת קיימת." #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Create a new function." -msgstr "יצירת %s חדש" +msgstr "יצירת פונקציה חדשה." #: modules/visual_script/visual_script_editor.cpp msgid "Variables:" -msgstr "" +msgstr "משתנים:" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Create a new variable." -msgstr "יצירת %s חדש" +msgstr "יצירת משתנה חדש." #: modules/visual_script/visual_script_editor.cpp msgid "Signals:" msgstr "אותות:" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Create a new signal." -msgstr "יצירת מצולע" +msgstr "יצירת אות חדש." #: modules/visual_script/visual_script_editor.cpp msgid "Name is not a valid identifier:" -msgstr "" +msgstr "השם אינו מזהה חוקי:" #: modules/visual_script/visual_script_editor.cpp msgid "Name already in use by another func/var/signal:" -msgstr "" +msgstr "השם כבר בשימוש של פונקציה/משתנה/אות אחר:" #: modules/visual_script/visual_script_editor.cpp msgid "Rename Function" -msgstr "" +msgstr "שינוי שם פונקציה" #: modules/visual_script/visual_script_editor.cpp msgid "Rename Variable" -msgstr "" +msgstr "שינוי שם משתנה" #: modules/visual_script/visual_script_editor.cpp msgid "Rename Signal" -msgstr "" +msgstr "שינוי שם אות" #: modules/visual_script/visual_script_editor.cpp msgid "Add Function" -msgstr "" +msgstr "הוספת פונקציה" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Delete input port" -msgstr "הסרת נקודה בנתיב" +msgstr "מחיקת פורט כניסה" #: modules/visual_script/visual_script_editor.cpp msgid "Add Variable" -msgstr "" +msgstr "הוספת משתנה" #: modules/visual_script/visual_script_editor.cpp msgid "Add Signal" -msgstr "" +msgstr "הוספת אות" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Remove Input Port" -msgstr "הסרת נקודה בנתיב" +msgstr "הסרת פורט כניסה" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Remove Output Port" -msgstr "הסרת נקודה בנתיב" +msgstr "הסרת פורט יציאה" #: modules/visual_script/visual_script_editor.cpp msgid "Change Expression" -msgstr "" +msgstr "שינוי ביטוי" #: modules/visual_script/visual_script_editor.cpp msgid "Remove VisualScript Nodes" -msgstr "" +msgstr "הסרת מפרקי VisualScript" #: modules/visual_script/visual_script_editor.cpp msgid "Duplicate VisualScript Nodes" -msgstr "" +msgstr "שכפול מפרקי VisualScript" #: modules/visual_script/visual_script_editor.cpp msgid "Hold %s to drop a Getter. Hold Shift to drop a generic signature." msgstr "" +"החזק את %s כדי להוסיף Getter. החזק את מקש Shift כדי להוסיף חתימה גנרית." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a Getter. Hold Shift to drop a generic signature." msgstr "" +"החזק את מקש Ctrl כדי להוסיף Getter. החזק את מקש Shift כדי להוסיף חתימה גנרית." #: modules/visual_script/visual_script_editor.cpp msgid "Hold %s to drop a simple reference to the node." -msgstr "" +msgstr "החזק את %s כדי להוסיף הפניה פשוטה למפרק." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a simple reference to the node." -msgstr "" +msgstr "החזק את מקש Ctrl כדי להוסיף הפניה פשוטה למפרק." #: modules/visual_script/visual_script_editor.cpp msgid "Hold %s to drop a Variable Setter." -msgstr "" +msgstr "החזק את %s כדי להוסיף Setter למשתנה." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a Variable Setter." -msgstr "" +msgstr "החזק את מקש Ctrl כדי להוסיף Setter למשתנה." #: modules/visual_script/visual_script_editor.cpp msgid "Add Preload Node" -msgstr "" +msgstr "הוספת מפרק קדם טעינה" #: modules/visual_script/visual_script_editor.cpp msgid "Add Node(s) From Tree" -msgstr "" +msgstr "הוספת מפרק/ים מהעץ" #: modules/visual_script/visual_script_editor.cpp msgid "" "Can't drop properties because script '%s' is not used in this scene.\n" "Drop holding 'Shift' to just copy the signature." msgstr "" +"לא ניתן להוסיף מאפיינים כי סקריפט '%s' לא בשימוש בסצנה זו.\n" +"החזקת 'Shift' בזמן הוספה תעתיק רק את החתימה." #: modules/visual_script/visual_script_editor.cpp msgid "Add Getter Property" -msgstr "" +msgstr "הוספת מאפיין ל-Getter" #: modules/visual_script/visual_script_editor.cpp msgid "Add Setter Property" -msgstr "" +msgstr "הוספת מאפיין ל-Setter" #: modules/visual_script/visual_script_editor.cpp msgid "Change Base Type" -msgstr "" +msgstr "שינוי סוג בסיס" #: modules/visual_script/visual_script_editor.cpp msgid "Move Node(s)" -msgstr "" +msgstr "הזזת מפרק(ים)" #: modules/visual_script/visual_script_editor.cpp msgid "Remove VisualScript Node" -msgstr "" +msgstr "הסרת מפרק VisualScript" #: modules/visual_script/visual_script_editor.cpp msgid "Connect Nodes" -msgstr "" +msgstr "חיבור מפרקים" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Disconnect Nodes" -msgstr "מנותק" +msgstr "ניתוק מפרקים" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Connect Node Data" -msgstr "התחברות למפרק:" +msgstr "קישור נתוני מפרק" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Connect Node Sequence" -msgstr "התחברות למפרק:" +msgstr "קישור Sequence של מפרק" #: modules/visual_script/visual_script_editor.cpp msgid "Script already has function '%s'" -msgstr "" +msgstr "לסקריפט יש כבר פונקציה '%s'" #: modules/visual_script/visual_script_editor.cpp msgid "Change Input Value" -msgstr "" +msgstr "שינוי ערך נקלט" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Resize Comment" -msgstr "החלפת מצב הערה" +msgstr "שינוי גודל הערה" #: modules/visual_script/visual_script_editor.cpp msgid "Can't copy the function node." -msgstr "" +msgstr "לא ניתן להעתיק את פונקצית המפרק." #: modules/visual_script/visual_script_editor.cpp msgid "Clipboard is empty!" -msgstr "" +msgstr "לוח העתקה ריק!" #: modules/visual_script/visual_script_editor.cpp msgid "Paste VisualScript Nodes" -msgstr "" +msgstr "הדבקת מפרקי VisualScript" #: modules/visual_script/visual_script_editor.cpp msgid "Can't create function with a function node." -msgstr "" +msgstr "לא ניתן ליצור פונקציה עם פונקצית המפרק." #: modules/visual_script/visual_script_editor.cpp msgid "Can't create function of nodes from nodes of multiple functions." -msgstr "" +msgstr "לא ניתן ליצור פונקציה של מפרקים ממפרקים של פונקציות מרובות." #: modules/visual_script/visual_script_editor.cpp msgid "Select at least one node with sequence port." -msgstr "" +msgstr "בחר מפרק אחד לפחות עם כניסה רציפה (Sequence)." #: modules/visual_script/visual_script_editor.cpp msgid "Try to only have one sequence input in selection." -msgstr "" +msgstr "יש לנסות בחירה של רק כניסה רציפה אחת." #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Create Function" -msgstr "יצירת %s חדש" +msgstr "יצירת פונקציה" #: modules/visual_script/visual_script_editor.cpp msgid "Remove Function" -msgstr "" +msgstr "הסרת פונקציה" #: modules/visual_script/visual_script_editor.cpp msgid "Remove Variable" -msgstr "" +msgstr "הסרת משתנה" #: modules/visual_script/visual_script_editor.cpp msgid "Editing Variable:" -msgstr "" +msgstr "עריכת משתנה:" #: modules/visual_script/visual_script_editor.cpp msgid "Remove Signal" -msgstr "" +msgstr "הסרת אות" #: modules/visual_script/visual_script_editor.cpp msgid "Editing Signal:" -msgstr "" +msgstr "עריכת אות:" #: modules/visual_script/visual_script_editor.cpp msgid "Make Tool:" -msgstr "" +msgstr "יצירת כלי:" #: modules/visual_script/visual_script_editor.cpp msgid "Members:" -msgstr "חברים:" +msgstr "שדות:" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Change Base Type:" -msgstr "שינוי ערך בררת המחדל" +msgstr "שינוי סוג הבסיס:" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Nodes..." -msgstr "הזזת נקודה" +msgstr "הוספת מפרקים..." #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Function..." -msgstr "מעבר לפונקציה…" +msgstr "הוספת פונקציה…" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "function_name" -msgstr "פונקציות:" +msgstr "שם_פונקציה" #: modules/visual_script/visual_script_editor.cpp msgid "Select or create a function to edit its graph." -msgstr "" +msgstr "יש לבחור או ליצור פונקציה לעריכת התרשים שלה." #: modules/visual_script/visual_script_editor.cpp msgid "Delete Selected" -msgstr "" +msgstr "מחיקת הנבחר" #: modules/visual_script/visual_script_editor.cpp msgid "Find Node Type" -msgstr "איתור סוג מפרק" +msgstr "איתור סוג המפרק" #: modules/visual_script/visual_script_editor.cpp msgid "Copy Nodes" @@ -11980,19 +11942,16 @@ msgid "Cut Nodes" msgstr "גזירת מפרקים" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Make Function" -msgstr "פונקציות:" +msgstr "יצירת פונקציה" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Refresh Graph" -msgstr "רענון" +msgstr "רענון תרשים" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Edit Member" -msgstr "חברים" +msgstr "עריכת שדה" #: modules/visual_script/visual_script_flow_control.cpp msgid "Input type not iterable: " @@ -12000,11 +11959,11 @@ msgstr "סוג הקלט לא זמין למחזוריות: " #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid" -msgstr "" +msgstr "איטרטור הפך ללא חוקי" #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid: " -msgstr "" +msgstr "איטרטור הפך ללא חוקי: " #: modules/visual_script/visual_script_func_nodes.cpp msgid "Invalid index property name." @@ -12020,7 +11979,7 @@ msgstr "הנתיב לא מוביל מפרק!" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Invalid index property name '%s' in node %s." -msgstr "" +msgstr "שם מאפיין אינדקס לא חוקי '%s' במפרק %s." #: modules/visual_script/visual_script_nodes.cpp msgid ": Invalid argument of type: " @@ -12047,43 +12006,43 @@ msgid "" "Invalid return value from _step(), must be integer (seq out), or string " "(error)." msgstr "" +"ערך מוחזר לא חוקי מ-_step(), חייב להיות מספר שלם (seq out) או מחרוזת (שגיאה)." #: modules/visual_script/visual_script_property_selector.cpp -#, fuzzy msgid "Search VisualScript" -msgstr "חיפוש בעזרה" +msgstr "חיפוש VisualScript" #: modules/visual_script/visual_script_property_selector.cpp msgid "Get %s" -msgstr "" +msgstr "קבלת %s" #: modules/visual_script/visual_script_property_selector.cpp msgid "Set %s" -msgstr "" +msgstr "קביעת %s" #: platform/android/export/export.cpp msgid "Package name is missing." -msgstr "" +msgstr "שם החבילה חסר." #: platform/android/export/export.cpp msgid "Package segments must be of non-zero length." -msgstr "" +msgstr "מקטעי החבילה חייבים להיות באורך שאינו אפס." #: platform/android/export/export.cpp msgid "The character '%s' is not allowed in Android application package names." -msgstr "" +msgstr "התו '%s' אינו מותר בשמות חבילת יישום אנדרואיד." #: platform/android/export/export.cpp msgid "A digit cannot be the first character in a package segment." -msgstr "" +msgstr "ספרה אינה יכולה להיות התו הראשון במקטע חבילה." #: platform/android/export/export.cpp msgid "The character '%s' cannot be the first character in a package segment." -msgstr "" +msgstr "התו '%s' אינו יכול להיות התו הראשון במקטע חבילה." #: platform/android/export/export.cpp msgid "The package must have at least one '.' separator." -msgstr "" +msgstr "החבילה חייבת לכלול לפחות מפריד '.' אחד." #: platform/android/export/export.cpp msgid "Select device from the list" @@ -12091,113 +12050,127 @@ msgstr "נא לבחור התקן מהרשימה" #: platform/android/export/export.cpp msgid "ADB executable not configured in the Editor Settings." -msgstr "" +msgstr "קובץ ההפעלה של ADB לא נקבע בהגדרות העורך." #: platform/android/export/export.cpp msgid "OpenJDK jarsigner not configured in the Editor Settings." -msgstr "" +msgstr "OpenJDK jarsigner לא נקבע בהגדרות העורך." #: platform/android/export/export.cpp msgid "Debug keystore not configured in the Editor Settings nor in the preset." -msgstr "" +msgstr "מפתח לניפוי שגיאות לא נקבע בהגדרות העורך ולא בהגדרות הייצוא." #: platform/android/export/export.cpp msgid "Release keystore incorrectly configured in the export preset." -msgstr "" +msgstr "מפתח גירסת שיחרור נקבע באופן שגוי בהגדרות הייצוא." #: platform/android/export/export.cpp msgid "Custom build requires a valid Android SDK path in Editor Settings." msgstr "" +"בנייה מותאמת אישית דורשת נתיב חוקי של ערכת פיתוח לאנדרואיד בהגדרות העורך." #: platform/android/export/export.cpp msgid "Invalid Android SDK path for custom build in Editor Settings." msgstr "" +"נתיב לא חוקי לערכת פיתוח אנדרואיד עבור בנייה מותאמת אישית בהגדרות העורך." #: platform/android/export/export.cpp msgid "" "Android build template not installed in the project. Install it from the " "Project menu." -msgstr "" +msgstr "תבנית בנייה לאנדרואיד לא מותקנת בפרוייקט. ההתקנה היא מתפריט המיזם." #: platform/android/export/export.cpp msgid "Invalid public key for APK expansion." -msgstr "" +msgstr "מפתח ציבורי לא חוקי להרחבת APK." #: platform/android/export/export.cpp -#, fuzzy msgid "Invalid package name:" -msgstr "שם שגוי." +msgstr "שם חבילה לא חוקי:" #: platform/android/export/export.cpp msgid "" "Invalid \"GodotPaymentV3\" module included in the \"android/modules\" " "project setting (changed in Godot 3.2.2).\n" msgstr "" +"מודול \"GodotPaymentV3\" לא חוקי נמצא בהגדרת המיזם ב-\"אנדרואיד/מודולים" +"\" (שינוי בגודו 3.2.2).\n" #: platform/android/export/export.cpp msgid "\"Use Custom Build\" must be enabled to use the plugins." -msgstr "" +msgstr "חובה לאפשר ״שימוש בבניה מותאמת אישית״ כדי להשתמש בתוספים." #: platform/android/export/export.cpp +#, fuzzy msgid "" "\"Degrees Of Freedom\" is only valid when \"Xr Mode\" is \"Oculus Mobile VR" "\"." -msgstr "" +msgstr "\"דרגות של חופש\" תקף רק כאשר \"מצב Xr\" הוא \"Oculus Mobile VR\"." #: platform/android/export/export.cpp +#, fuzzy msgid "" "\"Hand Tracking\" is only valid when \"Xr Mode\" is \"Oculus Mobile VR\"." -msgstr "" +msgstr "\"Hand Tracking\" תקף רק כאשר \"מצב Xr\" הוא \"Oculus Mobile VR\"." #: platform/android/export/export.cpp +#, fuzzy msgid "" "\"Focus Awareness\" is only valid when \"Xr Mode\" is \"Oculus Mobile VR\"." -msgstr "" +msgstr "\"Focus Awareness\" תקף רק כאשר \"מצב Xr\" הוא \"Oculus Mobile VR\"." #: platform/android/export/export.cpp msgid "" "Trying to build from a custom built template, but no version info for it " "exists. Please reinstall from the 'Project' menu." msgstr "" +"מנסה לבנות מתבנית מותאמת אישית, אך לא קיים מידע על גירסת הבניה. נא להתקין " +"מחדש מתפריט 'Project'." #: platform/android/export/export.cpp +#, fuzzy msgid "" "Android build version mismatch:\n" " Template installed: %s\n" " Godot Version: %s\n" "Please reinstall Android build template from 'Project' menu." msgstr "" +"חוסר התאמה בגירסת אנדרואיד:\n" +" תבנית הותקנה: %s\n" +" גרסת גודו: %s\n" +"נא להתקין מחדש את תבנית בניית אנדרואיד מתפריט 'Project'." #: platform/android/export/export.cpp msgid "Building Android Project (gradle)" -msgstr "" +msgstr "בניית מיזם אנדרואיד (gradle)" #: platform/android/export/export.cpp msgid "" "Building of Android project failed, check output for the error.\n" "Alternatively visit docs.godotengine.org for Android build documentation." msgstr "" +"בניית מיזם אנדרואיד נכשלה, ניתן לבדוק את הפלט לאיתור השגיאה.\n" +"לחלופין, קיים ב- docs.godotengine.org תיעוד לבניית אנדרואיד." #: platform/android/export/export.cpp msgid "No build apk generated at: " -msgstr "" +msgstr "לא נוצר apk ב: " #: platform/iphone/export/export.cpp msgid "Identifier is missing." -msgstr "" +msgstr "מזהה חסר." #: platform/iphone/export/export.cpp msgid "The character '%s' is not allowed in Identifier." -msgstr "" +msgstr "התו '%s' אינו מותר במזהה." #: platform/iphone/export/export.cpp msgid "App Store Team ID not specified - cannot configure the project." -msgstr "" +msgstr "לא צוין App Store Team ID - לא ניתן להגדיר את המיזם." #: platform/iphone/export/export.cpp -#, fuzzy msgid "Invalid Identifier:" -msgstr "גודל הגופן שגוי." +msgstr "מזהה לא חוקי:" #: platform/iphone/export/export.cpp msgid "Required icon is not specified in the preset." diff --git a/editor/translations/hi.po b/editor/translations/hi.po index 70d7a4d6b3..0fd6f92fbb 100644 --- a/editor/translations/hi.po +++ b/editor/translations/hi.po @@ -1136,6 +1136,16 @@ msgid "Gold Sponsors" msgstr "गोल्ड प्रायोजक" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "रजत दाताओं" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "कांस्य दाताओं" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "मिनी प्रायोजक" diff --git a/editor/translations/hr.po b/editor/translations/hr.po index a515a912b0..2779300580 100644 --- a/editor/translations/hr.po +++ b/editor/translations/hr.po @@ -1123,6 +1123,16 @@ msgid "Gold Sponsors" msgstr "Zlatni sponzori" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Srebrni donatori" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Brončani donatori" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini sponzori" diff --git a/editor/translations/hu.po b/editor/translations/hu.po index c6828cc7d3..40a6462c90 100644 --- a/editor/translations/hu.po +++ b/editor/translations/hu.po @@ -1188,6 +1188,16 @@ msgid "Gold Sponsors" msgstr "Arany Szponzorok" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Ezüst Adományozók" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Bronz Adományozók" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Szponzorok" diff --git a/editor/translations/id.po b/editor/translations/id.po index cf4bd738fa..34c15ae95f 100644 --- a/editor/translations/id.po +++ b/editor/translations/id.po @@ -20,7 +20,7 @@ # Alphin Albukhari <alphinalbukhari5@gmail.com>, 2019. # I Dewa Agung Adhinata <agungnata2003@gmail.com>, 2019. # herri siagian <herry.it.2007@gmail.com>, 2019. -# MonsterGila <fikrirazor@outlook.co.id>, 2019. +# MonsterGila <fikrirazor@outlook.co.id>, 2019, 2020. # Modeus Darksono <garuga17@gmail.com>, 2019. # Akhmad Zulfikar <azuldegratz@gmail.com>, 2020. # Ade Fikri Malihuddin <ade.fm97@gmail.com>, 2020. @@ -31,8 +31,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-07-06 04:41+0000\n" -"Last-Translator: yusuf afandi <afandi.yusuf.04@gmail.com>\n" +"PO-Revision-Date: 2020-08-12 08:00+0000\n" +"Last-Translator: MonsterGila <fikrirazor@outlook.co.id>\n" "Language-Team: Indonesian <https://hosted.weblate.org/projects/godot-engine/" "godot/id/>\n" "Language: id\n" @@ -1160,6 +1160,16 @@ msgid "Gold Sponsors" msgstr "Sponsor Emas" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Donatur Perak" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Donatur Perunggu" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Sponsor Mini" @@ -2435,10 +2445,13 @@ msgid "Reload Saved Scene" msgstr "Simpan Skena" #: editor/editor_node.cpp +#, fuzzy msgid "" "The current scene has unsaved changes.\n" "Reload the saved scene anyway? This action cannot be undone." msgstr "" +"Skena saat ini mempunyai perubahan yang belum tersimpan.\n" +"Tetap muat ulang skena yang tersimpan? Aksi ini tidak dapat dibatalkan." #: editor/editor_node.cpp msgid "Quick Run Scene..." @@ -10683,11 +10696,14 @@ msgid "Open Documentation" msgstr "Buka Dokumentasi" #: editor/scene_tree_dock.cpp +#, fuzzy msgid "" "Cannot attach a script: there are no languages registered.\n" "This is probably because this editor was built with all language modules " "disabled." msgstr "" +"Tidak dapat melampirkan skrip: tidak ada bahasa yang terdaftar.\n" +"Ini mungkin karena editor ini dibuat dengan semua modul bahasa dinonaktifkan." #: editor/scene_tree_dock.cpp msgid "Add Child Node" @@ -12240,10 +12256,14 @@ msgstr "" "ciptakan resource shape untuknya!" #: scene/2d/collision_shape_2d.cpp +#, fuzzy msgid "" "Polygon-based shapes are not meant be used nor edited directly through the " "CollisionShape2D node. Please use the CollisionPolygon2D node instead." msgstr "" +"Bentuk Polygon-based tidak dimaksudkan untuk digunakan atau diedit secara " +"langsung melalui node CollisionShape2D. Silakan gunakan node " +"CollisionPolygon2D sebagai gantinya." #: scene/2d/cpu_particles_2d.cpp msgid "" @@ -12429,8 +12449,9 @@ msgid "Finishing Plot" msgstr "Menyelesaikan Pemetaan" #: scene/3d/baked_lightmap.cpp +#, fuzzy msgid "Lighting Meshes: " -msgstr "" +msgstr "Lighting Meshes: " #: scene/3d/collision_object.cpp msgid "" @@ -12485,8 +12506,9 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp +#, fuzzy msgid "Nothing is visible because no mesh has been assigned." -msgstr "" +msgstr "Tidak ada yang tampak karena tidak ada mesh yang ditetapkan." #: scene/3d/cpu_particles.cpp msgid "" diff --git a/editor/translations/is.po b/editor/translations/is.po index d53a9d609d..16958ecf41 100644 --- a/editor/translations/is.po +++ b/editor/translations/is.po @@ -1143,6 +1143,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/it.po b/editor/translations/it.po index b2dac5ae0e..7617e0e8de 100644 --- a/editor/translations/it.po +++ b/editor/translations/it.po @@ -54,12 +54,13 @@ # Lorenzo Asolan <brixiumx@gmail.com>, 2020. # Lorenzo Cerqua <lorenzocerqua@tutanota.com>, 2020. # Federico Manzella <ferdiu.manzella@gmail.com>, 2020. +# Ziv D <wizdavid@gmail.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-08-05 16:58+0000\n" -"Last-Translator: Lorenzo Cerqua <lorenzocerqua@tutanota.com>\n" +"PO-Revision-Date: 2020-09-02 14:35+0000\n" +"Last-Translator: Ziv D <wizdavid@gmail.com>\n" "Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/" "godot/it/>\n" "Language: it\n" @@ -67,7 +68,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.2-dev\n" +"X-Generator: Weblate 4.3-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -1188,6 +1189,16 @@ msgid "Gold Sponsors" msgstr "Sponsor oro" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Donatori argento" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Donatori bronzo" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Sponsor mini" @@ -1758,7 +1769,7 @@ msgstr "Nuovo" #: editor/editor_feature_profile.cpp editor/editor_node.cpp #: editor/project_manager.cpp msgid "Import" -msgstr "Importa" +msgstr "Importare" #: editor/editor_feature_profile.cpp editor/project_export.cpp msgid "Export" @@ -4800,7 +4811,7 @@ msgstr "Modalità Gioco:" #: editor/plugins/animation_tree_editor_plugin.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "AnimationTree" -msgstr "AnimazioneAlbero" +msgstr "AnimationTree" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "New name:" @@ -12058,7 +12069,7 @@ msgstr "" #: platform/android/export/export.cpp msgid "Release keystore incorrectly configured in the export preset." msgstr "" -"Debug keystore non configurato correttamente nel preset di esportazione." +"Release keystore non configurato correttamente nel preset di esportazione." #: platform/android/export/export.cpp msgid "Custom build requires a valid Android SDK path in Editor Settings." @@ -12191,9 +12202,8 @@ msgid "Run in Browser" msgstr "Esegui nel Browser" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Run exported HTML in the system's default browser." -msgstr "Esegui HTML esportato all'interno del browser di sistema predefinito." +msgstr "Esegui il codice HTML esportato nel browser di sistema predefinito." #: platform/javascript/export/export.cpp msgid "Could not write file:" @@ -12216,9 +12226,8 @@ msgid "Could not read boot splash image file:" msgstr "Impossibile leggere il file immagine di avvio splash:" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Using default boot splash image." -msgstr "Utilizzando l'immagine di splash di avvio predefinita." +msgstr "Utilizzando l'immagine splash predefinita." #: platform/uwp/export/export.cpp msgid "Invalid package short name." diff --git a/editor/translations/ja.po b/editor/translations/ja.po index e0a1d4d909..8e82a94abf 100644 --- a/editor/translations/ja.po +++ b/editor/translations/ja.po @@ -36,7 +36,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-08-11 14:04+0000\n" +"PO-Revision-Date: 2020-08-28 13:09+0000\n" "Last-Translator: Wataru Onuki <bettawat@yahoo.co.jp>\n" "Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/" "godot/ja/>\n" @@ -45,7 +45,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.2-dev\n" +"X-Generator: Weblate 4.2.1-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -1164,6 +1164,16 @@ msgid "Gold Sponsors" msgstr "ゴールドスポンサー" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "シルバードナー" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "ブロンズドナー" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "ミニスポンサー" @@ -2751,11 +2761,11 @@ msgstr "バージョンコントロール" #: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp msgid "Set Up Version Control" -msgstr "バージョン管理のセットアップ" +msgstr "バージョン管理をセットアップ" #: editor/editor_node.cpp msgid "Shut Down Version Control" -msgstr "バージョン管理の終了" +msgstr "バージョン管理を終了" #: editor/editor_node.cpp msgid "Export..." @@ -2894,11 +2904,11 @@ msgstr "スクリーンショットはEditor Data / Settingsフォルダに保 #: editor/editor_node.cpp msgid "Toggle Fullscreen" -msgstr "フルスクリーンの有効化 / 無効化" +msgstr "フルスクリーンを有効化 / 無効化" #: editor/editor_node.cpp msgid "Toggle System Console" -msgstr "システムコンソールの有効化 / 無効化" +msgstr "システムコンソールを有効化 / 無効化" #: editor/editor_node.cpp msgid "Open Editor Data/Settings Folder" @@ -7011,11 +7021,11 @@ msgstr "右インデント" #: editor/plugins/script_text_editor.cpp msgid "Toggle Comment" -msgstr "コメントの切り替え" +msgstr "コメントアウト / 解除" #: editor/plugins/script_text_editor.cpp msgid "Fold/Unfold Line" -msgstr "行を折りたたむ / 展開する" +msgstr "行を折りたたむ / 展開" #: editor/plugins/script_text_editor.cpp msgid "Fold All Lines" @@ -7023,7 +7033,7 @@ msgstr "すべての行を折りたたむ" #: editor/plugins/script_text_editor.cpp msgid "Unfold All Lines" -msgstr "すべての行を展開する" +msgstr "すべての行を展開" #: editor/plugins/script_text_editor.cpp msgid "Clone Down" @@ -7035,7 +7045,7 @@ msgstr "シンボルを補完" #: editor/plugins/script_text_editor.cpp msgid "Evaluate Selection" -msgstr "選択範囲を評価する" +msgstr "選択範囲を評価" #: editor/plugins/script_text_editor.cpp msgid "Trim Trailing Whitespace" diff --git a/editor/translations/ka.po b/editor/translations/ka.po index 1bfd23080b..75fbad354b 100644 --- a/editor/translations/ka.po +++ b/editor/translations/ka.po @@ -1185,6 +1185,16 @@ msgid "Gold Sponsors" msgstr "ოქროს სპონსორები" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "ვერცხლის დონატორები" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "ბრინჯაოს დონატორები" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "მინი სპონსორები" diff --git a/editor/translations/ko.po b/editor/translations/ko.po index 9b19450d58..f9fa96982f 100644 --- a/editor/translations/ko.po +++ b/editor/translations/ko.po @@ -1150,6 +1150,16 @@ msgid "Gold Sponsors" msgstr "골드 스폰서" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "실버 기부자" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "브론즈 기부자" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "미니 스폰서" diff --git a/editor/translations/lt.po b/editor/translations/lt.po index 4d3884d5f8..6449d264ad 100644 --- a/editor/translations/lt.po +++ b/editor/translations/lt.po @@ -1148,6 +1148,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/lv.po b/editor/translations/lv.po index 2612b441c6..6cf590f8c5 100644 --- a/editor/translations/lv.po +++ b/editor/translations/lv.po @@ -1140,6 +1140,16 @@ msgid "Gold Sponsors" msgstr "Zelta Sponsori" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Sudraba Donors" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Bronzas Donors" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Sponsori" diff --git a/editor/translations/mi.po b/editor/translations/mi.po index 07a3bdae3c..30ac5ce885 100644 --- a/editor/translations/mi.po +++ b/editor/translations/mi.po @@ -1099,6 +1099,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/ml.po b/editor/translations/ml.po index aa7844d7ab..70be9f00c8 100644 --- a/editor/translations/ml.po +++ b/editor/translations/ml.po @@ -1109,6 +1109,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/mr.po b/editor/translations/mr.po index 043d7e643e..a9719278c0 100644 --- a/editor/translations/mr.po +++ b/editor/translations/mr.po @@ -1106,6 +1106,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/ms.po b/editor/translations/ms.po index ad70f291ca..940feeb863 100644 --- a/editor/translations/ms.po +++ b/editor/translations/ms.po @@ -7,13 +7,14 @@ # Syaz Amirin <amirin123z@gmail.com>, 2018. # Nafis Ibrahim <thepreciousnafis@gmail.com>, 2018. # Muhammad Hazim bin Hafizalshah <muhammadhazimhafizalshah@gmail.com>, 2020. +# keviinx <keviinx@yahoo.com>, 2020. +# Keviindran Ramachandran <keviinx@yahoo.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-01-27 07:10+0000\n" -"Last-Translator: Muhammad Hazim bin Hafizalshah " -"<muhammadhazimhafizalshah@gmail.com>\n" +"PO-Revision-Date: 2020-09-02 14:35+0000\n" +"Last-Translator: Keviindran Ramachandran <keviinx@yahoo.com>\n" "Language-Team: Malay <https://hosted.weblate.org/projects/godot-engine/godot/" "ms/>\n" "Language: ms\n" @@ -21,119 +22,118 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 3.11-dev\n" +"X-Generator: Weblate 4.3-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." -msgstr "" +msgstr "Argumen jenis tidak sah untuk convert(), guna pemalar TYPE_*." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp msgid "Expected a string of length 1 (a character)." -msgstr "" +msgstr "Menjangkakan rentetan dengan panjang 1 (satu watak)." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/mono/glue/gd_glue.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Not enough bytes for decoding bytes, or invalid format." -msgstr "" +msgstr "Bait tidak mencukupi untuk menyahkod bait, atau format tidak sah." #: core/math/expression.cpp msgid "Invalid input %i (not passed) in expression" -msgstr "" +msgstr "Input %i tidak sah (tidak lulus) dalam ungkapan" #: core/math/expression.cpp msgid "self can't be used because instance is null (not passed)" -msgstr "" +msgstr "self tidak boleh digunakan kerana instance adalah null (tidak lulus)" #: core/math/expression.cpp msgid "Invalid operands to operator %s, %s and %s." -msgstr "" +msgstr "Operan tidak sah untuk pengendali %s, %s dan %s." #: core/math/expression.cpp msgid "Invalid index of type %s for base type %s" -msgstr "" +msgstr "Indeks tidak sah untuk jenis %s untuk jenis asa %s" #: core/math/expression.cpp msgid "Invalid named index '%s' for base type %s" -msgstr "" +msgstr "Indeks bernama tidak sah '%s' untuk jenis asa %s" #: core/math/expression.cpp msgid "Invalid arguments to construct '%s'" -msgstr "" +msgstr "Argumen tidak sah untuk binaan '%s'" #: core/math/expression.cpp msgid "On call to '%s':" -msgstr "" +msgstr "Atas panggilan ke '%s':" #: core/ustring.cpp msgid "B" -msgstr "" +msgstr "B" #: core/ustring.cpp msgid "KiB" -msgstr "" +msgstr "KiB" #: core/ustring.cpp msgid "MiB" -msgstr "" +msgstr "MiB" #: core/ustring.cpp msgid "GiB" -msgstr "" +msgstr "GiB" #: core/ustring.cpp msgid "TiB" -msgstr "" +msgstr "TiB" #: core/ustring.cpp msgid "PiB" -msgstr "" +msgstr "PiB" #: core/ustring.cpp msgid "EiB" -msgstr "" +msgstr "EiB" #: editor/animation_bezier_editor.cpp msgid "Free" -msgstr "" +msgstr "Bebas" #: editor/animation_bezier_editor.cpp msgid "Balanced" -msgstr "" +msgstr "Seimbang" #: editor/animation_bezier_editor.cpp msgid "Mirror" -msgstr "" +msgstr "Cermin" #: editor/animation_bezier_editor.cpp editor/editor_profiler.cpp msgid "Time:" -msgstr "" +msgstr "Masa:" #: editor/animation_bezier_editor.cpp msgid "Value:" -msgstr "" +msgstr "Nilai:" #: editor/animation_bezier_editor.cpp msgid "Insert Key Here" -msgstr "" +msgstr "Masukkan Kunci di Sini" #: editor/animation_bezier_editor.cpp -#, fuzzy msgid "Duplicate Selected Key(s)" -msgstr "Anim Menduakan Kunci" +msgstr "Gandakan Kunci Terpilih" #: editor/animation_bezier_editor.cpp msgid "Delete Selected Key(s)" -msgstr "" +msgstr "Padam Kunci Terpilih" #: editor/animation_bezier_editor.cpp msgid "Add Bezier Point" -msgstr "" +msgstr "Tambah Titik Bezier" #: editor/animation_bezier_editor.cpp msgid "Move Bezier Points" -msgstr "" +msgstr "Pindah Titik-titik Bezier" #: editor/animation_bezier_editor.cpp editor/animation_track_editor.cpp msgid "Anim Duplicate Keys" @@ -141,10 +141,9 @@ msgstr "Anim Menduakan Kunci" #: editor/animation_bezier_editor.cpp editor/animation_track_editor.cpp msgid "Anim Delete Keys" -msgstr "" +msgstr "Anim Padam Kunci" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Anim Change Keyframe Time" msgstr "Anim Ubah Masa Keyframe" @@ -154,7 +153,7 @@ msgstr "Anim Ubah Peralihan" #: editor/animation_track_editor.cpp msgid "Anim Change Transform" -msgstr "Anim Ubah Penukaran" +msgstr "Anim Ubah Perubahan" #: editor/animation_track_editor.cpp msgid "Anim Change Keyframe Value" @@ -165,200 +164,192 @@ msgid "Anim Change Call" msgstr "Anim Ubah Panggilan" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Anim Multi Change Keyframe Time" -msgstr "Anim Ubah Masa Keyframe" +msgstr "Anim Ubah Pelbagai Masa Keyframe" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Anim Multi Change Transition" -msgstr "Anim Ubah Peralihan" +msgstr "Anim Ubah Pelbagai Peralihan" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Anim Multi Change Transform" -msgstr "Anim Ubah Penukaran" +msgstr "Anim Ubah Pelbagai Penukaran" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Anim Multi Change Keyframe Value" -msgstr "Anim Ubah Nilai Keyframe" +msgstr "Anim Ubah Pelbagai Nilai Keyframe" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Anim Multi Change Call" -msgstr "Anim Ubah Panggilan" +msgstr "Anim Ubah Pelbagai Panggilan" #: editor/animation_track_editor.cpp msgid "Change Animation Length" -msgstr "" +msgstr "Ubah Panjang Animasi" #: editor/animation_track_editor.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Change Animation Loop" -msgstr "" +msgstr "Ubah Gelung Animasi" #: editor/animation_track_editor.cpp msgid "Property Track" -msgstr "" +msgstr "Trek Sifat" #: editor/animation_track_editor.cpp msgid "3D Transform Track" -msgstr "" +msgstr "Trek Transformasi 3D" #: editor/animation_track_editor.cpp msgid "Call Method Track" -msgstr "" +msgstr "Trek Panggilan Kaedah" #: editor/animation_track_editor.cpp msgid "Bezier Curve Track" -msgstr "" +msgstr "Trek Lengkung Bezier" #: editor/animation_track_editor.cpp msgid "Audio Playback Track" -msgstr "" +msgstr "Trek Main balik Audio" #: editor/animation_track_editor.cpp msgid "Animation Playback Track" -msgstr "" +msgstr "Trek Main Balik Animasi" #: editor/animation_track_editor.cpp msgid "Animation length (frames)" -msgstr "" +msgstr "Panjang animasi (bingkai)" #: editor/animation_track_editor.cpp msgid "Animation length (seconds)" -msgstr "" +msgstr "Panjang animasi (saat)" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Add Track" -msgstr "Anim Tambah Trek" +msgstr "Tambah Trek" #: editor/animation_track_editor.cpp msgid "Animation Looping" -msgstr "" +msgstr "Gelung Animasi" #: editor/animation_track_editor.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Functions:" -msgstr "" +msgstr "Fungsi:" #: editor/animation_track_editor.cpp msgid "Audio Clips:" -msgstr "" +msgstr "Klip Audio:" #: editor/animation_track_editor.cpp msgid "Anim Clips:" -msgstr "" +msgstr "Klip Anim:" #: editor/animation_track_editor.cpp msgid "Change Track Path" -msgstr "" +msgstr "Tukar Laluan Trek" #: editor/animation_track_editor.cpp msgid "Toggle this track on/off." -msgstr "" +msgstr "Hidupkan / matikan trek ini." #: editor/animation_track_editor.cpp msgid "Update Mode (How this property is set)" -msgstr "" +msgstr "Kemas kini Mod (Bagaimana sifat ini ditetapkan)" #: editor/animation_track_editor.cpp msgid "Interpolation Mode" -msgstr "" +msgstr "Mod Interpolasi" #: editor/animation_track_editor.cpp msgid "Loop Wrap Mode (Interpolate end with beginning on loop)" -msgstr "" +msgstr "Mod Gelung Balut (Interpolat hujung dengan permulaan pada gelung)" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Remove this track." -msgstr "Buang Trek Anim" +msgstr "Keluarkan trek ini." #: editor/animation_track_editor.cpp msgid "Time (s): " -msgstr "" +msgstr "Masa (s): " #: editor/animation_track_editor.cpp msgid "Toggle Track Enabled" -msgstr "" +msgstr "Togol Trek Diaktifkan" #: editor/animation_track_editor.cpp msgid "Continuous" -msgstr "" +msgstr "Berterusan" #: editor/animation_track_editor.cpp msgid "Discrete" -msgstr "" +msgstr "Diskret" #: editor/animation_track_editor.cpp msgid "Trigger" -msgstr "" +msgstr "Pencetus" #: editor/animation_track_editor.cpp msgid "Capture" -msgstr "" +msgstr "Tangkap" #: editor/animation_track_editor.cpp msgid "Nearest" -msgstr "" +msgstr "Terdekat" #: editor/animation_track_editor.cpp editor/plugins/curve_editor_plugin.cpp #: editor/property_editor.cpp msgid "Linear" -msgstr "" +msgstr "Linear" #: editor/animation_track_editor.cpp msgid "Cubic" -msgstr "" +msgstr "Kubik" #: editor/animation_track_editor.cpp msgid "Clamp Loop Interp" -msgstr "" +msgstr "Kepit Gelung Interp" #: editor/animation_track_editor.cpp msgid "Wrap Loop Interp" -msgstr "" +msgstr "Balut Gelung Interp" #: editor/animation_track_editor.cpp #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" -msgstr "" +msgstr "Masukkan Kunci" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Duplicate Key(s)" -msgstr "Anim Menduakan Kunci" +msgstr "Menduakan Kunci" #: editor/animation_track_editor.cpp msgid "Delete Key(s)" -msgstr "" +msgstr "Padam Kunci" #: editor/animation_track_editor.cpp msgid "Change Animation Update Mode" -msgstr "" +msgstr "Mod Tukar Kemas Kini Animasi" #: editor/animation_track_editor.cpp msgid "Change Animation Interpolation Mode" -msgstr "" +msgstr "Tukar Mod Interpolasi Animasi" #: editor/animation_track_editor.cpp msgid "Change Animation Loop Mode" -msgstr "" +msgstr "Tukar Mod Gelung Animasi" #: editor/animation_track_editor.cpp msgid "Remove Anim Track" -msgstr "Buang Trek Anim" +msgstr "Keluarkan Trek Anim" #: editor/animation_track_editor.cpp msgid "Create NEW track for %s and insert key?" -msgstr "" +msgstr "Cipta trek BARU untuk %s dan masukkan kunci?" #: editor/animation_track_editor.cpp msgid "Create %d NEW tracks and insert keys?" -msgstr "" +msgstr "Cipta %d BARU trek dan masukkan kunci?" #: editor/animation_track_editor.cpp editor/create_dialog.cpp #: editor/editor_audio_buses.cpp editor/editor_feature_profile.cpp @@ -370,40 +361,39 @@ msgstr "" #: editor/script_create_dialog.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Create" -msgstr "" +msgstr "Cipta" #: editor/animation_track_editor.cpp msgid "Anim Insert" -msgstr "" +msgstr "Masukkan Anim" #: editor/animation_track_editor.cpp msgid "AnimationPlayer can't animate itself, only other players." -msgstr "" +msgstr "AnimationPlayer tidak animasikan dirinya sendiri, hanya pemain lain." #: editor/animation_track_editor.cpp msgid "Anim Create & Insert" -msgstr "" +msgstr "Anim Cipta & Masukkan" #: editor/animation_track_editor.cpp msgid "Anim Insert Track & Key" -msgstr "" +msgstr "Anim Masukkan Trek & Kunci" #: editor/animation_track_editor.cpp msgid "Anim Insert Key" -msgstr "" +msgstr "Anim Masukkan Kunci" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Change Animation Step" -msgstr "Anim Ubah Peralihan" +msgstr "Tukar Langkah Animasi" #: editor/animation_track_editor.cpp msgid "Rearrange Tracks" -msgstr "" +msgstr "Susun semula Trek" #: editor/animation_track_editor.cpp msgid "Transform tracks only apply to Spatial-based nodes." -msgstr "" +msgstr "Transformasi trek hanya berlaku kepada nod berasaskan Spatial." #: editor/animation_track_editor.cpp msgid "" @@ -412,78 +402,82 @@ msgid "" "-AudioStreamPlayer2D\n" "-AudioStreamPlayer3D" msgstr "" +"Trek audio hanya boleh ditujukan kepada nod jenis:\n" +"-AudioStreamPlayer\n" +"-AudioStreamPlayer2D\n" +"-AudioStreamPlayer3D" #: editor/animation_track_editor.cpp msgid "Animation tracks can only point to AnimationPlayer nodes." -msgstr "" +msgstr "Trek animasi hanya dapat ditujukan kepada nod AnimationPlayer." #: editor/animation_track_editor.cpp msgid "An animation player can't animate itself, only other players." msgstr "" +"Pemain animasi tidak boleh animasikan dirinya sendiri, hanya pemain lain." #: editor/animation_track_editor.cpp msgid "Not possible to add a new track without a root" -msgstr "" +msgstr "Tidak boleh menambah trek baru tanpa satu akar" #: editor/animation_track_editor.cpp msgid "Invalid track for Bezier (no suitable sub-properties)" -msgstr "" +msgstr "Trek tidak sah untuk Bezier (tiada sub-sifat yang sesuai)" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Add Bezier Track" -msgstr "Anim Tambah Trek" +msgstr "Tambah Trek Bezier" #: editor/animation_track_editor.cpp msgid "Track path is invalid, so can't add a key." -msgstr "" +msgstr "Laluan trek tidak sah, maka tidak boleh menambahkan kunci." #: editor/animation_track_editor.cpp msgid "Track is not of type Spatial, can't insert key" -msgstr "" +msgstr "Trek bukan jenis Spatial, tidak boleh memasukkan kunci" #: editor/animation_track_editor.cpp msgid "Add Transform Track Key" -msgstr "" +msgstr "Tambah Kunci Trek Transformasi" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Add Track Key" -msgstr "Anim Tambah Trek" +msgstr "Tambah Kunci Trek" #: editor/animation_track_editor.cpp msgid "Track path is invalid, so can't add a method key." -msgstr "" +msgstr "Laluan trek tidak sah, maka tidak boleh menambahkan kunci kaedah." #: editor/animation_track_editor.cpp -#, fuzzy msgid "Add Method Track Key" -msgstr "Anim Tambah Trek" +msgstr "Tambah Kunci Trek Kaedah" #: editor/animation_track_editor.cpp msgid "Method not found in object: " -msgstr "" +msgstr "Kaedah tidak ditemui dalam objek: " #: editor/animation_track_editor.cpp msgid "Anim Move Keys" -msgstr "" +msgstr "Kunci Gerak Anim" #: editor/animation_track_editor.cpp msgid "Clipboard is empty" -msgstr "" +msgstr "Papan klip kosong" #: editor/animation_track_editor.cpp msgid "Paste Tracks" -msgstr "" +msgstr "Tampal Trek" #: editor/animation_track_editor.cpp msgid "Anim Scale Keys" -msgstr "" +msgstr "Kunci Skala Anim" #: editor/animation_track_editor.cpp msgid "" "This option does not work for Bezier editing, as it's only a single track." msgstr "" +"Pilihan ini tidak berfungsi untuk pengeditan Bezier, kerana ia hanya satu " +"trek." #: editor/animation_track_editor.cpp msgid "" @@ -497,38 +491,47 @@ msgid "" "Alternatively, use an import preset that imports animations to separate " "files." msgstr "" +"Animasi ini tergolong dalam adegan yang diimport, maka perubahan untuk trek " +"yang diimport tidak akan disimpan.\n" +"\n" +"Untuk memberikan keupayaan untuk menambah trek tersuai, navigasi ke tetapan " +"import adegan dan tetapkan\n" +"\"Animasi > Simpanan\" ke \"Fail\", aktifkan \"Animasi > Simpan Trek Tersuai" +"\", kemudian import semula.\n" +"Sebagai alternatif, gunakan pratetap import yang mengimportkan animasi untuk " +"memisahkan fail." #: editor/animation_track_editor.cpp msgid "Warning: Editing imported animation" -msgstr "" +msgstr "Amaran: Mengedit animasi yang diimport" #: editor/animation_track_editor.cpp msgid "Select an AnimationPlayer node to create and edit animations." -msgstr "" +msgstr "Pilih nod AnimationPlayer untuk mencipta dan mengedit animasi." #: editor/animation_track_editor.cpp msgid "Only show tracks from nodes selected in tree." -msgstr "" +msgstr "Hanya tunjukkan trek dari nod yang dipilih di pokok." #: editor/animation_track_editor.cpp msgid "Group tracks by node or display them as plain list." -msgstr "" +msgstr "Kumpulkan trek mengikut nod atau memaparkannya sebagai senarai biasa." #: editor/animation_track_editor.cpp msgid "Snap:" -msgstr "" +msgstr "Tangkap:" #: editor/animation_track_editor.cpp msgid "Animation step value." -msgstr "" +msgstr "Nilai langkah animasi." #: editor/animation_track_editor.cpp msgid "Seconds" -msgstr "" +msgstr "Saat" #: editor/animation_track_editor.cpp msgid "FPS" -msgstr "" +msgstr "FPS" #: editor/animation_track_editor.cpp editor/editor_properties.cpp #: editor/plugins/polygon_2d_editor_plugin.cpp @@ -538,108 +541,107 @@ msgstr "" #: editor/project_settings_editor.cpp editor/property_editor.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Edit" -msgstr "" +msgstr "Edit" #: editor/animation_track_editor.cpp msgid "Animation properties." -msgstr "" +msgstr "Sifat animasi." #: editor/animation_track_editor.cpp msgid "Copy Tracks" -msgstr "" +msgstr "Salin Trek" #: editor/animation_track_editor.cpp msgid "Scale Selection" -msgstr "" +msgstr "Pemilihan Skala" #: editor/animation_track_editor.cpp msgid "Scale From Cursor" -msgstr "" +msgstr "Skala Dari Kursor" #: editor/animation_track_editor.cpp modules/gridmap/grid_map_editor_plugin.cpp msgid "Duplicate Selection" -msgstr "" +msgstr "Menduakan Pilihan" #: editor/animation_track_editor.cpp msgid "Duplicate Transposed" -msgstr "" +msgstr "Menduakan Pindahan" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Delete Selection" -msgstr "Semua Pilihan" +msgstr "Padam Pilihan" #: editor/animation_track_editor.cpp msgid "Go to Next Step" -msgstr "" +msgstr "Pergi ke Langkah Seterusnya" #: editor/animation_track_editor.cpp msgid "Go to Previous Step" -msgstr "" +msgstr "Pergi ke Langkah Sebelumnya" #: editor/animation_track_editor.cpp msgid "Optimize Animation" -msgstr "" +msgstr "Optimumkan Animasi" #: editor/animation_track_editor.cpp msgid "Clean-Up Animation" -msgstr "" +msgstr "Bersihkan Animasi" #: editor/animation_track_editor.cpp msgid "Pick the node that will be animated:" -msgstr "" +msgstr "Pilih nod yang akan dianimasikan:" #: editor/animation_track_editor.cpp msgid "Use Bezier Curves" -msgstr "" +msgstr "Guna Lengkung Bezier" #: editor/animation_track_editor.cpp msgid "Anim. Optimizer" -msgstr "" +msgstr "Pengoptimum Anim." #: editor/animation_track_editor.cpp msgid "Max. Linear Error:" -msgstr "" +msgstr "Max. Ralat Linear:" #: editor/animation_track_editor.cpp msgid "Max. Angular Error:" -msgstr "" +msgstr "Max. Ralat Sudut:" #: editor/animation_track_editor.cpp msgid "Max Optimizable Angle:" -msgstr "" +msgstr "Sudut Maksimum yang Boleh Dioptimumkan:" #: editor/animation_track_editor.cpp msgid "Optimize" -msgstr "" +msgstr "Mengoptimumkan" #: editor/animation_track_editor.cpp msgid "Remove invalid keys" -msgstr "" +msgstr "Keluarkan kunci yang tidak sah" #: editor/animation_track_editor.cpp msgid "Remove unresolved and empty tracks" -msgstr "" +msgstr "Keluarkan trek yang tidak boleh diselesaikan dan kosong" #: editor/animation_track_editor.cpp msgid "Clean-up all animations" -msgstr "" +msgstr "Bersihkan semua animasi" #: editor/animation_track_editor.cpp msgid "Clean-Up Animation(s) (NO UNDO!)" -msgstr "" +msgstr "Bersihkan Animasi (TIDAK BOLEH BUAT ASAL!)" #: editor/animation_track_editor.cpp msgid "Clean-Up" -msgstr "" +msgstr "Bersihkan" #: editor/animation_track_editor.cpp msgid "Scale Ratio:" -msgstr "" +msgstr "Nisbah Skala:" #: editor/animation_track_editor.cpp msgid "Select Tracks to Copy" -msgstr "" +msgstr "Pilih Trek untuk Disalin" #: editor/animation_track_editor.cpp editor/editor_log.cpp #: editor/editor_properties.cpp @@ -648,146 +650,146 @@ msgstr "" #: editor/plugins/sprite_frames_editor_plugin.cpp editor/property_editor.cpp #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Copy" -msgstr "" +msgstr "Salin" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Select All/None" -msgstr "Semua Pilihan" +msgstr "Pilih Semua/Tiada" #: editor/animation_track_editor_plugins.cpp -#, fuzzy msgid "Add Audio Track Clip" -msgstr "Anim Tambah Trek" +msgstr "Tambah Klip Trek Audio" #: editor/animation_track_editor_plugins.cpp msgid "Change Audio Track Clip Start Offset" -msgstr "" +msgstr "Tukar Klip Trek Audio Mula Offset" #: editor/animation_track_editor_plugins.cpp msgid "Change Audio Track Clip End Offset" -msgstr "" +msgstr "Tukar Klip Audio Trek Hujung Offset" #: editor/array_property_edit.cpp msgid "Resize Array" -msgstr "" +msgstr "Ubah saiz Array" #: editor/array_property_edit.cpp msgid "Change Array Value Type" -msgstr "" +msgstr "Tukar Jenis Nilai Array" #: editor/array_property_edit.cpp msgid "Change Array Value" -msgstr "" +msgstr "Tukar Nilai Array" #: editor/code_editor.cpp msgid "Go to Line" -msgstr "" +msgstr "Pergi ke Baris" #: editor/code_editor.cpp msgid "Line Number:" -msgstr "" +msgstr "Nombor Baris:" #: editor/code_editor.cpp msgid "%d replaced." -msgstr "" +msgstr "%d telah diganti." #: editor/code_editor.cpp editor/editor_help.cpp msgid "%d match." -msgstr "" +msgstr "%d padan." #: editor/code_editor.cpp editor/editor_help.cpp msgid "%d matches." -msgstr "" +msgstr "%d padan." #: editor/code_editor.cpp editor/find_in_files.cpp msgid "Match Case" -msgstr "" +msgstr "Kes Padan" #: editor/code_editor.cpp editor/find_in_files.cpp msgid "Whole Words" -msgstr "" +msgstr "Seluruh Perkataan" #: editor/code_editor.cpp editor/rename_dialog.cpp msgid "Replace" -msgstr "" +msgstr "Ganti" #: editor/code_editor.cpp msgid "Replace All" -msgstr "" +msgstr "Ganti Semua" #: editor/code_editor.cpp msgid "Selection Only" -msgstr "" +msgstr "Pilihan Sahaja" #: editor/code_editor.cpp editor/plugins/script_text_editor.cpp #: editor/plugins/text_editor.cpp msgid "Standard" -msgstr "" +msgstr "Piawai" #: editor/code_editor.cpp editor/plugins/script_editor_plugin.cpp msgid "Toggle Scripts Panel" -msgstr "" +msgstr "Togol Panel Skrip" #: editor/code_editor.cpp editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/texture_region_editor_plugin.cpp #: editor/plugins/tile_set_editor_plugin.cpp scene/gui/graph_edit.cpp msgid "Zoom In" -msgstr "" +msgstr "Zum Masuk" #: editor/code_editor.cpp editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/texture_region_editor_plugin.cpp #: editor/plugins/tile_set_editor_plugin.cpp scene/gui/graph_edit.cpp msgid "Zoom Out" -msgstr "" +msgstr "Zum Keluar" #: editor/code_editor.cpp msgid "Reset Zoom" -msgstr "" +msgstr "Set Semula Zum" #: editor/code_editor.cpp msgid "Warnings" -msgstr "" +msgstr "Amaran" #: editor/code_editor.cpp msgid "Line and column numbers." -msgstr "" +msgstr "Nombor baris dan lajur." #: editor/connections_dialog.cpp msgid "Method in target node must be specified." -msgstr "" +msgstr "Kaedah dalam nod sasaran mesti ditentukan." #: editor/connections_dialog.cpp msgid "Method name must be a valid identifier." -msgstr "" +msgstr "Nama kaedah mestilah pengecam yang sah." #: editor/connections_dialog.cpp msgid "" "Target method not found. Specify a valid method or attach a script to the " "target node." msgstr "" +"Kaedah sasaran tidak dijumpai. Tentukan kaedah yang sah atau lampirkan skrip " +"ke nod sasaran." #: editor/connections_dialog.cpp msgid "Connect to Node:" -msgstr "" +msgstr "Sambung ke Nod:" #: editor/connections_dialog.cpp msgid "Connect to Script:" -msgstr "" +msgstr "Sambung ke Skrip:" #: editor/connections_dialog.cpp msgid "From Signal:" -msgstr "" +msgstr "Dari Isyarat:" #: editor/connections_dialog.cpp msgid "Scene does not contain any script." -msgstr "" +msgstr "Adegan tidak mengandungi sebarang skrip." #: editor/connections_dialog.cpp editor/editor_autoload_settings.cpp #: editor/groups_editor.cpp editor/plugins/item_list_editor_plugin.cpp #: editor/plugins/theme_editor_plugin.cpp editor/project_settings_editor.cpp msgid "Add" -msgstr "" +msgstr "Tambah" #: editor/connections_dialog.cpp editor/dependency_editor.cpp #: editor/editor_feature_profile.cpp editor/groups_editor.cpp @@ -798,44 +800,46 @@ msgstr "" #: editor/plugins/visual_shader_editor_plugin.cpp editor/project_manager.cpp #: editor/project_settings_editor.cpp msgid "Remove" -msgstr "" +msgstr "Keluarkan" #: editor/connections_dialog.cpp msgid "Add Extra Call Argument:" -msgstr "" +msgstr "Tambah Hujah Panggilan Tambahan:" #: editor/connections_dialog.cpp msgid "Extra Call Arguments:" -msgstr "" +msgstr "Hujah Panggilan Tambahan:" #: editor/connections_dialog.cpp msgid "Receiver Method:" -msgstr "" +msgstr "Kaedah Penerima:" #: editor/connections_dialog.cpp msgid "Advanced" -msgstr "" +msgstr "Lanjutan" #: editor/connections_dialog.cpp msgid "Deferred" -msgstr "" +msgstr "Ditangguhkan" #: editor/connections_dialog.cpp msgid "" "Defers the signal, storing it in a queue and only firing it at idle time." msgstr "" +"Mencegah isyarat, menyimpannya dalam barisan dan hanya menyalakannya pada " +"waktu terbiar." #: editor/connections_dialog.cpp msgid "Oneshot" -msgstr "" +msgstr "Oneshot" #: editor/connections_dialog.cpp msgid "Disconnects the signal after its first emission." -msgstr "" +msgstr "Putuskan isyarat selepas pelepasan pertama." #: editor/connections_dialog.cpp msgid "Cannot connect signal" -msgstr "" +msgstr "Tidak dapat menyambungkan isyarat" #: editor/connections_dialog.cpp editor/dependency_editor.cpp #: editor/export_template_manager.cpp editor/groups_editor.cpp @@ -849,101 +853,104 @@ msgstr "" #: editor/run_settings_dialog.cpp editor/settings_config_dialog.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Close" -msgstr "" +msgstr "Tutup" #: editor/connections_dialog.cpp msgid "Connect" -msgstr "" +msgstr "Sambung" #: editor/connections_dialog.cpp msgid "Signal:" -msgstr "" +msgstr "Isyarat:" #: editor/connections_dialog.cpp msgid "Connect '%s' to '%s'" -msgstr "" +msgstr "Sambungkan '% s' ke '% s'" #: editor/connections_dialog.cpp msgid "Disconnect '%s' from '%s'" -msgstr "" +msgstr "Putuskan sambungan '% s' dari '% s'" #: editor/connections_dialog.cpp msgid "Disconnect all from signal: '%s'" -msgstr "" +msgstr "Putuskan semua sambungan dari isyarat: '% s'" #: editor/connections_dialog.cpp msgid "Connect..." -msgstr "" +msgstr "Sambung ..." #: editor/connections_dialog.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Disconnect" -msgstr "" +msgstr "Putuskan sambungan" #: editor/connections_dialog.cpp msgid "Connect a Signal to a Method" -msgstr "" +msgstr "Sambungkan Isyarat ke Kaedah" #: editor/connections_dialog.cpp msgid "Edit Connection:" -msgstr "" +msgstr "Edit Sambungan:" #: editor/connections_dialog.cpp msgid "Are you sure you want to remove all connections from the \"%s\" signal?" msgstr "" +"Adakah anda pasti anda mahu mengeluarkan semua sambungan dari isyarat \"% s" +"\"?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" -msgstr "" +msgstr "Isyarat" #: editor/connections_dialog.cpp msgid "Are you sure you want to remove all connections from this signal?" msgstr "" +"Adakah anda pasti anda mahu mengeluarkan semua sambungan dari isyarat ini?" #: editor/connections_dialog.cpp msgid "Disconnect All" -msgstr "" +msgstr "Putuskan Semua" #: editor/connections_dialog.cpp msgid "Edit..." -msgstr "" +msgstr "Edit..." #: editor/connections_dialog.cpp msgid "Go To Method" -msgstr "" +msgstr "Pergi ke Kaedah" #: editor/create_dialog.cpp msgid "Change %s Type" -msgstr "" +msgstr "Ubah Jenis %s" #: editor/create_dialog.cpp editor/project_settings_editor.cpp msgid "Change" -msgstr "" +msgstr "Ubah" #: editor/create_dialog.cpp msgid "Create New %s" -msgstr "" +msgstr "Cipta %s Baru" #: editor/create_dialog.cpp editor/editor_file_dialog.cpp #: editor/filesystem_dock.cpp msgid "Favorites:" -msgstr "" +msgstr "Kegemaran:" #: editor/create_dialog.cpp editor/editor_file_dialog.cpp msgid "Recent:" -msgstr "" +msgstr "Terkini:" #: editor/create_dialog.cpp editor/plugins/script_editor_plugin.cpp #: editor/property_selector.cpp editor/quick_open.cpp #: modules/visual_script/visual_script_property_selector.cpp msgid "Search:" -msgstr "" +msgstr "Cari:" #: editor/create_dialog.cpp editor/plugins/script_editor_plugin.cpp #: editor/property_selector.cpp editor/quick_open.cpp #: modules/visual_script/visual_script_property_selector.cpp msgid "Matches:" -msgstr "" +msgstr "Padanan:" #: editor/create_dialog.cpp editor/editor_plugin_settings.cpp #: editor/plugin_config_dialog.cpp @@ -951,57 +958,61 @@ msgstr "" #: editor/plugins/visual_shader_editor_plugin.cpp editor/property_selector.cpp #: modules/visual_script/visual_script_property_selector.cpp msgid "Description:" -msgstr "" +msgstr "Keterangan:" #: editor/dependency_editor.cpp msgid "Search Replacement For:" -msgstr "" +msgstr "Cari Penggantian Untuk:" #: editor/dependency_editor.cpp msgid "Dependencies For:" -msgstr "" +msgstr "Kebergantungan Untuk:" #: editor/dependency_editor.cpp msgid "" "Scene '%s' is currently being edited.\n" "Changes will only take effect when reloaded." msgstr "" +"Adegan '% s' kini sedang diedit.\n" +"Perubahan hanya akan berlaku apabila dimuat semula." #: editor/dependency_editor.cpp msgid "" "Resource '%s' is in use.\n" "Changes will only take effect when reloaded." msgstr "" +"Sumber '% s' sedang digunakan.\n" +"Perubahan hanya akan berlaku apabila dimuat semula." #: editor/dependency_editor.cpp #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "Dependencies" -msgstr "" +msgstr "Kebergantungan" #: editor/dependency_editor.cpp msgid "Resource" -msgstr "" +msgstr "Sumber" #: editor/dependency_editor.cpp editor/editor_autoload_settings.cpp #: editor/project_manager.cpp editor/project_settings_editor.cpp msgid "Path" -msgstr "" +msgstr "Laluan" #: editor/dependency_editor.cpp msgid "Dependencies:" -msgstr "" +msgstr "Kebergantungan:" #: editor/dependency_editor.cpp msgid "Fix Broken" -msgstr "" +msgstr "Perbaiki Pecah" #: editor/dependency_editor.cpp msgid "Dependency Editor" -msgstr "" +msgstr "Editor Ketergantungan" #: editor/dependency_editor.cpp msgid "Search Replacement Resource:" -msgstr "" +msgstr "Cari Penggantian Sumber:" #: editor/dependency_editor.cpp editor/editor_file_dialog.cpp #: editor/editor_help_search.cpp editor/editor_node.cpp @@ -1011,15 +1022,15 @@ msgstr "" #: modules/visual_script/visual_script_property_selector.cpp #: scene/gui/file_dialog.cpp msgid "Open" -msgstr "" +msgstr "Buka" #: editor/dependency_editor.cpp msgid "Owners Of:" -msgstr "" +msgstr "Pemilik:" #: editor/dependency_editor.cpp msgid "Remove selected files from the project? (Can't be restored)" -msgstr "" +msgstr "Alih keluar fail terpilih dari projek? (Tidak dapat dipulihkan)" #: editor/dependency_editor.cpp msgid "" @@ -1027,46 +1038,49 @@ msgid "" "work.\n" "Remove them anyway? (no undo)" msgstr "" +"Fail yang akan dikeluarkan diperlukan oleh sumber lain agar dapat " +"berfungsi.\n" +"Masih mahu keluarkan fail tersebut? (tidak boleh buat asal)" #: editor/dependency_editor.cpp msgid "Cannot remove:" -msgstr "" +msgstr "Tidak boleh dialih keluar:" #: editor/dependency_editor.cpp msgid "Error loading:" -msgstr "" +msgstr "Ralat memuatkan:" #: editor/dependency_editor.cpp msgid "Load failed due to missing dependencies:" -msgstr "" +msgstr "Gagal memuat kerana kebergantungan hilang:" #: editor/dependency_editor.cpp editor/editor_node.cpp msgid "Open Anyway" -msgstr "" +msgstr "Buka Bagaimanapun" #: editor/dependency_editor.cpp msgid "Which action should be taken?" -msgstr "" +msgstr "Tindakan apa yang harus diambil?" #: editor/dependency_editor.cpp msgid "Fix Dependencies" -msgstr "" +msgstr "Perbaiki Kebergantungan" #: editor/dependency_editor.cpp msgid "Errors loading!" -msgstr "" +msgstr "Ralat memuatkan!" #: editor/dependency_editor.cpp msgid "Permanently delete %d item(s)? (No undo!)" -msgstr "" +msgstr "Padamkan objek %d secara kekal? (Tidak boleh dibuat asal!)" #: editor/dependency_editor.cpp msgid "Show Dependencies" -msgstr "" +msgstr "Tunjuk Kebergantungan" #: editor/dependency_editor.cpp msgid "Orphan Resource Explorer" -msgstr "" +msgstr "Penjelajah Sumber Yatim" #: editor/dependency_editor.cpp editor/editor_audio_buses.cpp #: editor/editor_file_dialog.cpp editor/editor_node.cpp @@ -1074,79 +1088,89 @@ msgstr "" #: editor/plugins/sprite_frames_editor_plugin.cpp editor/project_export.cpp #: editor/project_settings_editor.cpp editor/scene_tree_dock.cpp msgid "Delete" -msgstr "" +msgstr "Padam" #: editor/dependency_editor.cpp msgid "Owns" -msgstr "" +msgstr "Memiliki" #: editor/dependency_editor.cpp msgid "Resources Without Explicit Ownership:" -msgstr "" +msgstr "Sumber Tanpa Hak Milik Eksplisit:" #: editor/dictionary_property_edit.cpp msgid "Change Dictionary Key" -msgstr "" +msgstr "Tukar Kunci Kamus" #: editor/dictionary_property_edit.cpp msgid "Change Dictionary Value" -msgstr "" +msgstr "Tukar Nilai Kamus" #: editor/editor_about.cpp msgid "Thanks from the Godot community!" -msgstr "" +msgstr "Terima kasih dari komuniti Godot!" #: editor/editor_about.cpp msgid "Godot Engine contributors" -msgstr "" +msgstr "Penyumbang Enjin Godot" #: editor/editor_about.cpp msgid "Project Founders" -msgstr "" +msgstr "Pengasas Projek" #: editor/editor_about.cpp msgid "Lead Developer" -msgstr "" +msgstr "Pemaju Utama" #: editor/editor_about.cpp msgid "Project Manager " -msgstr "" +msgstr "Pengurus Projek " #: editor/editor_about.cpp msgid "Developers" -msgstr "" +msgstr "Pemaju" #: editor/editor_about.cpp msgid "Authors" -msgstr "" +msgstr "Pengarang" #: editor/editor_about.cpp msgid "Platinum Sponsors" -msgstr "" +msgstr "Penaja Platinum" #: editor/editor_about.cpp msgid "Gold Sponsors" -msgstr "" +msgstr "Penaja Emas" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Penderma Perak" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Penderma Gangsa" #: editor/editor_about.cpp msgid "Mini Sponsors" -msgstr "" +msgstr "Penaja Mini" #: editor/editor_about.cpp msgid "Gold Donors" -msgstr "" +msgstr "Penderma Emas" #: editor/editor_about.cpp msgid "Silver Donors" -msgstr "" +msgstr "Penderma Perak" #: editor/editor_about.cpp msgid "Bronze Donors" -msgstr "" +msgstr "Penderma Gangsa" #: editor/editor_about.cpp msgid "Donors" -msgstr "" +msgstr "Penderma" #: editor/editor_about.cpp msgid "License" @@ -1154,7 +1178,7 @@ msgstr "Lesen" #: editor/editor_about.cpp msgid "Third-party Licenses" -msgstr "" +msgstr "Lesen Pihak Ketiga" #: editor/editor_about.cpp msgid "" @@ -1163,389 +1187,398 @@ msgid "" "is an exhaustive list of all such third-party components with their " "respective copyright statements and license terms." msgstr "" +"Enjin Godot bergantung kepada beberapa perpustakaan sumber terbuka dan bebas " +"pihak ketiga, semuanya serasi dengan syarat-syarat lesen MITnya. Berikut " +"adalah senarai lengkap semua komponen pihak ketiga tersebut dengan " +"pernyataan hak cipta dan syarat lesen masing-masing." #: editor/editor_about.cpp msgid "All Components" -msgstr "" +msgstr "Semua Komponen" #: editor/editor_about.cpp msgid "Components" -msgstr "" +msgstr "Komponen" #: editor/editor_about.cpp msgid "Licenses" -msgstr "" +msgstr "Lesen" #: editor/editor_asset_installer.cpp editor/project_manager.cpp msgid "Error opening package file, not in ZIP format." -msgstr "" +msgstr "Ralat semasa membuka fail pakej, bukan dalam format ZIP." #: editor/editor_asset_installer.cpp msgid "%s (Already Exists)" -msgstr "" +msgstr "%s (Sudah Wujud)" #: editor/editor_asset_installer.cpp msgid "Uncompressing Assets" -msgstr "" +msgstr "Nyahmampatkan Aset" #: editor/editor_asset_installer.cpp editor/project_manager.cpp msgid "The following files failed extraction from package:" -msgstr "" +msgstr "Fail berikut gagal diekstrak dari pakej:" #: editor/editor_asset_installer.cpp msgid "And %s more files." -msgstr "" +msgstr "Dan sebanyak %s fail." #: editor/editor_asset_installer.cpp editor/project_manager.cpp msgid "Package installed successfully!" -msgstr "" +msgstr "Pakej berjaya dipasang!" #: editor/editor_asset_installer.cpp #: editor/plugins/asset_library_editor_plugin.cpp msgid "Success!" -msgstr "" +msgstr "Berjaya!" #: editor/editor_asset_installer.cpp msgid "Package Contents:" -msgstr "" +msgstr "Kandungan Pakej:" #: editor/editor_asset_installer.cpp editor/editor_node.cpp msgid "Install" -msgstr "" +msgstr "Pasang" #: editor/editor_asset_installer.cpp msgid "Package Installer" -msgstr "" +msgstr "Pemasang Pakej" #: editor/editor_audio_buses.cpp msgid "Speakers" -msgstr "" +msgstr "Pembesar suara" #: editor/editor_audio_buses.cpp msgid "Add Effect" -msgstr "" +msgstr "Tambah Kesan" #: editor/editor_audio_buses.cpp msgid "Rename Audio Bus" -msgstr "" +msgstr "Namakan Semula Bas Audio" #: editor/editor_audio_buses.cpp msgid "Change Audio Bus Volume" -msgstr "" +msgstr "Tukar Kelantangan Bas Audio" #: editor/editor_audio_buses.cpp msgid "Toggle Audio Bus Solo" -msgstr "" +msgstr "Togol Bas Audio Solo" #: editor/editor_audio_buses.cpp msgid "Toggle Audio Bus Mute" -msgstr "" +msgstr "Togol Senyap Bas Audio" #: editor/editor_audio_buses.cpp msgid "Toggle Audio Bus Bypass Effects" -msgstr "" +msgstr "Togol Kesan Pintasan Bas Audio" #: editor/editor_audio_buses.cpp msgid "Select Audio Bus Send" -msgstr "" +msgstr "Pilih Hantar Bas Audio" #: editor/editor_audio_buses.cpp msgid "Add Audio Bus Effect" -msgstr "" +msgstr "Tambah Kesan Bas Audio" #: editor/editor_audio_buses.cpp msgid "Move Bus Effect" -msgstr "" +msgstr "Alih Kesan Bas" #: editor/editor_audio_buses.cpp msgid "Delete Bus Effect" -msgstr "" +msgstr "Padam Kesan Bas" #: editor/editor_audio_buses.cpp msgid "Drag & drop to rearrange." -msgstr "" +msgstr "Seret & lepas untuk menyusun semula." #: editor/editor_audio_buses.cpp msgid "Solo" -msgstr "" +msgstr "Solo" #: editor/editor_audio_buses.cpp msgid "Mute" -msgstr "" +msgstr "Bisu" #: editor/editor_audio_buses.cpp msgid "Bypass" -msgstr "" +msgstr "Pintas" #: editor/editor_audio_buses.cpp msgid "Bus options" -msgstr "" +msgstr "Pilihan bas" #: editor/editor_audio_buses.cpp editor/filesystem_dock.cpp #: editor/plugins/animation_player_editor_plugin.cpp editor/scene_tree_dock.cpp msgid "Duplicate" -msgstr "" +msgstr "Pendua" #: editor/editor_audio_buses.cpp msgid "Reset Volume" -msgstr "" +msgstr "Tetapkan Semula Kelantangan" #: editor/editor_audio_buses.cpp msgid "Delete Effect" -msgstr "" +msgstr "Padam Kesan" #: editor/editor_audio_buses.cpp msgid "Audio" -msgstr "" +msgstr "Audio" #: editor/editor_audio_buses.cpp msgid "Add Audio Bus" -msgstr "" +msgstr "Tambah Bas Audio" #: editor/editor_audio_buses.cpp msgid "Master bus can't be deleted!" -msgstr "" +msgstr "Bas induk tidak boleh dipadamkan!" #: editor/editor_audio_buses.cpp msgid "Delete Audio Bus" -msgstr "" +msgstr "Padam Bas Audio" #: editor/editor_audio_buses.cpp msgid "Duplicate Audio Bus" -msgstr "" +msgstr "Pendua Bas Audio" #: editor/editor_audio_buses.cpp msgid "Reset Bus Volume" -msgstr "" +msgstr "Tetapkan Semula Kelantangan Bas" #: editor/editor_audio_buses.cpp msgid "Move Audio Bus" -msgstr "" +msgstr "Pindah Bas Audio" #: editor/editor_audio_buses.cpp msgid "Save Audio Bus Layout As..." -msgstr "" +msgstr "Simpan Susun Atur Bas Audio Sebagai..." #: editor/editor_audio_buses.cpp msgid "Location for New Layout..." -msgstr "" +msgstr "Lokasi untuk Susun Atur Baru..." #: editor/editor_audio_buses.cpp msgid "Open Audio Bus Layout" -msgstr "" +msgstr "Buka Susun Atur Bas Audio" #: editor/editor_audio_buses.cpp msgid "There is no '%s' file." -msgstr "" +msgstr "Tiada fail '%s'." #: editor/editor_audio_buses.cpp editor/plugins/canvas_item_editor_plugin.cpp msgid "Layout" -msgstr "" +msgstr "Susun atur" #: editor/editor_audio_buses.cpp msgid "Invalid file, not an audio bus layout." -msgstr "" +msgstr "Fail tidak sah, bukan susun atur bas audio." #: editor/editor_audio_buses.cpp msgid "Error saving file: %s" -msgstr "" +msgstr "Ralat semasa menyimpan fail: %s" #: editor/editor_audio_buses.cpp msgid "Add Bus" -msgstr "" +msgstr "Tambah Bas" #: editor/editor_audio_buses.cpp msgid "Add a new Audio Bus to this layout." -msgstr "" +msgstr "Tambah Bas Audio baru ke susun atur ini." #: editor/editor_audio_buses.cpp editor/editor_properties.cpp #: editor/plugins/animation_player_editor_plugin.cpp editor/property_editor.cpp #: editor/script_create_dialog.cpp msgid "Load" -msgstr "" +msgstr "Memuatkan" #: editor/editor_audio_buses.cpp msgid "Load an existing Bus Layout." -msgstr "" +msgstr "Muatkan Susun Atur Bas yang sedia ada." #: editor/editor_audio_buses.cpp msgid "Save As" -msgstr "" +msgstr "Simpan sebagai" #: editor/editor_audio_buses.cpp msgid "Save this Bus Layout to a file." -msgstr "" +msgstr "Simpan Susun Atur Bas ini ke fail." #: editor/editor_audio_buses.cpp editor/import_dock.cpp msgid "Load Default" -msgstr "" +msgstr "Muatkan Lalai" #: editor/editor_audio_buses.cpp msgid "Load the default Bus Layout." -msgstr "" +msgstr "Muatkan Susun Atur Bas lalai." #: editor/editor_audio_buses.cpp msgid "Create a new Bus Layout." -msgstr "" +msgstr "Cipta Susun Atur Bas baru." #: editor/editor_autoload_settings.cpp msgid "Invalid name." -msgstr "" +msgstr "Nama tidak sah." #: editor/editor_autoload_settings.cpp msgid "Valid characters:" -msgstr "" +msgstr "Watak yang sah:" #: editor/editor_autoload_settings.cpp msgid "Must not collide with an existing engine class name." -msgstr "" +msgstr "Tidak boleh bertembung dengan nama kelas engin yang telah wujud." #: editor/editor_autoload_settings.cpp msgid "Must not collide with an existing built-in type name." msgstr "" +"Tidak boleh bertembung dengan nama jenis terbina dalam yang telah wujud." #: editor/editor_autoload_settings.cpp msgid "Must not collide with an existing global constant name." -msgstr "" +msgstr "Tidak boleh bertembung dengan nama pemalar global yang telah wujud." #: editor/editor_autoload_settings.cpp msgid "Keyword cannot be used as an autoload name." -msgstr "" +msgstr "Kata kunci tidak boleh digunakan sebagai nama autoload." #: editor/editor_autoload_settings.cpp msgid "Autoload '%s' already exists!" -msgstr "" +msgstr "Autoload '%s' sudah wujud!" #: editor/editor_autoload_settings.cpp msgid "Rename Autoload" -msgstr "" +msgstr "Namakan Semula Autoload" #: editor/editor_autoload_settings.cpp msgid "Toggle AutoLoad Globals" -msgstr "" +msgstr "Togol Global Autoload" #: editor/editor_autoload_settings.cpp msgid "Move Autoload" -msgstr "" +msgstr "Pindah Autoload" #: editor/editor_autoload_settings.cpp msgid "Remove Autoload" -msgstr "" +msgstr "Keluarkan Autoload" #: editor/editor_autoload_settings.cpp editor/editor_plugin_settings.cpp msgid "Enable" -msgstr "" +msgstr "Aktifkan" #: editor/editor_autoload_settings.cpp msgid "Rearrange Autoloads" -msgstr "" +msgstr "Susun Semula Autoload" #: editor/editor_autoload_settings.cpp msgid "Can't add autoload:" -msgstr "" +msgstr "Tidak boleh menambahkan autoload:" #: editor/editor_autoload_settings.cpp msgid "Add AutoLoad" -msgstr "" +msgstr "Tambah AutoLoad" #: editor/editor_autoload_settings.cpp editor/editor_file_dialog.cpp #: editor/editor_plugin_settings.cpp #: editor/plugins/animation_tree_editor_plugin.cpp #: editor/script_create_dialog.cpp scene/gui/file_dialog.cpp msgid "Path:" -msgstr "" +msgstr "Laluan:" #: editor/editor_autoload_settings.cpp msgid "Node Name:" -msgstr "" +msgstr "Nama Nod:" #: editor/editor_autoload_settings.cpp editor/editor_help_search.cpp #: editor/editor_profiler.cpp editor/project_manager.cpp #: editor/settings_config_dialog.cpp msgid "Name" -msgstr "" +msgstr "Nama" #: editor/editor_autoload_settings.cpp msgid "Singleton" -msgstr "" +msgstr "Singleton" #: editor/editor_data.cpp editor/inspector_dock.cpp msgid "Paste Params" -msgstr "" +msgstr "Tampal Param" #: editor/editor_data.cpp msgid "Updating Scene" -msgstr "" +msgstr "Mengemaskini Adegan" #: editor/editor_data.cpp msgid "Storing local changes..." -msgstr "" +msgstr "Menyimpan perubahan tempatan..." #: editor/editor_data.cpp msgid "Updating scene..." -msgstr "" +msgstr "Mengemaskini adegan..." #: editor/editor_data.cpp editor/editor_properties.cpp msgid "[empty]" -msgstr "" +msgstr "[kosong]" #: editor/editor_data.cpp msgid "[unsaved]" -msgstr "" +msgstr "[tidak disimpan]" #: editor/editor_dir_dialog.cpp msgid "Please select a base directory first." -msgstr "" +msgstr "Sila pilih direktori asas terlebih dahulu." #: editor/editor_dir_dialog.cpp msgid "Choose a Directory" -msgstr "" +msgstr "Pilih Direktori" #: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp #: editor/filesystem_dock.cpp editor/project_manager.cpp #: scene/gui/file_dialog.cpp msgid "Create Folder" -msgstr "" +msgstr "Cipta Folder" #: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp #: editor/editor_plugin_settings.cpp editor/filesystem_dock.cpp #: editor/plugins/theme_editor_plugin.cpp editor/project_export.cpp #: modules/visual_script/visual_script_editor.cpp scene/gui/file_dialog.cpp msgid "Name:" -msgstr "" +msgstr "Nama:" #: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp #: editor/filesystem_dock.cpp scene/gui/file_dialog.cpp msgid "Could not create folder." -msgstr "" +msgstr "Tidak dapat mencipta folder." #: editor/editor_dir_dialog.cpp msgid "Choose" -msgstr "" +msgstr "Pilih" #: editor/editor_export.cpp msgid "Storing File:" -msgstr "" +msgstr "Menyimpan Fail:" #: editor/editor_export.cpp msgid "No export template found at the expected path:" -msgstr "" +msgstr "Tiada templat eksport ditemui di laluan yang dijangkakan:" #: editor/editor_export.cpp msgid "Packing" -msgstr "" +msgstr "Pembungkusan" #: editor/editor_export.cpp msgid "" "Target platform requires 'ETC' texture compression for GLES2. Enable 'Import " "Etc' in Project Settings." msgstr "" +"Platform sasaran memerlukan pemampatan tekstur 'ETC' untuk GLES2. Aktifkan " +"'Import Etc' dalam Tetapan Projek." #: editor/editor_export.cpp msgid "" "Target platform requires 'ETC2' texture compression for GLES3. Enable " "'Import Etc 2' in Project Settings." msgstr "" +"Platform sasaran memerlukan pemampatan tekstur 'ETC2' untuk GLES3. Aktifkan " +"'Import Etc 2' dalam Tetapan Projek." #: editor/editor_export.cpp msgid "" @@ -1554,508 +1587,519 @@ msgid "" "Enable 'Import Etc' in Project Settings, or disable 'Driver Fallback " "Enabled'." msgstr "" +"Platform sasaran memerlukan pemampatan tekstur 'ETC' untuk sandaran pemandu " +"ke GLES2.\n" +"Aktifkan 'Import Etc' dalam Tetapan Projek, atau nyahaktifkan 'Driver " +"Fallback Enabled'." #: editor/editor_export.cpp platform/android/export/export.cpp #: platform/iphone/export/export.cpp platform/javascript/export/export.cpp #: platform/osx/export/export.cpp platform/uwp/export/export.cpp msgid "Custom debug template not found." -msgstr "" +msgstr "Templat nyahpepijat tersuai tidak dijumpai." #: editor/editor_export.cpp platform/android/export/export.cpp #: platform/iphone/export/export.cpp platform/javascript/export/export.cpp #: platform/osx/export/export.cpp platform/uwp/export/export.cpp msgid "Custom release template not found." -msgstr "" +msgstr "Templat pelepasan tersuai tidak dijumpai." #: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:" -msgstr "" +msgstr "Fail templat tidak dijumpai:" #: editor/editor_export.cpp msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB." msgstr "" +"Pada eksport 32-bit PCK terbenam tidak boleh lebih besar daripada 4 GiB." #: editor/editor_feature_profile.cpp msgid "3D Editor" -msgstr "" +msgstr "Editor 3D" #: editor/editor_feature_profile.cpp msgid "Script Editor" -msgstr "" +msgstr "Editor Skrip" #: editor/editor_feature_profile.cpp msgid "Asset Library" -msgstr "" +msgstr "Perpustakaan Aset" #: editor/editor_feature_profile.cpp msgid "Scene Tree Editing" -msgstr "" +msgstr "Penyuntingan Pokok Adegan" #: editor/editor_feature_profile.cpp msgid "Import Dock" -msgstr "" +msgstr "Import Dok" #: editor/editor_feature_profile.cpp msgid "Node Dock" -msgstr "" +msgstr "Dok nod" #: editor/editor_feature_profile.cpp msgid "FileSystem and Import Docks" -msgstr "" +msgstr "Sistem Fail dan Dok Import" #: editor/editor_feature_profile.cpp msgid "Erase profile '%s'? (no undo)" -msgstr "" +msgstr "Padamkan profil '%s'? (tidak boleh buat asal)" #: editor/editor_feature_profile.cpp msgid "Profile must be a valid filename and must not contain '.'" -msgstr "" +msgstr "Profil mestilah nama fail yang sah dan tidak boleh mengandungi '.'" #: editor/editor_feature_profile.cpp msgid "Profile with this name already exists." -msgstr "" +msgstr "Profil dengan nama ini sudah wujud." #: editor/editor_feature_profile.cpp msgid "(Editor Disabled, Properties Disabled)" -msgstr "" +msgstr "(Editor Dinyahaktifkan, Ciri-ciri Dinyahaktifkan)" #: editor/editor_feature_profile.cpp msgid "(Properties Disabled)" -msgstr "" +msgstr "(Ciri-ciri dinyahaktif)" #: editor/editor_feature_profile.cpp -#, fuzzy msgid "(Editor Disabled)" -msgstr "Tidak Aktif" +msgstr "(Editor Dinyahaktif)" #: editor/editor_feature_profile.cpp msgid "Class Options:" -msgstr "" +msgstr "Pilihan Kelas:" #: editor/editor_feature_profile.cpp msgid "Enable Contextual Editor" -msgstr "" +msgstr "Aktifkan Editor Kontekstual" #: editor/editor_feature_profile.cpp msgid "Enabled Properties:" -msgstr "" +msgstr "Ciri-ciri Diaktifkan:" #: editor/editor_feature_profile.cpp msgid "Enabled Features:" -msgstr "" +msgstr "Ciri Diaktifkan:" #: editor/editor_feature_profile.cpp msgid "Enabled Classes:" -msgstr "" +msgstr "Kelas Diaktifkan:" #: editor/editor_feature_profile.cpp msgid "File '%s' format is invalid, import aborted." -msgstr "" +msgstr "Format fail '%s' tidak sah, import dibatalkan." #: editor/editor_feature_profile.cpp msgid "" "Profile '%s' already exists. Remove it first before importing, import " "aborted." msgstr "" +"Profil '%s' sudah wujud. Keluarkannya terlebih dahulu sebelum mengimport, " +"import dibatalkan." #: editor/editor_feature_profile.cpp msgid "Error saving profile to path: '%s'." -msgstr "" +msgstr "Ralat menyimpan profil ke laluan: '%s'." #: editor/editor_feature_profile.cpp msgid "Unset" -msgstr "" +msgstr "Nyahtetap" #: editor/editor_feature_profile.cpp msgid "Current Profile:" -msgstr "" +msgstr "Profil Semasa:" #: editor/editor_feature_profile.cpp msgid "Make Current" -msgstr "" +msgstr "Buat Semasa" #: editor/editor_feature_profile.cpp #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/version_control_editor_plugin.cpp msgid "New" -msgstr "" +msgstr "Baru" #: editor/editor_feature_profile.cpp editor/editor_node.cpp #: editor/project_manager.cpp msgid "Import" -msgstr "" +msgstr "Import" #: editor/editor_feature_profile.cpp editor/project_export.cpp msgid "Export" -msgstr "" +msgstr "Eksport" #: editor/editor_feature_profile.cpp msgid "Available Profiles:" -msgstr "" +msgstr "Profil yang ada:" #: editor/editor_feature_profile.cpp msgid "Class Options" -msgstr "" +msgstr "Pilihan Kelas" #: editor/editor_feature_profile.cpp msgid "New profile name:" -msgstr "" +msgstr "Nama profil baru:" #: editor/editor_feature_profile.cpp msgid "Erase Profile" -msgstr "" +msgstr "Padam Profil" #: editor/editor_feature_profile.cpp msgid "Godot Feature Profile" -msgstr "" +msgstr "Profil Ciri Godot" #: editor/editor_feature_profile.cpp msgid "Import Profile(s)" -msgstr "" +msgstr "Import Profil" #: editor/editor_feature_profile.cpp msgid "Export Profile" -msgstr "" +msgstr "Eksport Profil" #: editor/editor_feature_profile.cpp msgid "Manage Editor Feature Profiles" -msgstr "" +msgstr "Urus Profil Ciri Editor" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Select Current Folder" -msgstr "" +msgstr "Pilih Folder Semasa" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "File Exists, Overwrite?" -msgstr "" +msgstr "Fail Wujud, Tulis Ganti?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Select This Folder" -msgstr "" +msgstr "Pilih Folder Ini" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "Copy Path" -msgstr "" +msgstr "Salin Laluan" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "Open in File Manager" -msgstr "" +msgstr "Buka dalam Pengurus Fail" #: editor/editor_file_dialog.cpp editor/editor_node.cpp #: editor/filesystem_dock.cpp editor/project_manager.cpp msgid "Show in File Manager" -msgstr "" +msgstr "Tunjukkan dalam Pengurus Fail" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "New Folder..." -msgstr "" +msgstr "Folder Baru..." #: editor/editor_file_dialog.cpp editor/find_in_files.cpp #: editor/plugins/version_control_editor_plugin.cpp msgid "Refresh" -msgstr "" +msgstr "Muat Semula" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "All Recognized" -msgstr "" +msgstr "Semua Dikenali" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "All Files (*)" -msgstr "" +msgstr "Semua Fail (*)" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Open a File" -msgstr "" +msgstr "Buka Fail" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Open File(s)" -msgstr "" +msgstr "Buka Fail" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Open a Directory" -msgstr "" +msgstr "Buka Direktori" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Open a File or Directory" -msgstr "" +msgstr "Buka Fail atau Direktori" #: editor/editor_file_dialog.cpp editor/editor_node.cpp #: editor/editor_properties.cpp editor/inspector_dock.cpp #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/script_editor_plugin.cpp scene/gui/file_dialog.cpp msgid "Save" -msgstr "" +msgstr "Simpan" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Save a File" -msgstr "" +msgstr "Simpan Fail" #: editor/editor_file_dialog.cpp msgid "Go Back" -msgstr "" +msgstr "Pergi Balik" #: editor/editor_file_dialog.cpp msgid "Go Forward" -msgstr "" +msgstr "Pergi ke Hadapan" #: editor/editor_file_dialog.cpp msgid "Go Up" -msgstr "" +msgstr "Pergi Atas" #: editor/editor_file_dialog.cpp msgid "Toggle Hidden Files" -msgstr "" +msgstr "Togol Fail Tersembunyi" #: editor/editor_file_dialog.cpp msgid "Toggle Favorite" -msgstr "" +msgstr "Togol Kegemaran" #: editor/editor_file_dialog.cpp msgid "Toggle Mode" -msgstr "" +msgstr "Togol Mod" #: editor/editor_file_dialog.cpp msgid "Focus Path" -msgstr "" +msgstr "Laluan Fokus" #: editor/editor_file_dialog.cpp msgid "Move Favorite Up" -msgstr "" +msgstr "Pindah Kegemaran ke Atas" #: editor/editor_file_dialog.cpp msgid "Move Favorite Down" -msgstr "" +msgstr "Pindah Kegemaran ke Bawah" #: editor/editor_file_dialog.cpp msgid "Go to previous folder." -msgstr "" +msgstr "Pergi ke folder sebelumnya." #: editor/editor_file_dialog.cpp msgid "Go to next folder." -msgstr "" +msgstr "Pergi ke folder seterusnya." #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Go to parent folder." -msgstr "" +msgstr "Pergi ke folder induk." #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Refresh files." -msgstr "" +msgstr "Muat semula fail." #: editor/editor_file_dialog.cpp msgid "(Un)favorite current folder." -msgstr "" +msgstr "(Nyah)kegemaran folder semasa." #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Toggle the visibility of hidden files." -msgstr "" +msgstr "Togol keterlihatan fail tersembunyi." #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "View items as a grid of thumbnails." -msgstr "" +msgstr "Lihat barang sebagai grid gambar kecil." #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "View items as a list." -msgstr "" +msgstr "Lihat barang sebagai senarai." #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Directories & Files:" -msgstr "" +msgstr "Direktori & Fail:" #: editor/editor_file_dialog.cpp editor/plugins/sprite_editor_plugin.cpp #: editor/plugins/style_box_editor_plugin.cpp #: editor/plugins/theme_editor_plugin.cpp msgid "Preview:" -msgstr "" +msgstr "Pratonton:" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "File:" -msgstr "" +msgstr "Fail:" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Must use a valid extension." -msgstr "" +msgstr "Mesti menggunakan sambungan yang sah." #: editor/editor_file_system.cpp msgid "ScanSources" -msgstr "" +msgstr "Sumber Imbas" #: editor/editor_file_system.cpp msgid "" "There are multiple importers for different types pointing to file %s, import " "aborted" msgstr "" +"Terdapat beberapa pengimport untuk pelbagai jenis yang menunjukkan ke fail " +"%s, import dibatalkan" #: editor/editor_file_system.cpp msgid "(Re)Importing Assets" -msgstr "" +msgstr "Mengimport (Semula) Aset" #: editor/editor_help.cpp editor/plugins/spatial_editor_plugin.cpp msgid "Top" -msgstr "" +msgstr "Atas" #: editor/editor_help.cpp msgid "Class:" -msgstr "" +msgstr "Kelas:" #: editor/editor_help.cpp editor/scene_tree_editor.cpp #: editor/script_create_dialog.cpp msgid "Inherits:" -msgstr "" +msgstr "Mewarisi:" #: editor/editor_help.cpp msgid "Inherited by:" -msgstr "" +msgstr "Diwarisi oleh:" #: editor/editor_help.cpp msgid "Description" -msgstr "" +msgstr "Keterangan" #: editor/editor_help.cpp msgid "Online Tutorials" -msgstr "" +msgstr "Tutorial Dalam Talian" #: editor/editor_help.cpp msgid "Properties" -msgstr "" +msgstr "Sifat" #: editor/editor_help.cpp msgid "override:" -msgstr "" +msgstr "ganti:" #: editor/editor_help.cpp msgid "default:" -msgstr "" +msgstr "lalai:" #: editor/editor_help.cpp msgid "Methods" -msgstr "" +msgstr "Kaedah" #: editor/editor_help.cpp msgid "Theme Properties" -msgstr "" +msgstr "Sifat Tema" #: editor/editor_help.cpp msgid "Enumerations" -msgstr "" +msgstr "Penghitungan" #: editor/editor_help.cpp msgid "Constants" -msgstr "" +msgstr "Pemalar" #: editor/editor_help.cpp msgid "Property Descriptions" -msgstr "" +msgstr "Penerangan Sifat" #: editor/editor_help.cpp msgid "(value)" -msgstr "" +msgstr "(nilai)" #: editor/editor_help.cpp msgid "" "There is currently no description for this property. Please help us by " "[color=$color][url=$url]contributing one[/url][/color]!" msgstr "" +"Tiada keterangan untuk sifat ini. Tolong bantu kami dengan [color=$color]" +"[url=$url]menyumbang satu[/url][/color]!" #: editor/editor_help.cpp msgid "Method Descriptions" -msgstr "" +msgstr "Penerangan Kaedah" #: editor/editor_help.cpp msgid "" "There is currently no description for this method. Please help us by [color=" "$color][url=$url]contributing one[/url][/color]!" msgstr "" +"Tiada keterangan untuk kaedah ini. Tolong bantu kami dengan [color=$color]" +"[url=$url]menyumbang satu[/url][/color]!" #: editor/editor_help_search.cpp editor/editor_node.cpp #: editor/plugins/script_editor_plugin.cpp msgid "Search Help" -msgstr "" +msgstr "Cari Bantuan" #: editor/editor_help_search.cpp msgid "Case Sensitive" -msgstr "" +msgstr "Kesensitifan Huruf" #: editor/editor_help_search.cpp msgid "Show Hierarchy" -msgstr "" +msgstr "Tunjuk Hierarki" #: editor/editor_help_search.cpp msgid "Display All" -msgstr "" +msgstr "Paparkan Semua" #: editor/editor_help_search.cpp msgid "Classes Only" -msgstr "" +msgstr "Kelas Sahaja" #: editor/editor_help_search.cpp msgid "Methods Only" -msgstr "" +msgstr "Kaedah Sahaja" #: editor/editor_help_search.cpp msgid "Signals Only" -msgstr "" +msgstr "Isyarat Sahaja" #: editor/editor_help_search.cpp msgid "Constants Only" -msgstr "" +msgstr "Pemalar Sahaja" #: editor/editor_help_search.cpp msgid "Properties Only" -msgstr "" +msgstr "Sifat Sahaja" #: editor/editor_help_search.cpp msgid "Theme Properties Only" -msgstr "" +msgstr "Sifat Tema Sahaja" #: editor/editor_help_search.cpp msgid "Member Type" -msgstr "" +msgstr "Jenis Ahli" #: editor/editor_help_search.cpp msgid "Class" -msgstr "" +msgstr "Kelas" #: editor/editor_help_search.cpp msgid "Method" -msgstr "" +msgstr "Kaedah" #: editor/editor_help_search.cpp editor/plugins/script_text_editor.cpp msgid "Signal" -msgstr "" +msgstr "Isyarat" #: editor/editor_help_search.cpp editor/plugins/theme_editor_plugin.cpp msgid "Constant" -msgstr "" +msgstr "Pemalar" #: editor/editor_help_search.cpp msgid "Property" -msgstr "" +msgstr "Sifat" #: editor/editor_help_search.cpp msgid "Theme Property" -msgstr "" +msgstr "Sifat Tema" #: editor/editor_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" -msgstr "" +msgstr "Sifat:" #: editor/editor_inspector.cpp msgid "Set" -msgstr "" +msgstr "Tetapkan" #: editor/editor_inspector.cpp msgid "Set Multiple:" -msgstr "" +msgstr "Tetapkan Pelbagai:" #: editor/editor_log.cpp msgid "Output:" -msgstr "" +msgstr "Keluaran:" #: editor/editor_log.cpp editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Copy Selection" -msgstr "Semua Pilihan" +msgstr "Salin Pilihan" #: editor/editor_log.cpp editor/editor_network_profiler.cpp #: editor/editor_profiler.cpp editor/editor_properties.cpp @@ -2065,176 +2109,184 @@ msgstr "Semua Pilihan" #: modules/gdnative/gdnative_library_editor_plugin.cpp scene/gui/line_edit.cpp #: scene/gui/text_edit.cpp msgid "Clear" -msgstr "" +msgstr "Kosongkan" #: editor/editor_log.cpp msgid "Clear Output" -msgstr "" +msgstr "Kosongkan Keluaran" #: editor/editor_network_profiler.cpp editor/editor_node.cpp #: editor/editor_profiler.cpp msgid "Stop" -msgstr "" +msgstr "Hentikan" #: editor/editor_network_profiler.cpp editor/editor_profiler.cpp #: editor/plugins/animation_state_machine_editor.cpp editor/rename_dialog.cpp msgid "Start" -msgstr "" +msgstr "Mulakan" #: editor/editor_network_profiler.cpp msgid "%s/s" -msgstr "" +msgstr "%s/s" #: editor/editor_network_profiler.cpp msgid "Down" -msgstr "" +msgstr "Bawah" #: editor/editor_network_profiler.cpp msgid "Up" -msgstr "" +msgstr "Atas" #: editor/editor_network_profiler.cpp editor/editor_node.cpp msgid "Node" -msgstr "" +msgstr "Nod" #: editor/editor_network_profiler.cpp msgid "Incoming RPC" -msgstr "" +msgstr "RPC masuk" #: editor/editor_network_profiler.cpp msgid "Incoming RSET" -msgstr "" +msgstr "RSET masuk" #: editor/editor_network_profiler.cpp msgid "Outgoing RPC" -msgstr "" +msgstr "RPC Keluar" #: editor/editor_network_profiler.cpp msgid "Outgoing RSET" -msgstr "" +msgstr "RSET Keluar" #: editor/editor_node.cpp editor/project_manager.cpp msgid "New Window" -msgstr "" +msgstr "Tetingkap Baru" #: editor/editor_node.cpp msgid "Imported resources can't be saved." -msgstr "" +msgstr "Sumber yang diimport tidak dapat disimpan." #: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp #: scene/gui/dialogs.cpp msgid "OK" -msgstr "" +msgstr "OK" #: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp msgid "Error saving resource!" -msgstr "" +msgstr "Ralat semasa menyimpan sumber!" #: editor/editor_node.cpp msgid "" "This resource can't be saved because it does not belong to the edited scene. " "Make it unique first." msgstr "" +"Sumber ini tidak dapat disimpan kerana tidak tergolong dalam adegan yang " +"diedit. Jadikannya unik terlebih dahulu." #: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp msgid "Save Resource As..." -msgstr "" +msgstr "Simpan Sumber Sebagai..." #: editor/editor_node.cpp msgid "Can't open file for writing:" -msgstr "" +msgstr "Tidak dapat membuka fail untuk ditulis:" #: editor/editor_node.cpp msgid "Requested file format unknown:" -msgstr "" +msgstr "Format fail yang diminta tidak diketahui:" #: editor/editor_node.cpp msgid "Error while saving." -msgstr "" +msgstr "Ralat semasa menyimpan." #: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp msgid "Can't open '%s'. The file could have been moved or deleted." msgstr "" +"Tidak dapat membuka '% s'. Fail mungkin telah dipindahkan atau dipadam." #: editor/editor_node.cpp msgid "Error while parsing '%s'." -msgstr "" +msgstr "Ralat semasa menghuraikan '%s'." #: editor/editor_node.cpp msgid "Unexpected end of file '%s'." -msgstr "" +msgstr "Penghujung fail '%s' tidak dijangka." #: editor/editor_node.cpp msgid "Missing '%s' or its dependencies." -msgstr "" +msgstr "Hilang '%s' atau kebergantungannya." #: editor/editor_node.cpp msgid "Error while loading '%s'." -msgstr "" +msgstr "Ralat semasa memuatkan '%s'." #: editor/editor_node.cpp msgid "Saving Scene" -msgstr "" +msgstr "Menyimpan Adegan" #: editor/editor_node.cpp msgid "Analyzing" -msgstr "" +msgstr "Menganalisis" #: editor/editor_node.cpp msgid "Creating Thumbnail" -msgstr "" +msgstr "Mencipta Gambar Kecil" #: editor/editor_node.cpp msgid "This operation can't be done without a tree root." -msgstr "" +msgstr "Operasi ini tidak boleh dilakukan tanpa akar pokok." #: editor/editor_node.cpp msgid "" "This scene can't be saved because there is a cyclic instancing inclusion.\n" "Please resolve it and then attempt to save again." msgstr "" +"Adegan ini tidak dapat disimpan kerana terdapat penyertaan yang berbentuk " +"siklik.\n" +"Sila selesaikan dan kemudian cuba simpan semula." #: editor/editor_node.cpp msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" +"Tidak dapat menyimpan adegan. Kemungkinan kebergantungan (instance atau " +"warisan) tidak dapat dipenuhi." #: editor/editor_node.cpp editor/scene_tree_dock.cpp msgid "Can't overwrite scene that is still open!" -msgstr "" +msgstr "Tidak boleh tulis ganti adegan yang masih terbuka!" #: editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" -msgstr "" +msgstr "Tidak dapat memuatkan MeshLibrary untuk penggabungan!" #: editor/editor_node.cpp msgid "Error saving MeshLibrary!" -msgstr "" +msgstr "Ralat menyimpan MeshLibrary!" #: editor/editor_node.cpp msgid "Can't load TileSet for merging!" -msgstr "" +msgstr "Tidak boleh memuatkan TileSet untuk penggabungan!" #: editor/editor_node.cpp msgid "Error saving TileSet!" -msgstr "" +msgstr "Ralat semasa menyimpan TileSet!" #: editor/editor_node.cpp msgid "Error trying to save layout!" -msgstr "" +msgstr "Ralat semasa menyimpan susun atur!" #: editor/editor_node.cpp msgid "Default editor layout overridden." -msgstr "" +msgstr "Susun atur lalai telah diganti." #: editor/editor_node.cpp msgid "Layout name not found!" -msgstr "" +msgstr "Nama susun atur tidak dijumpai!" #: editor/editor_node.cpp msgid "Restored default layout to base settings." -msgstr "" +msgstr "Tata letak lalai telah dipulihkan ke tetapan asas." #: editor/editor_node.cpp msgid "" @@ -2242,18 +2294,26 @@ msgid "" "Please read the documentation relevant to importing scenes to better " "understand this workflow." msgstr "" +"Sumber ini tergolong dalam adegan yang diimport, maka ia tidak dapat " +"diedit.\n" +"Sila baca dokumentasi yang berkaitan dengan pengimportan adegan untuk lebih " +"memahami aliran kerja ini." #: editor/editor_node.cpp msgid "" "This resource belongs to a scene that was instanced or inherited.\n" "Changes to it won't be kept when saving the current scene." msgstr "" +"Sumber ini tergolong dalam adegan yang di-instance atau diwarisi.\n" +"Perubahan tidak akan disimpan semasa menyimpan adegan semasa." #: editor/editor_node.cpp msgid "" "This resource was imported, so it's not editable. Change its settings in the " "import panel and then re-import." msgstr "" +"Sumber ini telah diimport, maka ia tidak dapat diedit. Ubah tetapannya di " +"panel import dan kemudian import semula." #: editor/editor_node.cpp msgid "" @@ -2262,6 +2322,10 @@ msgid "" "Please read the documentation relevant to importing scenes to better " "understand this workflow." msgstr "" +"Adegan ini telah diimport, maka perubahan kepada ia tidak akan disimpan.\n" +"Instance-kan ia atau mewarisi akan membenarkan perubahan dibuat padanya.\n" +"Sila baca dokumentasi yang berkaitan dengan pengimportan adegan untuk lebih " +"memahami aliran kerja ini." #: editor/editor_node.cpp msgid "" @@ -2269,46 +2333,49 @@ msgid "" "Please read the documentation relevant to debugging to better understand " "this workflow." msgstr "" +"Ini adalah objek terpencil, maka perubahan padanya tidak akan disimpan.\n" +"Sila baca dokumentasi yang berkaitan dengan penyahpepijatan untuk lebih " +"memahami aliran kerja ini." #: editor/editor_node.cpp msgid "There is no defined scene to run." -msgstr "" +msgstr "Tiada adegan yang didefinisikan untuk dijalankan." #: editor/editor_node.cpp msgid "Could not start subprocess!" -msgstr "" +msgstr "Tidak dapat memulakan subproses!" #: editor/editor_node.cpp editor/filesystem_dock.cpp msgid "Open Scene" -msgstr "" +msgstr "Buka Adegan" #: editor/editor_node.cpp msgid "Open Base Scene" -msgstr "" +msgstr "Buka Adegan Asas" #: editor/editor_node.cpp msgid "Quick Open..." -msgstr "" +msgstr "Buka Cepat..." #: editor/editor_node.cpp msgid "Quick Open Scene..." -msgstr "" +msgstr "Buka Cepat Adegan..." #: editor/editor_node.cpp msgid "Quick Open Script..." -msgstr "" +msgstr "Buka Cepat Skrip..." #: editor/editor_node.cpp msgid "Save & Close" -msgstr "" +msgstr "Simpan & Tutup" #: editor/editor_node.cpp msgid "Save changes to '%s' before closing?" -msgstr "" +msgstr "Simpan perubahan pada '%s' sebelum menutup?" #: editor/editor_node.cpp msgid "Saved %s modified resource(s)." -msgstr "" +msgstr "Sumber %s yang diubahsuai telah disimpan." #: editor/editor_node.cpp msgid "A root node is required to save the scene." @@ -2758,9 +2825,8 @@ msgid "Editor" msgstr "" #: editor/editor_node.cpp -#, fuzzy msgid "Editor Settings..." -msgstr "Set Peralihan ke:" +msgstr "Tetapan Editor..." #: editor/editor_node.cpp msgid "Editor Layout" @@ -4064,9 +4130,8 @@ msgstr "" #: editor/plugins/animation_blend_space_1d_editor.cpp #: editor/plugins/animation_blend_space_2d_editor.cpp -#, fuzzy msgid "Add Animation Point" -msgstr "Set Peralihan ke:" +msgstr "Tambah Titik Animasi" #: editor/plugins/animation_blend_space_1d_editor.cpp msgid "Remove BlendSpace1D Point" @@ -4209,9 +4274,8 @@ msgid "Nodes Disconnected" msgstr "" #: editor/plugins/animation_blend_tree_editor_plugin.cpp -#, fuzzy msgid "Set Animation" -msgstr "Set Peralihan ke:" +msgstr "Tetapkan Animasi" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/visual_shader_editor_plugin.cpp @@ -4391,9 +4455,8 @@ msgid "Animation" msgstr "" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Edit Transitions..." -msgstr "Set Peralihan ke:" +msgstr "Sunting Peralihan..." #: editor/plugins/animation_player_editor_plugin.cpp msgid "Open in Inspector" @@ -4491,14 +4554,12 @@ msgid "Move Node" msgstr "" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition exists!" -msgstr "Set Peralihan ke:" +msgstr "Peralihan wujud!" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Add Transition" -msgstr "Set Peralihan ke:" +msgstr "Tambah Peralihan" #: editor/plugins/animation_state_machine_editor.cpp #: modules/visual_script/visual_script_editor.cpp @@ -4538,9 +4599,8 @@ msgid "Node Removed" msgstr "" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition Removed" -msgstr "Set Peralihan ke:" +msgstr "Peralihan Dikeluarkan" #: editor/plugins/animation_state_machine_editor.cpp msgid "Set Start Node (Autoplay)" @@ -4574,9 +4634,8 @@ msgid "Set the end animation. This is useful for sub-transitions." msgstr "" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition: " -msgstr "Set Peralihan ke:" +msgstr "Peralihan: " #: editor/plugins/animation_state_machine_editor.cpp msgid "Play Mode:" @@ -5621,9 +5680,8 @@ msgid "Load Curve Preset" msgstr "" #: editor/plugins/curve_editor_plugin.cpp -#, fuzzy msgid "Add Point" -msgstr "Set Peralihan ke:" +msgstr "Tambah Titik" #: editor/plugins/curve_editor_plugin.cpp #, fuzzy @@ -8065,9 +8123,8 @@ msgid "" msgstr "" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Delete selected Rect." -msgstr "Semua Pilihan" +msgstr "Padam Rect yang dipilih." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -8076,9 +8133,8 @@ msgid "" msgstr "" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Delete polygon." -msgstr "Semua Pilihan" +msgstr "Padam poligon." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -8477,9 +8533,8 @@ msgid "Color constant." msgstr "" #: editor/plugins/visual_shader_editor_plugin.cpp -#, fuzzy msgid "Color uniform." -msgstr "Anim Ubah Penukaran" +msgstr "Warna seragam." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the boolean result of the %s comparison between two parameters." @@ -8822,9 +8877,8 @@ msgid "Scalar constant." msgstr "" #: editor/plugins/visual_shader_editor_plugin.cpp -#, fuzzy msgid "Scalar uniform." -msgstr "Anim Ubah Penukaran" +msgstr "Seragam skalar." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Perform the cubic texture lookup." @@ -10177,14 +10231,12 @@ msgid "Make node as Root" msgstr "" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Delete %d nodes and any children?" -msgstr "Semua Pilihan" +msgstr "Padamkan nod %d dan mana-mana kanak-kanak?" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Delete %d nodes?" -msgstr "Semua Pilihan" +msgstr "Padam nod %d?" #: editor/scene_tree_dock.cpp msgid "Delete the root node \"%s\"?" @@ -10195,9 +10247,8 @@ msgid "Delete node \"%s\" and its children?" msgstr "" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Delete node \"%s\"?" -msgstr "Semua Pilihan" +msgstr "Padam nod \"%s\"?" #: editor/scene_tree_dock.cpp msgid "Can not perform with the root node." @@ -11172,9 +11223,8 @@ msgid "Set Variable Type" msgstr "" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Input Port" -msgstr "Set Peralihan ke:" +msgstr "Tambah Port Input" #: modules/visual_script/visual_script_editor.cpp msgid "Add Output Port" @@ -11419,9 +11469,8 @@ msgid "Add Nodes..." msgstr "" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Function..." -msgstr "Semua Pilihan" +msgstr "Tambah fungsi..." #: modules/visual_script/visual_script_editor.cpp msgid "function_name" diff --git a/editor/translations/nb.po b/editor/translations/nb.po index dbad564d9a..7837db5c53 100644 --- a/editor/translations/nb.po +++ b/editor/translations/nb.po @@ -1199,6 +1199,16 @@ msgid "Gold Sponsors" msgstr "Gullsponsorer" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Sølvdonorer" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Bronsedonorer" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Minisponsorer" diff --git a/editor/translations/nl.po b/editor/translations/nl.po index 7f111ad901..ac5761f63d 100644 --- a/editor/translations/nl.po +++ b/editor/translations/nl.po @@ -47,8 +47,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-07-04 08:58+0000\n" -"Last-Translator: marnicq van loon <marnicqvanloon@gmail.com>\n" +"PO-Revision-Date: 2020-08-28 13:09+0000\n" +"Last-Translator: Stijn Hinlopen <f.a.hinlopen@gmail.com>\n" "Language-Team: Dutch <https://hosted.weblate.org/projects/godot-engine/godot/" "nl/>\n" "Language: nl\n" @@ -56,7 +56,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.2-dev\n" +"X-Generator: Weblate 4.2.1-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -1181,6 +1181,16 @@ msgid "Gold Sponsors" msgstr "Gouden Sponsors" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Zilveren Donors" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Bronzen Donors" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Sponsoren" @@ -7361,7 +7371,7 @@ msgstr "Bekijk Omgeving" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Gizmos" -msgstr "Bekijk Gizmos" +msgstr "Toon Gizmos" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Information" @@ -7450,9 +7460,9 @@ msgid "" msgstr "" "Klik om te wisselen tussen zichtbaarheidsweergaven.\n" "\n" -"Open oog: handvat is zichtbaar.\n" -"Gesloten oog: handvat is verborgen.\n" -"Half open oog: handvat is ook zichtbaar door ondoorzichtige oppervlaktes." +"Open oog: Gizmo is zichtbaar.\n" +"Gesloten oog: Gizmo is verborgen.\n" +"Half open oog: Gizmo is ook zichtbaar door ondoorzichtige oppervlaktes." #: editor/plugins/spatial_editor_plugin.cpp msgid "Snap Nodes To Floor" @@ -7640,7 +7650,7 @@ msgstr "Post" #: editor/plugins/spatial_editor_plugin.cpp msgid "Nameless gizmo" -msgstr "Naamloos apparaat" +msgstr "Naamloze gizmo" #: editor/plugins/sprite_editor_plugin.cpp msgid "Create Mesh2D" @@ -10596,9 +10606,8 @@ msgid "Make node as Root" msgstr "Knoop tot wortelknoop maken" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Delete %d nodes and any children?" -msgstr "Verwijder knoop \"%s\" en zijn kinderen?" +msgstr "%d knopen en hun (eventuele) kinderen verwijderen?" #: editor/scene_tree_dock.cpp msgid "Delete %d nodes?" diff --git a/editor/translations/or.po b/editor/translations/or.po index 5859fe6b0a..9bb6ba7410 100644 --- a/editor/translations/or.po +++ b/editor/translations/or.po @@ -1105,6 +1105,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/pl.po b/editor/translations/pl.po index d7ff515b05..6d7265c085 100644 --- a/editor/translations/pl.po +++ b/editor/translations/pl.po @@ -41,12 +41,13 @@ # Jan Ligudziński <jan.ligudzinski@gmail.com>, 2020. # Adam Jagoda <kontakt@lukasz.xyz>, 2020. # Filip Glura <mcmr.slendy@gmail.com>, 2020. +# Roman Skiba <romanskiba0@gmail.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-07-31 03:47+0000\n" -"Last-Translator: Tomek <kobewi4e@gmail.com>\n" +"PO-Revision-Date: 2020-09-01 18:42+0000\n" +"Last-Translator: Roman Skiba <romanskiba0@gmail.com>\n" "Language-Team: Polish <https://hosted.weblate.org/projects/godot-engine/" "godot/pl/>\n" "Language: pl\n" @@ -55,7 +56,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.2-dev\n" +"X-Generator: Weblate 4.2.1-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -1172,6 +1173,16 @@ msgid "Gold Sponsors" msgstr "Złoci sponsorzy" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Srebrni darczyńcy" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Brązowi darczyńcy" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini-sponsorzy" @@ -9539,7 +9550,7 @@ msgstr "Plik paczki" #: editor/project_export.cpp msgid "Features" -msgstr "Funkcjonalności" +msgstr "Funkcje" #: editor/project_export.cpp msgid "Custom (comma-separated):" diff --git a/editor/translations/pr.po b/editor/translations/pr.po index bf2d3ef0ad..d03994f21a 100644 --- a/editor/translations/pr.po +++ b/editor/translations/pr.po @@ -1148,6 +1148,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/pt_BR.po b/editor/translations/pt_BR.po index 6c035decd5..510cbdee51 100644 --- a/editor/translations/pt_BR.po +++ b/editor/translations/pt_BR.po @@ -1230,6 +1230,16 @@ msgid "Gold Sponsors" msgstr "Patrocinadores Ouro" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Doadores Prata" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Doadores Bronze" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Patrocinadores Mini" diff --git a/editor/translations/pt_PT.po b/editor/translations/pt_PT.po index b9d6c82ff0..489a8012f5 100644 --- a/editor/translations/pt_PT.po +++ b/editor/translations/pt_PT.po @@ -13,15 +13,15 @@ # Rueben Stevens <supercell03@gmail.com>, 2017. # SARDON <fabio3_Santos@hotmail.com>, 2017. # Vinicius Gonçalves <viniciusgoncalves21@gmail.com>, 2017. -# ssantos <ssantos@web.de>, 2018, 2019. +# ssantos <ssantos@web.de>, 2018, 2019, 2020. # Gonçalo Dinis Guerreiro João <goncalojoao205@gmail.com>, 2019. # Manuela Silva <mmsrs@sky.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-07-31 03:47+0000\n" -"Last-Translator: João Lopes <linux-man@hotmail.com>\n" +"PO-Revision-Date: 2020-08-16 15:25+0000\n" +"Last-Translator: ssantos <ssantos@web.de>\n" "Language-Team: Portuguese (Portugal) <https://hosted.weblate.org/projects/" "godot-engine/godot/pt_PT/>\n" "Language: pt_PT\n" @@ -1037,7 +1037,7 @@ msgstr "Proprietários de:" #: editor/dependency_editor.cpp msgid "Remove selected files from the project? (Can't be restored)" -msgstr "Remover arquivos selecionados do Projeto? (Sem desfazer)" +msgstr "Remover ficheiros selecionados do Projeto? (Sem desfazer)" #: editor/dependency_editor.cpp msgid "" @@ -1045,7 +1045,7 @@ msgid "" "work.\n" "Remove them anyway? (no undo)" msgstr "" -"Os arquivos a serem removidos são necessários para que outros recursos " +"Os ficheiros a serem removidos são necessários para que outros recursos " "funcionem.\n" "Remover mesmo assim? (sem anular)" @@ -1150,6 +1150,16 @@ msgid "Gold Sponsors" msgstr "Patrocinadores Gold" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Doadores Silver" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Doadores Bronze" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Patrocinadores Mini" @@ -1403,11 +1413,11 @@ msgstr "Guardar este Modelo de Barramento para um ficheiro." #: editor/editor_audio_buses.cpp editor/import_dock.cpp msgid "Load Default" -msgstr "Carregar Padrão" +msgstr "Carregar Predefinição" #: editor/editor_audio_buses.cpp msgid "Load the default Bus Layout." -msgstr "Carregar o Modelo padrão de barramento." +msgstr "Carregar o Modelo predefinido de barramento." #: editor/editor_audio_buses.cpp msgid "Create a new Bus Layout." @@ -1551,7 +1561,7 @@ msgstr "Escolha" #: editor/editor_export.cpp msgid "Storing File:" -msgstr "Arquivo de Armazenamento:" +msgstr "Armazenar o Ficheiro:" #: editor/editor_export.cpp msgid "No export template found at the expected path:" @@ -1962,7 +1972,7 @@ msgstr "Sobrepõe:" #: editor/editor_help.cpp msgid "default:" -msgstr "Padrão:" +msgstr "predefinição:" #: editor/editor_help.cpp msgid "Methods" @@ -2273,7 +2283,7 @@ msgstr "Erro ao tentar guardar o Modelo!" #: editor/editor_node.cpp msgid "Default editor layout overridden." -msgstr "O Modelo do Editor padrão foi substituído." +msgstr "O modelo do editor predefinido foi substituído." #: editor/editor_node.cpp msgid "Layout name not found!" @@ -2281,7 +2291,7 @@ msgstr "Nome do Modelo não encontrado!" #: editor/editor_node.cpp msgid "Restored default layout to base settings." -msgstr "Modelo padrão restaurado para as configurações base." +msgstr "Modelo predefinido restaurado para as configurações base." #: editor/editor_node.cpp msgid "" @@ -2582,7 +2592,7 @@ msgstr "Apagar Modelo" #: editor/editor_node.cpp editor/import_dock.cpp #: editor/script_create_dialog.cpp msgid "Default" -msgstr "Padrão" +msgstr "Predefinição" #: editor/editor_node.cpp editor/editor_properties.cpp #: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp @@ -2840,7 +2850,7 @@ msgid "" msgstr "" "Com esta opção ativa, alterações da cena no editor serão replicadas no jogo " "em execução.\n" -"Quando usada num dispositivo remoto, é mais eficiente com um sistema de " +"Quando usada num aparelho remoto, é mais eficiente com um sistema de " "ficheiros em rede." #: editor/editor_node.cpp @@ -2856,7 +2866,7 @@ msgid "" msgstr "" "Com esta opção ativa, qualquer Script guardado será recarregado no jogo em " "execução.\n" -"Quando usada num dispositivo remoto, é mais eficiente com um Sistema de " +"Quando usada num aparelho remoto, é mais eficiente com um Sistema de " "Ficheiros em rede." #: editor/editor_node.cpp editor/script_create_dialog.cpp @@ -3464,8 +3474,9 @@ msgid "" "No download links found for this version. Direct download is only available " "for official releases." msgstr "" -"Não foram encontrados ligações para download para esta versão. Download " -"direto está apenas disponível para os lançamentos oficiais." +"Não foram encontrados ligações para descarregar para esta versão. " +"Descarregamentos diretos estão disponíveis apenas para os lançamentos " +"oficiais." #: editor/export_template_manager.cpp #: editor/plugins/asset_library_editor_plugin.cpp @@ -3981,11 +3992,11 @@ msgstr "%d Ficheiros" #: editor/import_dock.cpp msgid "Set as Default for '%s'" -msgstr "Definir como Padrão para '%s'" +msgstr "Definir como Predefinição para '%s'" #: editor/import_dock.cpp msgid "Clear Default for '%s'" -msgstr "Limpar Padrão para '%s'" +msgstr "Limpar Predefinição para '%s'" #: editor/import_dock.cpp msgid "Import As:" @@ -5658,7 +5669,7 @@ msgstr "Erro a instanciar cena de %s" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Change Default Type" -msgstr "Mudar Tipo Padrão" +msgstr "Mudar Predefinição de Tipo" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "" @@ -8577,7 +8588,7 @@ msgstr "Definir Nome do Uniform" #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Set Input Default Port" -msgstr "Definir Porta de Entrada Padrão" +msgstr "Definir Porta de Entrada Predefinida" #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Add Node to Visual Shader" @@ -9306,7 +9317,7 @@ msgid "" "constants." msgstr "" "Expressão personalizada em Linguagem Godot Shader, colocada sobre o shader " -"resultante. Pode colocar várias definições de função e chamá-las depois nas " +"resultante. Pode pôr várias definições de função e chamá-las depois nas " "Expressões. Também pode declarar variantes, uniformes e constantes." #: editor/plugins/visual_shader_editor_plugin.cpp @@ -9965,11 +9976,11 @@ msgstr "Adicionar evento ação de entrada" #: editor/project_settings_editor.cpp msgid "All Devices" -msgstr "Todos os Dispositivos" +msgstr "Todos os Aparelhos" #: editor/project_settings_editor.cpp msgid "Device" -msgstr "Dispositivo" +msgstr "Aparelho" #: editor/project_settings_editor.cpp editor/settings_config_dialog.cpp msgid "Press a Key..." @@ -10181,7 +10192,7 @@ msgstr "Zona morta" #: editor/project_settings_editor.cpp msgid "Device:" -msgstr "Dispositivo:" +msgstr "Aparelho:" #: editor/project_settings_editor.cpp msgid "Index:" @@ -10425,11 +10436,11 @@ msgstr "No carácter %s" #: editor/reparent_dialog.cpp editor/scene_tree_dock.cpp msgid "Reparent Node" -msgstr "Recolocar Nó" +msgstr "Repôr Nó" #: editor/reparent_dialog.cpp msgid "Reparent Location (Select new Parent):" -msgstr "Recolocar localização (selecionar novo Parente):" +msgstr "Repôr localização (selecionar novo Parente):" #: editor/reparent_dialog.cpp msgid "Keep Global Transform" @@ -10437,7 +10448,7 @@ msgstr "Manter transformação global" #: editor/reparent_dialog.cpp editor/scene_tree_dock.cpp msgid "Reparent" -msgstr "Recolocar" +msgstr "Repôr" #: editor/run_settings_dialog.cpp msgid "Run Mode:" @@ -10562,7 +10573,7 @@ msgid "" "reverted to their default." msgstr "" "Desativar \"editable_instance\" irá reverter todas as propriedades do nó " -"para os seus valores padrão." +"para os seus valores predefinição." #: editor/scene_tree_dock.cpp msgid "" @@ -10570,7 +10581,8 @@ msgid "" "cause all properties of the node to be reverted to their default." msgstr "" "Ativar \"Carregar como Espaço Reservado\" vai desativar \"Filhos Editáveis\" " -"e fazer com que todas as propriedades do nó revertam para valores padrão." +"e fazer com que todas as propriedades do nó revertam para valores " +"predefinidos." #: editor/scene_tree_dock.cpp msgid "Make Local" @@ -10680,7 +10692,7 @@ msgstr "Mudar tipo" #: editor/scene_tree_dock.cpp msgid "Reparent to New Node" -msgstr "Recolocar o Novo Nó" +msgstr "Repôr o Novo Nó" #: editor/scene_tree_dock.cpp msgid "Make Scene Root" @@ -11539,7 +11551,7 @@ msgstr "Mudar nome do argumento" #: modules/visual_script/visual_script_editor.cpp msgid "Set Variable Default Value" -msgstr "Definir Valor Padrão da Variável" +msgstr "Definir Valor Predefinido da Variável" #: modules/visual_script/visual_script_editor.cpp msgid "Set Variable Type" @@ -11931,7 +11943,7 @@ msgstr "O pacote deve ter pelo menos um separador '.'." #: platform/android/export/export.cpp msgid "Select device from the list" -msgstr "Selecionar dispositivo da lista" +msgstr "Selecionar aparelho da lista" #: platform/android/export/export.cpp msgid "ADB executable not configured in the Editor Settings." @@ -12083,7 +12095,7 @@ msgstr "Executar no Navegador" #: platform/javascript/export/export.cpp msgid "Run exported HTML in the system's default browser." -msgstr "Executar HTML exportado no Navegador padrão do sistema." +msgstr "Executar HTML exportado no navegador predefinido do sistema." #: platform/javascript/export/export.cpp msgid "Could not write file:" @@ -12107,7 +12119,7 @@ msgstr "Não consigo ler ficheiro de imagem do ecrã de inicialização:" #: platform/javascript/export/export.cpp msgid "Using default boot splash image." -msgstr "A usar imagem padrão de inicialização." +msgstr "A usar imagem de inicialização predefinida." #: platform/uwp/export/export.cpp msgid "Invalid package short name." @@ -12333,7 +12345,7 @@ msgstr "" #: scene/2d/skeleton_2d.cpp msgid "This Bone2D chain should end at a Skeleton2D node." -msgstr "Esta corrente de Bone2D deve terminar em um nó Skeleton2D." +msgstr "Esta corrente de Bone2D deve terminar num nó Skeleton2D." #: scene/2d/skeleton_2d.cpp msgid "A Bone2D only works with a Skeleton2D or another Bone2D as parent node." @@ -12754,7 +12766,7 @@ msgid "" "Default Environment as specified in Project Settings (Rendering -> " "Environment -> Default Environment) could not be loaded." msgstr "" -"Ambiente Padrão especificado em Configuração do Projeto (Rendering -> " +"Ambiente predefinido especificado em Configuração do Projeto (Rendering -> " "Environment -> Default Environment) não pode ser carregado." #: scene/main/viewport.cpp diff --git a/editor/translations/ro.po b/editor/translations/ro.po index 29487392f8..ef64a09d92 100644 --- a/editor/translations/ro.po +++ b/editor/translations/ro.po @@ -1147,6 +1147,16 @@ msgid "Gold Sponsors" msgstr "Sponsori Aur" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Donatori de Argint" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Donatori de Bronz" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Sponsori" diff --git a/editor/translations/ru.po b/editor/translations/ru.po index 7b12d8195c..71711ad333 100644 --- a/editor/translations/ru.po +++ b/editor/translations/ru.po @@ -85,12 +85,13 @@ # kyanukovich <ianu0001@algonquinlive.com>, 2020. # Ron788 <ustinov200511@gmail.com>, 2020. # Daniel <dan.ef1999@gmail.com>, 2020. +# NeoLan Qu <it.bulla@mail.ru>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-08-01 11:14+0000\n" -"Last-Translator: Daniel <dan.ef1999@gmail.com>\n" +"PO-Revision-Date: 2020-08-15 09:32+0000\n" +"Last-Translator: Danil Alexeev <danil@alexeev.xyz>\n" "Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/" "godot/ru/>\n" "Language: ru\n" @@ -1218,6 +1219,16 @@ msgid "Gold Sponsors" msgstr "Золотые спонсоры" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Серебряные доноры" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Бронзовые доноры" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Мини спонсоры" @@ -8952,7 +8963,7 @@ msgstr "Возвращает обратный гиперболический т #: editor/plugins/visual_shader_editor_plugin.cpp msgid "" "Finds the nearest integer that is greater than or equal to the parameter." -msgstr "Вычисляет ближайшее целое число, большее или равное аргументу." +msgstr "Находит ближайшее целое, которое больше или равно параметра." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Constrains a value to lie between two further values." @@ -8960,11 +8971,11 @@ msgstr "Удерживает значение в пределах двух др #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the cosine of the parameter." -msgstr "Возвращает косинус аргумента." +msgstr "Возвращает косинус параметра." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the hyperbolic cosine of the parameter." -msgstr "Возвращает гиперболический косинус аргумента." +msgstr "Возвращает гиперболический косинус параметра." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Converts a quantity in radians to degrees." @@ -8980,7 +8991,7 @@ msgstr "Экспонента с основанием 2." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Finds the nearest integer less than or equal to the parameter." -msgstr "Вычисляет ближайшее целое, меньшее или равное аргументу." +msgstr "Находит ближайшее целое, меньшее или равное аргументу." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Computes the fractional part of the argument." @@ -8988,7 +8999,7 @@ msgstr "Вычисляет дробную часть аргумента." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Returns the inverse of the square root of the parameter." -msgstr "Возвращает обратный корень из аргумента." +msgstr "Возвращает обратный квадратный корень из аргумента." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Natural logarithm." @@ -9033,11 +9044,11 @@ msgstr "1.0 / скаляр" #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Finds the nearest integer to the parameter." -msgstr "Вычисляет ближайшее целое число." +msgstr "Находит ближайшее к параметру целое число." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Finds the nearest even integer to the parameter." -msgstr "Вычисляет ближайшее чётное число." +msgstr "Находит ближайшее чётное число к параметру." #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Clamps the value between 0.0 and 1.0." diff --git a/editor/translations/si.po b/editor/translations/si.po index c8b0a57cbe..2ca3642fce 100644 --- a/editor/translations/si.po +++ b/editor/translations/si.po @@ -1128,6 +1128,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/sk.po b/editor/translations/sk.po index 59cd8da671..13482d4c59 100644 --- a/editor/translations/sk.po +++ b/editor/translations/sk.po @@ -14,7 +14,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-06-15 01:48+0000\n" +"PO-Revision-Date: 2020-09-04 06:51+0000\n" "Last-Translator: Richard Urban <redasuio1@gmail.com>\n" "Language-Team: Slovak <https://hosted.weblate.org/projects/godot-engine/" "godot/sk/>\n" @@ -23,7 +23,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -"X-Generator: Weblate 4.1-dev\n" +"X-Generator: Weblate 4.3-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -32,7 +32,7 @@ msgstr "Chybný argument convert(), použite TYPE_* konštanty." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp msgid "Expected a string of length 1 (a character)." -msgstr "dĺžka očakávaného stringu 1 (písmeno)" +msgstr "dĺžka očakávaného stringu 1 (písmeno)." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/mono/glue/gd_glue.cpp @@ -42,7 +42,7 @@ msgstr "Nedostatok bajtov na dekódovanie, alebo chybný formát." #: core/math/expression.cpp msgid "Invalid input %i (not passed) in expression" -msgstr "Neplatný vstup %i (neprešlo) vo výraze" +msgstr "Nesprávny vstup(input) %i (neschválený) v požiadavke" #: core/math/expression.cpp msgid "self can't be used because instance is null (not passed)" @@ -98,7 +98,7 @@ msgstr "EiB" #: editor/animation_bezier_editor.cpp msgid "Free" -msgstr "zadarmo" +msgstr "Voľný" #: editor/animation_bezier_editor.cpp msgid "Balanced" @@ -118,7 +118,7 @@ msgstr "Hodnota:" #: editor/animation_bezier_editor.cpp msgid "Insert Key Here" -msgstr "Sem Vložte Kľúč" +msgstr "Tu vložiť kľúč" #: editor/animation_bezier_editor.cpp msgid "Duplicate Selected Key(s)" @@ -130,7 +130,7 @@ msgstr "Zmazať označené kľúč(e)" #: editor/animation_bezier_editor.cpp msgid "Add Bezier Point" -msgstr "Pridať Bezierov bod" +msgstr "Pridať Bezier bod" #: editor/animation_bezier_editor.cpp msgid "Move Bezier Points" @@ -191,7 +191,7 @@ msgstr "Zmeniť Dĺžku Animácie (Change Animation Length)" #: editor/animation_track_editor.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Change Animation Loop" -msgstr "Zmeniť opakovanie Animácie (Change Animation Loop)" +msgstr "Zmeniť Opakovanie Animácie" #: editor/animation_track_editor.cpp msgid "Property Track" @@ -256,7 +256,7 @@ msgstr "Zapnúť/Vypnúť tento track." #: editor/animation_track_editor.cpp msgid "Update Mode (How this property is set)" -msgstr "Update Mode (ako je nastavená táto možnosť)" +msgstr "Update Mode (Tak ako je táto možnosť nastavená)" #: editor/animation_track_editor.cpp msgid "Interpolation Mode" @@ -517,7 +517,7 @@ msgstr "Zoskupte track-y pomocou node-u alebo ich zobrazte ako plain list." #: editor/animation_track_editor.cpp msgid "Snap:" -msgstr "Snap:" +msgstr "Prichytiť:" #: editor/animation_track_editor.cpp msgid "Animation step value." @@ -756,9 +756,8 @@ msgid "Method in target node must be specified." msgstr "Metóda v target node-e musí byť špecifikovaná." #: editor/connections_dialog.cpp -#, fuzzy msgid "Method name must be a valid identifier." -msgstr "Metóda v target node-e musí byť špecifikovaná." +msgstr "Meno Metódy musí byť špecifikované." #: editor/connections_dialog.cpp msgid "" @@ -1136,6 +1135,16 @@ msgid "Gold Sponsors" msgstr "Zlatý Sponzori" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Strieborný Darcovia" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Bronzový Darcovia" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Malý Sponzori" @@ -1886,7 +1895,7 @@ msgstr "Priečinky a Súbory:" #: editor/plugins/style_box_editor_plugin.cpp #: editor/plugins/theme_editor_plugin.cpp msgid "Preview:" -msgstr "Ako to bude vyzerať:" +msgstr "Predzobraziť:" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "File:" @@ -2782,9 +2791,9 @@ msgid "" msgstr "" "Keď bude povolená táto možnosť, export alebo deploy vyprodukujú menej \n" "súboru executable.\n" -"Filesystém bude z projektu poskytovaný editorom v sieti. Na Androide, pre " -"deploy budete potrebovať USB kábel \n" -"rýchlejší výkon. Táto možnosť zrýchľuje proces testovania." +"Filesystém bude z projektu poskytovaný editorom v sieti.\n" +"Na Androide, predeploy budete potrebovať USB kábel pre rýchlejší výkon. Táto " +"možnosť zrýchľuje proces testovania." #: editor/editor_node.cpp msgid "Visible Collision Shapes" @@ -3053,19 +3062,19 @@ msgstr "Importovať Šablóny Zo ZIP File-u" #: editor/editor_node.cpp msgid "Template Package" -msgstr "Balíček Šablón" +msgstr "Balík Šablón" #: editor/editor_node.cpp msgid "Export Library" -msgstr "Exportovať Library" +msgstr "Exportovať Knižnicu" #: editor/editor_node.cpp msgid "Merge With Existing" -msgstr "Spojiť Z Existujúcim" +msgstr "Zlúčiť s existujúcim" #: editor/editor_node.cpp msgid "Open & Run a Script" -msgstr "Otvoriť & Spustiť Script" +msgstr "Otvoriť a vykonať skript" #: editor/editor_node.cpp msgid "New Inherited" @@ -3105,7 +3114,7 @@ msgstr "Otvoriť predchádzajúci Editor" #: editor/editor_node.h msgid "Warning!" -msgstr "Varovanie!" +msgstr "Upozornenie!" #: editor/editor_path.cpp msgid "No sub-resources found." @@ -3113,7 +3122,7 @@ msgstr "Nenašli sa žiadne \"sub-resources\"." #: editor/editor_plugin.cpp msgid "Creating Mesh Previews" -msgstr "Vytváranie Zobrazenia \"Mesh-u\"" +msgstr "Vytváranie Predzobrazenia Mesh-u" #: editor/editor_plugin.cpp msgid "Thumbnail..." @@ -4223,7 +4232,7 @@ msgstr "Vyberte a premiestnite body, vytvorte body z RMB." #: editor/plugins/animation_blend_space_1d_editor.cpp #: editor/plugins/animation_blend_space_2d_editor.cpp scene/gui/graph_edit.cpp msgid "Enable snap and show grid." -msgstr "Povoliť snap a show grid." +msgstr "Povoliť prichytenie a zobraziť mriežku." #: editor/plugins/animation_blend_space_1d_editor.cpp #: editor/plugins/animation_blend_space_2d_editor.cpp @@ -4253,118 +4262,117 @@ msgstr "Pridať Trojuholník" #: editor/plugins/animation_blend_space_2d_editor.cpp msgid "Change BlendSpace2D Limits" -msgstr "" +msgstr "Zmeniť Limity BlendSpace2D" #: editor/plugins/animation_blend_space_2d_editor.cpp msgid "Change BlendSpace2D Labels" -msgstr "" +msgstr "Zmeniť Label BlendSpace2D" #: editor/plugins/animation_blend_space_2d_editor.cpp -#, fuzzy msgid "Remove BlendSpace2D Point" -msgstr "Všetky vybrané" +msgstr "Vymazať BlendSpace2D Bod" #: editor/plugins/animation_blend_space_2d_editor.cpp msgid "Remove BlendSpace2D Triangle" -msgstr "" +msgstr "Vymazať BlendSpace2D Trojuholník" #: editor/plugins/animation_blend_space_2d_editor.cpp msgid "BlendSpace2D does not belong to an AnimationTree node." -msgstr "" +msgstr "BlendSpace2D nepatrí ku AnimationTree node." #: editor/plugins/animation_blend_space_2d_editor.cpp msgid "No triangles exist, so no blending can take place." msgstr "" +"Neexistujú žiadne trojuholníky, takže si nemôže zabrať miesto žiadny " +"blending." #: editor/plugins/animation_blend_space_2d_editor.cpp msgid "Toggle Auto Triangles" -msgstr "" +msgstr "Prepnúť Automatické Trojuholníky" #: editor/plugins/animation_blend_space_2d_editor.cpp msgid "Create triangles by connecting points." -msgstr "" +msgstr "Vytvoriť trojuholníky spájaním bodov." #: editor/plugins/animation_blend_space_2d_editor.cpp msgid "Erase points and triangles." -msgstr "" +msgstr "Vymazať body a trojuholníky." #: editor/plugins/animation_blend_space_2d_editor.cpp msgid "Generate blend triangles automatically (instead of manually)" -msgstr "" +msgstr "Vygenerovať blend trojuholníky Automaticky (nie manuálne)" #: editor/plugins/animation_blend_space_2d_editor.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Blend:" -msgstr "" +msgstr "Blend:" #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "Parameter Changed" -msgstr "" +msgstr "Parameter sa Zmenil" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp -#, fuzzy msgid "Edit Filters" -msgstr "Súbor:" +msgstr "Upraviť Filtre" #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "Output node can't be added to the blend tree." -msgstr "" +msgstr "Nemôžete pridať output node do blend tree." #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "Add Node to BlendTree" -msgstr "" +msgstr "Pridať Node do BlendTree" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Node Moved" -msgstr "" +msgstr "Node sa pohol" #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "Unable to connect, port may be in use or connection may be invalid." -msgstr "" +msgstr "Nepodarilo sa pripojiť, port sa možno používa alebo je neplatný." #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Nodes Connected" -msgstr "" +msgstr "Node-y Spojené" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Nodes Disconnected" -msgstr "" +msgstr "Node-y Odpojené" #: editor/plugins/animation_blend_tree_editor_plugin.cpp -#, fuzzy msgid "Set Animation" -msgstr "Popis:" +msgstr "Nastaviť Animáciu" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/visual_shader_editor_plugin.cpp -#, fuzzy msgid "Delete Node" -msgstr "Všetky vybrané" +msgstr "Zmazať Node" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/scene_tree_dock.cpp msgid "Delete Node(s)" -msgstr "" +msgstr "Zmazať Node(y)" #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "Toggle Filter On/Off" -msgstr "" +msgstr "Zapnúť/Vypnúť Filter" #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "Change Filter" -msgstr "" +msgstr "Zmeniť Filter" #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "No animation player set, so unable to retrieve track names." msgstr "" +"Nieje nastavený Animačný Prehrávač, takže sa nepodarilo získať mená trackov." #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "Player path set is invalid, so unable to retrieve track names." -msgstr "" +msgstr "Cesta prehrávača je neplatná, takže sa nepodarilo získať mená trackov." #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/root_motion_editor_plugin.cpp @@ -4372,312 +4380,302 @@ msgid "" "Animation player has no valid root node path, so unable to retrieve track " "names." msgstr "" +"Animačný Prehrávač nemá žiadny platnú root node cestu, takže sa nepodarilo " +"zistiť mená trackov." #: editor/plugins/animation_blend_tree_editor_plugin.cpp -#, fuzzy msgid "Anim Clips" -msgstr "Klipy Animácie:" +msgstr "Klipy Animácie" #: editor/plugins/animation_blend_tree_editor_plugin.cpp -#, fuzzy msgid "Audio Clips" -msgstr "Zvukové Klipy:" +msgstr "Zvukové Klipy" #: editor/plugins/animation_blend_tree_editor_plugin.cpp -#, fuzzy msgid "Functions" -msgstr "Funkcie:" +msgstr "Funkcie" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/animation_state_machine_editor.cpp msgid "Node Renamed" -msgstr "" +msgstr "Node Premenovaný" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/visual_shader_editor_plugin.cpp msgid "Add Node..." -msgstr "" +msgstr "Pridať Node..." #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/root_motion_editor_plugin.cpp -#, fuzzy msgid "Edit Filtered Tracks:" -msgstr "Súbor:" +msgstr "Upraviť Filtrované Tracky:" #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "Enable Filtering" -msgstr "" +msgstr "Povoliť Filtrovanie" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Toggle Autoplay" -msgstr "" +msgstr "Prepnúť Autoplay" #: editor/plugins/animation_player_editor_plugin.cpp msgid "New Animation Name:" -msgstr "" +msgstr "Nové Meno Animácie:" #: editor/plugins/animation_player_editor_plugin.cpp msgid "New Anim" -msgstr "" +msgstr "Nová Animácia" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Change Animation Name:" -msgstr "" +msgstr "Zmeniť Meno Animácie:" #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Delete Animation?" -msgstr "" +msgstr "Naozaj chcete vymazať Animáciu?" #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Remove Animation" -msgstr "" +msgstr "Vymazať Animáciu" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Invalid animation name!" -msgstr "" +msgstr "Meno animácie je Vadné!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation name already exists!" -msgstr "" +msgstr "Toto meno Animácie už existuje!" #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Rename Animation" -msgstr "" +msgstr "Premenovať Animáciu" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Blend Next Changed" -msgstr "" +msgstr "Blend sa Ďalej Zmenil" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Change Blend Time" -msgstr "" +msgstr "Zmeniť Blend Time" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Load Animation" -msgstr "" +msgstr "Načítať Animáciu" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Duplicate Animation" -msgstr "" +msgstr "Duplikovať Animáciu" #: editor/plugins/animation_player_editor_plugin.cpp msgid "No animation to copy!" -msgstr "" +msgstr "Žiadne animácie na skopírovanie!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "No animation resource on clipboard!" -msgstr "" +msgstr "Žiadny zroj animácie v clipboard!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Pasted Animation" -msgstr "" +msgstr "Prilepená Animácia" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Paste Animation" -msgstr "" +msgstr "Prilepiť Animáciu" #: editor/plugins/animation_player_editor_plugin.cpp msgid "No animation to edit!" -msgstr "" +msgstr "Žiadna animácia na úpravu!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Play selected animation backwards from current pos. (A)" -msgstr "" +msgstr "Spusťiť vybranú animáciu odzadu z aktuálnej pozície. (A)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Play selected animation backwards from end. (Shift+A)" -msgstr "" +msgstr "Spustiť vybranú animáciu odzadu z konca. (Shift+A)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Stop animation playback. (S)" -msgstr "" +msgstr "Zastaviť playback animácie. (S)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Play selected animation from start. (Shift+D)" -msgstr "" +msgstr "Spustiť vybranú animáciu od začiatku. (Shift+D)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Play selected animation from current pos. (D)" -msgstr "" +msgstr "Spustiť vybranú animáciu z aktuálnej pozície. (D)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation position (in seconds)." -msgstr "" +msgstr "Pozícia Animácie (v sekundách)." #: editor/plugins/animation_player_editor_plugin.cpp msgid "Scale animation playback globally for the node." -msgstr "" +msgstr "Zväčšiť playback animácie globálne pre node." #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation Tools" -msgstr "" +msgstr "Animačné Náradie" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation" msgstr "Animácie" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Edit Transitions..." -msgstr "Prechody" +msgstr "Upraviť Prechody..." #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Open in Inspector" -msgstr "Otvorit priečinok" +msgstr "Otvorit v Inšpektor-ovi" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Display list of animations in player." -msgstr "" +msgstr "Zobraziť list animácii v prehrávači." #: editor/plugins/animation_player_editor_plugin.cpp msgid "Autoplay on Load" -msgstr "" +msgstr "Autoplay pri Načítaní" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Enable Onion Skinning" -msgstr "" +msgstr "Povoliť Onion Skinning" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Onion Skinning Options" -msgstr "" +msgstr "Onion Skinning Možnosti" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Directions" -msgstr "Popis:" +msgstr "Smery" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Past" -msgstr "Vložiť" +msgstr "Minulosť" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Future" -msgstr "" +msgstr "Budúcnosť" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Depth" -msgstr "" +msgstr "Hĺbka" #: editor/plugins/animation_player_editor_plugin.cpp msgid "1 step" -msgstr "" +msgstr "1 krok" #: editor/plugins/animation_player_editor_plugin.cpp msgid "2 steps" -msgstr "" +msgstr "2 kroky" #: editor/plugins/animation_player_editor_plugin.cpp msgid "3 steps" -msgstr "" +msgstr "3 kroky" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Differences Only" -msgstr "" +msgstr "Iba Odlišnosti" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Force White Modulate" -msgstr "" +msgstr "Force White Modulate" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Include Gizmos (3D)" -msgstr "" +msgstr "Zahŕňa Gizmos (3D)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Pin AnimationPlayer" -msgstr "" +msgstr "Pripnúť Prehrávač Animácie" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Create New Animation" -msgstr "" +msgstr "Vytvoriť Novú Animáciu" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation Name:" -msgstr "" +msgstr "Meno Animácie:" #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/resource_preloader_editor_plugin.cpp #: editor/plugins/script_editor_plugin.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp editor/property_editor.cpp msgid "Error!" -msgstr "" +msgstr "Chyba!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Blend Times:" -msgstr "" +msgstr "Blend Times:" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Next (Auto Queue):" -msgstr "" +msgstr "Ďalej (Automatický Rad):" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Cross-Animation Blend Times" -msgstr "" +msgstr "Cross-Animation Blend Times" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Move Node" -msgstr "Vložiť" +msgstr "Premiestniť Node" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition exists!" -msgstr "Prechody" +msgstr "Prechod existuje!" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Add Transition" -msgstr "Prechody" +msgstr "Pridať Prechod" #: editor/plugins/animation_state_machine_editor.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Add Node" -msgstr "" +msgstr "Pridať Node" #: editor/plugins/animation_state_machine_editor.cpp msgid "End" -msgstr "" +msgstr "Koniec" #: editor/plugins/animation_state_machine_editor.cpp msgid "Immediate" -msgstr "" +msgstr "Okamžite" #: editor/plugins/animation_state_machine_editor.cpp msgid "Sync" -msgstr "" +msgstr "Synchronizácia" #: editor/plugins/animation_state_machine_editor.cpp msgid "At End" -msgstr "" +msgstr "Na Konci" #: editor/plugins/animation_state_machine_editor.cpp msgid "Travel" -msgstr "" +msgstr "Cestovať" #: editor/plugins/animation_state_machine_editor.cpp msgid "Start and end nodes are needed for a sub-transition." -msgstr "" +msgstr "Pre sub-prechod je potrebné začať a skončiť node-y." #: editor/plugins/animation_state_machine_editor.cpp msgid "No playback resource set at path: %s." -msgstr "" +msgstr "Nieje nastavený žiadny zdrojový playback ako cesta: %s." #: editor/plugins/animation_state_machine_editor.cpp msgid "Node Removed" -msgstr "" +msgstr "Node Zmazaný" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition Removed" -msgstr "Prechody" +msgstr "Prechod Vymazaný" #: editor/plugins/animation_state_machine_editor.cpp msgid "Set Start Node (Autoplay)" -msgstr "" +msgstr "Nastaviť Začiatočný Node (Autoplay)" #: editor/plugins/animation_state_machine_editor.cpp msgid "" @@ -4685,363 +4683,356 @@ msgid "" "RMB to add new nodes.\n" "Shift+LMB to create connections." msgstr "" +"Vybrať a premiestniť node-y.\n" +"Pravím tlačítkom myši pridáte node-y.\n" +"Shift+Lavé tlačíko myši vytvoriť pripojenie." #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Create new nodes." -msgstr "Vytvoriť adresár" +msgstr "Vytvoriť Nové Node-y." #: editor/plugins/animation_state_machine_editor.cpp msgid "Connect nodes." -msgstr "" +msgstr "Spojiť Node-y." #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Remove selected node or transition." -msgstr "Odstrániť výber" +msgstr "Vymazať označený node alebo prechod." #: editor/plugins/animation_state_machine_editor.cpp msgid "Toggle autoplay this animation on start, restart or seek to zero." msgstr "" +"Prepnúť autoplay na tejto animácii pri štarte, reštarte alebo seek to zero." #: editor/plugins/animation_state_machine_editor.cpp msgid "Set the end animation. This is useful for sub-transitions." -msgstr "" +msgstr "Nastaviť koniec animácie. Toto je užitočné pre sub-prechody." #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition: " -msgstr "Prechody" +msgstr "Prechody: " #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Play Mode:" -msgstr "Cesta k Node:" +msgstr "Prehrať Mód:" #: editor/plugins/animation_tree_editor_plugin.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "AnimationTree" -msgstr "" +msgstr "AnimačnýStrom" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "New name:" -msgstr "" +msgstr "Nové Meno:" #: editor/plugins/animation_tree_player_editor_plugin.cpp #: editor/plugins/multimesh_editor_plugin.cpp msgid "Scale:" -msgstr "" +msgstr "Veľkosť:" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Fade In (s):" -msgstr "" +msgstr "Miznutie do (s):" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Fade Out (s):" -msgstr "" +msgstr "Miznutie Von (s):" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Blend" -msgstr "" +msgstr "Blend" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Mix" -msgstr "" +msgstr "Mix" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Auto Restart:" -msgstr "" +msgstr "Auto Reštart:" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Restart (s):" -msgstr "" +msgstr "Reštart (s):" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Random Restart (s):" -msgstr "" +msgstr "Náhodný Reštart (s):" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Start!" -msgstr "" +msgstr "Štart!" #: editor/plugins/animation_tree_player_editor_plugin.cpp #: editor/plugins/multimesh_editor_plugin.cpp msgid "Amount:" -msgstr "" +msgstr "Množstvo:" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Blend 0:" -msgstr "" +msgstr "Blend 0:" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Blend 1:" -msgstr "" +msgstr "Blend 1:" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "X-Fade Time (s):" -msgstr "" +msgstr "Čas X-Miznutia (s):" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Current:" -msgstr "" +msgstr "Aktuálny:" #: editor/plugins/animation_tree_player_editor_plugin.cpp #: editor/plugins/visual_shader_editor_plugin.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Add Input" -msgstr "" +msgstr "Pridať Vstup" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Clear Auto-Advance" -msgstr "" +msgstr "Čistý Auto-Advance" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Set Auto-Advance" -msgstr "" +msgstr "Nastaviť Auto-Advance" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Delete Input" -msgstr "" +msgstr "Zmazať Vstup" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Animation tree is valid." -msgstr "" +msgstr "Animačný Strom je platný." #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Animation tree is invalid." -msgstr "" +msgstr "Animačný Strom je neplatný." #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Animation Node" -msgstr "" +msgstr "Animačný Node" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "OneShot Node" -msgstr "" +msgstr "OneShot Node" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Mix Node" -msgstr "" +msgstr "Mix Node" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Blend2 Node" -msgstr "" +msgstr "Blend2 Node" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Blend3 Node" -msgstr "" +msgstr "Blend3 Node" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Blend4 Node" -msgstr "" +msgstr "Blend4 Node" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "TimeScale Node" -msgstr "" +msgstr "TimeScale Node" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "TimeSeek Node" -msgstr "" +msgstr "TimeSeek Node" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Transition Node" -msgstr "" +msgstr "Prechodový Node" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Import Animations..." -msgstr "" +msgstr "Importovať Animácie..." #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Edit Node Filters" -msgstr "" +msgstr "Nastaviť Node Filtre" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Filters..." -msgstr "" +msgstr "Filtre..." #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgid "Contents:" -msgstr "Konštanty:" +msgstr "Obsah:" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgid "View Files" -msgstr "Súbor:" +msgstr "Zobraziť Súbory" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Connection error, please try again." -msgstr "" +msgstr "Chyba pripojenia, prosím skúste znovu." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Can't connect to host:" -msgstr "" +msgstr "Nepodarilo sa pripojiť k host:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "No response from host:" -msgstr "" +msgstr "Žiadna odozva od host-a:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Can't resolve hostname:" -msgstr "" +msgstr "Nepodarilo sa rozlúštiť hostove meno:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Request failed, return code:" -msgstr "" +msgstr "Žiadosť zlyhala, spätný kód:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Request failed." -msgstr "" +msgstr "Žiadosť zlyhala." #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgid "Cannot save response to:" -msgstr "Nemôžete odstrániť:" +msgstr "Nepodarilo sa uložiť odpoveď do:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Write error." -msgstr "" +msgstr "Chyba písania." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Request failed, too many redirects" -msgstr "" +msgstr "Žiadosť zlyhala, príliš veľa presmerovaní" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Redirect loop." -msgstr "" +msgstr "Presmerovací loop." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Request failed, timeout" -msgstr "" +msgstr "Žiadosť zlyhala, čas vypršal" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgid "Timeout." -msgstr "Čas:" +msgstr "Čas vypršal." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Bad download hash, assuming file has been tampered with." -msgstr "" +msgstr "Zlý download hash, za predpokladu že bolo narábané so súborom." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Expected:" -msgstr "" +msgstr "Očakávané:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Got:" -msgstr "" +msgstr "Má:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Failed sha256 hash check" -msgstr "" +msgstr "Zlyhalo sha256 hash check" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Asset Download Error:" -msgstr "" +msgstr "Zlyhalo Sťahovanie Prostriedku:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Downloading (%s / %s)..." -msgstr "" +msgstr "Sťahovanie (%s / %s)..." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Downloading..." -msgstr "" +msgstr "Sťahovanie..." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Resolving..." -msgstr "" +msgstr "Rieši sa..." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Error making request" -msgstr "" +msgstr "Pri vytváraní žiadosťi nastala chyba" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Idle" -msgstr "" +msgstr "Idle" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgid "Install..." -msgstr "Inštalovať" +msgstr "Inštalovať..." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Retry" -msgstr "" +msgstr "Skúsiť znova" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Download Error" -msgstr "" +msgstr "Chyba Sťahovania" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Download for this asset is already in progress!" -msgstr "" +msgstr "Sťahovanie tohoto prostriedku už prebieha!" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Recently Updated" -msgstr "" +msgstr "Nedávno Vylepšené" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Least Recently Updated" -msgstr "" +msgstr "Za Poslednú Dobu Najmenej Aktualizované" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Name (A-Z)" -msgstr "" +msgstr "Meno (A-Z)" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Name (Z-A)" -msgstr "" +msgstr "Meno (Z-A)" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgid "License (A-Z)" -msgstr "Licencia" +msgstr "Licencia (A-Z)" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgid "License (Z-A)" -msgstr "Licencia" +msgstr "Licencia (Z-A)" #: editor/plugins/asset_library_editor_plugin.cpp msgid "First" -msgstr "" +msgstr "Prvý" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Previous" -msgstr "" +msgstr "Minulý" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Next" -msgstr "" +msgstr "Ďalší" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Last" -msgstr "" +msgstr "Posledný" #: editor/plugins/asset_library_editor_plugin.cpp msgid "All" -msgstr "" +msgstr "Všetky" #: editor/plugins/asset_library_editor_plugin.cpp msgid "No results for \"%s\"." -msgstr "" +msgstr "Žiadne výsledky pre \"%s\"." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Import..." -msgstr "" +msgstr "Import..." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Plugins..." -msgstr "" +msgstr "Pluginy..." #: editor/plugins/asset_library_editor_plugin.cpp editor/project_manager.cpp msgid "Sort:" -msgstr "" +msgstr "Zoradiť:" #: editor/plugins/asset_library_editor_plugin.cpp #: editor/project_settings_editor.cpp msgid "Category:" -msgstr "" +msgstr "Kategória:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Site:" @@ -5049,23 +5040,23 @@ msgstr "Stránka:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Support" -msgstr "" +msgstr "Podpora" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Official" -msgstr "" +msgstr "Oficiálne" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Testing" -msgstr "" +msgstr "Testovanie" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Loading..." -msgstr "" +msgstr "Načitávanie..." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Assets ZIP File" -msgstr "" +msgstr "Prostriedky Súboru ZIP" #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "" @@ -5073,216 +5064,215 @@ msgid "" "Save your scene (for images to be saved in the same dir), or pick a save " "path from the BakedLightmap properties." msgstr "" +"Nedá sa určiť cesta pre uloženie lightmap obrázkov.\n" +"Uložte svoju scénu (Aby sa obrázky na to isté miesto), alebo vyberte cestu " +"na uloženie so BakedLightmap vlastností." #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "" "No meshes to bake. Make sure they contain an UV2 channel and that the 'Bake " "Light' flag is on." msgstr "" +"Žiadne mesh-e na bake. Uistite sa že obsahujú UV2 channel a je na ňom 'Bake " +"Light' vlajka." #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "Failed creating lightmap images, make sure path is writable." msgstr "" +"Nepodarilo sa vytvoriť lightmap obrázok, uistite sa že či je cesta " +"zapisovateľná." #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "Bake Lightmaps" -msgstr "" +msgstr "Bake Lightmaps" #: editor/plugins/camera_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp editor/rename_dialog.cpp msgid "Preview" -msgstr "" +msgstr "Predzobraziť" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Configure Snap" -msgstr "" +msgstr "Konfigurovať Prichytenie" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Grid Offset:" -msgstr "" +msgstr "Odchýlka Mriežky:" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Grid Step:" -msgstr "" +msgstr "Krok Mriežky:" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Primary Line Every:" -msgstr "" +msgstr "Všetky Primary Line:" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "steps" -msgstr "" +msgstr "kroky" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Rotation Offset:" -msgstr "" +msgstr "Odchýlka Rotácie:" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Rotation Step:" -msgstr "" +msgstr "Krok Rotácie:" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale Step:" -msgstr "Zmeniť veľkosť výberu" +msgstr "Krok Veľkosti:" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Move Vertical Guide" -msgstr "Popis:" +msgstr "Presunúť Vertikálny Návod" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Create Vertical Guide" -msgstr "Popis:" +msgstr "Vytvoriť Vertikálny Návod" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Remove Vertical Guide" -msgstr "Všetky vybrané" +msgstr "Vymazať Vertikálny Návod" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Move Horizontal Guide" -msgstr "Všetky vybrané" +msgstr "Presunúť Horizontálny Návod" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Create Horizontal Guide" -msgstr "Popis:" +msgstr "Vytvoriť Horizontálny Návod" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Remove Horizontal Guide" -msgstr "Všetky vybrané" +msgstr "Vymazať Horizontálny Návod" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Create Horizontal and Vertical Guides" -msgstr "Popis:" +msgstr "Vytvoriť Horizontálne a Vertikálne Návody" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Move pivot" -msgstr "Všetky vybrané" +msgstr "Presunúť pivot" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Rotate CanvasItem" -msgstr "" +msgstr "Otočiť CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Move anchor" -msgstr "" +msgstr "Presunúť kovadlinu" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Resize CanvasItem" -msgstr "" +msgstr "Zmeniť Veľkosť CanvasItem-u" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Scale CanvasItem" -msgstr "" +msgstr "Veľkosť CanvasItem-u" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Move CanvasItem" -msgstr "" +msgstr "Presunúť CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "" "Children of containers have their anchors and margins values overridden by " "their parent." msgstr "" +"Dieťa kontajnerov majú svoje kovadliny a okraje prepísané svojimi rodičmi." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Presets for the anchors and margins values of a Control node." -msgstr "" +msgstr "Prenastaviť pre kovadliny a okraje hodnoty Control node-u." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "" "When active, moving Control nodes changes their anchors instead of their " "margins." msgstr "" +"Pri aktivovaní, pohybovanim Control node-ov zmeníte ich kovadliny namiesto " +"ich okrajov." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Top Left" -msgstr "" +msgstr "Vľavo Hore" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Top Right" -msgstr "" +msgstr "Vpravo Hore" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Bottom Right" -msgstr "" +msgstr "Vpravo Dole" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Bottom Left" -msgstr "" +msgstr "Vľavo Dole" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Left" -msgstr "" +msgstr "Od Stredu Vľavo" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Top" -msgstr "" +msgstr "Od Stredu Hore" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Right" -msgstr "" +msgstr "Od Stredu Vpravo" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Bottom" -msgstr "" +msgstr "Od Stredu Dole" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center" -msgstr "" +msgstr "V Strede" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Left Wide" -msgstr "Lineárne" +msgstr "Ľavá Šírka" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Top Wide" -msgstr "" +msgstr "Horná Šírka" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Right Wide" -msgstr "Lineárne" +msgstr "Pravá Šírka" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Bottom Wide" -msgstr "" +msgstr "Dolná Šírka" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "VCenter Wide" -msgstr "" +msgstr "VerStredná Šírka" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "HCenter Wide" -msgstr "" +msgstr "HorStredná Šírka" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Full Rect" -msgstr "" +msgstr "Plný Obdĺžnik" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Keep Ratio" -msgstr "" +msgstr "Udržovať Pomer" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Anchors only" -msgstr "" +msgstr "Iba Kovadliny" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Change Anchors and Margins" -msgstr "" +msgstr "Zmeniť Kovadliny a Okraje" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Change Anchors" -msgstr "" +msgstr "Zmeniť Kovadliny" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -5290,6 +5280,8 @@ msgid "" "Game Camera Override\n" "Overrides game camera with editor viewport camera." msgstr "" +"Prepísanie Hernej Kamery\n" +"Prepísať hernú kameru s viewport kamerou editora." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -5297,104 +5289,103 @@ msgid "" "Game Camera Override\n" "No game instance running." msgstr "" +"Prepísanie Hernej Kamery\n" +"Nieje spustená žiadna herná inštancia." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Lock Selected" -msgstr "Všetky vybrané" +msgstr "Zamknúť Označené" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Unlock Selected" -msgstr "Všetky vybrané" +msgstr "Odomknúť Označené" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Group Selected" -msgstr "Odstrániť výber" +msgstr "Pridať Označené do Skupiny" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Ungroup Selected" -msgstr "Odstrániť výber" +msgstr "Odskupiť Označené" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Paste Pose" -msgstr "" +msgstr "Prilepiť Pózu" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Clear Guides" -msgstr "Všetky vybrané" +msgstr "Zmazať Návody" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Create Custom Bone(s) from Node(s)" -msgstr "" +msgstr "Vytvoriť Vlastnú Kosť(i) z Node-u(ou)" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Clear Bones" -msgstr "Všetky vybrané" +msgstr "Zmazať Kosti" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Make IK Chain" -msgstr "" +msgstr "Vytvoriť IK Reťaz" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Clear IK Chain" -msgstr "" +msgstr "Zmazať IK Reťaz" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "" "Warning: Children of a container get their position and size determined only " "by their parent." msgstr "" +"Upozornenie: Dieťa kontajnera získa ich pozíciu a veľkosť iba podľa svojho " +"rodiča." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/texture_region_editor_plugin.cpp #: editor/plugins/tile_set_editor_plugin.cpp scene/gui/graph_edit.cpp msgid "Zoom Reset" -msgstr "" +msgstr "Resetovať Priblíženie" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp msgid "Select Mode" -msgstr "" +msgstr "Vybrať Režim" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Drag: Rotate" -msgstr "" +msgstr "Potiahnutím: Otáčenie" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Alt+Drag: Move" -msgstr "" +msgstr "Alt+Potiahnutie: Pohyb" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Press 'v' to Change Pivot, 'Shift+v' to Drag Pivot (while moving)." msgstr "" +"Stačte 'v' pre Zmenu Pivot-a, 'Shift+v' pre hýbanie s Pivot-om (keď sa hýbe)." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Alt+RMB: Depth list selection" -msgstr "" +msgstr "Alt+RMB: Výber hĺbkového zoznamu" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp msgid "Move Mode" -msgstr "" +msgstr "Move Mode" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp msgid "Rotate Mode" -msgstr "" +msgstr "Rotačný Režim" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp msgid "Scale Mode" -msgstr "" +msgstr "Zmena Veľkosti" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -5402,187 +5393,186 @@ msgid "" "Show a list of all objects at the position clicked\n" "(same as Alt+RMB in select mode)." msgstr "" +"Zobraziť list všetkých objektov na kliknutej pozícii\n" +"(rovnako ako Alt+RMB v výberovom režime)." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Click to change object's rotation pivot." -msgstr "" +msgstr "Kliknite pre zmenu rotačného pivota objektu." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Pan Mode" -msgstr "" +msgstr "Pohyb Mód" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Ruler Mode" -msgstr "Režim Interpolácie" +msgstr "Pravítko" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Toggle smart snapping." -msgstr "" +msgstr "Prepnúť smart prichytenie." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Use Smart Snap" -msgstr "" +msgstr "Použiť Smart Prichytenie" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Toggle grid snapping." -msgstr "" +msgstr "Prepnúť Prichytenie Mriežky." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Use Grid Snap" -msgstr "" +msgstr "Použiť Príchyt Mriežky" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Snapping Options" -msgstr "" +msgstr "Možnosti Prichytávania" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Use Rotation Snap" -msgstr "" +msgstr "Použiť Prichytávanie Rotácie" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Use Scale Snap" -msgstr "" +msgstr "Použiť Prichytávanie Veľkosti" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Snap Relative" -msgstr "" +msgstr "Prichytiť Relatívne" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Use Pixel Snap" -msgstr "" +msgstr "Použiť Pixelové Prichytenie" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Smart Snapping" -msgstr "" +msgstr "Smart Prichytávanie" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp msgid "Configure Snap..." -msgstr "" +msgstr "Konfigurovať Prichytávanie..." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Snap to Parent" -msgstr "" +msgstr "Prichytiť na Rodiča" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Snap to Node Anchor" -msgstr "" +msgstr "Prichytiť na Kovadlinu Node-u" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Snap to Node Sides" -msgstr "" +msgstr "Prichitiť na strany Node-u" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Snap to Node Center" -msgstr "" +msgstr "Prichytiť na Stred Node-u" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Snap to Other Nodes" -msgstr "Vložiť" +msgstr "Prichytiť na Ostatné Node-y" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Snap to Guides" -msgstr "" +msgstr "Prichytiť na Návody" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp msgid "Lock the selected object in place (can't be moved)." -msgstr "" +msgstr "Zamknúť označený objekt na mieste (už sa s ním nebude dať hýbať)." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp msgid "Unlock the selected object (can be moved)." -msgstr "" +msgstr "Odomknúť označený objekt (dá sa s ním hýbať)." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp msgid "Makes sure the object's children are not selectable." -msgstr "" +msgstr "Uistite sa že sa nedá označiť dieťa objektu." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp msgid "Restores the object's children's ability to be selected." -msgstr "" +msgstr "Aby ste označili dieťa objektu tak mu musíte obnoviť schopnosť." #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Skeleton Options" -msgstr "Všetky vybrané" +msgstr "Nastavenia Kostry" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Bones" -msgstr "" +msgstr "Zobraziť Kosti" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Make Custom Bone(s) from Node(s)" -msgstr "" +msgstr "Vytvoriť Vlastnú Kosť(i) z Node-u(ou)" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Clear Custom Bones" -msgstr "" +msgstr "Zmazať Vlastné Kosti" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp msgid "View" -msgstr "" +msgstr "Zobrazenie" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Always Show Grid" -msgstr "" +msgstr "Vždy Zobraziť Mriežku" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Helpers" -msgstr "" +msgstr "Zobraziť Pomocníkov" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Rulers" -msgstr "" +msgstr "Zobraziť Pravítka" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Guides" -msgstr "" +msgstr "Zobraziť Návody" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Origin" -msgstr "" +msgstr "Zobraziť Pôvod" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Viewport" -msgstr "" +msgstr "Zobraziť Výrez" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" -msgstr "" +msgstr "Zobraziť Skupinu a Zamknúť Ikony" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" -msgstr "" +msgstr "Výber Stredu" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Frame Selection" -msgstr "" +msgstr "Výber Frame-u" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Preview Canvas Scale" -msgstr "" +msgstr "Predzobraziť Veľkosť Plátna" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Translation mask for inserting keys." -msgstr "" +msgstr "Prekladová maska na vkladanie kľúčov." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Rotation mask for inserting keys." -msgstr "" +msgstr "Rotačná maska na vkladanie kľúčov." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Scale mask for inserting keys." -msgstr "" +msgstr "Veľkostná maska na vkladanie kľúčov." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert keys (based on mask)." -msgstr "" +msgstr "Vkladanie kľúčov (založené na maske)." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "" @@ -5591,67 +5581,69 @@ msgid "" "Keys are only added to existing tracks, no new tracks will be created.\n" "Keys must be inserted manually for the first time." msgstr "" +"Automaticky vložiť kľúče keď sú objekty preložené, rotované alebo zväčšené " +"(založené na maske).\n" +"Kľúče sú pridané iba do existujúcich track-ov, nebudú vytvorené žiadne nové " +"tracky.\n" +"Prvý krát musia byť kľúče vložené manuálne." #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Auto Insert Key" -msgstr "Animácia Vložiť Kľúč" +msgstr "Automaticky Vložiť Kľúč" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Animation Key and Pose Options" -msgstr "Dĺžka Času Animácie (v sekundách)" +msgstr "Animačný Kľúč a Možnosti Pozície" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key (Existing Tracks)" -msgstr "" +msgstr "Vložte Kľúč (Existujúce Tracky)" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Copy Pose" -msgstr "" +msgstr "Kopírovať Pozíciu" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Clear Pose" -msgstr "" +msgstr "Zmazať Pozíciu" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Multiply grid step by 2" -msgstr "" +msgstr "Zdvojnásobiť krok mriežky dvomi" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Divide grid step by 2" -msgstr "" +msgstr "vydeliť krok mriežky dvomi" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Pan View" -msgstr "" +msgstr "Zobrazenie Pan" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Add %s" -msgstr "" +msgstr "Pridať %s" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Adding %s..." -msgstr "" +msgstr "Pridávanie %s..." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Cannot instantiate multiple nodes without root." -msgstr "" +msgstr "Nie je možné vytvoriť inštanciu viacerých node-ov bez koreňa." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp editor/scene_tree_dock.cpp msgid "Create Node" -msgstr "" +msgstr "Vytvoriť Node" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp editor/scene_tree_dock.cpp msgid "Error instancing scene from %s" -msgstr "" +msgstr "Chyba pri inštalácovaní scény z %s" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Change Default Type" -msgstr "Zmeniť %s Typ" +msgstr "Zmeniť Predvolený Typ" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "" @@ -5660,9 +5652,8 @@ msgid "" msgstr "" #: editor/plugins/collision_polygon_editor_plugin.cpp -#, fuzzy msgid "Create Polygon3D" -msgstr "Vytvoriť adresár" +msgstr "Vytvoriť Polygon3D" #: editor/plugins/collision_polygon_editor_plugin.cpp msgid "Edit Poly" @@ -6529,11 +6520,11 @@ msgstr "" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Snap" -msgstr "" +msgstr "Prichytiť" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Enable Snap" -msgstr "" +msgstr "Povoliť Prichytávanie" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Grid" @@ -7356,7 +7347,7 @@ msgstr "Filter:" #: editor/plugins/spatial_editor_plugin.cpp msgid "Cinematic Preview" -msgstr "" +msgstr "Filmové Predzobrazenie" #: editor/plugins/spatial_editor_plugin.cpp msgid "Not available when using the GLES2 renderer." @@ -7419,11 +7410,11 @@ msgstr "" #: editor/plugins/spatial_editor_plugin.cpp msgid "Snap Nodes To Floor" -msgstr "" +msgstr "Prichytiť Node-y Na Zem" #: editor/plugins/spatial_editor_plugin.cpp msgid "Couldn't find a solid floor to snap the selection to." -msgstr "" +msgstr "Nepodarilo sa nájsť pevnú zem na prichytenie výberu." #: editor/plugins/spatial_editor_plugin.cpp msgid "" @@ -7438,7 +7429,7 @@ msgstr "" #: editor/plugins/spatial_editor_plugin.cpp msgid "Use Snap" -msgstr "" +msgstr "Použiť Prichytávanie" #: editor/plugins/spatial_editor_plugin.cpp msgid "Bottom View" @@ -7492,7 +7483,7 @@ msgstr "" #: editor/plugins/spatial_editor_plugin.cpp msgid "Snap Object to Floor" -msgstr "" +msgstr "Prichytiť Objekt na Zem" #: editor/plugins/spatial_editor_plugin.cpp msgid "Transform Dialog..." @@ -7541,19 +7532,19 @@ msgstr "" #: editor/plugins/spatial_editor_plugin.cpp msgid "Snap Settings" -msgstr "" +msgstr "Nastavenie Prichytenia" #: editor/plugins/spatial_editor_plugin.cpp msgid "Translate Snap:" -msgstr "" +msgstr "Preložiť Preloženie:" #: editor/plugins/spatial_editor_plugin.cpp msgid "Rotate Snap (deg.):" -msgstr "" +msgstr "Prichytenie Rotácie (v stupňoch.):" #: editor/plugins/spatial_editor_plugin.cpp msgid "Scale Snap (%):" -msgstr "" +msgstr "Prichytenie Veľkosti (%):" #: editor/plugins/spatial_editor_plugin.cpp msgid "Viewport Settings" @@ -7610,7 +7601,7 @@ msgstr "Vytvoriť adresár" #: editor/plugins/sprite_editor_plugin.cpp msgid "Mesh2D Preview" -msgstr "" +msgstr "Predzobraziť Mash2D" #: editor/plugins/sprite_editor_plugin.cpp #, fuzzy @@ -7619,7 +7610,7 @@ msgstr "Vytvoriť adresár" #: editor/plugins/sprite_editor_plugin.cpp msgid "Polygon2D Preview" -msgstr "" +msgstr "Predzobraziť Polygon2D" #: editor/plugins/sprite_editor_plugin.cpp #, fuzzy @@ -7627,9 +7618,8 @@ msgid "Create CollisionPolygon2D" msgstr "Vytvoriť adresár" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "CollisionPolygon2D Preview" -msgstr "Vytvoriť adresár" +msgstr "Predzobraziť CollisionPolygon2D" #: editor/plugins/sprite_editor_plugin.cpp #, fuzzy @@ -7637,9 +7627,8 @@ msgid "Create LightOccluder2D" msgstr "Vytvoriť adresár" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "LightOccluder2D Preview" -msgstr "Vytvoriť adresár" +msgstr "Predzobraziť LightOccluder2D" #: editor/plugins/sprite_editor_plugin.cpp msgid "Sprite is empty!" @@ -7701,7 +7690,7 @@ msgstr "" #: editor/plugins/sprite_editor_plugin.cpp msgid "Update Preview" -msgstr "" +msgstr "Predzobraziť Vylepšenie" #: editor/plugins/sprite_editor_plugin.cpp msgid "Settings:" @@ -7835,7 +7824,7 @@ msgstr "" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Snap Mode:" -msgstr "" +msgstr "Režim Prichytenia:" #: editor/plugins/texture_region_editor_plugin.cpp #: scene/resources/visual_shader.cpp @@ -7844,11 +7833,11 @@ msgstr "" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Pixel Snap" -msgstr "" +msgstr "Prichytenie Pixelov" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Snap" -msgstr "" +msgstr "Prichytenie Mriežky" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Auto Slice" @@ -8274,6 +8263,7 @@ msgstr "" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Enable snap and show grid (configurable via the Inspector)." msgstr "" +"Povoliť prichytávanie a zobraziť mriežku (konfigurovatelné cez inšpektor)." #: editor/plugins/tile_set_editor_plugin.cpp msgid "Display Tile Names (Hold Alt Key)" @@ -8322,11 +8312,12 @@ msgid "Delete selected Rect." msgstr "Všetky vybrané" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "" "Select current edited sub-tile.\n" "Click on another Tile to edit it." -msgstr "Vytvoriť adresár" +msgstr "" +"Vybrať aktuálne upravený pod-nadpis.\n" +"Kliknite na ďalší Nadpis aby ste ho upravili." #: editor/plugins/tile_set_editor_plugin.cpp #, fuzzy @@ -8334,13 +8325,16 @@ msgid "Delete polygon." msgstr "Všetky vybrané" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "" "LMB: Set bit on.\n" "RMB: Set bit off.\n" "Shift+LMB: Set wildcard bit.\n" "Click on another Tile to edit it." -msgstr "Vytvoriť adresár" +msgstr "" +"LMB: Zapnúť bit.\n" +"RMB: Vypnúť bit.\n" +"Shift+LMB: Nastaviť wildcard bit.\n" +"Kliknite na ďalší Nadpis pre úpravu." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -8356,11 +8350,12 @@ msgid "" msgstr "" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "" "Select sub-tile to change its z index.\n" "Click on another Tile to edit it." -msgstr "Vytvoriť adresár" +msgstr "" +"Vybrať podnadpis aby ste zmenili jeho index.\n" +"Kliknite na ďalší Nadpis na úpravu." #: editor/plugins/tile_set_editor_plugin.cpp msgid "Set Tile Region" @@ -10488,14 +10483,12 @@ msgid "Make node as Root" msgstr "" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Delete %d nodes and any children?" -msgstr "Všetky vybrané" +msgstr "Zmazať %d node-y a nejaké deti?" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Delete %d nodes?" -msgstr "Všetky vybrané" +msgstr "Zmazať %d node-y?" #: editor/scene_tree_dock.cpp msgid "Delete the root node \"%s\"?" @@ -10506,9 +10499,8 @@ msgid "Delete node \"%s\" and its children?" msgstr "" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Delete node \"%s\"?" -msgstr "Všetky vybrané" +msgstr "Zmazať node \"%s\"?" #: editor/scene_tree_dock.cpp msgid "Can not perform with the root node." @@ -10711,9 +10703,8 @@ msgid "Button Group" msgstr "Tlačidlo" #: editor/scene_tree_editor.cpp -#, fuzzy msgid "(Connecting From)" -msgstr "Pripojiť Signál: " +msgstr "(Pripájanie z)" #: editor/scene_tree_editor.cpp msgid "Node configuration warning:" @@ -10917,9 +10908,8 @@ msgid "Attach Node Script" msgstr "Popis:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Remote " -msgstr "Všetky vybrané" +msgstr "Diaľkový " #: editor/script_editor_debugger.cpp msgid "Bytes:" @@ -11312,7 +11302,7 @@ msgstr "" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Snap View" -msgstr "" +msgstr "Prichytiť Zobrazenie" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Clip Disabled" @@ -12361,13 +12351,12 @@ msgid "" msgstr "" #: scene/3d/collision_shape.cpp -#, fuzzy msgid "" "A shape must be provided for CollisionShape to function. Please create a " "shape resource for it." msgstr "" -"Musíte nastaviť tvar objektu CollisionShape2D aby fungoval. Prosím, vytvorte " -"preň tvarový objekt!" +"Aby CollisionShape fungoval musíte nastaviť tvar. Prosím, vytvorte preň " +"tvarový objekt." #: scene/3d/collision_shape.cpp msgid "" @@ -12625,9 +12614,8 @@ msgid "Viewport size must be greater than 0 to render anything." msgstr "" #: scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Invalid source for preview." -msgstr "Nesprávna veľkosť písma." +msgstr "Neplatný zdroj pre predzobrazenie." #: scene/resources/visual_shader_nodes.cpp #, fuzzy diff --git a/editor/translations/sl.po b/editor/translations/sl.po index c40bc3b40f..4316ed06b1 100644 --- a/editor/translations/sl.po +++ b/editor/translations/sl.po @@ -1193,6 +1193,16 @@ msgid "Gold Sponsors" msgstr "Zlati Sponzorji" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Srebrni Donatorji" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Bronasti Donatorji" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Majhni Sponzorji" diff --git a/editor/translations/sq.po b/editor/translations/sq.po index 2df44bdd5b..7c6d2e2f74 100644 --- a/editor/translations/sq.po +++ b/editor/translations/sq.po @@ -1135,6 +1135,16 @@ msgid "Gold Sponsors" msgstr "Sponsorat Flori" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Dhuruesit Argjend" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Dhuruesit Bronz" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Sponsorat" diff --git a/editor/translations/sr_Cyrl.po b/editor/translations/sr_Cyrl.po index 0bb67647f8..84536220b9 100644 --- a/editor/translations/sr_Cyrl.po +++ b/editor/translations/sr_Cyrl.po @@ -1250,6 +1250,16 @@ msgid "Gold Sponsors" msgstr "Златни спонзори" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Сребрни донатори" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Бронзани донатори" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Мали спонзори" diff --git a/editor/translations/sr_Latn.po b/editor/translations/sr_Latn.po index 4dece6c33c..b53b92a4e1 100644 --- a/editor/translations/sr_Latn.po +++ b/editor/translations/sr_Latn.po @@ -1137,6 +1137,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/sv.po b/editor/translations/sv.po index d3cda1a61a..d6e91a34b3 100644 --- a/editor/translations/sv.po +++ b/editor/translations/sv.po @@ -17,12 +17,13 @@ # Kristoffer Grundström <swedishsailfishosuser@tutanota.com>, 2020. # Jonas Robertsson <jonas.robertsson@posteo.net>, 2020. # André Andersson <andre.eric.andersson@gmail.com>, 2020. +# Andreas Westrell <andreas.westrell@gmail.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-07-15 02:42+0000\n" -"Last-Translator: Jonas Robertsson <jonas.robertsson@posteo.net>\n" +"PO-Revision-Date: 2020-08-18 02:54+0000\n" +"Last-Translator: Andreas Westrell <andreas.westrell@gmail.com>\n" "Language-Team: Swedish <https://hosted.weblate.org/projects/godot-engine/" "godot/sv/>\n" "Language: sv\n" @@ -1150,6 +1151,16 @@ msgid "Gold Sponsors" msgstr "Guldsponsorer" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Silverdonatorer" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Bronsdonatorer" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Minisponsorer" @@ -1231,9 +1242,8 @@ msgid "Success!" msgstr "Klart!" #: editor/editor_asset_installer.cpp -#, fuzzy msgid "Package Contents:" -msgstr "Innehåll:" +msgstr "Packet Innehåll:" #: editor/editor_asset_installer.cpp editor/editor_node.cpp msgid "Install" @@ -1256,9 +1266,8 @@ msgid "Rename Audio Bus" msgstr "Byt namn på Ljud-Buss" #: editor/editor_audio_buses.cpp -#, fuzzy msgid "Change Audio Bus Volume" -msgstr "Växla Ljud-Buss Solo" +msgstr "Växla Ljud-Buss Volum" #: editor/editor_audio_buses.cpp msgid "Toggle Audio Bus Solo" @@ -1385,9 +1394,8 @@ msgid "Add Bus" msgstr "Lägg till Buss" #: editor/editor_audio_buses.cpp -#, fuzzy msgid "Add a new Audio Bus to this layout." -msgstr "Spara Ljud-Buss Layout Som..." +msgstr "Lägg till en ny Audio-Buss för detta layout" #: editor/editor_audio_buses.cpp editor/editor_properties.cpp #: editor/plugins/animation_player_editor_plugin.cpp editor/property_editor.cpp diff --git a/editor/translations/ta.po b/editor/translations/ta.po index 01cbcc1881..cf057954a2 100644 --- a/editor/translations/ta.po +++ b/editor/translations/ta.po @@ -4,13 +4,14 @@ # This file is distributed under the same license as the Godot source code. # # Senthil Kumar K <logickumar@gmail.com>, 2017. -# +# Survesh VRL <123survesh@gmail.com>, 2020. +# Sridhar <sreeafmarketing@gmail.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2018-12-13 14:43+0100\n" -"Last-Translator: Senthil Kumar K <logickumar@gmail.com>\n" +"PO-Revision-Date: 2020-09-01 10:38+0000\n" +"Last-Translator: Sridhar <sreeafmarketing@gmail.com>\n" "Language-Team: Tamil <https://hosted.weblate.org/projects/godot-engine/godot/" "ta/>\n" "Language: ta\n" @@ -18,34 +19,37 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Poedit 2.2\n" +"X-Generator: Weblate 4.2.1-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." -msgstr "" +msgstr "தவறான வகை வாதம் மாற்று(), TYPE_ * மாறிலிகளைப் பயன்படுத்தவும்." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp msgid "Expected a string of length 1 (a character)." -msgstr "" +msgstr "நீளமுள்ள சொல் (ஒரு எழுத்து) எதிர்பார்க்கப்படுகிறது." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/mono/glue/gd_glue.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Not enough bytes for decoding bytes, or invalid format." -msgstr "" +msgstr "டிகோடிங் போதுமான பைட்டுகள் இல்லை, அல்லது தவறான வடிவத்தில் உள்ளது." #: core/math/expression.cpp msgid "Invalid input %i (not passed) in expression" -msgstr "" +msgstr "தவறான உள்ளீடு% i (அனுப்பப்படவில்லை) இல் வெளிப்பாட்டில்" #: core/math/expression.cpp +#, fuzzy msgid "self can't be used because instance is null (not passed)" msgstr "" +"சுயத்தை பயன்படுத்த முடியாது, ஏனெனில் உதாரணம்(instance) பூஜ்யமானது " +"(நிறைவேற்றப்படவில்லை)" #: core/math/expression.cpp msgid "Invalid operands to operator %s, %s and %s." -msgstr "" +msgstr "ஆபரேட்டர்% s,% s மற்றும்% s க்கு தவறான செயல்பாடுகள் உள்ளது." #: core/math/expression.cpp msgid "Invalid index of type %s for base type %s" @@ -1129,6 +1133,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/te.po b/editor/translations/te.po index 3523306b0d..3ad5326ea6 100644 --- a/editor/translations/te.po +++ b/editor/translations/te.po @@ -1107,6 +1107,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/th.po b/editor/translations/th.po index 279f8c08ba..673cca50b2 100644 --- a/editor/translations/th.po +++ b/editor/translations/th.po @@ -6,12 +6,13 @@ # Poommetee Ketson (Noshyaar) <poommetee@protonmail.com>, 2017-2018. # Thanachart Monpassorn <nunf_2539@hotmail.com>, 2020. # Anonymous <noreply@weblate.org>, 2020. +# Lon3r <mptube.p@gmail.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-05-26 13:41+0000\n" -"Last-Translator: Thanachart Monpassorn <nunf_2539@hotmail.com>\n" +"PO-Revision-Date: 2020-08-28 13:09+0000\n" +"Last-Translator: Lon3r <mptube.p@gmail.com>\n" "Language-Team: Thai <https://hosted.weblate.org/projects/godot-engine/godot/" "th/>\n" "Language: th\n" @@ -19,7 +20,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.1-dev\n" +"X-Generator: Weblate 4.2.1-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -744,9 +745,8 @@ msgid "Method in target node must be specified." msgstr "ต้องระบุเมธอดในโหนดเป้าหมาย" #: editor/connections_dialog.cpp -#, fuzzy msgid "Method name must be a valid identifier." -msgstr "ไม่สามารถใช้ชื่อนี้ได้:" +msgstr "ไม่สามารถใช้ชื่อนี้ได้." #: editor/connections_dialog.cpp msgid "" @@ -1122,6 +1122,16 @@ msgid "Gold Sponsors" msgstr "ผู้สนับสนุนระดับทอง" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "ผู้บริจาคระดับเงิน" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "ผู้บริจาคระดับทองแดง" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "ผู้สนับสนุน" @@ -1438,7 +1448,7 @@ msgstr "จัดลำดับออโต้โหลด" #: editor/editor_autoload_settings.cpp msgid "Can't add autoload:" -msgstr "" +msgstr "เพิ่มออโต้โหลดไม่ได้:" #: editor/editor_autoload_settings.cpp msgid "Add AutoLoad" @@ -1607,7 +1617,7 @@ msgstr "โหมดเคลื่อนย้าย" #: editor/editor_feature_profile.cpp #, fuzzy msgid "FileSystem and Import Docks" -msgstr "ระบบไฟล์" +msgstr "ระบบไฟล์ และ นำเข้า" #: editor/editor_feature_profile.cpp msgid "Erase profile '%s'? (no undo)" @@ -2051,7 +2061,7 @@ msgstr "กำหนด" #: editor/editor_inspector.cpp msgid "Set Multiple:" -msgstr "" +msgstr "กำหนด หลายอย่าง:" #: editor/editor_log.cpp msgid "Output:" @@ -2103,19 +2113,21 @@ msgstr "โหนด" #: editor/editor_network_profiler.cpp msgid "Incoming RPC" -msgstr "" +msgstr "RPC กำลังมา" #: editor/editor_network_profiler.cpp msgid "Incoming RSET" -msgstr "" +msgstr "RSET กำลังมา" #: editor/editor_network_profiler.cpp +#, fuzzy msgid "Outgoing RPC" -msgstr "" +msgstr "RPC กำลังออก" #: editor/editor_network_profiler.cpp +#, fuzzy msgid "Outgoing RSET" -msgstr "" +msgstr "RSET กำลังออก" #: editor/editor_node.cpp editor/project_manager.cpp msgid "New Window" diff --git a/editor/translations/tr.po b/editor/translations/tr.po index edc01421d2..7710872d7b 100644 --- a/editor/translations/tr.po +++ b/editor/translations/tr.po @@ -50,12 +50,13 @@ # Vedat Günel <gunel15@itu.edu.tr>, 2020. # Ahmet Elgün <ahmetelgn@gmail.com>, 2020. # Efruz Yıldırır <efruzyildirir@gmail.com>, 2020. +# Hazar <duurkak@yandex.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2020-07-06 04:41+0000\n" -"Last-Translator: Efruz Yıldırır <efruzyildirir@gmail.com>\n" +"PO-Revision-Date: 2020-08-20 15:20+0000\n" +"Last-Translator: Hazar <duurkak@yandex.com>\n" "Language-Team: Turkish <https://hosted.weblate.org/projects/godot-engine/" "godot/tr/>\n" "Language: tr\n" @@ -63,7 +64,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.2-dev\n" +"X-Generator: Weblate 4.2.1-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -1181,6 +1182,16 @@ msgid "Gold Sponsors" msgstr "Altın Sponsorlar" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Gümüş Bağışçılar" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Bronz Bağışçılar" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Mini Sponsorlar" @@ -7431,6 +7442,11 @@ msgid "" "Closed eye: Gizmo is hidden.\n" "Half-open eye: Gizmo is also visible through opaque surfaces (\"x-ray\")." msgstr "" +"Görünürlük ifadelerini değiştirmek için tıklayın.\n" +"\n" +"Açık göz: Gizmo görünür.\n" +"Kapalı göz: Gizmo görünmez.\n" +"Yarı-açık göz: Gizmo aynı zamanda saydam yüzeylerden görünür (\"x-ray\")." #: editor/plugins/spatial_editor_plugin.cpp msgid "Snap Nodes To Floor" @@ -10516,9 +10532,8 @@ msgid "Instance Child Scene" msgstr "Çocuk Sahnesini Örnekle" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Detach Script" -msgstr "Betik İliştir" +msgstr "Betiği Ayır" #: editor/scene_tree_dock.cpp msgid "This operation can't be done on the tree root." @@ -10555,7 +10570,6 @@ msgid "Make node as Root" msgstr "Düğümü Kök düğüm yap" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Delete %d nodes and any children?" msgstr "\"%s\" düğümü ve alt düğümleri silinsin mi?" @@ -10693,6 +10707,8 @@ msgid "" "This is probably because this editor was built with all language modules " "disabled." msgstr "" +"Bir yazı eklenemiyor: kayıtlı dil yok.\n" +"Bu muhtemelen editor tüm dil modülleri kapalıyken kurulduğu için oldu." #: editor/scene_tree_dock.cpp msgid "Add Child Node" @@ -10743,14 +10759,12 @@ msgstr "" "alınmış bir sahne oluşturur." #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Attach a new or existing script to the selected node." -msgstr "Seçili düğüm için yeni veya mevcut bir betik iliştir." +msgstr "Seçili düğüme yeni veya mevcut bir betik iliştir." #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Detach the script from the selected node." -msgstr "Seçilen düğüm için betik temizle." +msgstr "Seçilen düğümden betiği ayır." #: editor/scene_tree_dock.cpp msgid "Remote" diff --git a/editor/translations/uk.po b/editor/translations/uk.po index f7386bf72d..a35264b40d 100644 --- a/editor/translations/uk.po +++ b/editor/translations/uk.po @@ -1157,6 +1157,16 @@ msgid "Gold Sponsors" msgstr "Золоті спонсори" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Срібні донори" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Бронзові донори" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Міні-спонсори" diff --git a/editor/translations/ur_PK.po b/editor/translations/ur_PK.po index 4f4dccd8bb..6b152e43b3 100644 --- a/editor/translations/ur_PK.po +++ b/editor/translations/ur_PK.po @@ -1125,6 +1125,14 @@ msgid "Gold Sponsors" msgstr "" #: editor/editor_about.cpp +msgid "Silver Sponsors" +msgstr "" + +#: editor/editor_about.cpp +msgid "Bronze Sponsors" +msgstr "" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "" diff --git a/editor/translations/vi.po b/editor/translations/vi.po index bd52b850e4..eb260d535e 100644 --- a/editor/translations/vi.po +++ b/editor/translations/vi.po @@ -1149,6 +1149,16 @@ msgid "Gold Sponsors" msgstr "Nhà tài trợ Vàng" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "Người ủng hộ Bạc" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "Người ủng hộ Đồng" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "Nhà tài trợ Nhỏ" diff --git a/editor/translations/zh_CN.po b/editor/translations/zh_CN.po index f35da2476c..5d2787f995 100644 --- a/editor/translations/zh_CN.po +++ b/editor/translations/zh_CN.po @@ -70,12 +70,13 @@ # Silence Tai <silence.m@hotmail.com>, 2020. # MintSoda <lionlxh@qq.com>, 2020. # Gardner Belgrade <hapenia@sina.com>, 2020. +# godhidden <z2zz2zz@yahoo.com>, 2020. msgid "" msgstr "" "Project-Id-Version: Chinese (Simplified) (Godot Engine)\n" "POT-Creation-Date: 2018-01-20 12:15+0200\n" -"PO-Revision-Date: 2020-08-11 14:04+0000\n" -"Last-Translator: Gardner Belgrade <hapenia@sina.com>\n" +"PO-Revision-Date: 2020-08-24 13:17+0000\n" +"Last-Translator: UnluckyNinja <unluckyninja1994@gmail.com>\n" "Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/" "godot-engine/godot/zh_Hans/>\n" "Language: zh_CN\n" @@ -83,7 +84,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.2-dev\n" +"X-Generator: Weblate 4.2.1-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -1189,6 +1190,16 @@ msgid "Gold Sponsors" msgstr "黄金赞助" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "白银捐赠者" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "青铜捐赠者" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "迷你赞助" @@ -7014,7 +7025,7 @@ msgstr "转到行..." #: editor/plugins/script_text_editor.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Toggle Breakpoint" -msgstr "设置断点" +msgstr "切换断点" #: editor/plugins/script_text_editor.cpp msgid "Remove All Breakpoints" @@ -7402,7 +7413,7 @@ msgstr "插入动画帧" #: editor/plugins/spatial_editor_plugin.cpp msgid "Focus Origin" -msgstr "显示原点" +msgstr "聚焦原点" #: editor/plugins/spatial_editor_plugin.cpp msgid "Focus Selection" @@ -9402,7 +9413,7 @@ msgstr "包文件" #: editor/project_export.cpp msgid "Features" -msgstr "功能" +msgstr "特性" #: editor/project_export.cpp msgid "Custom (comma-separated):" diff --git a/editor/translations/zh_HK.po b/editor/translations/zh_HK.po index d4e1bf62dd..3fdbcd4f76 100644 --- a/editor/translations/zh_HK.po +++ b/editor/translations/zh_HK.po @@ -1179,6 +1179,16 @@ msgid "Gold Sponsors" msgstr "黃金級贊助人" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "白銀級捐款人" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "青銅級捐款人" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "迷你贊助人" diff --git a/editor/translations/zh_TW.po b/editor/translations/zh_TW.po index 51efdfd2b8..b1cf13ad94 100644 --- a/editor/translations/zh_TW.po +++ b/editor/translations/zh_TW.po @@ -1145,6 +1145,16 @@ msgid "Gold Sponsors" msgstr "黃金贊助" #: editor/editor_about.cpp +#, fuzzy +msgid "Silver Sponsors" +msgstr "白銀捐贈者" + +#: editor/editor_about.cpp +#, fuzzy +msgid "Bronze Sponsors" +msgstr "紅銅捐贈者" + +#: editor/editor_about.cpp msgid "Mini Sponsors" msgstr "迷你贊助" |