diff options
Diffstat (limited to 'editor')
112 files changed, 3341 insertions, 3677 deletions
diff --git a/editor/code_editor.cpp b/editor/code_editor.cpp index a0a8e9459d..a7a51cb93d 100644 --- a/editor/code_editor.cpp +++ b/editor/code_editor.cpp @@ -768,6 +768,7 @@ void CodeTextEditor::update_editor_settings() { text_editor->set_indent_using_spaces(EditorSettings::get_singleton()->get("text_editor/indent/type")); text_editor->set_indent_size(EditorSettings::get_singleton()->get("text_editor/indent/size")); text_editor->set_auto_indent(EditorSettings::get_singleton()->get("text_editor/indent/auto_indent")); + text_editor->set_draw_indent_guides(EditorSettings::get_singleton()->get("text_editor/indent/draw_indent_guides")); text_editor->set_draw_tabs(EditorSettings::get_singleton()->get("text_editor/indent/draw_tabs")); text_editor->set_show_line_numbers(EditorSettings::get_singleton()->get("text_editor/line_numbers/show_line_numbers")); text_editor->set_line_numbers_zero_padded(EditorSettings::get_singleton()->get("text_editor/line_numbers/line_numbers_zero_padded")); diff --git a/editor/collada/collada.h b/editor/collada/collada.h index b777fa04c2..2d5819902c 100644 --- a/editor/collada/collada.h +++ b/editor/collada/collada.h @@ -110,14 +110,13 @@ public: float z_near; float z_far; - CameraData() { - - mode = MODE_PERSPECTIVE; - perspective.y_fov = 0; + CameraData() : + mode(MODE_PERSPECTIVE), + aspect(1), + z_near(0.1), + z_far(100) { perspective.x_fov = 0; - aspect = 1; - z_near = 0.1; - z_far = 100; + perspective.y_fov = 0; } }; @@ -141,16 +140,14 @@ public: float spot_angle; float spot_exp; - LightData() { - - mode = MODE_AMBIENT; - color = Color(1, 1, 1, 1); - constant_att = 0; - linear_att = 0; - quad_att = 0; - - spot_angle = 45; - spot_exp = 1; + LightData() : + mode(MODE_AMBIENT), + color(Color(1, 1, 1, 1)), + constant_att(0), + linear_att(0), + quad_att(0), + spot_angle(45), + spot_exp(1) { } }; @@ -580,11 +577,11 @@ public: float animation_length; - State() { - unit_scale = 1.0; - up_axis = Vector3::AXIS_Y; - import_flags = 0; - animation_length = 0; + State() : + import_flags(0), + unit_scale(1.0), + up_axis(Vector3::AXIS_Y), + animation_length(0) { } } state; diff --git a/editor/create_dialog.cpp b/editor/create_dialog.cpp index 926fa37040..9f1082ecc4 100644 --- a/editor/create_dialog.cpp +++ b/editor/create_dialog.cpp @@ -89,8 +89,9 @@ void CreateDialog::popup_create(bool p_dont_clear, bool p_replace_mode) { _save_and_update_favorite_list(); // Restore valid window bounds or pop up at default size. - if (EditorSettings::get_singleton()->has_setting("interface/dialogs/create_new_node_bounds")) { - popup(EditorSettings::get_singleton()->get("interface/dialogs/create_new_node_bounds")); + Rect2 saved_size = EditorSettings::get_singleton()->get_project_metadata("dialog_bounds", "create_new_node", Rect2()); + if (saved_size != Rect2()) { + popup(saved_size); } else { Size2 popup_size = Size2(900, 700) * editor_get_scale(); @@ -415,7 +416,7 @@ void CreateDialog::_notification(int p_what) { } } break; case NOTIFICATION_POPUP_HIDE: { - EditorSettings::get_singleton()->set("interface/dialogs/create_new_node_bounds", get_rect()); + EditorSettings::get_singleton()->get_project_metadata("dialog_bounds", "create_new_node", get_rect()); } break; } } diff --git a/editor/dependency_editor.cpp b/editor/dependency_editor.cpp index 99b6955160..aa9125915c 100644 --- a/editor/dependency_editor.cpp +++ b/editor/dependency_editor.cpp @@ -495,11 +495,19 @@ void DependencyRemoveDialog::ok_pressed() { Resource *res = ResourceCache::get(files_to_delete[i]); res->set_path(""); } + + // If the file we are deleting is the main scene, clear its definition. + if (files_to_delete[i] == ProjectSettings::get_singleton()->get("application/run/main_scene")) { + ProjectSettings::get_singleton()->set("application/run/main_scene", ""); + } + String path = OS::get_singleton()->get_resource_dir() + files_to_delete[i].replace_first("res://", "/"); print_verbose("Moving to trash: " + path); Error err = OS::get_singleton()->move_to_trash(path); if (err != OK) { EditorNode::get_singleton()->add_io_error(TTR("Cannot remove:") + "\n" + files_to_delete[i] + "\n"); + } else { + emit_signal("file_removed", files_to_delete[i]); } } @@ -515,6 +523,8 @@ void DependencyRemoveDialog::ok_pressed() { Error err = OS::get_singleton()->move_to_trash(path); if (err != OK) { EditorNode::get_singleton()->add_io_error(TTR("Cannot remove:") + "\n" + dirs_to_delete[i] + "\n"); + } else { + emit_signal("folder_removed", dirs_to_delete[i]); } } @@ -540,6 +550,11 @@ void DependencyRemoveDialog::ok_pressed() { } } +void DependencyRemoveDialog::_bind_methods() { + ADD_SIGNAL(MethodInfo("file_removed", PropertyInfo(Variant::STRING, "file"))); + ADD_SIGNAL(MethodInfo("folder_removed", PropertyInfo(Variant::STRING, "folder"))); +} + DependencyRemoveDialog::DependencyRemoveDialog() { VBoxContainer *vb = memnew(VBoxContainer); diff --git a/editor/dependency_editor.h b/editor/dependency_editor.h index e46df4c837..5f1074764b 100644 --- a/editor/dependency_editor.h +++ b/editor/dependency_editor.h @@ -126,6 +126,8 @@ class DependencyRemoveDialog : public ConfirmationDialog { void ok_pressed(); + static void _bind_methods(); + public: void show(const Vector<String> &p_folders, const Vector<String> &p_files); DependencyRemoveDialog(); diff --git a/editor/editor_audio_buses.cpp b/editor/editor_audio_buses.cpp index 6cd81626c7..b1f5bc4908 100644 --- a/editor/editor_audio_buses.cpp +++ b/editor/editor_audio_buses.cpp @@ -36,11 +36,35 @@ #include "filesystem_dock.h" #include "servers/audio_server.h" +void EditorAudioBus::_update_visible_channels() { + + int i = 0; + for (; i < cc; i++) { + + if (!channel[i].vu_l->is_visible()) { + channel[i].vu_l->show(); + } + if (!channel[i].vu_r->is_visible()) { + channel[i].vu_r->show(); + } + } + + for (; i < CHANNELS_MAX; i++) { + + if (channel[i].vu_l->is_visible()) { + channel[i].vu_l->hide(); + } + if (channel[i].vu_r->is_visible()) { + channel[i].vu_r->hide(); + } + } +} + void EditorAudioBus::_notification(int p_what) { if (p_what == NOTIFICATION_READY) { - for (int i = 0; i < cc; i++) { + for (int i = 0; i < CHANNELS_MAX; i++) { channel[i].vu_l->set_under_texture(get_icon("BusVuEmpty", "EditorIcons")); channel[i].vu_l->set_progress_texture(get_icon("BusVuFull", "EditorIcons")); channel[i].vu_r->set_under_texture(get_icon("BusVuEmpty", "EditorIcons")); @@ -72,6 +96,11 @@ void EditorAudioBus::_notification(int p_what) { if (p_what == NOTIFICATION_PROCESS) { + if (cc != AudioServer::get_singleton()->get_bus_channels(get_index())) { + cc = AudioServer::get_singleton()->get_bus_channels(get_index()); + _update_visible_channels(); + } + for (int i = 0; i < cc; i++) { float real_peak[2] = { -100, -100 }; bool activity_found = false; @@ -113,7 +142,7 @@ void EditorAudioBus::_notification(int p_what) { if (p_what == NOTIFICATION_VISIBILITY_CHANGED) { - for (int i = 0; i < 4; i++) { + for (int i = 0; i < CHANNELS_MAX; i++) { channel[i].peak_l = -100; channel[i].peak_r = -100; channel[i].prev_active = true; @@ -124,7 +153,7 @@ void EditorAudioBus::_notification(int p_what) { if (p_what == NOTIFICATION_THEME_CHANGED) { - for (int i = 0; i < cc; i++) { + for (int i = 0; i < CHANNELS_MAX; i++) { channel[i].vu_l->set_under_texture(get_icon("BusVuEmpty", "EditorIcons")); channel[i].vu_l->set_progress_texture(get_icon("BusVuFull", "EditorIcons")); channel[i].vu_r->set_under_texture(get_icon("BusVuEmpty", "EditorIcons")); @@ -709,9 +738,8 @@ EditorAudioBus::EditorAudioBus(EditorAudioBuses *p_buses, bool p_is_master) { slider->connect("value_changed", this, "_volume_db_changed"); hb->add_child(slider); - cc = AudioServer::get_singleton()->get_channel_count(); - - for (int i = 0; i < cc; i++) { + cc = 0; + for (int i = 0; i < CHANNELS_MAX; i++) { channel[i].vu_l = memnew(TextureProgress); channel[i].vu_l->set_fill_mode(TextureProgress::FILL_BOTTOM_TO_TOP); hb->add_child(channel[i].vu_l); diff --git a/editor/editor_audio_buses.h b/editor/editor_audio_buses.h index 4cdcb65d7b..02038fbe18 100644 --- a/editor/editor_audio_buses.h +++ b/editor/editor_audio_buses.h @@ -59,6 +59,7 @@ class EditorAudioBus : public PanelContainer { VSlider *slider; int cc; + static const int CHANNELS_MAX = 4; struct { bool prev_active; @@ -68,7 +69,7 @@ class EditorAudioBus : public PanelContainer { TextureProgress *vu_l; TextureProgress *vu_r; - } channel[4]; + } channel[CHANNELS_MAX]; TextureRect *scale; OptionButton *send; @@ -102,6 +103,7 @@ class EditorAudioBus : public PanelContainer { void _effect_selected(); void _delete_effect_pressed(int p_option); void _effect_rmb(const Vector2 &p_pos); + void _update_visible_channels(); virtual Variant get_drag_data(const Point2 &p_point); virtual bool can_drop_data(const Point2 &p_point, const Variant &p_data) const; diff --git a/editor/editor_export.cpp b/editor/editor_export.cpp index 209a006a06..71315f1377 100644 --- a/editor/editor_export.cpp +++ b/editor/editor_export.cpp @@ -222,11 +222,10 @@ String EditorExportPreset::get_custom_features() const { return custom_features; } -EditorExportPreset::EditorExportPreset() { - - export_path = ""; - export_filter = EXPORT_ALL_RESOURCES; - runnable = false; +EditorExportPreset::EditorExportPreset() : + export_filter(EXPORT_ALL_RESOURCES), + export_path(""), + runnable(false) { } /////////////////////////////////// @@ -546,6 +545,13 @@ void EditorExportPlugin::_export_begin_script(const PoolVector<String> &p_featur } } +void EditorExportPlugin::_export_end_script() { + + if (get_script_instance()) { + get_script_instance()->call("_export_end"); + } +} + void EditorExportPlugin::_export_file(const String &p_path, const String &p_type, const Set<String> &p_features) { } @@ -587,6 +593,20 @@ EditorExportPlatform::FeatureContainers EditorExportPlatform::get_feature_contai result.features.insert(E->get()); result.features_pv.push_back(E->get()); } + + if (p_preset->get_custom_features() != String()) { + + Vector<String> tmp_custom_list = p_preset->get_custom_features().split(","); + + for (int i = 0; i < tmp_custom_list.size(); i++) { + String f = tmp_custom_list[i].strip_edges(); + if (f != String()) { + result.features.insert(f); + result.features_pv.push_back(f); + } + } + } + return result; } @@ -606,6 +626,9 @@ EditorExportPlatform::ExportNotifier::ExportNotifier(EditorExportPlatform &p_pla EditorExportPlatform::ExportNotifier::~ExportNotifier() { Vector<Ref<EditorExportPlugin> > export_plugins = EditorExport::get_singleton()->get_export_plugins(); for (int i = 0; i < export_plugins.size(); i++) { + if (export_plugins[i]->get_script_instance()) { + export_plugins.write[i]->_export_end_script(); + } export_plugins.write[i]->_export_end(); } } diff --git a/editor/editor_export.h b/editor/editor_export.h index 380b33cd17..881e86fb12 100644 --- a/editor/editor_export.h +++ b/editor/editor_export.h @@ -206,9 +206,9 @@ public: PropertyInfo option; Variant default_value; - ExportOption(const PropertyInfo &p_info, const Variant &p_default) { - option = p_info; - default_value = p_default; + ExportOption(const PropertyInfo &p_info, const Variant &p_default) : + option(p_info), + default_value(p_default) { } ExportOption() {} }; @@ -291,6 +291,7 @@ class EditorExportPlugin : public Reference { void _export_file_script(const String &p_path, const String &p_type, const PoolVector<String> &p_features); void _export_begin_script(const PoolVector<String> &p_features, bool p_debug, const String &p_path, int p_flags); + void _export_end_script(); protected: void add_file(const String &p_path, const Vector<uint8_t> &p_file, bool p_remap); diff --git a/editor/editor_file_dialog.cpp b/editor/editor_file_dialog.cpp index b39f910182..81d9442656 100644 --- a/editor/editor_file_dialog.cpp +++ b/editor/editor_file_dialog.cpp @@ -830,11 +830,12 @@ void EditorFileDialog::update_file_list() { d["name"] = files.front()->get(); d["dir"] = false; String fullpath = cdir.plus_file(files.front()->get()); + d["path"] = fullpath; + item_list->set_item_metadata(item_list->get_item_count() - 1, d); + if (display_mode == DISPLAY_THUMBNAILS) { EditorResourcePreview::get_singleton()->queue_resource_preview(fullpath, this, "_thumbnail_result", fullpath); } - d["path"] = fullpath; - item_list->set_item_metadata(item_list->get_item_count() - 1, d); if (file->get_text() == files.front()->get()) item_list->set_current(item_list->get_item_count() - 1); diff --git a/editor/editor_help_search.cpp b/editor/editor_help_search.cpp index 8676dac921..a9f7be0fff 100644 --- a/editor/editor_help_search.cpp +++ b/editor/editor_help_search.cpp @@ -130,9 +130,9 @@ void EditorHelpSearch::_notification(int p_what) { } break; case NOTIFICATION_POPUP_HIDE: { - results_tree->clear(); + results_tree->call_deferred("clear"); // Wait for the Tree's mouse event propagation. get_ok()->set_disabled(true); - EditorSettings::get_singleton()->set("interface/dialogs/search_help_bounds", get_rect()); + EditorSettings::get_singleton()->set_project_metadata("dialog_bounds", "search_help", get_rect()); } break; case NOTIFICATION_PROCESS: { @@ -177,8 +177,9 @@ void EditorHelpSearch::popup_dialog() { void EditorHelpSearch::popup_dialog(const String &p_term) { // Restore valid window bounds or pop up at default size. - if (EditorSettings::get_singleton()->has_setting("interface/dialogs/search_help_bounds")) - popup(EditorSettings::get_singleton()->get("interface/dialogs/search_help_bounds")); + Rect2 saved_size = EditorSettings::get_singleton()->get_project_metadata("dialog_bounds", "search_help", Rect2()); + if (saved_size != Rect2()) + popup(saved_size); else popup_centered_ratio(0.5F); @@ -578,18 +579,12 @@ bool EditorHelpSearch::Runner::work(uint64_t slot) { return true; } -EditorHelpSearch::Runner::Runner(Control *p_icon_service, Tree *p_results_tree, const String &p_term, int p_search_flags) { - - ui_service = p_icon_service; - results_tree = p_results_tree; - term = p_term.strip_edges(); - search_flags = p_search_flags; - - if ((search_flags & SEARCH_CASE_SENSITIVE) == 0) - term = term.to_lower(); - - empty_icon = ui_service->get_icon("ArrowRight", "EditorIcons"); - disabled_color = ui_service->get_color("disabled_font_color", "Editor"); - - phase = 0; +EditorHelpSearch::Runner::Runner(Control *p_icon_service, Tree *p_results_tree, const String &p_term, int p_search_flags) : + phase(0), + ui_service(p_icon_service), + results_tree(p_results_tree), + term((p_search_flags & SEARCH_CASE_SENSITIVE) == 0 ? p_term.strip_edges().to_lower() : p_term.strip_edges()), + search_flags(p_search_flags), + empty_icon(ui_service->get_icon("ArrowRight", "EditorIcons")), + disabled_color(ui_service->get_color("disabled_font_color", "Editor")) { } diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp index d009ed61b5..d100d7f618 100644 --- a/editor/editor_node.cpp +++ b/editor/editor_node.cpp @@ -3645,6 +3645,7 @@ void EditorNode::_load_docks() { _load_docks_from_config(config, "docks"); _load_open_scenes_from_config(config, "EditorNode"); + editor_data.set_plugin_window_layout(config); } @@ -3839,6 +3840,23 @@ void EditorNode::_load_open_scenes_from_config(Ref<ConfigFile> p_layout, const S restoring_scenes = false; } +bool EditorNode::has_scenes_in_session() { + if (!bool(EDITOR_GET("interface/scene_tabs/restore_scenes_on_load"))) { + return false; + } + Ref<ConfigFile> config; + config.instance(); + Error err = config->load(EditorSettings::get_singleton()->get_project_settings_dir().plus_file("editor_layout.cfg")); + if (err != OK) { + return false; + } + if (!config->has_section("EditorNode") || !config->has_section_key("EditorNode", "open_scenes")) { + return false; + } + Array scenes = config->get_value("EditorNode", "open_scenes"); + return !scenes.empty(); +} + void EditorNode::_update_layouts_menu() { editor_layouts->clear(); @@ -5169,14 +5187,9 @@ EditorNode::EditorNode() { top_region->add_child(left_menu_hb); menu_hb->add_child(top_region); - { - Control *sp = memnew(Control); - sp->set_custom_minimum_size(Size2(30, 0) * EDSCALE); - menu_hb->add_child(sp); - } - file_menu = memnew(MenuButton); file_menu->set_flat(false); + file_menu->set_switch_on_hover(true); file_menu->set_text(TTR("Scene")); file_menu->add_style_override("hover", gui_base->get_stylebox("MenuHover", "EditorStyles")); left_menu_hb->add_child(file_menu); @@ -5268,6 +5281,7 @@ EditorNode::EditorNode() { project_menu = memnew(MenuButton); project_menu->set_flat(false); + project_menu->set_switch_on_hover(true); project_menu->set_tooltip(TTR("Miscellaneous project or scene-wide tools.")); project_menu->set_text(TTR("Project")); project_menu->add_style_override("hover", gui_base->get_stylebox("MenuHover", "EditorStyles")); @@ -5309,6 +5323,7 @@ EditorNode::EditorNode() { debug_menu = memnew(MenuButton); debug_menu->set_flat(false); + debug_menu->set_switch_on_hover(true); debug_menu->set_text(TTR("Debug")); debug_menu->add_style_override("hover", gui_base->get_stylebox("MenuHover", "EditorStyles")); left_menu_hb->add_child(debug_menu); @@ -5339,6 +5354,7 @@ EditorNode::EditorNode() { settings_menu = memnew(MenuButton); settings_menu->set_flat(false); + settings_menu->set_switch_on_hover(true); settings_menu->set_text(TTR("Editor")); settings_menu->add_style_override("hover", gui_base->get_stylebox("MenuHover", "EditorStyles")); left_menu_hb->add_child(settings_menu); @@ -5375,6 +5391,7 @@ EditorNode::EditorNode() { // Help Menu help_menu = memnew(MenuButton); help_menu->set_flat(false); + help_menu->set_switch_on_hover(true); help_menu->set_text(TTR("Help")); help_menu->add_style_override("hover", gui_base->get_stylebox("MenuHover", "EditorStyles")); left_menu_hb->add_child(help_menu); @@ -5391,12 +5408,8 @@ EditorNode::EditorNode() { p->add_separator(); p->add_icon_item(gui_base->get_icon("Godot", "EditorIcons"), TTR("About"), HELP_ABOUT); - play_cc = memnew(CenterContainer); - play_cc->set_mouse_filter(Control::MOUSE_FILTER_IGNORE); - menu_hb->add_child(play_cc); - play_button_panel = memnew(PanelContainer); - play_cc->add_child(play_button_panel); + menu_hb->add_child(play_button_panel); HBoxContainer *play_hb = memnew(HBoxContainer); play_button_panel->add_child(play_hb); @@ -5442,11 +5455,6 @@ EditorNode::EditorNode() { run_native = memnew(EditorRunNative); play_hb->add_child(run_native); - native_play_button = memnew(MenuButton); - native_play_button->set_text("NTV"); - menu_hb->add_child(native_play_button); - native_play_button->hide(); - native_play_button->get_popup()->connect("id_pressed", this, "_run_in_device"); run_native->connect("native_run", this, "_menu_option", varray(RUN_PLAY_NATIVE)); play_scene_button = memnew(ToolButton); @@ -5475,6 +5483,9 @@ EditorNode::EditorNode() { play_custom_scene_button->set_shortcut(ED_SHORTCUT("editor/play_custom_scene", TTR("Play Custom Scene"), KEY_MASK_CMD | KEY_MASK_SHIFT | KEY_F5)); #endif + HBoxContainer *right_menu_hb = memnew(HBoxContainer); + menu_hb->add_child(right_menu_hb); + // Toggle for video driver video_driver = memnew(OptionButton); video_driver->set_flat(true); @@ -5482,7 +5493,7 @@ EditorNode::EditorNode() { video_driver->set_v_size_flags(Control::SIZE_SHRINK_CENTER); video_driver->connect("item_selected", this, "_video_driver_selected"); video_driver->add_font_override("font", gui_base->get_font("bold", "EditorFonts")); - menu_hb->add_child(video_driver); + right_menu_hb->add_child(video_driver); String video_drivers = ProjectSettings::get_singleton()->get_custom_property_info()["rendering/quality/driver/driver_name"].hint_string; String current_video_driver = OS::get_singleton()->get_video_driver_name(OS::get_singleton()->get_current_video_driver()); @@ -5508,9 +5519,6 @@ EditorNode::EditorNode() { progress_hb = memnew(BackgroundProgress); - HBoxContainer *right_menu_hb = memnew(HBoxContainer); - menu_hb->add_child(right_menu_hb); - layout_dialog = memnew(EditorNameDialog); gui_base->add_child(layout_dialog); layout_dialog->set_hide_on_ok(false); diff --git a/editor/editor_node.h b/editor/editor_node.h index 4d89d1f956..e5670e5e7c 100644 --- a/editor/editor_node.h +++ b/editor/editor_node.h @@ -243,7 +243,6 @@ private: Control *vp_base; PaneDrag *pd; - CenterContainer *play_cc; HBoxContainer *menu_hb; Control *viewport; MenuButton *file_menu; @@ -255,7 +254,6 @@ private: ToolButton *export_button; ToolButton *prev_scene; ToolButton *play_button; - MenuButton *native_play_button; ToolButton *pause_button; ToolButton *stop_button; ToolButton *run_settings_button; @@ -789,6 +787,7 @@ public: void edit_current() { _edit_current(); }; void update_keying() const { inspector_dock->update_keying(); }; + bool has_scenes_in_session(); EditorNode(); ~EditorNode(); diff --git a/editor/editor_plugin.cpp b/editor/editor_plugin.cpp index 86b2db877e..cd024ff870 100644 --- a/editor/editor_plugin.cpp +++ b/editor/editor_plugin.cpp @@ -829,11 +829,11 @@ void EditorPlugin::_bind_methods() { BIND_ENUM_CONSTANT(DOCK_SLOT_MAX); } -EditorPlugin::EditorPlugin() { - undo_redo = NULL; - input_event_forwarding_always_enabled = false; - force_draw_over_forwarding_enabled = false; - last_main_screen_name = ""; +EditorPlugin::EditorPlugin() : + undo_redo(NULL), + input_event_forwarding_always_enabled(false), + force_draw_over_forwarding_enabled(false), + last_main_screen_name("") { } EditorPlugin::~EditorPlugin() { diff --git a/editor/editor_properties.cpp b/editor/editor_properties.cpp index 57c6fa3547..ff7ab051b5 100644 --- a/editor/editor_properties.cpp +++ b/editor/editor_properties.cpp @@ -233,7 +233,7 @@ void EditorPropertyPath::_path_pressed() { dialog->set_mode(EditorFileDialog::MODE_OPEN_DIR); dialog->set_current_dir(full_path); } else { - dialog->set_mode(EditorFileDialog::MODE_OPEN_FILE); + dialog->set_mode(save_mode ? EditorFileDialog::MODE_SAVE_FILE : EditorFileDialog::MODE_OPEN_FILE); for (int i = 0; i < extensions.size(); i++) { String e = extensions[i].strip_edges(); if (e != String()) { @@ -260,6 +260,11 @@ void EditorPropertyPath::setup(const Vector<String> &p_extensions, bool p_folder global = p_global; } +void EditorPropertyPath::set_save_mode() { + + save_mode = true; +} + void EditorPropertyPath::_notification(int p_what) { if (p_what == NOTIFICATION_ENTER_TREE || p_what == NOTIFICATION_THEME_CHANGED) { @@ -296,6 +301,7 @@ EditorPropertyPath::EditorPropertyPath() { path_edit->connect("pressed", this, "_path_pressed"); folder = false; global = false; + save_mode = false; } ///////////////////// CLASS NAME ///////////////////////// @@ -1090,6 +1096,8 @@ void EditorPropertyVector2::setup(double p_min, double p_max, double p_step, boo spin[i]->set_max(p_max); spin[i]->set_step(p_step); spin[i]->set_hide_slider(p_no_slider); + spin[i]->set_allow_greater(true); + spin[i]->set_allow_lesser(true); } } @@ -1171,6 +1179,8 @@ void EditorPropertyRect2::setup(double p_min, double p_max, double p_step, bool spin[i]->set_max(p_max); spin[i]->set_step(p_step); spin[i]->set_hide_slider(p_no_slider); + spin[i]->set_allow_greater(true); + spin[i]->set_allow_lesser(true); } } @@ -1251,6 +1261,8 @@ void EditorPropertyVector3::setup(double p_min, double p_max, double p_step, boo spin[i]->set_max(p_max); spin[i]->set_step(p_step); spin[i]->set_hide_slider(p_no_slider); + spin[i]->set_allow_greater(true); + spin[i]->set_allow_lesser(true); } } @@ -1331,6 +1343,8 @@ void EditorPropertyPlane::setup(double p_min, double p_max, double p_step, bool spin[i]->set_max(p_max); spin[i]->set_step(p_step); spin[i]->set_hide_slider(p_no_slider); + spin[i]->set_allow_greater(true); + spin[i]->set_allow_lesser(true); } } @@ -1413,6 +1427,8 @@ void EditorPropertyQuat::setup(double p_min, double p_max, double p_step, bool p spin[i]->set_max(p_max); spin[i]->set_step(p_step); spin[i]->set_hide_slider(p_no_slider); + spin[i]->set_allow_greater(true); + spin[i]->set_allow_lesser(true); } } @@ -1500,6 +1516,8 @@ void EditorPropertyAABB::setup(double p_min, double p_max, double p_step, bool p spin[i]->set_max(p_max); spin[i]->set_step(p_step); spin[i]->set_hide_slider(p_no_slider); + spin[i]->set_allow_greater(true); + spin[i]->set_allow_lesser(true); } } @@ -1574,6 +1592,8 @@ void EditorPropertyTransform2D::setup(double p_min, double p_max, double p_step, spin[i]->set_max(p_max); spin[i]->set_step(p_step); spin[i]->set_hide_slider(p_no_slider); + spin[i]->set_allow_greater(true); + spin[i]->set_allow_lesser(true); } } @@ -1653,6 +1673,8 @@ void EditorPropertyBasis::setup(double p_min, double p_max, double p_step, bool spin[i]->set_max(p_max); spin[i]->set_step(p_step); spin[i]->set_hide_slider(p_no_slider); + spin[i]->set_allow_greater(true); + spin[i]->set_allow_lesser(true); } } @@ -1738,6 +1760,8 @@ void EditorPropertyTransform::setup(double p_min, double p_max, double p_step, b spin[i]->set_max(p_max); spin[i]->set_step(p_step); spin[i]->set_hide_slider(p_no_slider); + spin[i]->set_allow_greater(true); + spin[i]->set_allow_lesser(true); } } @@ -1932,6 +1956,20 @@ EditorPropertyNodePath::EditorPropertyNodePath() { void EditorPropertyResource::_file_selected(const String &p_path) { RES res = ResourceLoader::load(p_path); + + List<PropertyInfo> prop_list; + get_edited_object()->get_property_list(&prop_list); + String type; + + for (List<PropertyInfo>::Element *E = prop_list.front(); E; E = E->next()) { + if (E->get().name == get_edited_property() && (E->get().hint & PROPERTY_HINT_RESOURCE_TYPE)) { + type = E->get().hint_string; + } + } + + if (!type.empty() && !res->is_class(type)) + EditorNode::get_singleton()->show_warning(vformat(TTR("The selected resource (%s) does not match the type expected for this property (%s)."), res->get_class(), type)); + emit_signal("property_changed", get_edited_property(), res); update_property(); } @@ -3096,7 +3134,7 @@ bool EditorInspectorDefaultPlugin::parse_property(Object *p_object, Variant::Typ } break; case Variant::ARRAY: { EditorPropertyArray *editor = memnew(EditorPropertyArray); - editor->setup(Variant::ARRAY); + editor->setup(Variant::ARRAY, p_hint_text); add_property_editor(p_path, editor); } break; case Variant::POOL_BYTE_ARRAY: { diff --git a/editor/editor_properties.h b/editor/editor_properties.h index b82ef977ef..05716408f3 100644 --- a/editor/editor_properties.h +++ b/editor/editor_properties.h @@ -106,6 +106,7 @@ class EditorPropertyPath : public EditorProperty { Vector<String> extensions; bool folder; bool global; + bool save_mode; EditorFileDialog *dialog; LineEdit *path; Button *path_edit; @@ -120,6 +121,7 @@ protected: public: void setup(const Vector<String> &p_extensions, bool p_folder, bool p_global); + void set_save_mode(); virtual void update_property(); EditorPropertyPath(); }; diff --git a/editor/editor_properties_array_dict.cpp b/editor/editor_properties_array_dict.cpp index 431f608f46..090c7b2d3d 100644 --- a/editor/editor_properties_array_dict.cpp +++ b/editor/editor_properties_array_dict.cpp @@ -223,31 +223,31 @@ void EditorPropertyArray::update_property() { // arrays case Variant::POOL_BYTE_ARRAY: { - arrtype = "ByteArray"; + arrtype = "PoolByteArray"; } break; case Variant::POOL_INT_ARRAY: { - arrtype = "IntArray"; + arrtype = "PoolIntArray"; } break; case Variant::POOL_REAL_ARRAY: { - arrtype = "FltArray"; + arrtype = "PoolFloatArray"; } break; case Variant::POOL_STRING_ARRAY: { - arrtype = "StrArray"; + arrtype = "PoolStringArray"; } break; case Variant::POOL_VECTOR2_ARRAY: { - arrtype = "Vec2Array"; + arrtype = "PoolVector2Array"; } break; case Variant::POOL_VECTOR3_ARRAY: { - arrtype = "Vec3Array"; + arrtype = "PoolVector3Array"; } break; case Variant::POOL_COLOR_ARRAY: { - arrtype = "ColArray"; + arrtype = "PoolColorArray"; } break; default: {} } @@ -261,7 +261,7 @@ void EditorPropertyArray::update_property() { return; } - edit->set_text(arrtype + "(size " + itos(array.call("size")) + ")"); + edit->set_text(arrtype + " (size " + itos(array.call("size")) + ")"); #ifdef TOOLS_ENABLED @@ -334,185 +334,18 @@ void EditorPropertyArray::update_property() { EditorProperty *prop = NULL; Variant value = array.get(i + offset); + Variant::Type value_type = value.get_type(); - switch (value.get_type()) { - case Variant::NIL: { - prop = memnew(EditorPropertyNil); - - } break; - - // atomic types - case Variant::BOOL: { - - prop = memnew(EditorPropertyCheck); - - } break; - case Variant::INT: { - EditorPropertyInteger *editor = memnew(EditorPropertyInteger); - editor->setup(-100000, 100000, 1, true, true); - prop = editor; - - } break; - case Variant::REAL: { - - EditorPropertyFloat *editor = memnew(EditorPropertyFloat); - editor->setup(-100000, 100000, 0.001, true, false, true, true); - prop = editor; - } break; - case Variant::STRING: { - - prop = memnew(EditorPropertyText); - - } break; - - // math types - - case Variant::VECTOR2: { - - EditorPropertyVector2 *editor = memnew(EditorPropertyVector2); - editor->setup(-100000, 100000, 0.001, true); - prop = editor; - - } break; - case Variant::RECT2: { - - EditorPropertyRect2 *editor = memnew(EditorPropertyRect2); - editor->setup(-100000, 100000, 0.001, true); - prop = editor; - - } break; - case Variant::VECTOR3: { - - EditorPropertyVector3 *editor = memnew(EditorPropertyVector3); - editor->setup(-100000, 100000, 0.001, true); - prop = editor; - - } break; - case Variant::TRANSFORM2D: { - - EditorPropertyTransform2D *editor = memnew(EditorPropertyTransform2D); - editor->setup(-100000, 100000, 0.001, true); - prop = editor; - - } break; - case Variant::PLANE: { - - EditorPropertyPlane *editor = memnew(EditorPropertyPlane); - editor->setup(-100000, 100000, 0.001, true); - prop = editor; - - } break; - case Variant::QUAT: { - - EditorPropertyQuat *editor = memnew(EditorPropertyQuat); - editor->setup(-100000, 100000, 0.001, true); - prop = editor; - - } break; - case Variant::AABB: { - - EditorPropertyAABB *editor = memnew(EditorPropertyAABB); - editor->setup(-100000, 100000, 0.001, true); - prop = editor; - - } break; - case Variant::BASIS: { - EditorPropertyBasis *editor = memnew(EditorPropertyBasis); - editor->setup(-100000, 100000, 0.001, true); - prop = editor; - - } break; - case Variant::TRANSFORM: { - EditorPropertyTransform *editor = memnew(EditorPropertyTransform); - editor->setup(-100000, 100000, 0.001, true); - prop = editor; - - } break; - - // misc types - case Variant::COLOR: { - prop = memnew(EditorPropertyColor); - - } break; - case Variant::NODE_PATH: { - prop = memnew(EditorPropertyNodePath); - - } break; - case Variant::_RID: { - prop = memnew(EditorPropertyNil); - - } break; - case Variant::OBJECT: { - - if (Object::cast_to<EncodedObjectAsID>(value)) { - - EditorPropertyObjectID *editor = memnew(EditorPropertyObjectID); - editor->setup("Object"); - prop = editor; - - } else { - - EditorPropertyResource *editor = memnew(EditorPropertyResource); - editor->setup("Resource"); - prop = editor; - } - - } break; - case Variant::DICTIONARY: { - prop = memnew(EditorPropertyDictionary); - - } break; - - // arrays - case Variant::ARRAY: { - EditorPropertyArray *editor = memnew(EditorPropertyArray); - editor->setup(Variant::ARRAY); - prop = editor; - - } break; - case Variant::POOL_BYTE_ARRAY: { - EditorPropertyArray *editor = memnew(EditorPropertyArray); - editor->setup(Variant::POOL_BYTE_ARRAY); - prop = editor; - - } break; - case Variant::POOL_INT_ARRAY: { - EditorPropertyArray *editor = memnew(EditorPropertyArray); - editor->setup(Variant::POOL_INT_ARRAY); - prop = editor; - - } break; - case Variant::POOL_REAL_ARRAY: { - - EditorPropertyArray *editor = memnew(EditorPropertyArray); - editor->setup(Variant::POOL_REAL_ARRAY); - prop = editor; - } break; - case Variant::POOL_STRING_ARRAY: { - - EditorPropertyArray *editor = memnew(EditorPropertyArray); - editor->setup(Variant::POOL_STRING_ARRAY); - prop = editor; - } break; - case Variant::POOL_VECTOR2_ARRAY: { - - EditorPropertyArray *editor = memnew(EditorPropertyArray); - editor->setup(Variant::POOL_VECTOR2_ARRAY); - prop = editor; - } break; - case Variant::POOL_VECTOR3_ARRAY: { - - EditorPropertyArray *editor = memnew(EditorPropertyArray); - editor->setup(Variant::POOL_VECTOR3_ARRAY); - prop = editor; - } break; - case Variant::POOL_COLOR_ARRAY: { + if (value_type == Variant::NIL && subtype != Variant::NIL) { + value_type = subtype; + } - EditorPropertyArray *editor = memnew(EditorPropertyArray); - editor->setup(Variant::POOL_COLOR_ARRAY); - prop = editor; - } break; - default: {} + if (value_type == Variant::OBJECT && Object::cast_to<EncodedObjectAsID>(value)) { + EditorPropertyObjectID *editor = memnew(EditorPropertyObjectID); + editor->setup("Object"); + prop = editor; + } else { + prop = EditorInspector::instantiate_property_editor(NULL, value_type, "", subtype_hint, subtype_hint_string, 0); } prop->set_object_and_property(object.ptr(), prop_name); @@ -583,15 +416,39 @@ void EditorPropertyArray::_length_changed(double p_page) { emit_signal("property_changed", get_edited_property(), array); if (array.get_type() == Variant::ARRAY) { + if (subtype != Variant::NIL) { + int size = array.call("size"); + for (int i = 0; i < size; i++) { + if (array.get(i).get_type() == Variant::NIL) { + Variant::CallError ce; + array.set(i, Variant::construct(subtype, NULL, 0, ce)); + } + } + } array = array.call("duplicate"); //dupe, so undo/redo works better } object->set_array(array); update_property(); } -void EditorPropertyArray::setup(Variant::Type p_array_type) { +void EditorPropertyArray::setup(Variant::Type p_array_type, const String &p_hint_string) { array_type = p_array_type; + + if (array_type == Variant::ARRAY && !p_hint_string.empty()) { + int hint_subtype_seperator = p_hint_string.find(":"); + if (hint_subtype_seperator >= 0) { + String subtype_string = p_hint_string.substr(0, hint_subtype_seperator); + int slash_pos = subtype_string.find("/"); + if (slash_pos >= 0) { + subtype_hint = PropertyHint(subtype_string.substr(slash_pos + 1, subtype_string.size() - slash_pos - 1).to_int()); + subtype_string = subtype_string.substr(0, slash_pos); + } + + subtype_hint_string = p_hint_string.substr(hint_subtype_seperator + 1, p_hint_string.size() - hint_subtype_seperator - 1); + subtype = Variant::Type(subtype_string.to_int()); + } + } } void EditorPropertyArray::_bind_methods() { @@ -630,6 +487,10 @@ EditorPropertyArray::EditorPropertyArray() { change_type->add_item(type, i); } changing_type_idx = -1; + + subtype = Variant::NIL; + subtype_hint = PROPERTY_HINT_NONE; + subtype_hint_string = ""; } ///////////////////// DICTIONARY /////////////////////////// diff --git a/editor/editor_properties_array_dict.h b/editor/editor_properties_array_dict.h index d5eecd9106..46c9bebf2a 100644 --- a/editor/editor_properties_array_dict.h +++ b/editor/editor_properties_array_dict.h @@ -93,6 +93,9 @@ class EditorPropertyArray : public EditorProperty { EditorSpinSlider *page; HBoxContainer *page_hb; Variant::Type array_type; + Variant::Type subtype; + PropertyHint subtype_hint; + String subtype_hint_string; void _page_changed(double p_page); void _length_changed(double p_page); @@ -108,7 +111,7 @@ protected: void _notification(int p_what); public: - void setup(Variant::Type p_array_type); + void setup(Variant::Type p_array_type, const String &p_hint_string = ""); virtual void update_property(); EditorPropertyArray(); }; diff --git a/editor/editor_resource_preview.cpp b/editor/editor_resource_preview.cpp index 310c3b3a52..71e9aced7e 100644 --- a/editor/editor_resource_preview.cpp +++ b/editor/editor_resource_preview.cpp @@ -326,7 +326,7 @@ void EditorResourcePreview::queue_edited_resource_preview(const Ref<Resource> &p if (cache.has(path_id) && cache[path_id].last_hash == p_res->hash_edited_version()) { cache[path_id].order = order++; - p_receiver->call_deferred(p_receiver_func, path_id, cache[path_id].preview, cache[path_id].small_preview, p_userdata); + p_receiver->call(p_receiver_func, path_id, cache[path_id].preview, cache[path_id].small_preview, p_userdata); preview_mutex->unlock(); return; } @@ -351,7 +351,7 @@ void EditorResourcePreview::queue_resource_preview(const String &p_path, Object preview_mutex->lock(); if (cache.has(p_path)) { cache[p_path].order = order++; - p_receiver->call_deferred(p_receiver_func, p_path, cache[p_path].preview, cache[p_path].small_preview, p_userdata); + p_receiver->call(p_receiver_func, p_path, cache[p_path].preview, cache[p_path].small_preview, p_userdata); preview_mutex->unlock(); return; } diff --git a/editor/editor_sectioned_inspector.cpp b/editor/editor_sectioned_inspector.cpp index 9d3ab59116..a28d071d77 100644 --- a/editor/editor_sectioned_inspector.cpp +++ b/editor/editor_sectioned_inspector.cpp @@ -298,19 +298,18 @@ EditorInspector *SectionedInspector::get_inspector() { return inspector; } -SectionedInspector::SectionedInspector() { - - obj = -1; - - search_box = NULL; - +SectionedInspector::SectionedInspector() : + obj(-1), + sections(memnew(Tree)), + filter(memnew(SectionedInspectorFilter)), + inspector(memnew(EditorInspector)), + search_box(NULL) { add_constant_override("autohide", 1); // Fixes the dragger always showing up VBoxContainer *left_vb = memnew(VBoxContainer); left_vb->set_custom_minimum_size(Size2(170, 0) * EDSCALE); add_child(left_vb); - sections = memnew(Tree); sections->set_v_size_flags(SIZE_EXPAND_FILL); sections->set_hide_root(true); @@ -321,8 +320,6 @@ SectionedInspector::SectionedInspector() { right_vb->set_h_size_flags(SIZE_EXPAND_FILL); add_child(right_vb); - filter = memnew(SectionedInspectorFilter); - inspector = memnew(EditorInspector); inspector->set_v_size_flags(SIZE_EXPAND_FILL); right_vb->add_child(inspector, true); inspector->set_use_doc_hints(true); diff --git a/editor/editor_settings.cpp b/editor/editor_settings.cpp index fdfa094ba2..7fa5019cb7 100644 --- a/editor/editor_settings.cpp +++ b/editor/editor_settings.cpp @@ -256,6 +256,8 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { _THREAD_SAFE_METHOD_ + /* Languages */ + { String lang_hint = "en"; String host_lang = OS::get_singleton()->get_locale(); @@ -291,11 +293,13 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { hints["interface/editor/editor_language"] = PropertyInfo(Variant::STRING, "interface/editor/editor_language", PROPERTY_HINT_ENUM, lang_hint, PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_RESTART_IF_CHANGED); } + /* Interface */ + + // Editor _initial_set("interface/editor/display_scale", 0); hints["interface/editor/display_scale"] = PropertyInfo(Variant::INT, "interface/editor/display_scale", PROPERTY_HINT_ENUM, "Auto,75%,100%,125%,150%,175%,200%,Custom", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_RESTART_IF_CHANGED); _initial_set("interface/editor/custom_display_scale", 1.0f); hints["interface/editor/custom_display_scale"] = PropertyInfo(Variant::REAL, "interface/editor/custom_display_scale", PROPERTY_HINT_RANGE, "0.75,3,0.01", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_RESTART_IF_CHANGED); - _initial_set("interface/scene_tabs/show_script_button", false); _initial_set("interface/editor/main_font_size", 14); hints["interface/editor/main_font_size"] = PropertyInfo(Variant::INT, "interface/editor/main_font_size", PROPERTY_HINT_RANGE, "10,40,1", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_RESTART_IF_CHANGED); _initial_set("interface/editor/code_font_size", 14); @@ -317,12 +321,11 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { hints["interface/editor/dim_amount"] = PropertyInfo(Variant::REAL, "interface/editor/dim_amount", PROPERTY_HINT_RANGE, "0,1,0.01", PROPERTY_USAGE_DEFAULT); _initial_set("interface/editor/dim_transition_time", 0.08f); hints["interface/editor/dim_transition_time"] = PropertyInfo(Variant::REAL, "interface/editor/dim_transition_time", PROPERTY_HINT_RANGE, "0,1,0.001", PROPERTY_USAGE_DEFAULT); - _initial_set("interface/editor/separate_distraction_mode", false); - _initial_set("interface/editor/save_each_scene_on_quit", true); // Regression _initial_set("interface/editor/quit_confirmation", true); + // Theme _initial_set("interface/theme/preset", "Default"); hints["interface/theme/preset"] = PropertyInfo(Variant::STRING, "interface/theme/preset", PROPERTY_HINT_ENUM, "Default,Alien,Arc,Godot 2,Grey,Light,Solarized (Dark),Solarized (Light),Custom", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_RESTART_IF_CHANGED); _initial_set("interface/theme/icon_and_font_color", 0); @@ -342,43 +345,88 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { _initial_set("interface/theme/custom_theme", ""); hints["interface/theme/custom_theme"] = PropertyInfo(Variant::STRING, "interface/theme/custom_theme", PROPERTY_HINT_GLOBAL_FILE, "*.res,*.tres,*.theme", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_RESTART_IF_CHANGED); + // Scene tabs _initial_set("interface/scene_tabs/show_extension", false); _initial_set("interface/scene_tabs/show_thumbnail_on_hover", true); _initial_set("interface/scene_tabs/resize_if_many_tabs", true); _initial_set("interface/scene_tabs/minimum_width", 50); hints["interface/scene_tabs/minimum_width"] = PropertyInfo(Variant::INT, "interface/scene_tabs/minimum_width", PROPERTY_HINT_RANGE, "50,500,1", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_RESTART_IF_CHANGED); + _initial_set("interface/scene_tabs/show_script_button", false); + + /* Filesystem */ + // Directories _initial_set("filesystem/directories/autoscan_project_path", ""); hints["filesystem/directories/autoscan_project_path"] = PropertyInfo(Variant::STRING, "filesystem/directories/autoscan_project_path", PROPERTY_HINT_GLOBAL_DIR); _initial_set("filesystem/directories/default_project_path", OS::get_singleton()->has_environment("HOME") ? OS::get_singleton()->get_environment("HOME") : OS::get_singleton()->get_system_dir(OS::SYSTEM_DIR_DOCUMENTS)); hints["filesystem/directories/default_project_path"] = PropertyInfo(Variant::STRING, "filesystem/directories/default_project_path", PROPERTY_HINT_GLOBAL_DIR); - _initial_set("filesystem/directories/default_project_export_path", ""); - hints["filesystem/directories/default_project_export_path"] = PropertyInfo(Variant::STRING, "filesystem/directories/default_project_export_path", PROPERTY_HINT_GLOBAL_DIR); - _initial_set("interface/scene_tabs/show_script_button", false); + // On save + _initial_set("filesystem/on_save/compress_binary_resources", true); + _initial_set("filesystem/on_save/safe_save_on_backup_then_rename", true); + + // File dialog + _initial_set("filesystem/file_dialog/show_hidden_files", false); + _initial_set("filesystem/file_dialog/display_mode", 0); + hints["filesystem/file_dialog/display_mode"] = PropertyInfo(Variant::INT, "filesystem/file_dialog/display_mode", PROPERTY_HINT_ENUM, "Thumbnails,List"); + _initial_set("filesystem/file_dialog/thumbnail_size", 64); + hints["filesystem/file_dialog/thumbnail_size"] = PropertyInfo(Variant::INT, "filesystem/file_dialog/thumbnail_size", PROPERTY_HINT_RANGE, "32,128,16"); + + // Import + _initial_set("filesystem/import/pvrtc_texture_tool", ""); +#ifdef WINDOWS_ENABLED + hints["filesystem/import/pvrtc_texture_tool"] = PropertyInfo(Variant::STRING, "filesystem/import/pvrtc_texture_tool", PROPERTY_HINT_GLOBAL_FILE, "*.exe"); +#else + hints["filesystem/import/pvrtc_texture_tool"] = PropertyInfo(Variant::STRING, "filesystem/import/pvrtc_texture_tool", PROPERTY_HINT_GLOBAL_FILE, ""); +#endif + _initial_set("filesystem/import/pvrtc_fast_conversion", false); + + /* Docks */ + + // SceneTree + _initial_set("docks/scene_tree/start_create_dialog_fully_expanded", false); + _initial_set("docks/scene_tree/draw_relationship_lines", true); + _initial_set("docks/scene_tree/relationship_line_color", Color::html("464646")); + + // FileSystem + _initial_set("docks/filesystem/display_mode", 0); + hints["docks/filesystem/display_mode"] = PropertyInfo(Variant::INT, "docks/filesystem/display_mode", PROPERTY_HINT_ENUM, "Tree only, Split"); + _initial_set("docks/filesystem/thumbnail_size", 64); + hints["docks/filesystem/thumbnail_size"] = PropertyInfo(Variant::INT, "docks/filesystem/thumbnail_size", PROPERTY_HINT_RANGE, "32,128,16"); + _initial_set("docks/filesystem/files_display_mode", 0); + hints["docks/filesystem/files_display_mode"] = PropertyInfo(Variant::INT, "docks/filesystem/files_display_mode", PROPERTY_HINT_ENUM, "Thumbnails,List"); + _initial_set("docks/filesystem/always_show_folders", true); + + // Property editor + _initial_set("docks/property_editor/auto_refresh_interval", 0.3); + + /* Text editor */ + + // Theme _initial_set("text_editor/theme/color_theme", "Adaptive"); hints["text_editor/theme/color_theme"] = PropertyInfo(Variant::STRING, "text_editor/theme/color_theme", PROPERTY_HINT_ENUM, "Adaptive,Default,Custom"); - _initial_set("text_editor/theme/line_spacing", 6); _initial_set("text_editor/theme/selection_color", Color::html("40808080")); _load_default_text_editor_theme(); + // Highlighting _initial_set("text_editor/highlighting/syntax_highlighting", true); - _initial_set("text_editor/highlighting/highlight_all_occurrences", true); _initial_set("text_editor/highlighting/highlight_current_line", true); _initial_set("text_editor/highlighting/highlight_type_safe_lines", true); - _initial_set("text_editor/cursor/scroll_past_end_of_file", false); + // Indent _initial_set("text_editor/indent/type", 0); hints["text_editor/indent/type"] = PropertyInfo(Variant::INT, "text_editor/indent/type", PROPERTY_HINT_ENUM, "Tabs,Spaces"); _initial_set("text_editor/indent/size", 4); hints["text_editor/indent/size"] = PropertyInfo(Variant::INT, "text_editor/indent/size", PROPERTY_HINT_RANGE, "1, 64, 1"); // size of 0 crashes. _initial_set("text_editor/indent/auto_indent", true); _initial_set("text_editor/indent/convert_indent_on_save", false); + _initial_set("text_editor/indent/draw_indent_guides", true); _initial_set("text_editor/indent/draw_tabs", true); + // Line numbers _initial_set("text_editor/line_numbers/show_line_numbers", true); _initial_set("text_editor/line_numbers/line_numbers_zero_padded", false); _initial_set("text_editor/line_numbers/show_breakpoint_gutter", true); @@ -388,35 +436,45 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { _initial_set("text_editor/line_numbers/line_length_guideline_column", 80); hints["text_editor/line_numbers/line_length_guideline_column"] = PropertyInfo(Variant::INT, "text_editor/line_numbers/line_length_guideline_column", PROPERTY_HINT_RANGE, "20, 160, 1"); + // Open scripts _initial_set("text_editor/open_scripts/smooth_scrolling", true); _initial_set("text_editor/open_scripts/v_scroll_speed", 80); _initial_set("text_editor/open_scripts/show_members_overview", true); + // Files _initial_set("text_editor/files/trim_trailing_whitespace_on_save", false); - _initial_set("text_editor/completion/idle_parse_delay", 2); + _initial_set("text_editor/files/autosave_interval_secs", 0); + _initial_set("text_editor/files/restore_scripts_on_load", true); + + // Tools _initial_set("text_editor/tools/create_signal_callbacks", true); _initial_set("text_editor/tools/sort_members_outline_alphabetically", false); - _initial_set("text_editor/files/autosave_interval_secs", 0); + // Cursor + _initial_set("text_editor/cursor/scroll_past_end_of_file", false); _initial_set("text_editor/cursor/block_caret", false); _initial_set("text_editor/cursor/caret_blink", true); _initial_set("text_editor/cursor/caret_blink_speed", 0.5); hints["text_editor/cursor/caret_blink_speed"] = PropertyInfo(Variant::REAL, "text_editor/cursor/caret_blink_speed", PROPERTY_HINT_RANGE, "0.1, 10, 0.01"); _initial_set("text_editor/cursor/right_click_moves_caret", true); + // Completion + _initial_set("text_editor/completion/idle_parse_delay", 2); _initial_set("text_editor/completion/auto_brace_complete", false); _initial_set("text_editor/completion/put_callhint_tooltip_below_current_line", true); _initial_set("text_editor/completion/callhint_tooltip_offset", Vector2()); - _initial_set("text_editor/files/restore_scripts_on_load", true); _initial_set("text_editor/completion/complete_file_paths", true); _initial_set("text_editor/completion/add_type_hints", false); - _initial_set("docks/scene_tree/start_create_dialog_fully_expanded", false); - _initial_set("docks/scene_tree/draw_relationship_lines", true); - _initial_set("docks/scene_tree/relationship_line_color", Color::html("464646")); + // Help + _initial_set("text_editor/help/show_help_index", true); + /* Editors */ + + // GridMap _initial_set("editors/grid_map/pick_distance", 5000.0); + // 3D _initial_set("editors/3d/primary_grid_color", Color::html("909090")); hints["editors/3d/primary_grid_color"] = PropertyInfo(Variant::COLOR, "editors/3d/primary_grid_color", PROPERTY_HINT_COLOR_NO_ALPHA, "", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_RESTART_IF_CHANGED); @@ -433,7 +491,7 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { _initial_set("editors/3d/default_z_near", 0.05); _initial_set("editors/3d/default_z_far", 500.0); - // navigation + // 3D: Navigation _initial_set("editors/3d/navigation/navigation_scheme", 0); _initial_set("editors/3d/navigation/invert_y_axis", false); hints["editors/3d/navigation/navigation_scheme"] = PropertyInfo(Variant::INT, "editors/3d/navigation/navigation_scheme", PROPERTY_HINT_ENUM, "Godot,Maya,Modo"); @@ -447,14 +505,11 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { hints["editors/3d/navigation/pan_modifier"] = PropertyInfo(Variant::INT, "editors/3d/navigation/pan_modifier", PROPERTY_HINT_ENUM, "None,Shift,Alt,Meta,Ctrl"); _initial_set("editors/3d/navigation/zoom_modifier", 4); hints["editors/3d/navigation/zoom_modifier"] = PropertyInfo(Variant::INT, "editors/3d/navigation/zoom_modifier", PROPERTY_HINT_ENUM, "None,Shift,Alt,Meta,Ctrl"); - - // _initial_set("editors/3d/navigation/emulate_numpad", false); not used at the moment _initial_set("editors/3d/navigation/warped_mouse_panning", true); - // navigation feel + // 3D: Navigation feel _initial_set("editors/3d/navigation_feel/orbit_sensitivity", 0.4); hints["editors/3d/navigation_feel/orbit_sensitivity"] = PropertyInfo(Variant::REAL, "editors/3d/navigation_feel/orbit_sensitivity", PROPERTY_HINT_RANGE, "0.0, 2, 0.01"); - _initial_set("editors/3d/navigation_feel/orbit_inertia", 0.05); hints["editors/3d/navigation_feel/orbit_inertia"] = PropertyInfo(Variant::REAL, "editors/3d/navigation_feel/orbit_inertia", PROPERTY_HINT_RANGE, "0.0, 1, 0.01"); _initial_set("editors/3d/navigation_feel/translation_inertia", 0.15); @@ -466,7 +521,7 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { _initial_set("editors/3d/navigation_feel/manipulation_translation_inertia", 0.075); hints["editors/3d/navigation_feel/manipulation_translation_inertia"] = PropertyInfo(Variant::REAL, "editors/3d/navigation_feel/manipulation_translation_inertia", PROPERTY_HINT_RANGE, "0.0, 1, 0.01"); - // freelook + // 3D: Freelook _initial_set("editors/3d/freelook/freelook_inertia", 0.1); hints["editors/3d/freelook/freelook_inertia"] = PropertyInfo(Variant::REAL, "editors/3d/freelook/freelook_inertia", PROPERTY_HINT_RANGE, "0.0, 1, 0.01"); _initial_set("editors/3d/freelook/freelook_base_speed", 5.0); @@ -477,6 +532,7 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { hints["editors/3d/freelook/freelook_modifier_speed_factor"] = PropertyInfo(Variant::REAL, "editors/3d/freelook/freelook_modifier_speed_factor", PROPERTY_HINT_RANGE, "0.0, 10.0, 0.1"); _initial_set("editors/3d/freelook/freelook_speed_zoom_link", false); + // 2D _initial_set("editors/2d/grid_color", Color(1.0, 1.0, 1.0, 0.07)); _initial_set("editors/2d/guides_color", Color(0.6, 0.0, 0.8)); _initial_set("editors/2d/bone_width", 5); @@ -493,9 +549,19 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { _initial_set("editors/2d/scroll_to_pan", false); _initial_set("editors/2d/pan_speed", 20); + // Polygon editor _initial_set("editors/poly_editor/point_grab_radius", 8); _initial_set("editors/poly_editor/show_previous_outline", true); + // Animation + _initial_set("editors/animation/autorename_animation_tracks", true); + _initial_set("editors/animation/confirm_insert_track", true); + _initial_set("editors/animation/onion_layers_past_color", Color(1, 0, 0)); + _initial_set("editors/animation/onion_layers_future_color", Color(0, 1, 0)); + + /* Run */ + + // Window placement _initial_set("run/window_placement/rect", 1); hints["run/window_placement/rect"] = PropertyInfo(Variant::INT, "run/window_placement/rect", PROPERTY_HINT_ENUM, "Top Left,Centered,Custom Position,Force Maximized,Force Fullscreen"); String screen_hints = "Same as Editor,Previous Monitor,Next Monitor"; @@ -506,54 +572,15 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { _initial_set("run/window_placement/screen", 0); hints["run/window_placement/screen"] = PropertyInfo(Variant::INT, "run/window_placement/screen", PROPERTY_HINT_ENUM, screen_hints); - _initial_set("filesystem/on_save/compress_binary_resources", true); - _initial_set("filesystem/on_save/save_modified_external_resources", true); - - _initial_set("text_editor/tools/create_signal_callbacks", true); - - _initial_set("filesystem/file_dialog/show_hidden_files", false); - _initial_set("filesystem/file_dialog/display_mode", 0); - hints["filesystem/file_dialog/display_mode"] = PropertyInfo(Variant::INT, "filesystem/file_dialog/display_mode", PROPERTY_HINT_ENUM, "Thumbnails,List"); - - _initial_set("filesystem/file_dialog/thumbnail_size", 64); - hints["filesystem/file_dialog/thumbnail_size"] = PropertyInfo(Variant::INT, "filesystem/file_dialog/thumbnail_size", PROPERTY_HINT_RANGE, "32,128,16"); - - _initial_set("docks/filesystem/display_mode", 0); - hints["docks/filesystem/display_mode"] = PropertyInfo(Variant::INT, "docks/filesystem/display_mode", PROPERTY_HINT_ENUM, "Tree only, Split"); - _initial_set("docks/filesystem/thumbnail_size", 64); - hints["docks/filesystem/thumbnail_size"] = PropertyInfo(Variant::INT, "docks/filesystem/thumbnail_size", PROPERTY_HINT_RANGE, "32,128,16"); - _initial_set("docks/filesystem/files_display_mode", 0); - hints["docks/filesystem/files_display_mode"] = PropertyInfo(Variant::INT, "docks/filesystem/files_display_mode", PROPERTY_HINT_ENUM, "Thumbnails,List"); - _initial_set("docks/filesystem/always_show_folders", true); - - _initial_set("editors/animation/autorename_animation_tracks", true); - _initial_set("editors/animation/confirm_insert_track", true); - _initial_set("editors/animation/onion_layers_past_color", Color(1, 0, 0)); - _initial_set("editors/animation/onion_layers_future_color", Color(0, 1, 0)); - - _initial_set("docks/property_editor/texture_preview_width", 48); - _initial_set("docks/property_editor/auto_refresh_interval", 0.3); - _initial_set("text_editor/help/show_help_index", true); - - _initial_set("filesystem/import/ask_save_before_reimport", false); - - _initial_set("filesystem/import/pvrtc_texture_tool", ""); -#ifdef WINDOWS_ENABLED - hints["filesystem/import/pvrtc_texture_tool"] = PropertyInfo(Variant::STRING, "filesystem/import/pvrtc_texture_tool", PROPERTY_HINT_GLOBAL_FILE, "*.exe"); -#else - hints["filesystem/import/pvrtc_texture_tool"] = PropertyInfo(Variant::STRING, "filesystem/import/pvrtc_texture_tool", PROPERTY_HINT_GLOBAL_FILE, ""); -#endif - _initial_set("filesystem/import/pvrtc_fast_conversion", false); - + // Auto save _initial_set("run/auto_save/save_before_running", true); + + // Output _initial_set("run/output/always_clear_output_on_play", true); _initial_set("run/output/always_open_output_on_play", true); _initial_set("run/output/always_close_output_on_stop", false); - _initial_set("filesystem/resources/save_compressed_resources", true); - _initial_set("filesystem/resources/auto_reload_modified_images", true); - _initial_set("filesystem/import/automatic_reimport_on_sources_changed", true); - _initial_set("filesystem/on_save/safe_save_on_backup_then_rename", true); + /* Extra config */ if (p_extra_config.is_valid()) { @@ -592,8 +619,8 @@ void EditorSettings::_load_default_text_editor_theme() { _initial_set("text_editor/highlighting/engine_type_color", Color::html("83d3ff")); _initial_set("text_editor/highlighting/comment_color", Color::html("676767")); _initial_set("text_editor/highlighting/string_color", Color::html("ef6ebe")); - _initial_set("text_editor/highlighting/background_color", dark_theme ? Color::html("3b000000") : Color::html("#323b4f")); - _initial_set("text_editor/highlighting/completion_background_color", Color::html("2C2A32")); + _initial_set("text_editor/highlighting/background_color", dark_theme ? Color::html("3b000000") : Color::html("323b4f")); + _initial_set("text_editor/highlighting/completion_background_color", Color::html("2c2a32")); _initial_set("text_editor/highlighting/completion_selected_color", Color::html("434244")); _initial_set("text_editor/highlighting/completion_existing_color", Color::html("21dfdfdf")); _initial_set("text_editor/highlighting/completion_scroll_color", Color::html("ffffff")); @@ -603,13 +630,14 @@ void EditorSettings::_load_default_text_editor_theme() { _initial_set("text_editor/highlighting/safe_line_number_color", Color::html("99aac8aa")); _initial_set("text_editor/highlighting/caret_color", Color::html("aaaaaa")); _initial_set("text_editor/highlighting/caret_background_color", Color::html("000000")); + _initial_set("text_editor/highlighting/indent_guide_color", Color::html("50808080")); _initial_set("text_editor/highlighting/text_selected_color", Color::html("000000")); _initial_set("text_editor/highlighting/selection_color", Color::html("6ca9c2")); _initial_set("text_editor/highlighting/brace_mismatch_color", Color(1, 0.2, 0.2)); _initial_set("text_editor/highlighting/current_line_color", Color(0.3, 0.5, 0.8, 0.15)); _initial_set("text_editor/highlighting/line_length_guideline_color", Color(0.3, 0.5, 0.8, 0.1)); _initial_set("text_editor/highlighting/word_highlighted_color", Color(0.8, 0.9, 0.9, 0.15)); - _initial_set("text_editor/highlighting/number_color", Color::html("EB9532")); + _initial_set("text_editor/highlighting/number_color", Color::html("eb9532")); _initial_set("text_editor/highlighting/function_color", Color::html("66a2ce")); _initial_set("text_editor/highlighting/member_variable_color", Color::html("e64e59")); _initial_set("text_editor/highlighting/mark_color", Color(1.0, 0.4, 0.4, 0.4)); diff --git a/editor/editor_settings.h b/editor/editor_settings.h index 7b0de9617c..dabe697f10 100644 --- a/editor/editor_settings.h +++ b/editor/editor_settings.h @@ -71,23 +71,23 @@ private: bool hide_from_editor; bool save; bool restart_if_changed; - VariantContainer() { - variant = Variant(); - initial = Variant(); - order = 0; - hide_from_editor = false; - has_default_value = false; - save = false; - restart_if_changed = false; + VariantContainer() : + order(0), + variant(Variant()), + initial(Variant()), + has_default_value(false), + hide_from_editor(false), + save(false), + restart_if_changed(false) { } - VariantContainer(const Variant &p_variant, int p_order) { - variant = p_variant; - initial = Variant(); - order = p_order; - hide_from_editor = false; - has_default_value = false; - save = false; - restart_if_changed = false; + VariantContainer(const Variant &p_variant, int p_order) : + order(p_order), + variant(p_variant), + initial(Variant()), + has_default_value(false), + hide_from_editor(false), + save(false), + restart_if_changed(false) { } }; diff --git a/editor/editor_spin_slider.cpp b/editor/editor_spin_slider.cpp index 8ea56b8578..1b7322fd13 100644 --- a/editor/editor_spin_slider.cpp +++ b/editor/editor_spin_slider.cpp @@ -63,6 +63,7 @@ void EditorSpinSlider::_gui_input(const Ref<InputEvent> &p_event) { grabbing_spinner_attempt = true; grabbing_spinner_dist_cache = 0; + pre_grab_value = get_value(); grabbing_spinner = false; grabbing_spinner_mouse_pos = Input::get_singleton()->get_mouse_position(); } @@ -107,10 +108,10 @@ void EditorSpinSlider::_gui_input(const Ref<InputEvent> &p_event) { if (ABS(grabbing_spinner_dist_cache) > 6) { set_value(get_value() + SGN(grabbing_spinner_dist_cache)); grabbing_spinner_dist_cache = 0; + pre_grab_value = get_value(); } } else { - set_value(get_value() + get_step() * grabbing_spinner_dist_cache * 10); - grabbing_spinner_dist_cache = 0; + set_value(pre_grab_value + get_step() * grabbing_spinner_dist_cache * 10); } } } else if (updown_offset != -1) { @@ -434,6 +435,7 @@ EditorSpinSlider::EditorSpinSlider() { grabbing_spinner_attempt = false; grabbing_spinner = false; grabbing_spinner_dist_cache = 0; + pre_grab_value = 0; set_focus_mode(FOCUS_ALL); updown_offset = -1; hover_updown = false; diff --git a/editor/editor_spin_slider.h b/editor/editor_spin_slider.h index e48eb171b8..9d43bd2884 100644 --- a/editor/editor_spin_slider.h +++ b/editor/editor_spin_slider.h @@ -59,6 +59,7 @@ class EditorSpinSlider : public Range { bool read_only; float grabbing_spinner_dist_cache; Vector2 grabbing_spinner_mouse_pos; + double pre_grab_value; LineEdit *value_input; bool value_input_just_closed; diff --git a/editor/editor_themes.cpp b/editor/editor_themes.cpp index 36053d7534..3dfc49583c 100644 --- a/editor/editor_themes.cpp +++ b/editor/editor_themes.cpp @@ -1080,6 +1080,7 @@ Ref<Theme> create_editor_theme(const Ref<Theme> p_theme) { const Color safe_line_number_color = dim_color * Color(1, 1.2, 1, 1.5); const Color caret_color = mono_color; const Color caret_background_color = mono_color.inverted(); + const Color indent_guide_color = alpha2; const Color text_selected_color = dark_color_3; const Color selection_color = alpha2; const Color brace_mismatch_color = error_color; @@ -1115,6 +1116,7 @@ Ref<Theme> create_editor_theme(const Ref<Theme> p_theme) { setting->set_initial_value("text_editor/highlighting/safe_line_number_color", safe_line_number_color, true); setting->set_initial_value("text_editor/highlighting/caret_color", caret_color, true); setting->set_initial_value("text_editor/highlighting/caret_background_color", caret_background_color, true); + setting->set_initial_value("text_editor/highlighting/indent_guide_color", indent_guide_color, true); setting->set_initial_value("text_editor/highlighting/text_selected_color", text_selected_color, true); setting->set_initial_value("text_editor/highlighting/selection_color", selection_color, true); setting->set_initial_value("text_editor/highlighting/brace_mismatch_color", brace_mismatch_color, true); diff --git a/editor/filesystem_dock.cpp b/editor/filesystem_dock.cpp index 828e608fa4..b2368fff6b 100644 --- a/editor/filesystem_dock.cpp +++ b/editor/filesystem_dock.cpp @@ -951,7 +951,7 @@ void FileSystemDock::_find_remaps(EditorFileSystemDirectory *efsd, const Map<Str } void FileSystemDock::_try_move_item(const FileOrFolder &p_item, const String &p_new_path, - Map<String, String> &p_file_renames, Map<String, String> &p_folder_renames) const { + Map<String, String> &p_file_renames, Map<String, String> &p_folder_renames) { //Ensure folder paths end with "/" String old_path = (p_item.is_file || p_item.path.ends_with("/")) ? p_item.path : (p_item.path + "/"); String new_path = (p_item.is_file || p_new_path.ends_with("/")) ? p_new_path : (p_new_path + "/"); @@ -981,6 +981,7 @@ void FileSystemDock::_try_move_item(const FileOrFolder &p_item, const String &p_ print_verbose("Moving " + old_path + " -> " + new_path); Error err = da->rename(old_path, new_path); if (err == OK) { + //Move/Rename any corresponding import settings too if (p_item.is_file && FileAccess::exists(old_path + ".import")) { err = da->rename(old_path + ".import", new_path + ".import"); @@ -1007,9 +1008,11 @@ void FileSystemDock::_try_move_item(const FileOrFolder &p_item, const String &p_ for (int i = 0; i < file_changed_paths.size(); ++i) { p_file_renames[file_changed_paths[i]] = file_changed_paths[i].replace_first(old_path, new_path); print_verbose(" Remap: " + file_changed_paths[i] + " -> " + p_file_renames[file_changed_paths[i]]); + emit_signal("files_moved", file_changed_paths[i], p_file_renames[file_changed_paths[i]]); } for (int i = 0; i < folder_changed_paths.size(); ++i) { p_folder_renames[folder_changed_paths[i]] = folder_changed_paths[i].replace_first(old_path, new_path); + emit_signal("folder_moved", folder_changed_paths[i], p_folder_renames[folder_changed_paths[i]].substr(0, p_folder_renames[folder_changed_paths[i]].length() - 1)); } } else { EditorNode::get_singleton()->add_io_error(TTR("Error moving:") + "\n" + old_path + "\n"); @@ -1205,6 +1208,14 @@ void FileSystemDock::_make_dir_confirm() { } } +void FileSystemDock::_file_deleted(String p_file) { + emit_signal("file_deleted", p_file); +} + +void FileSystemDock::_folder_deleted(String p_folder) { + emit_signal("folder_deleted", p_folder); +} + void FileSystemDock::_rename_operation_confirm() { String new_name = rename_dialog_text->get_text().strip_edges(); @@ -2273,6 +2284,9 @@ void FileSystemDock::_bind_methods() { ClassDB::bind_method(D_METHOD("_file_list_rmb_select"), &FileSystemDock::_file_list_rmb_select); ClassDB::bind_method(D_METHOD("_file_list_rmb_pressed"), &FileSystemDock::_file_list_rmb_pressed); + ClassDB::bind_method(D_METHOD("_file_deleted"), &FileSystemDock::_file_deleted); + ClassDB::bind_method(D_METHOD("_folder_deleted"), &FileSystemDock::_folder_deleted); + ClassDB::bind_method(D_METHOD("_file_list_thumbnail_done"), &FileSystemDock::_file_list_thumbnail_done); ClassDB::bind_method(D_METHOD("_tree_thumbnail_done"), &FileSystemDock::_tree_thumbnail_done); ClassDB::bind_method(D_METHOD("_file_list_activate_file"), &FileSystemDock::_file_list_activate_file); @@ -2303,6 +2317,11 @@ void FileSystemDock::_bind_methods() { ADD_SIGNAL(MethodInfo("instance", PropertyInfo(Variant::POOL_STRING_ARRAY, "files"))); ADD_SIGNAL(MethodInfo("open")); + + ADD_SIGNAL(MethodInfo("file_removed", PropertyInfo(Variant::STRING, "file"))); + ADD_SIGNAL(MethodInfo("folder_removed", PropertyInfo(Variant::STRING, "folder"))); + ADD_SIGNAL(MethodInfo("files_moved", PropertyInfo(Variant::STRING, "old_file"), PropertyInfo(Variant::STRING, "new_file"))); + ADD_SIGNAL(MethodInfo("folder_moved", PropertyInfo(Variant::STRING, "old_folder"), PropertyInfo(Variant::STRING, "new_file"))); } FileSystemDock::FileSystemDock(EditorNode *p_editor) { @@ -2464,6 +2483,8 @@ FileSystemDock::FileSystemDock(EditorNode *p_editor) { add_child(owners_editor); remove_dialog = memnew(DependencyRemoveDialog); + remove_dialog->connect("file_removed", this, "_file_deleted"); + remove_dialog->connect("folder_removed", this, "_folder_deleted"); add_child(remove_dialog); move_dialog = memnew(EditorDirDialog); diff --git a/editor/filesystem_dock.h b/editor/filesystem_dock.h index df6fa5f9d2..7692566c0b 100644 --- a/editor/filesystem_dock.h +++ b/editor/filesystem_dock.h @@ -202,13 +202,18 @@ private: void _get_all_items_in_dir(EditorFileSystemDirectory *efsd, Vector<String> &files, Vector<String> &folders) const; void _find_remaps(EditorFileSystemDirectory *efsd, const Map<String, String> &renames, Vector<String> &to_remaps) const; - void _try_move_item(const FileOrFolder &p_item, const String &p_new_path, Map<String, String> &p_file_renames, Map<String, String> &p_folder_renames) const; + void _try_move_item(const FileOrFolder &p_item, const String &p_new_path, Map<String, String> &p_file_renames, Map<String, String> &p_folder_renames); void _try_duplicate_item(const FileOrFolder &p_item, const String &p_new_path) const; void _update_dependencies_after_move(const Map<String, String> &p_renames) const; void _update_resource_paths_after_move(const Map<String, String> &p_renames) const; void _update_favorites_list_after_move(const Map<String, String> &p_files_renames, const Map<String, String> &p_folders_renames) const; void _update_project_settings_after_move(const Map<String, String> &p_folders_renames) const; + void _file_deleted(String p_file); + void _folder_deleted(String p_folder); + void _files_moved(String p_old_file, String p_new_file); + void _folder_moved(String p_old_folder, String p_new_folder); + void _resource_created() const; void _make_dir_confirm(); void _rename_operation_confirm(); diff --git a/editor/find_in_files.cpp b/editor/find_in_files.cpp index 705bb1d9c5..6ebe8cfe2c 100644 --- a/editor/find_in_files.cpp +++ b/editor/find_in_files.cpp @@ -44,8 +44,6 @@ #include "scene/gui/progress_bar.h" #include "scene/gui/tree.h" -#define ROOT_PREFIX "res://" - const char *FindInFiles::SIGNAL_RESULT_FOUND = "result_found"; const char *FindInFiles::SIGNAL_FINISHED = "finished"; @@ -89,7 +87,6 @@ static bool find_next(const String &line, String pattern, int from, bool match_c //-------------------------------------------------------------------------------- FindInFiles::FindInFiles() { - _root_prefix = ROOT_PREFIX; _searching = false; _whole_words = true; _match_case = true; @@ -182,7 +179,7 @@ void FindInFiles::_iterate() { _current_dir = _current_dir.plus_file(folder_name); PoolStringArray sub_dirs; - _scan_dir(_root_prefix + _current_dir, sub_dirs); + _scan_dir("res://" + _current_dir, sub_dirs); _folders_stack.push_back(sub_dirs); @@ -348,7 +345,7 @@ FindInFilesDialog::FindInFilesDialog() { HBoxContainer *hbc = memnew(HBoxContainer); Label *prefix_label = memnew(Label); - prefix_label->set_text(ROOT_PREFIX); + prefix_label->set_text("res://"); hbc->add_child(prefix_label); _folder_line_edit = memnew(LineEdit); @@ -375,10 +372,12 @@ FindInFilesDialog::FindInFilesDialog() { { HBoxContainer *hbc = memnew(HBoxContainer); + // TODO: Unhardcode this. Vector<String> exts; exts.push_back("gd"); if (Engine::get_singleton()->has_singleton("GodotSharp")) exts.push_back("cs"); + exts.push_back("shader"); for (int i = 0; i < exts.size(); ++i) { CheckBox *cb = memnew(CheckBox); diff --git a/editor/find_in_files.h b/editor/find_in_files.h index 7f37123430..9705c4796c 100644 --- a/editor/find_in_files.h +++ b/editor/find_in_files.h @@ -73,7 +73,6 @@ private: // Config String _pattern; Set<String> _extension_filter; - String _root_prefix; String _root_dir; bool _whole_words; bool _match_case; diff --git a/editor/import/editor_import_collada.cpp b/editor/import/editor_import_collada.cpp index cdc35a98e2..93c462f747 100644 --- a/editor/import/editor_import_collada.cpp +++ b/editor/import/editor_import_collada.cpp @@ -771,7 +771,7 @@ Error ColladaImport::_create_mesh_surfaces(bool p_optimize, Ref<ArrayMesh> &p_me int binormal_pos = (binormal_src->stride ? binormal_src->stride : 3) * p.indices[src + binormal_ofs]; ERR_FAIL_INDEX_V(binormal_pos, binormal_src->array.size(), ERR_INVALID_DATA); - Vector3 binormal = Vector3(-binormal_src->array[binormal_pos + 0], -binormal_src->array[binormal_pos + 1], -binormal_src->array[binormal_pos + 2]); // Due to Godots face order it seems we need to flip our binormal! + Vector3 binormal = Vector3(binormal_src->array[binormal_pos + 0], binormal_src->array[binormal_pos + 1], binormal_src->array[binormal_pos + 2]); int tangent_pos = (tangent_src->stride ? tangent_src->stride : 3) * p.indices[src + tangent_ofs]; ERR_FAIL_INDEX_V(tangent_pos, tangent_src->array.size(), ERR_INVALID_DATA); @@ -1191,6 +1191,7 @@ Error ColladaImport::_create_resources(Collada::Node *p_node, bool p_use_compres if (collada.state.mesh_data_map.has(meshid)) { Ref<ArrayMesh> mesh = Ref<ArrayMesh>(memnew(ArrayMesh)); const Collada::MeshData &meshdata = collada.state.mesh_data_map[meshid]; + mesh->set_name(meshdata.name); Error err = _create_mesh_surfaces(false, mesh, ng->material_map, meshdata, apply_xform, bone_remap, skin, NULL, Vector<Ref<ArrayMesh> >(), false); ERR_FAIL_COND_V(err, err); diff --git a/editor/import/editor_scene_importer_gltf.cpp b/editor/import/editor_scene_importer_gltf.cpp index 00ca86a43b..b5d646d5d4 100644 --- a/editor/import/editor_scene_importer_gltf.cpp +++ b/editor/import/editor_scene_importer_gltf.cpp @@ -899,16 +899,7 @@ Error EditorSceneImporterGLTF::_parse_meshes(GLTFState &state) { array[Mesh::ARRAY_NORMAL] = _decode_accessor_as_vec3(state, a["NORMAL"], true); } if (a.has("TANGENT")) { - PoolVector<float> tans = _decode_accessor_as_floats(state, a["TANGENT"], true); - { // we need our binormals inversed, so flip our w component. - int ts = tans.size(); - PoolVector<float>::Write w = tans.write(); - - for (int j = 3; j < ts; j += 4) { - w[j] *= -1.0; - } - } - array[Mesh::ARRAY_TANGENT] = tans; + array[Mesh::ARRAY_TANGENT] = _decode_accessor_as_floats(state, a["TANGENT"], true); } if (a.has("TEXCOORD_0")) { array[Mesh::ARRAY_TEX_UV] = _decode_accessor_as_vec2(state, a["TEXCOORD_0"], true); diff --git a/editor/import/editor_scene_importer_gltf.h b/editor/import/editor_scene_importer_gltf.h index 8258ec41fd..721db30112 100644 --- a/editor/import/editor_scene_importer_gltf.h +++ b/editor/import/editor_scene_importer_gltf.h @@ -114,14 +114,14 @@ class EditorSceneImporterGLTF : public EditorSceneImporter { Vector<int> children; Vector<Node *> godot_nodes; - GLTFNode() { - // child_of_skeleton = -1; - // skeleton_skin = -1; - mesh = -1; - camera = -1; - parent = -1; - skin = -1; - scale = Vector3(1, 1, 1); + GLTFNode() : + parent(-1), + mesh(-1), + camera(-1), + skin(-1), + //skeleton_skin(-1), + //child_of_skeleton(-1), + scale(Vector3(1, 1, 1)) { } }; @@ -134,12 +134,12 @@ class EditorSceneImporterGLTF : public EditorSceneImporter { bool indices; //matrices need to be transformed to this - GLTFBufferView() { - buffer = 0; - byte_offset = 0; - byte_length = 0; - byte_stride = 0; - indices = false; + GLTFBufferView() : + buffer(0), + byte_offset(0), + byte_length(0), + byte_stride(0), + indices(false) { } }; diff --git a/editor/import/resource_importer_wav.cpp b/editor/import/resource_importer_wav.cpp index 55f4cc7439..85ea0d343c 100644 --- a/editor/import/resource_importer_wav.cpp +++ b/editor/import/resource_importer_wav.cpp @@ -272,12 +272,18 @@ Error ResourceImporterWAV::import(const String &p_source_file, const String &p_s for (int i = 0; i < 10; i++) file->get_32(); // i wish to know why should i do this... no doc! - // only read 0x00 (loop forward) and 0x01 (loop ping-pong) and skip anything else because - // it's not supported (loop backward), reserved for future uses or sampler specific + // only read 0x00 (loop forward), 0x01 (loop ping-pong) and 0x02 (loop backward) + // Skip anything else because it's not supported, reserved for future uses or sampler specific // from https://sites.google.com/site/musicgapi/technical-documents/wav-file-format#smpl (loop type values table) int loop_type = file->get_32(); - if (loop_type == 0x00 || loop_type == 0x01) { - loop = loop_type ? AudioStreamSample::LOOP_PING_PONG : AudioStreamSample::LOOP_FORWARD; + if (loop_type == 0x00 || loop_type == 0x01 || loop_type == 0x02) { + if (loop_type == 0x00) { + loop = AudioStreamSample::LOOP_FORWARD; + } else if (loop_type == 0x01) { + loop = AudioStreamSample::LOOP_PING_PONG; + } else if (loop_type == 0x02) { + loop = AudioStreamSample::LOOP_BACKWARD; + } loop_begin = file->get_32(); loop_end = file->get_32(); } diff --git a/editor/plugins/abstract_polygon_2d_editor.cpp b/editor/plugins/abstract_polygon_2d_editor.cpp index 16423decc4..cc030dac4c 100644 --- a/editor/plugins/abstract_polygon_2d_editor.cpp +++ b/editor/plugins/abstract_polygon_2d_editor.cpp @@ -103,6 +103,11 @@ bool AbstractPolygon2DEditor::_is_line() const { return false; } +bool AbstractPolygon2DEditor::_has_uv() const { + + return false; +} + int AbstractPolygon2DEditor::_get_polygon_count() const { return 1; @@ -202,12 +207,7 @@ void AbstractPolygon2DEditor::_notification(int p_what) { button_edit->set_pressed(true); get_tree()->connect("node_removed", this, "_node_removed"); - create_resource->connect("confirmed", this, "_create_resource"); - - } break; - case NOTIFICATION_PHYSICS_PROCESS: { - } break; } } @@ -250,8 +250,12 @@ void AbstractPolygon2DEditor::_wip_close() { _set_polygon(0, wip); } else if (wip.size() >= (_is_line() ? 2 : 3)) { - undo_redo->create_action(TTR("Create Poly")); + undo_redo->create_action(TTR("Create Polygon")); _action_add_polygon(wip); + if (_has_uv()) { + undo_redo->add_do_method(_get_node(), "set_uv", PoolVector<Vector2>()); + undo_redo->add_undo_method(_get_node(), "set_uv", _get_node()->get("uv")); + } _commit_action(); } else { @@ -313,7 +317,7 @@ bool AbstractPolygon2DEditor::forward_gui_input(const Ref<InputEvent> &p_event) if (vertices.size() < (_is_line() ? 2 : 3)) { vertices.push_back(cpoint); - undo_redo->create_action(TTR("Edit Poly")); + undo_redo->create_action(TTR("Edit Polygon")); selected_point = Vertex(insert.polygon, vertices.size()); _action_set_polygon(insert.polygon, vertices); _commit_action(); @@ -331,7 +335,6 @@ bool AbstractPolygon2DEditor::forward_gui_input(const Ref<InputEvent> &p_event) undo_redo->create_action(TTR("Insert Point")); _action_set_polygon(insert.polygon, vertices); _commit_action(); - return true; } } else { @@ -363,7 +366,7 @@ bool AbstractPolygon2DEditor::forward_gui_input(const Ref<InputEvent> &p_event) ERR_FAIL_INDEX_V(edited_point.vertex, vertices.size(), false); vertices.write[edited_point.vertex] = edited_point.pos - _get_offset(edited_point.polygon); - undo_redo->create_action(TTR("Edit Poly")); + undo_redo->create_action(TTR("Edit Polygon")); _action_set_polygon(edited_point.polygon, pre_move_edit, vertices); _commit_action(); @@ -531,6 +534,7 @@ bool AbstractPolygon2DEditor::forward_gui_input(const Ref<InputEvent> &p_event) } void AbstractPolygon2DEditor::forward_canvas_draw_over_viewport(Control *p_overlay) { + if (!_get_node()) return; @@ -631,9 +635,11 @@ void AbstractPolygon2DEditor::edit(Node *p_polygon) { _set_node(p_polygon); - //Enable the pencil tool if the polygon is empty + // Enable the pencil tool if the polygon is empty. if (_is_empty()) _menu_option(MODE_CREATE); + else + _menu_option(MODE_EDIT); wip.clear(); wip_active = false; @@ -664,12 +670,12 @@ void AbstractPolygon2DEditor::remove_point(const Vertex &p_vertex) { vertices.remove(p_vertex.vertex); - undo_redo->create_action(TTR("Edit Poly (Remove Point)")); + undo_redo->create_action(TTR("Edit Polygon (Remove Point)")); _action_set_polygon(p_vertex.polygon, vertices); _commit_action(); } else { - undo_redo->create_action(TTR("Remove Poly And Point")); + undo_redo->create_action(TTR("Remove Polygon And Point")); _action_remove_polygon(p_vertex.polygon); _commit_action(); } @@ -777,19 +783,19 @@ AbstractPolygon2DEditor::AbstractPolygon2DEditor(EditorNode *p_editor, bool p_wi add_child(button_create); button_create->connect("pressed", this, "_menu_option", varray(MODE_CREATE)); button_create->set_toggle_mode(true); - button_create->set_tooltip(TTR("Create a new polygon from scratch")); + button_create->set_tooltip(TTR("Create points.")); button_edit = memnew(ToolButton); add_child(button_edit); button_edit->connect("pressed", this, "_menu_option", varray(MODE_EDIT)); button_edit->set_toggle_mode(true); - button_edit->set_tooltip(TTR("Edit existing polygon:\nLMB: Move Point.\nCtrl+LMB: Split Segment.\nRMB: Erase Point.")); + button_edit->set_tooltip(TTR("Edit points.\nLMB: Move Point\nRMB: Erase Point")); button_delete = memnew(ToolButton); add_child(button_delete); button_delete->connect("pressed", this, "_menu_option", varray(MODE_DELETE)); button_delete->set_toggle_mode(true); - button_delete->set_tooltip(TTR("Delete points")); + button_delete->set_tooltip(TTR("Erase points.")); create_resource = memnew(ConfirmationDialog); add_child(create_resource); @@ -820,13 +826,11 @@ void AbstractPolygon2DEditorPlugin::make_visible(bool p_visible) { } } -AbstractPolygon2DEditorPlugin::AbstractPolygon2DEditorPlugin(EditorNode *p_node, AbstractPolygon2DEditor *p_polygon_editor, String p_class) { - - editor = p_node; - polygon_editor = p_polygon_editor; - klass = p_class; +AbstractPolygon2DEditorPlugin::AbstractPolygon2DEditorPlugin(EditorNode *p_node, AbstractPolygon2DEditor *p_polygon_editor, String p_class) : + polygon_editor(p_polygon_editor), + editor(p_node), + klass(p_class) { CanvasItemEditor::get_singleton()->add_control_to_menu_panel(polygon_editor); - polygon_editor->hide(); } diff --git a/editor/plugins/abstract_polygon_2d_editor.h b/editor/plugins/abstract_polygon_2d_editor.h index c03670f254..046e8540e7 100644 --- a/editor/plugins/abstract_polygon_2d_editor.h +++ b/editor/plugins/abstract_polygon_2d_editor.h @@ -88,12 +88,10 @@ class AbstractPolygon2DEditor : public HBoxContainer { protected: enum { - MODE_CREATE, MODE_EDIT, MODE_DELETE, MODE_CONT, - }; int mode; @@ -116,13 +114,12 @@ protected: PosVertex closest_edge_point(const Vector2 &p_pos) const; bool _is_empty() const; - void _commit_action(); -protected: virtual Node2D *_get_node() const = 0; virtual void _set_node(Node *p_polygon) = 0; virtual bool _is_line() const; + virtual bool _has_uv() const; virtual int _get_polygon_count() const; virtual Vector2 _get_offset(int p_idx) const; virtual Variant _get_polygon(int p_idx) const; @@ -132,6 +129,7 @@ protected: virtual void _action_remove_polygon(int p_idx); virtual void _action_set_polygon(int p_idx, const Variant &p_polygon); virtual void _action_set_polygon(int p_idx, const Variant &p_previous, const Variant &p_polygon); + virtual void _commit_action(); virtual bool _has_resource() const; virtual void _create_resource(); diff --git a/editor/plugins/animation_blend_tree_editor_plugin.h b/editor/plugins/animation_blend_tree_editor_plugin.h index e2daefdec6..e7934ea3a0 100644 --- a/editor/plugins/animation_blend_tree_editor_plugin.h +++ b/editor/plugins/animation_blend_tree_editor_plugin.h @@ -70,9 +70,9 @@ class AnimationNodeBlendTreeEditor : public AnimationTreeNodeEditorPlugin { String name; String type; Ref<Script> script; - AddOption(const String &p_name = String(), const String &p_type = String()) { - name = p_name; - type = p_type; + AddOption(const String &p_name = String(), const String &p_type = String()) : + name(p_name), + type(p_type) { } }; diff --git a/editor/plugins/canvas_item_editor_plugin.cpp b/editor/plugins/canvas_item_editor_plugin.cpp index ee2283a035..8d9872236c 100644 --- a/editor/plugins/canvas_item_editor_plugin.cpp +++ b/editor/plugins/canvas_item_editor_plugin.cpp @@ -4606,7 +4606,7 @@ CanvasItemEditor::CanvasItemEditor(EditorNode *p_editor) { warning_child_of_container = memnew(Label); warning_child_of_container->hide(); - warning_child_of_container->set_text("Warning: Children of a container get their position and size determined only by their parent"); + warning_child_of_container->set_text(TTR("Warning: Children of a container get their position and size determined only by their parent")); add_control_to_info_overlay(warning_child_of_container); h_scroll = memnew(HScrollBar); @@ -4626,19 +4626,19 @@ CanvasItemEditor::CanvasItemEditor(EditorNode *p_editor) { zoom_minus = memnew(ToolButton); zoom_hb->add_child(zoom_minus); zoom_minus->connect("pressed", this, "_button_zoom_minus"); - zoom_minus->set_shortcut(ED_SHORTCUT("canvas_item_editor/zoom_minus", TTR("Zoom out"), KEY_MASK_CMD | KEY_MINUS)); + zoom_minus->set_shortcut(ED_SHORTCUT("canvas_item_editor/zoom_minus", TTR("Zoom Out"), KEY_MASK_CMD | KEY_MINUS)); zoom_minus->set_focus_mode(FOCUS_NONE); zoom_reset = memnew(ToolButton); zoom_hb->add_child(zoom_reset); zoom_reset->connect("pressed", this, "_button_zoom_reset"); - zoom_reset->set_shortcut(ED_SHORTCUT("canvas_item_editor/zoom_reset", TTR("Zoom reset"), KEY_MASK_CMD | KEY_0)); + zoom_reset->set_shortcut(ED_SHORTCUT("canvas_item_editor/zoom_reset", TTR("Zoom Reset"), KEY_MASK_CMD | KEY_0)); zoom_reset->set_focus_mode(FOCUS_NONE); zoom_plus = memnew(ToolButton); zoom_hb->add_child(zoom_plus); zoom_plus->connect("pressed", this, "_button_zoom_plus"); - zoom_plus->set_shortcut(ED_SHORTCUT("canvas_item_editor/zoom_plus", TTR("Zoom in"), KEY_MASK_CMD | KEY_EQUAL)); // Usually direct access key for PLUS + zoom_plus->set_shortcut(ED_SHORTCUT("canvas_item_editor/zoom_plus", TTR("Zoom In"), KEY_MASK_CMD | KEY_EQUAL)); // Usually direct access key for PLUS zoom_plus->set_focus_mode(FOCUS_NONE); updating_scroll = false; diff --git a/editor/plugins/collision_polygon_editor_plugin.cpp b/editor/plugins/collision_polygon_editor_plugin.cpp index 805a7d3835..e92a91db7c 100644 --- a/editor/plugins/collision_polygon_editor_plugin.cpp +++ b/editor/plugins/collision_polygon_editor_plugin.cpp @@ -95,7 +95,7 @@ void Polygon3DEditor::_menu_option(int p_option) { void Polygon3DEditor::_wip_close() { - undo_redo->create_action(TTR("Create Poly3D")); + undo_redo->create_action(TTR("Create Polygon3D")); undo_redo->add_undo_method(node, "set_polygon", node->call("get_polygon")); undo_redo->add_do_method(node, "set_polygon", wip); undo_redo->add_do_method(this, "_polygon_draw"); diff --git a/editor/plugins/light_occluder_2d_editor_plugin.cpp b/editor/plugins/light_occluder_2d_editor_plugin.cpp index 6a16cf0989..646883fbda 100644 --- a/editor/plugins/light_occluder_2d_editor_plugin.cpp +++ b/editor/plugins/light_occluder_2d_editor_plugin.cpp @@ -30,425 +30,91 @@ #include "light_occluder_2d_editor_plugin.h" -#include "canvas_item_editor_plugin.h" -#include "core/os/file_access.h" -#include "editor/editor_settings.h" +Ref<OccluderPolygon2D> LightOccluder2DEditor::_ensure_occluder() const { -void LightOccluder2DEditor::_notification(int p_what) { + Ref<OccluderPolygon2D> occluder = node->get_occluder_polygon(); + if (!occluder.is_valid()) { - switch (p_what) { - - case NOTIFICATION_READY: { - - button_create->set_icon(get_icon("Edit", "EditorIcons")); - button_edit->set_icon(get_icon("MovePoint", "EditorIcons")); - button_edit->set_pressed(true); - get_tree()->connect("node_removed", this, "_node_removed"); - create_poly->connect("confirmed", this, "_create_poly"); - - } break; - case NOTIFICATION_PHYSICS_PROCESS: { - - } break; - } -} -void LightOccluder2DEditor::_node_removed(Node *p_node) { - - if (p_node == node) { - node = NULL; - hide(); - canvas_item_editor->update_viewport(); + occluder = Ref<OccluderPolygon2D>(memnew(OccluderPolygon2D)); + node->set_occluder_polygon(occluder); } + return occluder; } -void LightOccluder2DEditor::_menu_option(int p_option) { +Node2D *LightOccluder2DEditor::_get_node() const { - switch (p_option) { - - case MODE_CREATE: { - - mode = MODE_CREATE; - button_create->set_pressed(true); - button_edit->set_pressed(false); - } break; - case MODE_EDIT: { - - mode = MODE_EDIT; - button_create->set_pressed(false); - button_edit->set_pressed(true); - } break; - } + return node; } -void LightOccluder2DEditor::_wip_close(bool p_closed) { - - undo_redo->create_action(TTR("Create Poly")); - undo_redo->add_undo_method(node->get_occluder_polygon().ptr(), "set_polygon", node->get_occluder_polygon()->get_polygon()); - undo_redo->add_do_method(node->get_occluder_polygon().ptr(), "set_polygon", wip); - undo_redo->add_undo_method(node->get_occluder_polygon().ptr(), "set_closed", node->get_occluder_polygon()->is_closed()); - undo_redo->add_do_method(node->get_occluder_polygon().ptr(), "set_closed", p_closed); +void LightOccluder2DEditor::_set_node(Node *p_polygon) { - undo_redo->add_do_method(canvas_item_editor, "update_viewport"); - undo_redo->add_undo_method(canvas_item_editor, "update_viewport"); - undo_redo->commit_action(); - wip.clear(); - wip_active = false; - mode = MODE_EDIT; - button_edit->set_pressed(true); - button_create->set_pressed(false); - edited_point = -1; + node = Object::cast_to<LightOccluder2D>(p_polygon); } -bool LightOccluder2DEditor::forward_gui_input(const Ref<InputEvent> &p_event) { +bool LightOccluder2DEditor::_is_line() const { - if (!node) + Ref<OccluderPolygon2D> occluder = node->get_occluder_polygon(); + if (occluder.is_valid()) + return !occluder->is_closed(); + else return false; - - if (node->get_occluder_polygon().is_null()) { - Ref<InputEventMouseButton> mb = p_event; - if (mb.is_valid() && mb->get_button_index() == 1 && mb->is_pressed()) { - create_poly->set_text(TTR("No OccluderPolygon2D resource on this node.\nCreate and assign one?")); - create_poly->popup_centered_minsize(); - } - return (mb.is_valid() && mb->get_button_index() == 1); - } - - Ref<InputEventMouseButton> mb = p_event; - - if (mb.is_valid()) { - - Transform2D xform = canvas_item_editor->get_canvas_transform() * node->get_global_transform(); - - Vector2 gpoint = mb->get_position(); - Vector2 cpoint = node->get_global_transform().affine_inverse().xform(canvas_item_editor->snap_point(canvas_item_editor->get_canvas_transform().affine_inverse().xform(mb->get_position()))); - - Vector<Vector2> poly = Variant(node->get_occluder_polygon()->get_polygon()); - - //first check if a point is to be added (segment split) - real_t grab_threshold = EDITOR_DEF("editors/poly_editor/point_grab_radius", 8); - - switch (mode) { - - case MODE_CREATE: { - - if (mb->get_button_index() == BUTTON_LEFT && mb->is_pressed()) { - - if (!wip_active) { - - wip.clear(); - wip.push_back(cpoint); - wip_active = true; - edited_point_pos = cpoint; - canvas_item_editor->update_viewport(); - edited_point = 1; - return true; - } else { - - if (wip.size() > 1 && xform.xform(wip[0]).distance_to(gpoint) < grab_threshold) { - //wip closed - _wip_close(true); - - return true; - } else if (wip.size() > 1 && xform.xform(wip[wip.size() - 1]).distance_to(gpoint) < grab_threshold) { - //wip closed - _wip_close(false); - return true; - - } else { - - wip.push_back(cpoint); - edited_point = wip.size(); - canvas_item_editor->update_viewport(); - return true; - - //add wip point - } - } - } else if (mb->get_button_index() == BUTTON_RIGHT && mb->is_pressed() && wip_active) { - _wip_close(true); - } - - } break; - - case MODE_EDIT: { - - if (mb->get_button_index() == BUTTON_LEFT) { - if (mb->is_pressed()) { - - if (mb->get_control()) { - - if (poly.size() < 3) { - - undo_redo->create_action(TTR("Edit Poly")); - undo_redo->add_undo_method(node->get_occluder_polygon().ptr(), "set_polygon", poly); - poly.push_back(cpoint); - undo_redo->add_do_method(node->get_occluder_polygon().ptr(), "set_polygon", poly); - undo_redo->add_do_method(canvas_item_editor, "update_viewport"); - undo_redo->add_undo_method(canvas_item_editor, "update_viewport"); - undo_redo->commit_action(); - return true; - } - - //search edges - int closest_idx = -1; - Vector2 closest_pos; - real_t closest_dist = 1e10; - for (int i = 0; i < poly.size(); i++) { - - Vector2 points[2] = { xform.xform(poly[i]), - xform.xform(poly[(i + 1) % poly.size()]) }; - - Vector2 cp = Geometry::get_closest_point_to_segment_2d(gpoint, points); - if (cp.distance_squared_to(points[0]) < CMP_EPSILON2 || cp.distance_squared_to(points[1]) < CMP_EPSILON2) - continue; //not valid to reuse point - - real_t d = cp.distance_to(gpoint); - if (d < closest_dist && d < grab_threshold) { - closest_dist = d; - closest_pos = cp; - closest_idx = i; - } - } - - if (closest_idx >= 0) { - - pre_move_edit = poly; - poly.insert(closest_idx + 1, xform.affine_inverse().xform(closest_pos)); - edited_point = closest_idx + 1; - edited_point_pos = xform.affine_inverse().xform(closest_pos); - node->get_occluder_polygon()->set_polygon(Variant(poly)); - canvas_item_editor->update_viewport(); - return true; - } - } else { - - //look for points to move - - int closest_idx = -1; - Vector2 closest_pos; - real_t closest_dist = 1e10; - for (int i = 0; i < poly.size(); i++) { - - Vector2 cp = xform.xform(poly[i]); - - real_t d = cp.distance_to(gpoint); - if (d < closest_dist && d < grab_threshold) { - closest_dist = d; - closest_pos = cp; - closest_idx = i; - } - } - - if (closest_idx >= 0) { - - pre_move_edit = poly; - edited_point = closest_idx; - edited_point_pos = xform.affine_inverse().xform(closest_pos); - canvas_item_editor->update_viewport(); - return true; - } - } - } else { - - if (edited_point != -1) { - - //apply - - ERR_FAIL_INDEX_V(edited_point, poly.size(), false); - poly.write[edited_point] = edited_point_pos; - undo_redo->create_action(TTR("Edit Poly")); - undo_redo->add_do_method(node->get_occluder_polygon().ptr(), "set_polygon", poly); - undo_redo->add_undo_method(node->get_occluder_polygon().ptr(), "set_polygon", pre_move_edit); - undo_redo->add_do_method(canvas_item_editor, "update_viewport"); - undo_redo->add_undo_method(canvas_item_editor, "update_viewport"); - undo_redo->commit_action(); - - edited_point = -1; - return true; - } - } - } else if (mb->get_button_index() == BUTTON_RIGHT && mb->is_pressed() && edited_point == -1) { - - int closest_idx = -1; - Vector2 closest_pos; - real_t closest_dist = 1e10; - for (int i = 0; i < poly.size(); i++) { - - Vector2 cp = xform.xform(poly[i]); - - real_t d = cp.distance_to(gpoint); - if (d < closest_dist && d < grab_threshold) { - closest_dist = d; - closest_pos = cp; - closest_idx = i; - } - } - - if (closest_idx >= 0) { - - undo_redo->create_action(TTR("Edit Poly (Remove Point)")); - undo_redo->add_undo_method(node->get_occluder_polygon().ptr(), "set_polygon", poly); - poly.remove(closest_idx); - undo_redo->add_do_method(node->get_occluder_polygon().ptr(), "set_polygon", poly); - undo_redo->add_do_method(canvas_item_editor, "update_viewport"); - undo_redo->add_undo_method(canvas_item_editor, "update_viewport"); - undo_redo->commit_action(); - return true; - } - } - - } break; - } - } - - Ref<InputEventMouseMotion> mm = p_event; - - if (mm.is_valid()) { - - if (edited_point != -1 && (wip_active || mm->get_button_mask() & BUTTON_MASK_LEFT)) { - - Vector2 gpoint = mm->get_position(); - Vector2 cpoint = canvas_item_editor->get_canvas_transform().affine_inverse().xform(gpoint); - cpoint = canvas_item_editor->snap_point(cpoint); - edited_point_pos = node->get_global_transform().affine_inverse().xform(cpoint); - - canvas_item_editor->update_viewport(); - } - } - - return false; } -void LightOccluder2DEditor::forward_canvas_draw_over_viewport(Control *p_overlay) { - - if (!node || !node->get_occluder_polygon().is_valid()) - return; - - Vector<Vector2> poly; +int LightOccluder2DEditor::_get_polygon_count() const { - if (wip_active) - poly = wip; + Ref<OccluderPolygon2D> occluder = node->get_occluder_polygon(); + if (occluder.is_valid()) + return occluder->get_polygon().size(); else - poly = Variant(node->get_occluder_polygon()->get_polygon()); - - Transform2D xform = canvas_item_editor->get_canvas_transform() * node->get_global_transform(); - Ref<Texture> handle = get_icon("EditorHandle", "EditorIcons"); - - for (int i = 0; i < poly.size(); i++) { - - Vector2 p, p2; - p = i == edited_point ? edited_point_pos : poly[i]; - if ((wip_active && i == poly.size() - 1) || (((i + 1) % poly.size()) == edited_point)) - p2 = edited_point_pos; - else - p2 = poly[(i + 1) % poly.size()]; + return 0; +} - Vector2 point = xform.xform(p); - Vector2 next_point = xform.xform(p2); +Variant LightOccluder2DEditor::_get_polygon(int p_idx) const { - Color col = Color(1, 0.3, 0.1, 0.8); + Ref<OccluderPolygon2D> occluder = node->get_occluder_polygon(); + if (occluder.is_valid()) + return occluder->get_polygon(); + else + return Variant(Vector<Vector2>()); +} - if (i == poly.size() - 1 && (!node->get_occluder_polygon()->is_closed() || wip_active)) { +void LightOccluder2DEditor::_set_polygon(int p_idx, const Variant &p_polygon) const { - } else { - p_overlay->draw_line(point, next_point, col, 2); - } - p_overlay->draw_texture(handle, point - handle->get_size() * 0.5); - } + Ref<OccluderPolygon2D> occluder = _ensure_occluder(); + occluder->set_polygon(p_polygon); } -void LightOccluder2DEditor::edit(Node *p_collision_polygon) { +void LightOccluder2DEditor::_action_set_polygon(int p_idx, const Variant &p_previous, const Variant &p_polygon) { - if (!canvas_item_editor) { - canvas_item_editor = CanvasItemEditor::get_singleton(); - } + Ref<OccluderPolygon2D> occluder = _ensure_occluder(); + undo_redo->add_do_method(occluder.ptr(), "set_polygon", p_polygon); + undo_redo->add_undo_method(occluder.ptr(), "set_polygon", p_previous); +} - if (p_collision_polygon) { +bool LightOccluder2DEditor::_has_resource() const { - node = Object::cast_to<LightOccluder2D>(p_collision_polygon); - wip.clear(); - wip_active = false; - edited_point = -1; - canvas_item_editor->update_viewport(); - } else { - node = NULL; - } + return node && node->get_occluder_polygon().is_valid(); } -void LightOccluder2DEditor::_create_poly() { +void LightOccluder2DEditor::_create_resource() { if (!node) return; + undo_redo->create_action(TTR("Create Occluder Polygon")); undo_redo->add_do_method(node, "set_occluder_polygon", Ref<OccluderPolygon2D>(memnew(OccluderPolygon2D))); undo_redo->add_undo_method(node, "set_occluder_polygon", Variant(REF())); undo_redo->commit_action(); -} - -void LightOccluder2DEditor::_bind_methods() { - ClassDB::bind_method(D_METHOD("_menu_option"), &LightOccluder2DEditor::_menu_option); - ClassDB::bind_method(D_METHOD("_node_removed"), &LightOccluder2DEditor::_node_removed); - ClassDB::bind_method(D_METHOD("_create_poly"), &LightOccluder2DEditor::_create_poly); + _menu_option(MODE_CREATE); } -LightOccluder2DEditor::LightOccluder2DEditor(EditorNode *p_editor) { +LightOccluder2DEditor::LightOccluder2DEditor(EditorNode *p_editor) : + AbstractPolygon2DEditor(p_editor) { node = NULL; - canvas_item_editor = NULL; - editor = p_editor; - undo_redo = editor->get_undo_redo(); - - add_child(memnew(VSeparator)); - button_create = memnew(ToolButton); - add_child(button_create); - button_create->connect("pressed", this, "_menu_option", varray(MODE_CREATE)); - button_create->set_toggle_mode(true); - button_create->set_tooltip(TTR("Create a new polygon from scratch.")); - - button_edit = memnew(ToolButton); - add_child(button_edit); - button_edit->connect("pressed", this, "_menu_option", varray(MODE_EDIT)); - button_edit->set_toggle_mode(true); - button_edit->set_tooltip(TTR("Edit existing polygon:") + "\n" + TTR("LMB: Move Point.") + "\n" + TTR("Ctrl+LMB: Split Segment.") + "\n" + TTR("RMB: Erase Point.")); - - create_poly = memnew(ConfirmationDialog); - add_child(create_poly); - create_poly->get_ok()->set_text(TTR("Create")); - - mode = MODE_EDIT; - wip_active = false; -} - -void LightOccluder2DEditorPlugin::edit(Object *p_object) { - - light_occluder_editor->edit(Object::cast_to<Node>(p_object)); -} - -bool LightOccluder2DEditorPlugin::handles(Object *p_object) const { - - return p_object->is_class("LightOccluder2D"); -} - -void LightOccluder2DEditorPlugin::make_visible(bool p_visible) { - - if (p_visible) { - light_occluder_editor->show(); - } else { - - light_occluder_editor->hide(); - light_occluder_editor->edit(NULL); - } -} - -LightOccluder2DEditorPlugin::LightOccluder2DEditorPlugin(EditorNode *p_node) { - - editor = p_node; - light_occluder_editor = memnew(LightOccluder2DEditor(p_node)); - CanvasItemEditor::get_singleton()->add_control_to_menu_panel(light_occluder_editor); - - light_occluder_editor->hide(); } -LightOccluder2DEditorPlugin::~LightOccluder2DEditorPlugin() { +LightOccluder2DEditorPlugin::LightOccluder2DEditorPlugin(EditorNode *p_node) : + AbstractPolygon2DEditorPlugin(p_node, memnew(LightOccluder2DEditor(p_node)), "LightOccluder2D") { } diff --git a/editor/plugins/light_occluder_2d_editor_plugin.h b/editor/plugins/light_occluder_2d_editor_plugin.h index a1962892ee..6117d50e89 100644 --- a/editor/plugins/light_occluder_2d_editor_plugin.h +++ b/editor/plugins/light_occluder_2d_editor_plugin.h @@ -31,83 +31,44 @@ #ifndef LIGHT_OCCLUDER_2D_EDITOR_PLUGIN_H #define LIGHT_OCCLUDER_2D_EDITOR_PLUGIN_H -#include "editor/editor_node.h" -#include "editor/editor_plugin.h" +#include "editor/plugins/abstract_polygon_2d_editor.h" #include "scene/2d/light_occluder_2d.h" -#include "scene/gui/tool_button.h" /** @author Juan Linietsky <reduzio@gmail.com> */ -class CanvasItemEditor; +class LightOccluder2DEditor : public AbstractPolygon2DEditor { -class LightOccluder2DEditor : public HBoxContainer { + GDCLASS(LightOccluder2DEditor, AbstractPolygon2DEditor); - GDCLASS(LightOccluder2DEditor, HBoxContainer); - - UndoRedo *undo_redo; - enum Mode { - - MODE_CREATE, - MODE_EDIT, - - }; - - Mode mode; - - ToolButton *button_create; - ToolButton *button_edit; - - CanvasItemEditor *canvas_item_editor; - EditorNode *editor; - Panel *panel; LightOccluder2D *node; - MenuButton *options; - int edited_point; - Vector2 edited_point_pos; - Vector<Vector2> pre_move_edit; - Vector<Vector2> wip; - bool wip_active; + Ref<OccluderPolygon2D> _ensure_occluder() const; - ConfirmationDialog *create_poly; +protected: + virtual Node2D *_get_node() const; + virtual void _set_node(Node *p_polygon); - void _wip_close(bool p_closed); - void _menu_option(int p_option); - void _create_poly(); + virtual bool _is_line() const; + virtual int _get_polygon_count() const; + virtual Variant _get_polygon(int p_idx) const; + virtual void _set_polygon(int p_idx, const Variant &p_polygon) const; -protected: - void _notification(int p_what); - void _node_removed(Node *p_node); - static void _bind_methods(); + virtual void _action_set_polygon(int p_idx, const Variant &p_previous, const Variant &p_polygon); + + virtual bool _has_resource() const; + virtual void _create_resource(); public: - Vector2 snap_point(const Vector2 &p_point) const; - void forward_canvas_draw_over_viewport(Control *p_overlay); - bool forward_gui_input(const Ref<InputEvent> &p_event); - void edit(Node *p_collision_polygon); LightOccluder2DEditor(EditorNode *p_editor); }; -class LightOccluder2DEditorPlugin : public EditorPlugin { +class LightOccluder2DEditorPlugin : public AbstractPolygon2DEditorPlugin { - GDCLASS(LightOccluder2DEditorPlugin, EditorPlugin); - - LightOccluder2DEditor *light_occluder_editor; - EditorNode *editor; + GDCLASS(LightOccluder2DEditorPlugin, AbstractPolygon2DEditorPlugin); public: - virtual bool forward_canvas_gui_input(const Ref<InputEvent> &p_event) { return light_occluder_editor->forward_gui_input(p_event); } - virtual void forward_canvas_draw_over_viewport(Control *p_overlay) { return light_occluder_editor->forward_canvas_draw_over_viewport(p_overlay); } - - virtual String get_name() const { return "LightOccluder2D"; } - bool has_main_screen() const { return false; } - virtual void edit(Object *p_object); - virtual bool handles(Object *p_object) const; - virtual void make_visible(bool p_visible); - LightOccluder2DEditorPlugin(EditorNode *p_node); - ~LightOccluder2DEditorPlugin(); }; #endif // LIGHT_OCCLUDER_2D_EDITOR_PLUGIN_H diff --git a/editor/plugins/polygon_2d_editor_plugin.cpp b/editor/plugins/polygon_2d_editor_plugin.cpp index 45268d8c8d..97448f3f88 100644 --- a/editor/plugins/polygon_2d_editor_plugin.cpp +++ b/editor/plugins/polygon_2d_editor_plugin.cpp @@ -56,6 +56,12 @@ void Polygon2DEditor::_notification(int p_what) { switch (p_what) { + case NOTIFICATION_ENTER_TREE: + case NOTIFICATION_THEME_CHANGED: { + + uv_edit_draw->add_style_override("panel", get_stylebox("bg", "Tree")); + bone_scroll->add_style_override("bg", get_stylebox("bg", "Tree")); + } break; case NOTIFICATION_READY: { button_uv->set_icon(get_icon("Uv", "EditorIcons")); @@ -73,66 +79,68 @@ void Polygon2DEditor::_notification(int p_what) { b_snap_grid->set_icon(get_icon("Grid", "EditorIcons")); b_snap_enable->set_icon(get_icon("SnapGrid", "EditorIcons")); uv_icon_zoom->set_texture(get_icon("Zoom", "EditorIcons")); - } break; - case NOTIFICATION_PHYSICS_PROCESS: { + case NOTIFICATION_VISIBILITY_CHANGED: { + if (!is_visible()) { + uv_edit->hide(); + } } break; } } void Polygon2DEditor::_sync_bones() { + Skeleton2D *skeleton; if (!node->has_node(node->get_skeleton())) { error->set_text(TTR("The skeleton property of the Polygon2D does not point to a Skeleton2D node")); error->popup_centered_minsize(); - return; + } else { + Node *sn = node->get_node(node->get_skeleton()); + skeleton = Object::cast_to<Skeleton2D>(sn); } - Node *sn = node->get_node(node->get_skeleton()); - Skeleton2D *skeleton = Object::cast_to<Skeleton2D>(sn); + Array prev_bones = node->call("_get_bones"); + node->clear_bones(); if (!skeleton) { error->set_text(TTR("The skeleton property of the Polygon2D does not point to a Skeleton2D node")); error->popup_centered_minsize(); - return; - } - - Array prev_bones = node->call("_get_bones"); - node->clear_bones(); - - for (int i = 0; i < skeleton->get_bone_count(); i++) { - NodePath path = skeleton->get_path_to(skeleton->get_bone(i)); - PoolVector<float> weights; - int wc = node->get_polygon().size(); - - for (int j = 0; j < prev_bones.size(); j += 2) { - NodePath pvp = prev_bones[j]; - PoolVector<float> pv = prev_bones[j + 1]; - if (pvp == path && pv.size() == wc) { - weights = pv; + } else { + for (int i = 0; i < skeleton->get_bone_count(); i++) { + NodePath path = skeleton->get_path_to(skeleton->get_bone(i)); + PoolVector<float> weights; + int wc = node->get_polygon().size(); + + for (int j = 0; j < prev_bones.size(); j += 2) { + NodePath pvp = prev_bones[j]; + PoolVector<float> pv = prev_bones[j + 1]; + if (pvp == path && pv.size() == wc) { + weights = pv; + } } - } - if (weights.size() == 0) { //create them - weights.resize(node->get_polygon().size()); - PoolVector<float>::Write w = weights.write(); - for (int j = 0; j < wc; j++) { - w[j] = 0.0; + if (weights.size() == 0) { //create them + weights.resize(node->get_polygon().size()); + PoolVector<float>::Write w = weights.write(); + for (int j = 0; j < wc; j++) { + w[j] = 0.0; + } } - } - node->add_bone(path, weights); + node->add_bone(path, weights); + } } + Array new_bones = node->call("_get_bones"); - undo_redo->create_action(TTR("Sync bones")); + undo_redo->create_action(TTR("Sync Bones")); undo_redo->add_do_method(node, "_set_bones", new_bones); undo_redo->add_undo_method(node, "_set_bones", prev_bones); - undo_redo->add_do_method(uv_edit_draw, "update"); - undo_redo->add_undo_method(uv_edit_draw, "update"); undo_redo->add_do_method(this, "_update_bone_list"); undo_redo->add_undo_method(this, "_update_bone_list"); + undo_redo->add_do_method(uv_edit_draw, "update"); + undo_redo->add_undo_method(uv_edit_draw, "update"); undo_redo->commit_action(); } @@ -162,9 +170,10 @@ void Polygon2DEditor::_update_bone_list() { cb->set_text(name); cb->set_button_group(bg); cb->set_meta("bone_path", np); + cb->set_focus_mode(FOCUS_NONE); bone_scroll_vb->add_child(cb); - if (np == selected) + if (np == selected || bone_scroll_vb->get_child_count() < 2) cb->set_pressed(true); cb->connect("pressed", this, "_bone_paint_selected", varray(i)); @@ -180,6 +189,7 @@ void Polygon2DEditor::_bone_paint_selected(int p_index) { void Polygon2DEditor::_uv_edit_mode_select(int p_mode) { if (p_mode == 0) { //uv + uv_button[UV_MODE_CREATE]->hide(); for (int i = UV_MODE_MOVE; i <= UV_MODE_SCALE; i++) { uv_button[i]->show(); @@ -194,8 +204,8 @@ void Polygon2DEditor::_uv_edit_mode_select(int p_mode) { bone_paint_strength->hide(); bone_paint_radius->hide(); bone_paint_radius_label->hide(); - } else if (p_mode == 1) { //poly + for (int i = 0; i <= UV_MODE_SCALE; i++) { uv_button[i]->show(); } @@ -209,8 +219,8 @@ void Polygon2DEditor::_uv_edit_mode_select(int p_mode) { bone_paint_strength->hide(); bone_paint_radius->hide(); bone_paint_radius_label->hide(); - } else if (p_mode == 2) { //splits + for (int i = 0; i <= UV_MODE_SCALE; i++) { uv_button[i]->hide(); } @@ -224,8 +234,8 @@ void Polygon2DEditor::_uv_edit_mode_select(int p_mode) { bone_paint_strength->hide(); bone_paint_radius->hide(); bone_paint_radius_label->hide(); - } else if (p_mode == 3) { //bones´ + for (int i = 0; i <= UV_MODE_REMOVE_SPLIT; i++) { uv_button[i]->hide(); } @@ -241,9 +251,17 @@ void Polygon2DEditor::_uv_edit_mode_select(int p_mode) { bone_paint_pos = Vector2(-100000, -100000); //send brush away when switching } + uv_edit->set_size(uv_edit->get_size()); // Necessary readjustment of the popup window. uv_edit_draw->update(); } +void Polygon2DEditor::_uv_edit_popup_hide() { + + EditorSettings::get_singleton()->set("interface/dialogs/uv_editor_bounds", uv_edit->get_rect()); + + _cancel_editing(); +} + void Polygon2DEditor::_menu_option(int p_option) { switch (p_option) { @@ -252,7 +270,7 @@ void Polygon2DEditor::_menu_option(int p_option) { if (node->get_texture().is_null()) { - error->set_text("No texture in this polygon.\nSet a texture to be able to edit UV."); + error->set_text(TTR("No texture in this polygon.\nSet a texture to be able to edit UV.")); error->popup_centered_minsize(); return; } @@ -268,7 +286,10 @@ void Polygon2DEditor::_menu_option(int p_option) { undo_redo->commit_action(); } - uv_edit->popup_centered_ratio(0.85); + if (EditorSettings::get_singleton()->has_setting("interface/dialogs/uv_editor_bounds")) + uv_edit->popup(EditorSettings::get_singleton()->get("interface/dialogs/uv_editor_bounds")); + else + uv_edit->popup_centered_ratio(0.85); } break; case UVEDIT_POLYGON_TO_UV: { @@ -282,7 +303,6 @@ void Polygon2DEditor::_menu_option(int p_option) { undo_redo->add_do_method(uv_edit_draw, "update"); undo_redo->add_undo_method(uv_edit_draw, "update"); undo_redo->commit_action(); - } break; case UVEDIT_UV_TO_POLYGON: { @@ -291,13 +311,12 @@ void Polygon2DEditor::_menu_option(int p_option) { if (uvs.size() == 0) break; - undo_redo->create_action(TTR("Create UV Map")); + undo_redo->create_action(TTR("Create Polygon")); undo_redo->add_do_method(node, "set_polygon", uvs); undo_redo->add_undo_method(node, "set_polygon", points); undo_redo->add_do_method(uv_edit_draw, "update"); undo_redo->add_undo_method(uv_edit_draw, "update"); undo_redo->commit_action(); - } break; case UVEDIT_UV_CLEAR: { @@ -310,43 +329,81 @@ void Polygon2DEditor::_menu_option(int p_option) { undo_redo->add_do_method(uv_edit_draw, "update"); undo_redo->add_undo_method(uv_edit_draw, "update"); undo_redo->commit_action(); - } break; case UVEDIT_GRID_SETTINGS: { + grid_settings->popup_centered_minsize(); } break; default: { + AbstractPolygon2DEditor::_menu_option(p_option); } break; } } +void Polygon2DEditor::_cancel_editing() { + + if (uv_create) { + uv_drag = false; + uv_create = false; + node->set_uv(uv_create_uv_prev); + node->set_polygon(uv_create_poly_prev); + node->call("_set_bones", uv_create_bones_prev); + node->set_splits(splits_prev); + } else if (uv_drag) { + uv_drag = false; + if (uv_edit_mode[0]->is_pressed()) { // Edit UV. + node->set_uv(points_prev); + } else if (uv_edit_mode[1]->is_pressed()) { // Edit polygon. + node->set_polygon(points_prev); + } + } else if (split_create) { + split_create = false; + } +} + +void Polygon2DEditor::_commit_action() { + + // Makes that undo/redoing actions made outside of the UV editor still affects its polygon. + undo_redo->add_do_method(uv_edit_draw, "update"); + undo_redo->add_undo_method(uv_edit_draw, "update"); + undo_redo->add_do_method(CanvasItemEditor::get_singleton(), "update_viewport"); + undo_redo->add_undo_method(CanvasItemEditor::get_singleton(), "update_viewport"); + undo_redo->commit_action(); +} + void Polygon2DEditor::_set_use_snap(bool p_use) { use_snap = p_use; + EditorSettings::get_singleton()->set_project_metadata("polygon_2d_uv_editor", "snap_enabled", p_use); } void Polygon2DEditor::_set_show_grid(bool p_show) { snap_show_grid = p_show; + EditorSettings::get_singleton()->set_project_metadata("polygon_2d_uv_editor", "show_grid", p_show); uv_edit_draw->update(); } void Polygon2DEditor::_set_snap_off_x(float p_val) { snap_offset.x = p_val; + EditorSettings::get_singleton()->set_project_metadata("polygon_2d_uv_editor", "snap_offset", snap_offset); uv_edit_draw->update(); } void Polygon2DEditor::_set_snap_off_y(float p_val) { snap_offset.y = p_val; + EditorSettings::get_singleton()->set_project_metadata("polygon_2d_uv_editor", "snap_offset", snap_offset); uv_edit_draw->update(); } void Polygon2DEditor::_set_snap_step_x(float p_val) { snap_step.x = p_val; + EditorSettings::get_singleton()->set_project_metadata("polygon_2d_uv_editor", "snap_step", snap_step); uv_edit_draw->update(); } void Polygon2DEditor::_set_snap_step_y(float p_val) { snap_step.y = p_val; + EditorSettings::get_singleton()->set_project_metadata("polygon_2d_uv_editor", "snap_step", snap_step); uv_edit_draw->update(); } @@ -364,6 +421,9 @@ void Polygon2DEditor::_uv_mode(int p_mode) { void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { + if (!_get_node()) + return; + Transform2D mtx; mtx.elements[2] = -uv_draw_ofs; mtx.scale_basis(Vector2(uv_draw_zoom, uv_draw_zoom)); @@ -376,7 +436,7 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { if (mb->is_pressed()) { - uv_drag_from = Vector2(mb->get_position().x, mb->get_position().y); + uv_drag_from = snap_point(Vector2(mb->get_position().x, mb->get_position().y)); uv_drag = true; points_prev = node->get_uv(); @@ -390,8 +450,9 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { if (uv_move_current == UV_MODE_CREATE) { if (!uv_create) { + points_prev.resize(0); - Vector2 tuv = mtx.affine_inverse().xform(Vector2(mb->get_position().x, mb->get_position().y)); + Vector2 tuv = mtx.affine_inverse().xform(snap_point(Vector2(mb->get_position().x, mb->get_position().y))); points_prev.push_back(tuv); uv_create_to = tuv; point_drag_index = 0; @@ -405,23 +466,27 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { node->set_polygon(points_prev); node->set_uv(points_prev); + uv_edit_draw->update(); } else { - Vector2 tuv = mtx.affine_inverse().xform(Vector2(mb->get_position().x, mb->get_position().y)); - if (points_prev.size() > 3 && tuv.distance_to(points_prev[0]) < 8) { + Vector2 tuv = mtx.affine_inverse().xform(snap_point(Vector2(mb->get_position().x, mb->get_position().y))); + + if (points_prev.size() > 2 && tuv.distance_to(points_prev[0]) < 8) { undo_redo->create_action(TTR("Create Polygon & UV")); undo_redo->add_do_method(node, "set_uv", node->get_uv()); - undo_redo->add_undo_method(node, "set_uv", points_prev); + undo_redo->add_undo_method(node, "set_uv", uv_create_uv_prev); undo_redo->add_do_method(node, "set_polygon", node->get_polygon()); - undo_redo->add_undo_method(node, "set_polygon", points_prev); + undo_redo->add_undo_method(node, "set_polygon", uv_create_poly_prev); undo_redo->add_do_method(node, "clear_bones"); - undo_redo->add_undo_method(node, "_set_bones", node->call("_get_bones")); + undo_redo->add_undo_method(node, "_set_bones", uv_create_bones_prev); undo_redo->add_do_method(uv_edit_draw, "update"); undo_redo->add_undo_method(uv_edit_draw, "update"); undo_redo->commit_action(); uv_drag = false; uv_create = false; + _uv_mode(UV_MODE_EDIT_POINT); + _menu_option(MODE_EDIT); } else { points_prev.push_back(tuv); point_drag_index = points_prev.size() - 1; @@ -430,6 +495,8 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { node->set_polygon(points_prev); node->set_uv(points_prev); } + + CanvasItemEditor::get_singleton()->update_viewport(); } if (uv_move_current == UV_MODE_EDIT_POINT) { @@ -540,7 +607,6 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { splits_prev.push_back(split_to_index); undo_redo->create_action(TTR("Add Split")); - undo_redo->add_do_method(node, "set_splits", splits_prev); undo_redo->add_undo_method(node, "set_splits", node->get_splits()); undo_redo->add_do_method(uv_edit_draw, "update"); @@ -575,13 +641,11 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { splits_prev.remove(i); undo_redo->create_action(TTR("Remove Split")); - undo_redo->add_do_method(node, "set_splits", splits_prev); undo_redo->add_undo_method(node, "set_splits", node->get_splits()); undo_redo->add_do_method(uv_edit_draw, "update"); undo_redo->add_undo_method(uv_edit_draw, "update"); undo_redo->commit_action(); - break; } } @@ -608,12 +672,12 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { } else if (uv_drag && !uv_create) { - undo_redo->create_action(TTR("Transform UV Map")); - if (uv_edit_mode[0]->is_pressed()) { //edit uv + undo_redo->create_action(TTR("Transform UV Map")); undo_redo->add_do_method(node, "set_uv", node->get_uv()); undo_redo->add_undo_method(node, "set_uv", points_prev); } else if (uv_edit_mode[1]->is_pressed()) { //edit polygon + undo_redo->create_action(TTR("Transform Polygon")); undo_redo->add_do_method(node, "set_polygon", node->get_polygon()); undo_redo->add_undo_method(node, "set_polygon", points_prev); } @@ -624,7 +688,7 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { uv_drag = false; } else if (bone_painting) { - undo_redo->create_action(TTR("Paint bone weights")); + undo_redo->create_action(TTR("Paint Bone Weights")); undo_redo->add_do_method(node, "set_bone_weights", bone_painting_bone, node->get_bone_weights(bone_painting_bone)); undo_redo->add_undo_method(node, "set_bone_weights", bone_painting_bone, prev_weights); undo_redo->add_do_method(uv_edit_draw, "update"); @@ -635,30 +699,12 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { } else if (mb->get_button_index() == BUTTON_RIGHT && mb->is_pressed()) { - if (uv_create) { - - uv_drag = false; - uv_create = false; - node->set_uv(uv_create_uv_prev); - node->set_polygon(uv_create_poly_prev); - node->call("_set_bones", uv_create_bones_prev); - node->set_splits(splits_prev); - uv_edit_draw->update(); - } else if (uv_drag) { + _cancel_editing(); - uv_drag = false; - if (uv_edit_mode[0]->is_pressed()) { //edit uv - node->set_uv(points_prev); - } else if (uv_edit_mode[1]->is_pressed()) { //edit polygon - node->set_polygon(points_prev); - } - uv_edit_draw->update(); - } else if (split_create) { - split_create = false; - uv_edit_draw->update(); - } else if (bone_painting) { + if (bone_painting) node->set_bone_weights(bone_painting_bone, prev_weights); - } + + uv_edit_draw->update(); } else if (mb->get_button_index() == BUTTON_WHEEL_UP && mb->is_pressed()) { @@ -682,13 +728,15 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { } else if (uv_drag) { Vector2 uv_drag_to = mm->get_position(); + uv_drag_to = snap_point(uv_drag_to); // FIXME: Only works correctly with 'UV_MODE_EDIT_POINT', it's imprecise with the rest. Vector2 drag = mtx.affine_inverse().xform(uv_drag_to) - mtx.affine_inverse().xform(uv_drag_from); switch (uv_move_current) { case UV_MODE_CREATE: { + if (uv_create) { - uv_create_to = mtx.affine_inverse().xform(Vector2(mm->get_position().x, mm->get_position().y)); + uv_create_to = mtx.affine_inverse().xform(snap_point(Vector2(mm->get_position().x, mm->get_position().y))); } } break; case UV_MODE_EDIT_POINT: { @@ -713,7 +761,6 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { } else if (uv_edit_mode[1]->is_pressed()) { //edit polygon node->set_polygon(uv_new); } - } break; case UV_MODE_ROTATE: { @@ -737,7 +784,6 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { } else if (uv_edit_mode[1]->is_pressed()) { //edit polygon node->set_polygon(uv_new); } - } break; case UV_MODE_SCALE: { @@ -767,11 +813,15 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { node->set_polygon(uv_new); } } break; + case UV_MODE_PAINT_WEIGHT: + case UV_MODE_CLEAR_WEIGHT: { + + bone_paint_pos = Vector2(mm->get_position().x, mm->get_position().y); + } break; default: {} } if (bone_painting) { - bone_paint_pos = Vector2(mm->get_position().x, mm->get_position().y); PoolVector<float> painted_weights = node->get_bone_weights(bone_painting_bone); { @@ -796,7 +846,9 @@ void Polygon2DEditor::_uv_input(const Ref<InputEvent> &p_input) { node->set_bone_weights(bone_painting_bone, painted_weights); } + uv_edit_draw->update(); + CanvasItemEditor::get_singleton()->update_viewport(); } else if (split_create) { uv_create_to = mtx.affine_inverse().xform(Vector2(mm->get_position().x, mm->get_position().y)); uv_edit_draw->update(); @@ -833,6 +885,9 @@ void Polygon2DEditor::_uv_scroll_changed(float) { void Polygon2DEditor::_uv_draw() { + if (!uv_edit->is_visible() || !_get_node()) + return; + Ref<Texture> base_tex = node->get_texture(); if (base_tex.is_null()) return; @@ -848,6 +903,7 @@ void Polygon2DEditor::_uv_draw() { VS::get_singleton()->canvas_item_add_set_transform(uv_edit_draw->get_canvas_item(), Transform2D()); if (snap_show_grid) { + Color grid_color = Color(1.0, 1.0, 1.0, 0.15); Size2 s = uv_edit_draw->get_size(); int last_cell = 0; @@ -857,7 +913,7 @@ void Polygon2DEditor::_uv_draw() { if (i == 0) last_cell = cell; if (last_cell != cell) - uv_edit_draw->draw_line(Point2(i, 0), Point2(i, s.height), Color(0.3, 0.7, 1, 0.3)); + uv_edit_draw->draw_line(Point2(i, 0), Point2(i, s.height), grid_color); last_cell = cell; } } @@ -868,7 +924,7 @@ void Polygon2DEditor::_uv_draw() { if (i == 0) last_cell = cell; if (last_cell != cell) - uv_edit_draw->draw_line(Point2(0, i), Point2(s.width, i), Color(0.3, 0.7, 1, 0.3)); + uv_edit_draw->draw_line(Point2(0, i), Point2(s.width, i), grid_color); last_cell = cell; } } @@ -901,19 +957,26 @@ void Polygon2DEditor::_uv_draw() { Ref<Texture> handle = get_icon("EditorHandle", "EditorIcons"); + Color poly_line_color = Color(0.9, 0.5, 0.5); + Color prev_color = Color(0.5, 0.5, 0.5); Rect2 rect(Point2(), mtx.basis_xform(base_tex->get_size())); rect.expand_to(mtx.basis_xform(uv_edit_draw->get_size())); for (int i = 0; i < uvs.size(); i++) { int next = (i + 1) % uvs.size(); + + if (uv_drag && uv_move_current == UV_MODE_EDIT_POINT && EDITOR_DEF("editors/poly_editor/show_previous_outline", true)) { + uv_edit_draw->draw_line(mtx.xform(points_prev[i]), mtx.xform(points_prev[next]), prev_color, 2 * EDSCALE); + } + Vector2 next_point = uvs[next]; if (uv_create && i == uvs.size() - 1) { next_point = uv_create_to; } - uv_edit_draw->draw_line(mtx.xform(uvs[i]), mtx.xform(next_point), Color(0.9, 0.5, 0.5), 2); - if (weight_r.ptr()) { + uv_edit_draw->draw_line(mtx.xform(uvs[i]), mtx.xform(next_point), poly_line_color, 2 * EDSCALE); + if (weight_r.ptr()) { Vector2 draw_pos = mtx.xform(uvs[i]); float weight = weight_r[i]; uv_edit_draw->draw_rect(Rect2(draw_pos - Vector2(2, 2) * EDSCALE, Vector2(5, 5) * EDSCALE), Color(weight, weight, weight, 1.0)); @@ -926,7 +989,7 @@ void Polygon2DEditor::_uv_draw() { if (split_create) { Vector2 from = uvs[point_drag_index]; Vector2 to = uv_create_to; - uv_edit_draw->draw_line(mtx.xform(from), mtx.xform(to), Color(0.9, 0.5, 0.5), 2); + uv_edit_draw->draw_line(mtx.xform(from), mtx.xform(to), poly_line_color, 2); } PoolVector<int> splits = node->get_splits(); @@ -936,7 +999,7 @@ void Polygon2DEditor::_uv_draw() { int idx_to = splits[i + 1]; if (idx_from < 0 || idx_to >= uvs.size()) continue; - uv_edit_draw->draw_line(mtx.xform(uvs[idx_from]), mtx.xform(uvs[idx_to]), Color(0.9, 0.5, 0.5), 2); + uv_edit_draw->draw_line(mtx.xform(uvs[idx_from]), mtx.xform(uvs[idx_to]), poly_line_color, 2); } if (uv_mode == UV_MODE_PAINT_WEIGHT || uv_mode == UV_MODE_CLEAR_WEIGHT) { @@ -1002,15 +1065,23 @@ void Polygon2DEditor::_uv_draw() { updating_uv_scroll = true; uv_hscroll->set_min(rect.position.x); uv_hscroll->set_max(rect.position.x + rect.size.x); - uv_hscroll->set_page(uv_edit_draw->get_size().x); - uv_hscroll->set_value(uv_draw_ofs.x); - uv_hscroll->set_step(0.001); + if (ABS(rect.position.x - (rect.position.x + rect.size.x)) <= uv_edit_draw->get_size().x) { + uv_hscroll->hide(); + } else { + uv_hscroll->show(); + uv_hscroll->set_page(uv_edit_draw->get_size().x); + uv_hscroll->set_value(uv_draw_ofs.x); + } uv_vscroll->set_min(rect.position.y); uv_vscroll->set_max(rect.position.y + rect.size.y); - uv_vscroll->set_page(uv_edit_draw->get_size().y); - uv_vscroll->set_value(uv_draw_ofs.y); - uv_vscroll->set_step(0.001); + if (ABS(rect.position.y - (rect.position.y + rect.size.y)) <= uv_edit_draw->get_size().y) { + uv_vscroll->hide(); + } else { + uv_vscroll->show(); + uv_vscroll->set_page(uv_edit_draw->get_size().y); + uv_vscroll->set_value(uv_draw_ofs.y); + } updating_uv_scroll = false; } @@ -1027,9 +1098,9 @@ void Polygon2DEditor::_bind_methods() { ClassDB::bind_method(D_METHOD("_set_snap_step_x"), &Polygon2DEditor::_set_snap_step_x); ClassDB::bind_method(D_METHOD("_set_snap_step_y"), &Polygon2DEditor::_set_snap_step_y); ClassDB::bind_method(D_METHOD("_uv_edit_mode_select"), &Polygon2DEditor::_uv_edit_mode_select); + ClassDB::bind_method(D_METHOD("_uv_edit_popup_hide"), &Polygon2DEditor::_uv_edit_popup_hide); ClassDB::bind_method(D_METHOD("_sync_bones"), &Polygon2DEditor::_sync_bones); ClassDB::bind_method(D_METHOD("_update_bone_list"), &Polygon2DEditor::_update_bone_list); - ClassDB::bind_method(D_METHOD("_bone_paint_selected"), &Polygon2DEditor::_bone_paint_selected); } @@ -1046,23 +1117,25 @@ Polygon2DEditor::Polygon2DEditor(EditorNode *p_editor) : AbstractPolygon2DEditor(p_editor) { node = NULL; - snap_step = Vector2(10, 10); - use_snap = false; - snap_show_grid = false; + snap_offset = EditorSettings::get_singleton()->get_project_metadata("polygon_2d_uv_editor", "snap_offset", Vector2()); + snap_step = EditorSettings::get_singleton()->get_project_metadata("polygon_2d_uv_editor", "snap_step", Vector2(10, 10)); + use_snap = EditorSettings::get_singleton()->get_project_metadata("polygon_2d_uv_editor", "snap_enabled", false); + snap_show_grid = EditorSettings::get_singleton()->get_project_metadata("polygon_2d_uv_editor", "show_grid", false); button_uv = memnew(ToolButton); add_child(button_uv); + button_uv->set_tooltip(TTR("Open Polygon 2D UV editor.")); button_uv->connect("pressed", this, "_menu_option", varray(MODE_EDIT_UV)); uv_mode = UV_MODE_EDIT_POINT; uv_edit = memnew(AcceptDialog); add_child(uv_edit); uv_edit->set_title(TTR("Polygon 2D UV Editor")); - uv_edit->set_self_modulate(Color(1, 1, 1, 0.9)); + uv_edit->set_resizable(true); + uv_edit->connect("popup_hide", this, "_uv_edit_popup_hide"); VBoxContainer *uv_main_vb = memnew(VBoxContainer); uv_edit->add_child(uv_main_vb); - //uv_edit->set_child_rect(uv_main_vb); HBoxContainer *uv_mode_hb = memnew(HBoxContainer); uv_edit_group.instance(); @@ -1109,14 +1182,14 @@ Polygon2DEditor::Polygon2DEditor(EditorNode *p_editor) : } uv_button[0]->set_tooltip(TTR("Create Polygon")); - uv_button[1]->set_tooltip(TTR("Move Point") + "\n" + TTR("Ctrl: Rotate") + "\n" + TTR("Shift: Move All") + "\n" + TTR("Shift+Ctrl: Scale")); + uv_button[1]->set_tooltip(TTR("Move Points") + "\n" + TTR("Ctrl: Rotate") + "\n" + TTR("Shift: Move All") + "\n" + TTR("Shift+Ctrl: Scale")); uv_button[2]->set_tooltip(TTR("Move Polygon")); uv_button[3]->set_tooltip(TTR("Rotate Polygon")); uv_button[4]->set_tooltip(TTR("Scale Polygon")); - uv_button[5]->set_tooltip(TTR("Connect two points to make a split")); - uv_button[6]->set_tooltip(TTR("Select a split to erase it")); - uv_button[7]->set_tooltip(TTR("Paint weights with specified intensity")); - uv_button[8]->set_tooltip(TTR("UnPaint weights with specified intensity")); + uv_button[5]->set_tooltip(TTR("Connect two points to make a split.")); + uv_button[6]->set_tooltip(TTR("Select a split to erase it.")); + uv_button[7]->set_tooltip(TTR("Paint weights with specified intensity.")); + uv_button[8]->set_tooltip(TTR("Unpaint weights with specified intensity.")); uv_button[0]->hide(); uv_button[5]->hide(); @@ -1134,7 +1207,7 @@ Polygon2DEditor::Polygon2DEditor(EditorNode *p_editor) : bone_paint_strength->set_step(0.01); bone_paint_strength->set_value(0.5); - bone_paint_radius_label = memnew(Label(" " + TTR("Radius:") + " ")); + bone_paint_radius_label = memnew(Label(TTR("Radius:"))); uv_mode_hb->add_child(bone_paint_radius_label); bone_paint_radius = memnew(SpinBox); uv_mode_hb->add_child(bone_paint_radius); @@ -1147,12 +1220,13 @@ Polygon2DEditor::Polygon2DEditor(EditorNode *p_editor) : bone_paint_radius->set_step(1); bone_paint_radius->set_value(32); - HBoxContainer *uv_main_hb = memnew(HBoxContainer); - uv_main_vb->add_child(uv_main_hb); - uv_edit_draw = memnew(Control); - uv_main_hb->add_child(uv_edit_draw); - uv_main_hb->set_v_size_flags(SIZE_EXPAND_FILL); + HSplitContainer *uv_main_hsc = memnew(HSplitContainer); + uv_main_vb->add_child(uv_main_hsc); + uv_main_hsc->set_v_size_flags(SIZE_EXPAND_FILL); + uv_edit_draw = memnew(Panel); + uv_main_hsc->add_child(uv_edit_draw); uv_edit_draw->set_h_size_flags(SIZE_EXPAND_FILL); + uv_edit_draw->set_custom_minimum_size(Size2(200, 200) * EDSCALE); uv_menu = memnew(MenuButton); uv_mode_hb->add_child(uv_menu); uv_menu->set_text(TTR("Edit")); @@ -1228,6 +1302,7 @@ Polygon2DEditor::Polygon2DEditor(EditorNode *p_editor) : uv_mode_hb->add_child(memnew(VSeparator)); uv_icon_zoom = memnew(TextureRect); + uv_icon_zoom->set_stretch_mode(TextureRect::STRETCH_KEEP_CENTERED); uv_mode_hb->add_child(uv_icon_zoom); uv_zoom = memnew(HSlider); uv_zoom->set_min(0.01); @@ -1245,17 +1320,25 @@ Polygon2DEditor::Polygon2DEditor(EditorNode *p_editor) : uv_zoom->connect("value_changed", this, "_uv_scroll_changed"); uv_vscroll = memnew(VScrollBar); - uv_main_hb->add_child(uv_vscroll); + uv_vscroll->set_step(0.001); + uv_edit_draw->add_child(uv_vscroll); + uv_vscroll->set_anchors_and_margins_preset(PRESET_RIGHT_WIDE); uv_vscroll->connect("value_changed", this, "_uv_scroll_changed"); uv_hscroll = memnew(HScrollBar); - uv_main_vb->add_child(uv_hscroll); + uv_hscroll->set_step(0.001); + uv_edit_draw->add_child(uv_hscroll); + uv_hscroll->set_anchors_and_margins_preset(PRESET_BOTTOM_WIDE); + uv_hscroll->set_margin(MARGIN_RIGHT, -uv_vscroll->get_size().x * EDSCALE); uv_hscroll->connect("value_changed", this, "_uv_scroll_changed"); bone_scroll_main_vb = memnew(VBoxContainer); bone_scroll_main_vb->hide(); + bone_scroll_main_vb->set_custom_minimum_size(Size2(150 * EDSCALE, 0)); sync_bones = memnew(Button(TTR("Sync Bones to Polygon"))); bone_scroll_main_vb->add_child(sync_bones); - uv_main_hb->add_child(bone_scroll_main_vb); + sync_bones->set_h_size_flags(0); + sync_bones->connect("pressed", this, "_sync_bones"); + uv_main_hsc->add_child(bone_scroll_main_vb); bone_scroll = memnew(ScrollContainer); bone_scroll->set_v_scroll(true); bone_scroll->set_h_scroll(false); @@ -1263,7 +1346,6 @@ Polygon2DEditor::Polygon2DEditor(EditorNode *p_editor) : bone_scroll->set_v_size_flags(SIZE_EXPAND_FILL); bone_scroll_vb = memnew(VBoxContainer); bone_scroll->add_child(bone_scroll_vb); - sync_bones->connect("pressed", this, "_sync_bones"); uv_edit_draw->connect("draw", this, "_uv_draw"); uv_edit_draw->connect("gui_input", this, "_uv_input"); diff --git a/editor/plugins/polygon_2d_editor_plugin.h b/editor/plugins/polygon_2d_editor_plugin.h index f9b42a21c2..935f1cfff0 100644 --- a/editor/plugins/polygon_2d_editor_plugin.h +++ b/editor/plugins/polygon_2d_editor_plugin.h @@ -41,13 +41,11 @@ class Polygon2DEditor : public AbstractPolygon2DEditor { GDCLASS(Polygon2DEditor, AbstractPolygon2DEditor); enum Mode { - MODE_EDIT_UV = MODE_CONT, UVEDIT_POLYGON_TO_UV, UVEDIT_UV_TO_POLYGON, UVEDIT_UV_CLEAR, UVEDIT_GRID_SETTINGS - }; enum UVMode { @@ -73,7 +71,7 @@ class Polygon2DEditor : public AbstractPolygon2DEditor { ToolButton *uv_button[UV_MODE_MAX]; ToolButton *b_snap_enable; ToolButton *b_snap_grid; - Control *uv_edit_draw; + Panel *uv_edit_draw; HSlider *uv_zoom; SpinBox *uv_zoom_value; HScrollBar *uv_hscroll; @@ -125,6 +123,8 @@ class Polygon2DEditor : public AbstractPolygon2DEditor { virtual void _menu_option(int p_option); + void _cancel_editing(); + void _uv_scroll_changed(float); void _uv_input(const Ref<InputEvent> &p_input); void _uv_draw(); @@ -138,6 +138,7 @@ class Polygon2DEditor : public AbstractPolygon2DEditor { void _set_snap_step_y(float p_val); void _uv_edit_mode_select(int p_mode); + void _uv_edit_popup_hide(); void _bone_paint_selected(int p_index); protected: @@ -146,6 +147,9 @@ protected: virtual Vector2 _get_offset(int p_idx) const; + virtual bool _has_uv() const { return true; }; + virtual void _commit_action(); + void _notification(int p_what); static void _bind_methods(); diff --git a/editor/plugins/script_editor_plugin.cpp b/editor/plugins/script_editor_plugin.cpp index 0bbe08821a..44f1625d06 100644 --- a/editor/plugins/script_editor_plugin.cpp +++ b/editor/plugins/script_editor_plugin.cpp @@ -40,6 +40,7 @@ #include "editor/editor_settings.h" #include "editor/find_in_files.h" #include "editor/node_dock.h" +#include "editor/plugins/shader_editor_plugin.h" #include "editor/script_editor_debugger.h" #include "scene/main/viewport.h" #include "script_text_editor.h" @@ -896,12 +897,12 @@ void ScriptEditor::_file_dialog_action(String p_file) { } break; case THEME_SAVE_AS: { if (!EditorSettings::get_singleton()->save_text_editor_theme_as(p_file)) { - editor->show_warning(TTR("Error while saving theme"), TTR("Error saving")); + editor->show_warning(TTR("Error while saving theme."), TTR("Error Saving")); } } break; case THEME_IMPORT: { if (!EditorSettings::get_singleton()->import_text_editor_theme(p_file)) { - editor->show_warning(TTR("Error importing theme"), TTR("Error importing")); + editor->show_warning(TTR("Error importing theme."), TTR("Error Importing")); } } break; } @@ -1089,7 +1090,7 @@ void ScriptEditor::_menu_option(int p_option) { Ref<Script> scr = current->get_edited_resource(); if (scr == NULL || scr.is_null()) { - EditorNode::get_singleton()->show_warning("Can't obtain the script for running"); + EditorNode::get_singleton()->show_warning("Can't obtain the script for running."); break; } @@ -1102,13 +1103,13 @@ void ScriptEditor::_menu_option(int p_option) { } if (!scr->is_tool()) { - EditorNode::get_singleton()->show_warning("Script is not in tool mode, will not be able to run"); + EditorNode::get_singleton()->show_warning("Script is not in tool mode, will not be able to run."); return; } if (!ClassDB::is_parent_class(scr->get_instance_base_type(), "EditorScript")) { - EditorNode::get_singleton()->show_warning("To run this script, it must inherit EditorScript and be set to tool mode"); + EditorNode::get_singleton()->show_warning("To run this script, it must inherit EditorScript and be set to tool mode."); return; } @@ -2778,13 +2779,18 @@ void ScriptEditor::_on_find_in_files_requested(String text) { void ScriptEditor::_on_find_in_files_result_selected(String fpath, int line_number, int begin, int end) { RES res = ResourceLoader::load(fpath); - edit(res); - - ScriptEditorBase *seb = _get_current_editor(); + if (fpath.get_extension() == "shader") { + ShaderEditorPlugin *shader_editor = Object::cast_to<ShaderEditorPlugin>(EditorNode::get_singleton()->get_editor_data().get_editor("Shader")); + shader_editor->edit(res.ptr()); + shader_editor->make_visible(true); + shader_editor->get_shader_editor()->goto_line_selection(line_number - 1, begin, end); + } else { + edit(res); - ScriptTextEditor *ste = Object::cast_to<ScriptTextEditor>(seb); - if (ste) { - ste->goto_line_selection(line_number - 1, begin, end); + ScriptTextEditor *ste = Object::cast_to<ScriptTextEditor>(_get_current_editor()); + if (ste) { + ste->goto_line_selection(line_number - 1, begin, end); + } } } @@ -2971,10 +2977,11 @@ ScriptEditor::ScriptEditor(EditorNode *p_editor) { file_menu = memnew(MenuButton); menu_hb->add_child(file_menu); file_menu->set_text(TTR("File")); + file_menu->set_switch_on_hover(true); file_menu->get_popup()->set_hide_on_window_lose_focus(true); - file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/new", TTR("New Script")), FILE_NEW); - file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/new_textfile", TTR("New TextFile")), FILE_NEW_TEXTFILE); - file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/open", TTR("Open")), FILE_OPEN); + file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/new", TTR("New Script...")), FILE_NEW); + file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/new_textfile", TTR("New TextFile...")), FILE_NEW_TEXTFILE); + file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/open", TTR("Open...")), FILE_OPEN); file_menu->get_popup()->add_submenu_item(TTR("Open Recent"), "RecentScripts", FILE_OPEN_RECENT); recent_scripts = memnew(PopupMenu); @@ -3003,10 +3010,11 @@ ScriptEditor::ScriptEditor(EditorNode *p_editor) { theme_submenu->set_name("Theme"); file_menu->get_popup()->add_child(theme_submenu); theme_submenu->connect("id_pressed", this, "_theme_option"); - theme_submenu->add_shortcut(ED_SHORTCUT("script_editor/import_theme", TTR("Import Theme")), THEME_IMPORT); + theme_submenu->add_shortcut(ED_SHORTCUT("script_editor/import_theme", TTR("Import Theme...")), THEME_IMPORT); theme_submenu->add_shortcut(ED_SHORTCUT("script_editor/reload_theme", TTR("Reload Theme")), THEME_RELOAD); + theme_submenu->add_separator(); theme_submenu->add_shortcut(ED_SHORTCUT("script_editor/save_theme", TTR("Save Theme")), THEME_SAVE); - theme_submenu->add_shortcut(ED_SHORTCUT("script_editor/save_theme_as", TTR("Save Theme As")), THEME_SAVE_AS); + theme_submenu->add_shortcut(ED_SHORTCUT("script_editor/save_theme_as", TTR("Save Theme As...")), THEME_SAVE_AS); file_menu->get_popup()->add_separator(); file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/close_docs", TTR("Close Docs")), CLOSE_DOCS); @@ -3022,6 +3030,7 @@ ScriptEditor::ScriptEditor(EditorNode *p_editor) { script_search_menu = memnew(MenuButton); menu_hb->add_child(script_search_menu); script_search_menu->set_text(TTR("Search")); + script_search_menu->set_switch_on_hover(true); script_search_menu->get_popup()->set_hide_on_window_lose_focus(true); script_search_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/find", TTR("Find..."), KEY_MASK_CMD | KEY_F), HELP_SEARCH_FIND); script_search_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/find_next", TTR("Find Next"), KEY_F3), HELP_SEARCH_FIND_NEXT); @@ -3031,6 +3040,7 @@ ScriptEditor::ScriptEditor(EditorNode *p_editor) { debug_menu = memnew(MenuButton); menu_hb->add_child(debug_menu); debug_menu->set_text(TTR("Debug")); + debug_menu->set_switch_on_hover(true); debug_menu->get_popup()->set_hide_on_window_lose_focus(true); debug_menu->get_popup()->add_shortcut(ED_SHORTCUT("debugger/step_over", TTR("Step Over"), KEY_F10), DEBUG_NEXT); debug_menu->get_popup()->add_shortcut(ED_SHORTCUT("debugger/step_into", TTR("Step Into"), KEY_F11), DEBUG_STEP); diff --git a/editor/plugins/script_text_editor.cpp b/editor/plugins/script_text_editor.cpp index e6bb8b24a9..6d4b1d1b9c 100644 --- a/editor/plugins/script_text_editor.cpp +++ b/editor/plugins/script_text_editor.cpp @@ -131,6 +131,7 @@ void ScriptTextEditor::_load_theme_settings() { Color safe_line_number_color = EDITOR_GET("text_editor/highlighting/safe_line_number_color"); Color caret_color = EDITOR_GET("text_editor/highlighting/caret_color"); Color caret_background_color = EDITOR_GET("text_editor/highlighting/caret_background_color"); + Color indent_guide_color = EDITOR_GET("text_editor/highlighting/indent_guide_color"); Color text_selected_color = EDITOR_GET("text_editor/highlighting/text_selected_color"); Color selection_color = EDITOR_GET("text_editor/highlighting/selection_color"); Color brace_mismatch_color = EDITOR_GET("text_editor/highlighting/brace_mismatch_color"); @@ -163,6 +164,7 @@ void ScriptTextEditor::_load_theme_settings() { text_edit->add_color_override("safe_line_number_color", safe_line_number_color); text_edit->add_color_override("caret_color", caret_color); text_edit->add_color_override("caret_background_color", caret_background_color); + text_edit->add_color_override("indent_guide_color", indent_guide_color); text_edit->add_color_override("font_selected_color", text_selected_color); text_edit->add_color_override("selection_color", selection_color); text_edit->add_color_override("brace_mismatch_color", brace_mismatch_color); @@ -1076,7 +1078,7 @@ void ScriptTextEditor::set_syntax_highlighter(SyntaxHighlighter *p_highlighter) if (p_highlighter != NULL) highlighter_menu->set_item_checked(highlighter_menu->get_item_idx_from_text(p_highlighter->get_name()), true); else - highlighter_menu->set_item_checked(highlighter_menu->get_item_idx_from_text("Standard"), true); + highlighter_menu->set_item_checked(highlighter_menu->get_item_idx_from_text(TTR("Standard")), true); } void ScriptTextEditor::_change_syntax_highlighter(int p_idx) { @@ -1466,6 +1468,7 @@ ScriptTextEditor::ScriptTextEditor() { edit_menu = memnew(MenuButton); edit_menu->set_text(TTR("Edit")); + edit_menu->set_switch_on_hover(true); edit_menu->get_popup()->set_hide_on_window_lose_focus(true); edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/undo"), EDIT_UNDO); edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/redo"), EDIT_REDO); @@ -1509,7 +1512,7 @@ ScriptTextEditor::ScriptTextEditor() { convert_case->add_shortcut(ED_SHORTCUT("script_text_editor/capitalize", TTR("Capitalize"), KEY_MASK_SHIFT | KEY_F6), EDIT_CAPITALIZE); convert_case->connect("id_pressed", this, "_edit_option"); - highlighters["Standard"] = NULL; + highlighters[TTR("Standard")] = NULL; highlighter_menu = memnew(PopupMenu); highlighter_menu->set_name("highlighter_menu"); edit_menu->get_popup()->add_child(highlighter_menu); @@ -1520,6 +1523,7 @@ ScriptTextEditor::ScriptTextEditor() { search_menu = memnew(MenuButton); edit_hb->add_child(search_menu); search_menu->set_text(TTR("Search")); + search_menu->set_switch_on_hover(true); search_menu->get_popup()->set_hide_on_window_lose_focus(true); search_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/find"), SEARCH_FIND); search_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/find_next"), SEARCH_FIND_NEXT); diff --git a/editor/plugins/shader_editor_plugin.cpp b/editor/plugins/shader_editor_plugin.cpp index 6bc5c77df2..e3389f25cf 100644 --- a/editor/plugins/shader_editor_plugin.cpp +++ b/editor/plugins/shader_editor_plugin.cpp @@ -70,6 +70,7 @@ void ShaderTextEditor::_load_theme_settings() { Color line_number_color = EDITOR_GET("text_editor/highlighting/line_number_color"); Color caret_color = EDITOR_GET("text_editor/highlighting/caret_color"); Color caret_background_color = EDITOR_GET("text_editor/highlighting/caret_background_color"); + Color indent_guide_color = EDITOR_GET("text_editor/highlighting/indent_guide_color"); Color text_selected_color = EDITOR_GET("text_editor/highlighting/text_selected_color"); Color selection_color = EDITOR_GET("text_editor/highlighting/selection_color"); Color brace_mismatch_color = EDITOR_GET("text_editor/highlighting/brace_mismatch_color"); @@ -98,6 +99,7 @@ void ShaderTextEditor::_load_theme_settings() { get_text_edit()->add_color_override("line_number_color", line_number_color); get_text_edit()->add_color_override("caret_color", caret_color); get_text_edit()->add_color_override("caret_background_color", caret_background_color); + get_text_edit()->add_color_override("indent_guide_color", indent_guide_color); get_text_edit()->add_color_override("font_selected_color", text_selected_color); get_text_edit()->add_color_override("selection_color", selection_color); get_text_edit()->add_color_override("brace_mismatch_color", brace_mismatch_color); @@ -350,9 +352,9 @@ void ShaderEditor::_menu_option(int p_option) { void ShaderEditor::_notification(int p_what) { - if (p_what == NOTIFICATION_ENTER_TREE) { - } - if (p_what == NOTIFICATION_DRAW) { + if (p_what == NOTIFICATION_VISIBILITY_CHANGED) { + if (is_visible_in_tree()) + shader_editor->get_text_edit()->grab_focus(); } } @@ -368,6 +370,7 @@ void ShaderEditor::_editor_settings_changed() { shader_editor->get_text_edit()->set_indent_size(EditorSettings::get_singleton()->get("text_editor/indent/size")); shader_editor->get_text_edit()->set_indent_using_spaces(EditorSettings::get_singleton()->get("text_editor/indent/type")); shader_editor->get_text_edit()->set_auto_indent(EditorSettings::get_singleton()->get("text_editor/indent/auto_indent")); + shader_editor->get_text_edit()->set_draw_indent_guides(EditorSettings::get_singleton()->get("text_editor/indent/draw_indent_guides")); shader_editor->get_text_edit()->set_draw_tabs(EditorSettings::get_singleton()->get("text_editor/indent/draw_tabs")); shader_editor->get_text_edit()->set_show_line_numbers(EditorSettings::get_singleton()->get("text_editor/line_numbers/show_line_numbers")); shader_editor->get_text_edit()->set_syntax_coloring(EditorSettings::get_singleton()->get("text_editor/highlighting/syntax_highlighting")); @@ -389,7 +392,6 @@ void ShaderEditor::_bind_methods() { ClassDB::bind_method("_menu_option", &ShaderEditor::_menu_option); ClassDB::bind_method("_params_changed", &ShaderEditor::_params_changed); ClassDB::bind_method("apply_shaders", &ShaderEditor::apply_shaders); - //ClassDB::bind_method("_close_current_tab",&ShaderEditor::_close_current_tab); } void ShaderEditor::ensure_select_current() { @@ -405,6 +407,11 @@ void ShaderEditor::ensure_select_current() { }*/ } +void ShaderEditor::goto_line_selection(int p_line, int p_begin, int p_end) { + + shader_editor->goto_line_selection(p_line, p_begin, p_end); +} + void ShaderEditor::edit(const Ref<Shader> &p_shader) { if (p_shader.is_null() || !p_shader->is_text_shader()) @@ -527,9 +534,8 @@ ShaderEditor::ShaderEditor(EditorNode *p_node) { HBoxContainer *hbc = memnew(HBoxContainer); edit_menu = memnew(MenuButton); - //edit_menu->set_position(Point2(5, -1)); edit_menu->set_text(TTR("Edit")); - + edit_menu->set_switch_on_hover(true); edit_menu->get_popup()->set_hide_on_window_lose_focus(true); edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/undo"), EDIT_UNDO); edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/redo"), EDIT_REDO); @@ -549,12 +555,11 @@ ShaderEditor::ShaderEditor(EditorNode *p_node) { edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/clone_down"), EDIT_CLONE_DOWN); edit_menu->get_popup()->add_separator(); edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/complete_symbol"), EDIT_COMPLETE); - edit_menu->get_popup()->connect("id_pressed", this, "_menu_option"); search_menu = memnew(MenuButton); - //search_menu->set_position(Point2(38, -1)); search_menu->set_text(TTR("Search")); + search_menu->set_switch_on_hover(true); search_menu->get_popup()->set_hide_on_window_lose_focus(true); search_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/find"), SEARCH_FIND); search_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/find_next"), SEARCH_FIND_NEXT); diff --git a/editor/plugins/shader_editor_plugin.h b/editor/plugins/shader_editor_plugin.h index 2ea1562310..46e3dffdd5 100644 --- a/editor/plugins/shader_editor_plugin.h +++ b/editor/plugins/shader_editor_plugin.h @@ -120,6 +120,8 @@ public: void ensure_select_current(); void edit(const Ref<Shader> &p_shader); + void goto_line_selection(int p_line, int p_begin, int p_end); + virtual Size2 get_minimum_size() const { return Size2(0, 200); } void save_external_data(); @@ -143,6 +145,8 @@ public: virtual void make_visible(bool p_visible); virtual void selected_notify(); + ShaderEditor *get_shader_editor() const { return shader_editor; } + virtual void save_external_data(); virtual void apply_changes(); diff --git a/editor/plugins/spatial_editor_plugin.cpp b/editor/plugins/spatial_editor_plugin.cpp index a5563c0497..4fe278d005 100644 --- a/editor/plugins/spatial_editor_plugin.cpp +++ b/editor/plugins/spatial_editor_plugin.cpp @@ -3238,7 +3238,7 @@ bool SpatialEditorViewport::_create_instance(Node *parent, String &path, const P if (mesh != NULL) { MeshInstance *mesh_instance = memnew(MeshInstance); mesh_instance->set_mesh(mesh); - mesh_instance->set_name(mesh->get_name()); + mesh_instance->set_name(path.get_file().get_basename()); instanced_scene = mesh_instance; } else { if (!scene.is_valid()) { // invalid scene @@ -5475,6 +5475,7 @@ SpatialEditor::SpatialEditor(EditorNode *p_editor) { transform_menu = memnew(MenuButton); transform_menu->set_text(TTR("Transform")); + transform_menu->set_switch_on_hover(true); hbc_menu->add_child(transform_menu); p = transform_menu->get_popup(); @@ -5487,6 +5488,7 @@ SpatialEditor::SpatialEditor(EditorNode *p_editor) { view_menu = memnew(MenuButton); view_menu->set_text(TTR("View")); + view_menu->set_switch_on_hover(true); hbc_menu->add_child(view_menu); p = view_menu->get_popup(); diff --git a/editor/plugins/text_editor.cpp b/editor/plugins/text_editor.cpp index 4a8eae1ba4..52dd115b3e 100644 --- a/editor/plugins/text_editor.cpp +++ b/editor/plugins/text_editor.cpp @@ -84,6 +84,7 @@ void TextEditor::_load_theme_settings() { Color line_number_color = EDITOR_GET("text_editor/highlighting/line_number_color"); Color caret_color = EDITOR_GET("text_editor/highlighting/caret_color"); Color caret_background_color = EDITOR_GET("text_editor/highlighting/caret_background_color"); + Color indent_guide_color = EDITOR_GET("text_editor/highlighting/indent_guide_color"); Color text_selected_color = EDITOR_GET("text_editor/highlighting/text_selected_color"); Color selection_color = EDITOR_GET("text_editor/highlighting/selection_color"); Color brace_mismatch_color = EDITOR_GET("text_editor/highlighting/brace_mismatch_color"); @@ -115,6 +116,7 @@ void TextEditor::_load_theme_settings() { text_edit->add_color_override("line_number_color", line_number_color); text_edit->add_color_override("caret_color", caret_color); text_edit->add_color_override("caret_background_color", caret_background_color); + text_edit->add_color_override("indent_guide_color", indent_guide_color); text_edit->add_color_override("font_selected_color", text_selected_color); text_edit->add_color_override("selection_color", selection_color); text_edit->add_color_override("brace_mismatch_color", brace_mismatch_color); diff --git a/editor/plugins/texture_region_editor_plugin.cpp b/editor/plugins/texture_region_editor_plugin.cpp index 7c3e524d89..aed3a7d503 100644 --- a/editor/plugins/texture_region_editor_plugin.cpp +++ b/editor/plugins/texture_region_editor_plugin.cpp @@ -169,15 +169,24 @@ void TextureRegionEditor::_region_draw() { updating_scroll = true; hscroll->set_min(scroll_rect.position.x); hscroll->set_max(scroll_rect.position.x + scroll_rect.size.x); - hscroll->set_page(edit_draw->get_size().x); - hscroll->set_value(draw_ofs.x); - hscroll->set_step(0.001); + if (ABS(scroll_rect.position.x - (scroll_rect.position.x + scroll_rect.size.x)) <= edit_draw->get_size().x) { + hscroll->hide(); + } else { + hscroll->show(); + hscroll->set_page(edit_draw->get_size().x); + hscroll->set_value(draw_ofs.x); + } vscroll->set_min(scroll_rect.position.y); vscroll->set_max(scroll_rect.position.y + scroll_rect.size.y); - vscroll->set_page(edit_draw->get_size().y); - vscroll->set_value(draw_ofs.y); - vscroll->set_step(0.001); + if (ABS(scroll_rect.position.y - (scroll_rect.position.y + scroll_rect.size.y)) <= edit_draw->get_size().y) { + vscroll->hide(); + draw_ofs.y = scroll_rect.position.y; + } else { + vscroll->show(); + vscroll->set_page(edit_draw->get_size().y); + vscroll->set_value(draw_ofs.y); + } updating_scroll = false; float margins[4]; @@ -299,6 +308,8 @@ void TextureRegionEditor::_region_input(const Ref<InputEvent> &p_input) { undo_redo->add_do_method(atlas_tex.ptr(), "set_region", rect); undo_redo->add_undo_method(atlas_tex.ptr(), "set_region", atlas_tex->get_region()); } + undo_redo->add_do_method(this, "_update_rect"); + undo_redo->add_undo_method(this, "_update_rect"); undo_redo->add_do_method(edit_draw, "update"); undo_redo->add_undo_method(edit_draw, "update"); undo_redo->commit_action(); @@ -336,7 +347,7 @@ void TextureRegionEditor::_region_input(const Ref<InputEvent> &p_input) { } else if (drag) { if (edited_margin >= 0) { - undo_redo->create_action("Set Margin"); + undo_redo->create_action(TTR("Set Margin")); static Margin m[4] = { MARGIN_TOP, MARGIN_BOTTOM, MARGIN_LEFT, MARGIN_RIGHT }; if (node_ninepatch) { undo_redo->add_do_method(node_ninepatch, "set_patch_margin", m[edited_margin], node_ninepatch->get_patch_margin(m[edited_margin])); @@ -348,7 +359,7 @@ void TextureRegionEditor::_region_input(const Ref<InputEvent> &p_input) { } edited_margin = -1; } else { - undo_redo->create_action("Set Region Rect"); + undo_redo->create_action(TTR("Set Region Rect")); if (node_sprite) { undo_redo->add_do_method(node_sprite, "set_region_rect", node_sprite->get_region_rect()); undo_redo->add_undo_method(node_sprite, "set_region_rect", rect_prev); @@ -364,6 +375,8 @@ void TextureRegionEditor::_region_input(const Ref<InputEvent> &p_input) { } drag_index = -1; } + undo_redo->add_do_method(this, "_update_rect"); + undo_redo->add_undo_method(this, "_update_rect"); undo_redo->add_do_method(edit_draw, "update"); undo_redo->add_undo_method(edit_draw, "update"); undo_redo->commit_action(); @@ -509,10 +522,7 @@ void TextureRegionEditor::_scroll_changed(float) { } void TextureRegionEditor::_set_snap_mode(int p_mode) { - snap_mode_button->get_popup()->set_item_checked(snap_mode, false); snap_mode = p_mode; - snap_mode_button->set_text(snap_mode_button->get_popup()->get_item_text(p_mode)); - snap_mode_button->get_popup()->set_item_checked(snap_mode, true); if (snap_mode == SNAP_GRID) hb_grid->show(); @@ -577,15 +587,26 @@ void TextureRegionEditor::_zoom_out() { } } -void TextureRegionEditor::apply_rect(const Rect2 &rect) { +void TextureRegionEditor::apply_rect(const Rect2 &p_rect) { + if (node_sprite) + node_sprite->set_region_rect(p_rect); + else if (node_ninepatch) + node_ninepatch->set_region_rect(p_rect); + else if (obj_styleBox.is_valid()) + obj_styleBox->set_region_rect(p_rect); + else if (atlas_tex.is_valid()) + atlas_tex->set_region(p_rect); +} + +void TextureRegionEditor::_update_rect() { if (node_sprite) - node_sprite->set_region_rect(rect); + rect = node_sprite->get_region_rect(); else if (node_ninepatch) - node_ninepatch->set_region_rect(rect); + rect = node_ninepatch->get_region_rect(); else if (obj_styleBox.is_valid()) - obj_styleBox->set_region_rect(rect); + rect = obj_styleBox->get_region_rect(); else if (atlas_tex.is_valid()) - atlas_tex->set_region(rect); + rect = atlas_tex->get_region(); } void TextureRegionEditor::_update_autoslice() { @@ -657,6 +678,10 @@ void TextureRegionEditor::_update_autoslice() { void TextureRegionEditor::_notification(int p_what) { switch (p_what) { + case NOTIFICATION_ENTER_TREE: + case NOTIFICATION_THEME_CHANGED: { + edit_draw->add_style_override("panel", get_stylebox("bg", "Tree")); + } break; case NOTIFICATION_READY: { zoom_out->set_icon(get_icon("ZoomLess", "EditorIcons")); zoom_reset->set_icon(get_icon("ZoomReset", "EditorIcons")); @@ -669,7 +694,7 @@ void TextureRegionEditor::_notification(int p_what) { } break; case MainLoop::NOTIFICATION_WM_FOCUS_IN: { // This happens when the user leaves the Editor and returns, - // he/she could have changed the textures, so the cache is cleared + // they could have changed the textures, so the cache is cleared. cache_map.clear(); _edit_region(); } break; @@ -702,6 +727,7 @@ void TextureRegionEditor::_bind_methods() { ClassDB::bind_method(D_METHOD("_zoom_in"), &TextureRegionEditor::_zoom_in); ClassDB::bind_method(D_METHOD("_zoom_reset"), &TextureRegionEditor::_zoom_reset); ClassDB::bind_method(D_METHOD("_zoom_out"), &TextureRegionEditor::_zoom_out); + ClassDB::bind_method(D_METHOD("_update_rect"), &TextureRegionEditor::_update_rect); } bool TextureRegionEditor::is_stylebox() { @@ -774,6 +800,9 @@ void TextureRegionEditor::_edit_region() { texture = atlas_tex->get_atlas(); if (texture.is_null()) { + _zoom_reset(); + hscroll->hide(); + vscroll->hide(); edit_draw->update(); return; } @@ -790,15 +819,7 @@ void TextureRegionEditor::_edit_region() { } } - if (node_sprite) - rect = node_sprite->get_region_rect(); - else if (node_ninepatch) - rect = node_ninepatch->get_region_rect(); - else if (obj_styleBox.is_valid()) - rect = obj_styleBox->get_region_rect(); - else if (atlas_tex.is_valid()) - rect = atlas_tex->get_region(); - + _update_rect(); edit_draw->update(); } @@ -826,30 +847,23 @@ TextureRegionEditor::TextureRegionEditor(EditorNode *p_editor) { drag_index = -1; drag = false; - VBoxContainer *main_vb = memnew(VBoxContainer); - add_child(main_vb); - main_vb->set_anchors_and_margins_preset(Control::PRESET_WIDE); HBoxContainer *hb_tools = memnew(HBoxContainer); - main_vb->add_child(hb_tools); - + add_child(hb_tools); hb_tools->add_child(memnew(Label(TTR("Snap Mode:")))); - snap_mode_button = memnew(MenuButton); + snap_mode_button = memnew(OptionButton); hb_tools->add_child(snap_mode_button); - snap_mode_button->set_text(TTR("<None>")); - PopupMenu *p = snap_mode_button->get_popup(); - p->set_hide_on_checkable_item_selection(false); - p->add_radio_check_item(TTR("<None>"), 0); - p->add_radio_check_item(TTR("Pixel Snap"), 1); - p->add_radio_check_item(TTR("Grid Snap"), 2); - p->add_radio_check_item(TTR("Auto Slice"), 3); - p->set_item_checked(0, true); - p->connect("id_pressed", this, "_set_snap_mode"); + snap_mode_button->add_item(TTR("None"), 0); + snap_mode_button->add_item(TTR("Pixel Snap"), 1); + snap_mode_button->add_item(TTR("Grid Snap"), 2); + snap_mode_button->add_item(TTR("Auto Slice"), 3); + snap_mode_button->select(0); + snap_mode_button->connect("item_selected", this, "_set_snap_mode"); + hb_grid = memnew(HBoxContainer); - //hb_tools->add_child(hb_grid); - main_vb->add_child(hb_grid); - hb_grid->add_child(memnew(VSeparator)); + hb_tools->add_child(hb_grid); + hb_grid->add_child(memnew(VSeparator)); hb_grid->add_child(memnew(Label(TTR("Offset:")))); sb_off_x = memnew(SpinBox); @@ -914,42 +928,47 @@ TextureRegionEditor::TextureRegionEditor(EditorNode *p_editor) { hb_grid->hide(); - HBoxContainer *main_hb = memnew(HBoxContainer); - main_vb->add_child(main_hb); - edit_draw = memnew(Control); - main_hb->add_child(edit_draw); - main_hb->set_v_size_flags(SIZE_EXPAND_FILL); - edit_draw->set_h_size_flags(SIZE_EXPAND_FILL); + edit_draw = memnew(Panel); + add_child(edit_draw); + edit_draw->set_v_size_flags(SIZE_EXPAND_FILL); + edit_draw->connect("draw", this, "_region_draw"); + edit_draw->connect("gui_input", this, "_region_input"); + + draw_zoom = 1.0; + edit_draw->set_clip_contents(true); - Control *separator = memnew(Control); - separator->set_h_size_flags(Control::SIZE_EXPAND_FILL); - hb_tools->add_child(separator); + HBoxContainer *zoom_hb = memnew(HBoxContainer); + edit_draw->add_child(zoom_hb); + zoom_hb->set_begin(Point2(5, 5)); zoom_out = memnew(ToolButton); + zoom_out->set_tooltip(TTR("Zoom Out")); zoom_out->connect("pressed", this, "_zoom_out"); - hb_tools->add_child(zoom_out); + zoom_hb->add_child(zoom_out); zoom_reset = memnew(ToolButton); + zoom_out->set_tooltip(TTR("Zoom Reset")); zoom_reset->connect("pressed", this, "_zoom_reset"); - hb_tools->add_child(zoom_reset); + zoom_hb->add_child(zoom_reset); zoom_in = memnew(ToolButton); + zoom_out->set_tooltip(TTR("Zoom In")); zoom_in->connect("pressed", this, "_zoom_in"); - hb_tools->add_child(zoom_in); + zoom_hb->add_child(zoom_in); vscroll = memnew(VScrollBar); - main_hb->add_child(vscroll); + vscroll->set_step(0.001); + edit_draw->add_child(vscroll); + vscroll->set_anchors_and_margins_preset(PRESET_RIGHT_WIDE); vscroll->connect("value_changed", this, "_scroll_changed"); hscroll = memnew(HScrollBar); - main_vb->add_child(hscroll); + hscroll->set_step(0.001); + edit_draw->add_child(hscroll); + hscroll->set_anchors_and_margins_preset(PRESET_BOTTOM_WIDE); + hscroll->set_margin(MARGIN_RIGHT, -vscroll->get_size().x * EDSCALE); hscroll->connect("value_changed", this, "_scroll_changed"); - edit_draw->connect("draw", this, "_region_draw"); - edit_draw->connect("gui_input", this, "_region_input"); - draw_zoom = 1.0; updating_scroll = false; - - edit_draw->set_clip_contents(true); } void TextureRegionEditorPlugin::edit(Object *p_object) { @@ -978,7 +997,6 @@ void TextureRegionEditorPlugin::make_visible(bool p_visible) { Dictionary TextureRegionEditorPlugin::get_state() const { Dictionary state; - state["zoom"] = region_editor->draw_zoom; state["snap_offset"] = region_editor->snap_offset; state["snap_step"] = region_editor->snap_step; state["snap_separation"] = region_editor->snap_separation; @@ -989,10 +1007,6 @@ Dictionary TextureRegionEditorPlugin::get_state() const { void TextureRegionEditorPlugin::set_state(const Dictionary &p_state) { Dictionary state = p_state; - if (state.has("zoom")) { - region_editor->draw_zoom = p_state["zoom"]; - } - if (state.has("snap_step")) { Vector2 s = state["snap_step"]; region_editor->sb_step_x->set_value(s.x); @@ -1016,6 +1030,7 @@ void TextureRegionEditorPlugin::set_state(const Dictionary &p_state) { if (state.has("snap_mode")) { region_editor->_set_snap_mode(state["snap_mode"]); + region_editor->snap_mode_button->select(state["snap_mode"]); } } diff --git a/editor/plugins/texture_region_editor_plugin.h b/editor/plugins/texture_region_editor_plugin.h index 61ef769f89..4f301ea916 100644 --- a/editor/plugins/texture_region_editor_plugin.h +++ b/editor/plugins/texture_region_editor_plugin.h @@ -43,9 +43,9 @@ @author Mariano Suligoy */ -class TextureRegionEditor : public Control { +class TextureRegionEditor : public VBoxContainer { - GDCLASS(TextureRegionEditor, Control); + GDCLASS(TextureRegionEditor, VBoxContainer); enum SnapMode { SNAP_NONE, @@ -55,7 +55,7 @@ class TextureRegionEditor : public Control { }; friend class TextureRegionEditorPlugin; - MenuButton *snap_mode_button; + OptionButton *snap_mode_button; ToolButton *zoom_in; ToolButton *zoom_reset; ToolButton *zoom_out; @@ -66,7 +66,7 @@ class TextureRegionEditor : public Control { SpinBox *sb_off_x; SpinBox *sb_sep_y; SpinBox *sb_sep_x; - Control *edit_draw; + Panel *edit_draw; VScrollBar *vscroll; HScrollBar *hscroll; @@ -111,7 +111,8 @@ class TextureRegionEditor : public Control { void _zoom_in(); void _zoom_reset(); void _zoom_out(); - void apply_rect(const Rect2 &rect); + void apply_rect(const Rect2 &p_rect); + void _update_rect(); void _update_autoslice(); protected: diff --git a/editor/plugins/tile_map_editor_plugin.cpp b/editor/plugins/tile_map_editor_plugin.cpp index 213cd2ce1a..1d8a80d3f3 100644 --- a/editor/plugins/tile_map_editor_plugin.cpp +++ b/editor/plugins/tile_map_editor_plugin.cpp @@ -1862,7 +1862,7 @@ TileMapEditor::TileMapEditor(EditorNode *p_editor) { toolbar->add_child(tile_info); options = memnew(MenuButton); - options->set_text("Tile Map"); + options->set_text("TileMap"); options->set_icon(EditorNode::get_singleton()->get_gui_base()->get_icon("TileMap", "EditorIcons")); options->set_process_unhandled_key_input(false); diff --git a/editor/plugins/tile_set_editor_plugin.cpp b/editor/plugins/tile_set_editor_plugin.cpp index d0e0b3e006..cab9a4297d 100644 --- a/editor/plugins/tile_set_editor_plugin.cpp +++ b/editor/plugins/tile_set_editor_plugin.cpp @@ -172,6 +172,7 @@ Error TileSetEditor::update_library_file(Node *p_base_scene, Ref<TileSet> ml, bo } void TileSetEditor::_bind_methods() { + ClassDB::bind_method("_on_tileset_toolbar_button_pressed", &TileSetEditor::_on_tileset_toolbar_button_pressed); ClassDB::bind_method("_on_textures_added", &TileSetEditor::_on_textures_added); ClassDB::bind_method("_on_tileset_toolbar_confirm", &TileSetEditor::_on_tileset_toolbar_confirm); @@ -184,58 +185,69 @@ void TileSetEditor::_bind_methods() { ClassDB::bind_method("_on_workspace_input", &TileSetEditor::_on_workspace_input); ClassDB::bind_method("_on_tool_clicked", &TileSetEditor::_on_tool_clicked); ClassDB::bind_method("_on_priority_changed", &TileSetEditor::_on_priority_changed); + ClassDB::bind_method("_on_z_index_changed", &TileSetEditor::_on_z_index_changed); ClassDB::bind_method("_on_grid_snap_toggled", &TileSetEditor::_on_grid_snap_toggled); ClassDB::bind_method("_set_snap_step", &TileSetEditor::_set_snap_step); ClassDB::bind_method("_set_snap_off", &TileSetEditor::_set_snap_off); ClassDB::bind_method("_set_snap_sep", &TileSetEditor::_set_snap_sep); + ClassDB::bind_method("_zoom_in", &TileSetEditor::_zoom_in); + ClassDB::bind_method("_zoom_out", &TileSetEditor::_zoom_out); + ClassDB::bind_method("_zoom_reset", &TileSetEditor::_zoom_reset); } void TileSetEditor::_notification(int p_what) { - if (p_what == NOTIFICATION_ENTER_TREE || p_what == NOTIFICATION_THEME_CHANGED) { - - tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE]->set_icon(get_icon("ToolAddNode", "EditorIcons")); - tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE]->set_icon(get_icon("Remove", "EditorIcons")); - tileset_toolbar_tools->set_icon(get_icon("Tools", "EditorIcons")); - - tool_workspacemode[WORKSPACE_EDIT]->set_icon(get_icon("Edit", "EditorIcons")); - tool_workspacemode[WORKSPACE_CREATE_SINGLE]->set_icon(get_icon("AddSingleTile", "EditorIcons")); - tool_workspacemode[WORKSPACE_CREATE_AUTOTILE]->set_icon(get_icon("AddAutotile", "EditorIcons")); - tool_workspacemode[WORKSPACE_CREATE_ATLAS]->set_icon(get_icon("AddAtlasTile", "EditorIcons")); - - tools[TOOL_SELECT]->set_icon(get_icon("ToolSelect", "EditorIcons")); - tools[BITMASK_COPY]->set_icon(get_icon("Duplicate", "EditorIcons")); - tools[BITMASK_PASTE]->set_icon(get_icon("Override", "EditorIcons")); - tools[BITMASK_CLEAR]->set_icon(get_icon("Clear", "EditorIcons")); - tools[SHAPE_NEW_POLYGON]->set_icon(get_icon("CollisionPolygon2D", "EditorIcons")); - tools[SHAPE_DELETE]->set_icon(get_icon("Remove", "EditorIcons")); - tools[SHAPE_KEEP_INSIDE_TILE]->set_icon(get_icon("Snap", "EditorIcons")); - tools[TOOL_GRID_SNAP]->set_icon(get_icon("SnapGrid", "EditorIcons")); - tools[ZOOM_OUT]->set_icon(get_icon("ZoomLess", "EditorIcons")); - tools[ZOOM_1]->set_icon(get_icon("ZoomReset", "EditorIcons")); - tools[ZOOM_IN]->set_icon(get_icon("ZoomMore", "EditorIcons")); - tools[VISIBLE_INFO]->set_icon(get_icon("InformationSign", "EditorIcons")); - - tool_editmode[EDITMODE_REGION]->set_icon(get_icon("RegionEdit", "EditorIcons")); - tool_editmode[EDITMODE_COLLISION]->set_icon(get_icon("StaticBody2D", "EditorIcons")); - tool_editmode[EDITMODE_OCCLUSION]->set_icon(get_icon("LightOccluder2D", "EditorIcons")); - tool_editmode[EDITMODE_NAVIGATION]->set_icon(get_icon("Navigation2D", "EditorIcons")); - tool_editmode[EDITMODE_BITMASK]->set_icon(get_icon("PackedDataContainer", "EditorIcons")); - tool_editmode[EDITMODE_PRIORITY]->set_icon(get_icon("MaterialPreviewLight1", "EditorIcons")); - tool_editmode[EDITMODE_ICON]->set_icon(get_icon("LargeTexture", "EditorIcons")); + + switch (p_what) { + case NOTIFICATION_READY: { + + add_constant_override("autohide", 1); // Fixes the dragger always showing up. + } break; + case NOTIFICATION_ENTER_TREE: + case NOTIFICATION_THEME_CHANGED: { + + tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE]->set_icon(get_icon("ToolAddNode", "EditorIcons")); + tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE]->set_icon(get_icon("Remove", "EditorIcons")); + tileset_toolbar_tools->set_icon(get_icon("Tools", "EditorIcons")); + + tool_workspacemode[WORKSPACE_EDIT]->set_icon(get_icon("Edit", "EditorIcons")); + tool_workspacemode[WORKSPACE_CREATE_SINGLE]->set_icon(get_icon("AddSingleTile", "EditorIcons")); + tool_workspacemode[WORKSPACE_CREATE_AUTOTILE]->set_icon(get_icon("AddAutotile", "EditorIcons")); + tool_workspacemode[WORKSPACE_CREATE_ATLAS]->set_icon(get_icon("AddAtlasTile", "EditorIcons")); + + tools[TOOL_SELECT]->set_icon(get_icon("ToolSelect", "EditorIcons")); + tools[BITMASK_COPY]->set_icon(get_icon("Duplicate", "EditorIcons")); + tools[BITMASK_PASTE]->set_icon(get_icon("Override", "EditorIcons")); + tools[BITMASK_CLEAR]->set_icon(get_icon("Clear", "EditorIcons")); + tools[SHAPE_NEW_POLYGON]->set_icon(get_icon("CollisionPolygon2D", "EditorIcons")); + tools[SHAPE_DELETE]->set_icon(get_icon("Remove", "EditorIcons")); + tools[SHAPE_KEEP_INSIDE_TILE]->set_icon(get_icon("Snap", "EditorIcons")); + tools[TOOL_GRID_SNAP]->set_icon(get_icon("SnapGrid", "EditorIcons")); + tools[ZOOM_OUT]->set_icon(get_icon("ZoomLess", "EditorIcons")); + tools[ZOOM_1]->set_icon(get_icon("ZoomReset", "EditorIcons")); + tools[ZOOM_IN]->set_icon(get_icon("ZoomMore", "EditorIcons")); + tools[VISIBLE_INFO]->set_icon(get_icon("InformationSign", "EditorIcons")); + + tool_editmode[EDITMODE_REGION]->set_icon(get_icon("RegionEdit", "EditorIcons")); + tool_editmode[EDITMODE_COLLISION]->set_icon(get_icon("StaticBody2D", "EditorIcons")); + tool_editmode[EDITMODE_OCCLUSION]->set_icon(get_icon("LightOccluder2D", "EditorIcons")); + tool_editmode[EDITMODE_NAVIGATION]->set_icon(get_icon("Navigation2D", "EditorIcons")); + tool_editmode[EDITMODE_BITMASK]->set_icon(get_icon("PackedDataContainer", "EditorIcons")); + tool_editmode[EDITMODE_PRIORITY]->set_icon(get_icon("MaterialPreviewLight1", "EditorIcons")); + tool_editmode[EDITMODE_ICON]->set_icon(get_icon("LargeTexture", "EditorIcons")); + tool_editmode[EDITMODE_Z_INDEX]->set_icon(get_icon("Sort", "EditorIcons")); + + scroll->add_style_override("bg", get_stylebox("bg", "Tree")); + } break; } } TileSetEditor::TileSetEditor(EditorNode *p_editor) { editor = p_editor; - set_name("Tile Set Bottom Editor"); - - HSplitContainer *split = memnew(HSplitContainer); - split->set_anchors_and_margins_preset(PRESET_WIDE, PRESET_MODE_MINSIZE, 10); - add_child(split); + current_tile = -1; VBoxContainer *left_container = memnew(VBoxContainer); - split->add_child(left_container); + add_child(left_container); texture_list = memnew(ItemList); left_container->add_child(texture_list); @@ -247,30 +259,22 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) { left_container->add_child(tileset_toolbar_container); tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE] = memnew(ToolButton); - Vector<Variant> p; - p.push_back((int)TOOL_TILESET_ADD_TEXTURE); - tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE]->connect("pressed", this, "_on_tileset_toolbar_button_pressed", p); + tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE]->connect("pressed", this, "_on_tileset_toolbar_button_pressed", varray(TOOL_TILESET_ADD_TEXTURE)); tileset_toolbar_container->add_child(tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE]); - tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE]->set_tooltip(TTR("Add Texture(s) to TileSet")); + tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE]->set_tooltip(TTR("Add Texture(s) to TileSet.")); tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE] = memnew(ToolButton); - p = Vector<Variant>(); - p.push_back((int)TOOL_TILESET_REMOVE_TEXTURE); - tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE]->connect("pressed", this, "_on_tileset_toolbar_button_pressed", p); + tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE]->connect("pressed", this, "_on_tileset_toolbar_button_pressed", varray(TOOL_TILESET_REMOVE_TEXTURE)); tileset_toolbar_container->add_child(tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE]); - tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE]->set_tooltip(TTR("Remove current Texture from TileSet")); + tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE]->set_tooltip(TTR("Remove selected Texture from TileSet.")); Control *toolbar_separator = memnew(Control); toolbar_separator->set_h_size_flags(Control::SIZE_EXPAND_FILL); tileset_toolbar_container->add_child(toolbar_separator); tileset_toolbar_tools = memnew(MenuButton); - tileset_toolbar_tools->set_text("Tools"); - p = Vector<Variant>(); - p.push_back((int)TOOL_TILESET_CREATE_SCENE); + tileset_toolbar_tools->set_text(TTR("Tools")); tileset_toolbar_tools->get_popup()->add_item(TTR("Create from Scene"), TOOL_TILESET_CREATE_SCENE); - p = Vector<Variant>(); - p.push_back((int)TOOL_TILESET_MERGE_SCENE); tileset_toolbar_tools->get_popup()->add_item(TTR("Merge from Scene"), TOOL_TILESET_MERGE_SCENE); tileset_toolbar_tools->get_popup()->connect("id_pressed", this, "_on_tileset_toolbar_button_pressed"); @@ -279,7 +283,7 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) { //--------------- VBoxContainer *right_container = memnew(VBoxContainer); right_container->set_v_size_flags(SIZE_EXPAND_FILL); - split->add_child(right_container); + add_child(right_container); dragging_point = -1; creating_shape = false; @@ -296,21 +300,18 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) { Ref<ButtonGroup> g(memnew(ButtonGroup)); String workspace_label[WORKSPACE_MODE_MAX] = { "Edit", "New Single Tile", "New Autotile", "New Atlas" }; - for (int i = 0; i < (int)WORKSPACE_MODE_MAX; i++) { tool_workspacemode[i] = memnew(Button); - tool_workspacemode[i]->set_text(workspace_label[i]); + tool_workspacemode[i]->set_text(TTR(workspace_label[i])); tool_workspacemode[i]->set_toggle_mode(true); tool_workspacemode[i]->set_button_group(g); - Vector<Variant> p; - p.push_back(i); - tool_workspacemode[i]->connect("pressed", this, "_on_workspace_mode_changed", p); + tool_workspacemode[i]->connect("pressed", this, "_on_workspace_mode_changed", varray(i)); tool_hb->add_child(tool_workspacemode[i]); } Control *spacer = memnew(Control); spacer->set_h_size_flags(Control::SIZE_EXPAND_FILL); tool_hb->add_child(spacer); - tool_hb->move_child(spacer, (int)WORKSPACE_CREATE_SINGLE); + tool_hb->move_child(spacer, WORKSPACE_CREATE_SINGLE); tool_workspacemode[WORKSPACE_EDIT]->set_pressed(true); workspace_mode = WORKSPACE_EDIT; @@ -321,16 +322,13 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) { tool_hb = memnew(HBoxContainer); g = Ref<ButtonGroup>(memnew(ButtonGroup)); - String label[EDITMODE_MAX] = { "Region", "Collision", "Occlusion", "Navigation", "Bitmask", "Priority", "Icon" }; - + String label[EDITMODE_MAX] = { "Region", "Collision", "Occlusion", "Navigation", "Bitmask", "Priority", "Icon", "Z Index" }; for (int i = 0; i < (int)EDITMODE_MAX; i++) { tool_editmode[i] = memnew(Button); tool_editmode[i]->set_text(label[i]); tool_editmode[i]->set_toggle_mode(true); tool_editmode[i]->set_button_group(g); - Vector<Variant> p; - p.push_back(i); - tool_editmode[i]->connect("pressed", this, "_on_edit_mode_changed", p); + tool_editmode[i]->connect("pressed", this, "_on_edit_mode_changed", varray(i)); tool_hb->add_child(tool_editmode[i]); } tool_editmode[EDITMODE_COLLISION]->set_pressed(true); @@ -343,42 +341,38 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) { toolbar = memnew(HBoxContainer); Ref<ButtonGroup> tg(memnew(ButtonGroup)); - p = Vector<Variant>(); tools[TOOL_SELECT] = memnew(ToolButton); toolbar->add_child(tools[TOOL_SELECT]); - tools[TOOL_SELECT]->set_tooltip(TTR("Select sub-tile to use as icon, this will be also used on invalid autotile bindings.")); tools[TOOL_SELECT]->set_toggle_mode(true); tools[TOOL_SELECT]->set_button_group(tg); tools[TOOL_SELECT]->set_pressed(true); - p.push_back((int)TOOL_SELECT); - tools[TOOL_SELECT]->connect("pressed", this, "_on_tool_clicked", p); + tools[TOOL_SELECT]->connect("pressed", this, "_on_tool_clicked", varray(TOOL_SELECT)); + separator_bitmask = memnew(VSeparator); + toolbar->add_child(separator_bitmask); tools[BITMASK_COPY] = memnew(ToolButton); - p.push_back((int)BITMASK_COPY); - tools[BITMASK_COPY]->connect("pressed", this, "_on_tool_clicked", p); + tools[BITMASK_COPY]->set_tooltip(TTR("Copy bitmask.")); + tools[BITMASK_COPY]->connect("pressed", this, "_on_tool_clicked", varray(BITMASK_COPY)); toolbar->add_child(tools[BITMASK_COPY]); tools[BITMASK_PASTE] = memnew(ToolButton); - p = Vector<Variant>(); - p.push_back((int)BITMASK_PASTE); - tools[BITMASK_PASTE]->connect("pressed", this, "_on_tool_clicked", p); + tools[BITMASK_PASTE]->set_tooltip(TTR("Paste bitmask.")); + tools[BITMASK_PASTE]->connect("pressed", this, "_on_tool_clicked", varray(BITMASK_PASTE)); toolbar->add_child(tools[BITMASK_PASTE]); tools[BITMASK_CLEAR] = memnew(ToolButton); - p = Vector<Variant>(); - p.push_back((int)BITMASK_CLEAR); - tools[BITMASK_CLEAR]->connect("pressed", this, "_on_tool_clicked", p); + tools[BITMASK_CLEAR]->set_tooltip(TTR("Erase bitmask.")); + tools[BITMASK_CLEAR]->connect("pressed", this, "_on_tool_clicked", varray(BITMASK_CLEAR)); toolbar->add_child(tools[BITMASK_CLEAR]); tools[SHAPE_NEW_POLYGON] = memnew(ToolButton); toolbar->add_child(tools[SHAPE_NEW_POLYGON]); tools[SHAPE_NEW_POLYGON]->set_toggle_mode(true); tools[SHAPE_NEW_POLYGON]->set_button_group(tg); + tools[SHAPE_NEW_POLYGON]->set_tooltip(TTR("Create a new polygon.")); separator_delete = memnew(VSeparator); toolbar->add_child(separator_delete); tools[SHAPE_DELETE] = memnew(ToolButton); - p = Vector<Variant>(); - p.push_back((int)SHAPE_DELETE); - tools[SHAPE_DELETE]->connect("pressed", this, "_on_tool_clicked", p); + tools[SHAPE_DELETE]->connect("pressed", this, "_on_tool_clicked", varray(SHAPE_DELETE)); toolbar->add_child(tools[SHAPE_DELETE]); separator_grid = memnew(VSeparator); @@ -386,9 +380,11 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) { tools[SHAPE_KEEP_INSIDE_TILE] = memnew(ToolButton); tools[SHAPE_KEEP_INSIDE_TILE]->set_toggle_mode(true); tools[SHAPE_KEEP_INSIDE_TILE]->set_pressed(true); + tools[SHAPE_KEEP_INSIDE_TILE]->set_tooltip(TTR("Keep polygon inside region Rect.")); toolbar->add_child(tools[SHAPE_KEEP_INSIDE_TILE]); tools[TOOL_GRID_SNAP] = memnew(ToolButton); tools[TOOL_GRID_SNAP]->set_toggle_mode(true); + tools[TOOL_GRID_SNAP]->set_tooltip(TTR("Enable snap and show grid (configurable via the Inspector).")); tools[TOOL_GRID_SNAP]->connect("toggled", this, "_on_grid_snap_toggled"); toolbar->add_child(tools[TOOL_GRID_SNAP]); @@ -401,32 +397,35 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) { spin_priority->hide(); toolbar->add_child(spin_priority); + spin_z_index = memnew(SpinBox); + spin_z_index->set_min(VS::CANVAS_ITEM_Z_MIN); + spin_z_index->set_max(VS::CANVAS_ITEM_Z_MAX); + spin_z_index->set_step(1); + spin_z_index->set_custom_minimum_size(Size2(100, 0)); + spin_z_index->connect("value_changed", this, "_on_z_index_changed"); + spin_z_index->hide(); + toolbar->add_child(spin_z_index); + Control *separator = memnew(Control); separator->set_h_size_flags(SIZE_EXPAND_FILL); toolbar->add_child(separator); tools[ZOOM_OUT] = memnew(ToolButton); - p = Vector<Variant>(); - p.push_back((int)ZOOM_OUT); - tools[ZOOM_OUT]->connect("pressed", this, "_on_tool_clicked", p); + tools[ZOOM_OUT]->connect("pressed", this, "_zoom_out"); toolbar->add_child(tools[ZOOM_OUT]); tools[ZOOM_OUT]->set_tooltip(TTR("Zoom Out")); tools[ZOOM_1] = memnew(ToolButton); - p = Vector<Variant>(); - p.push_back((int)ZOOM_1); - tools[ZOOM_1]->connect("pressed", this, "_on_tool_clicked", p); + tools[ZOOM_1]->connect("pressed", this, "_zoom_reset"); toolbar->add_child(tools[ZOOM_1]); - tools[ZOOM_1]->set_tooltip(TTR("Reset Zoom")); + tools[ZOOM_1]->set_tooltip(TTR("Zoom Reset")); tools[ZOOM_IN] = memnew(ToolButton); - p = Vector<Variant>(); - p.push_back((int)ZOOM_IN); - tools[ZOOM_IN]->connect("pressed", this, "_on_tool_clicked", p); + tools[ZOOM_IN]->connect("pressed", this, "_zoom_in"); toolbar->add_child(tools[ZOOM_IN]); tools[ZOOM_IN]->set_tooltip(TTR("Zoom In")); tools[VISIBLE_INFO] = memnew(ToolButton); tools[VISIBLE_INFO]->set_toggle_mode(true); - tools[VISIBLE_INFO]->set_tooltip(TTR("Display tile's names (hold Alt Key)")); + tools[VISIBLE_INFO]->set_tooltip(TTR("Display Tile Names (Hold Alt Key)")); toolbar->add_child(tools[VISIBLE_INFO]); main_vb->add_child(toolbar); @@ -600,10 +599,14 @@ void TileSetEditor::_on_textures_added(const PoolStringArray &p_paths) { } void TileSetEditor::_on_edit_mode_changed(int p_edit_mode) { + draw_handles = false; + creating_shape = false; edit_mode = (EditMode)p_edit_mode; switch (edit_mode) { case EDITMODE_REGION: { tools[TOOL_SELECT]->show(); + + separator_bitmask->hide(); tools[BITMASK_COPY]->hide(); tools[BITMASK_PASTE]->hide(); tools[BITMASK_CLEAR]->hide(); @@ -623,30 +626,16 @@ void TileSetEditor::_on_edit_mode_changed(int p_edit_mode) { tools[TOOL_SELECT]->set_pressed(true); tools[TOOL_SELECT]->set_tooltip(TTR("Drag handles to edit Rect.\nClick on another Tile to edit it.")); + tools[SHAPE_DELETE]->set_tooltip(TTR("Delete selected Rect.")); spin_priority->hide(); - } break; - case EDITMODE_BITMASK: { - tools[TOOL_SELECT]->show(); - tools[BITMASK_COPY]->show(); - tools[BITMASK_PASTE]->show(); - tools[BITMASK_CLEAR]->show(); - tools[SHAPE_NEW_POLYGON]->hide(); - - separator_delete->hide(); - tools[SHAPE_DELETE]->hide(); - - separator_grid->hide(); - tools[SHAPE_KEEP_INSIDE_TILE]->hide(); - tools[TOOL_GRID_SNAP]->hide(); - - tools[TOOL_SELECT]->set_pressed(true); - tools[TOOL_SELECT]->set_tooltip(TTR("LMB: set bit on.\nRMB: set bit off.\nClick on another Tile to edit it.")); - spin_priority->hide(); + spin_z_index->hide(); } break; case EDITMODE_COLLISION: case EDITMODE_NAVIGATION: case EDITMODE_OCCLUSION: { tools[TOOL_SELECT]->show(); + + separator_bitmask->hide(); tools[BITMASK_COPY]->hide(); tools[BITMASK_PASTE]->hide(); tools[BITMASK_CLEAR]->hide(); @@ -660,11 +649,38 @@ void TileSetEditor::_on_edit_mode_changed(int p_edit_mode) { tools[TOOL_GRID_SNAP]->show(); tools[TOOL_SELECT]->set_tooltip(TTR("Select current edited sub-tile.\nClick on another Tile to edit it.")); + tools[SHAPE_DELETE]->set_tooltip(TTR("Delete polygon.")); spin_priority->hide(); + spin_z_index->hide(); + select_coord(edited_shape_coord); } break; - default: { + case EDITMODE_BITMASK: { tools[TOOL_SELECT]->show(); + + separator_bitmask->show(); + tools[BITMASK_COPY]->show(); + tools[BITMASK_PASTE]->show(); + tools[BITMASK_CLEAR]->show(); + tools[SHAPE_NEW_POLYGON]->hide(); + + separator_delete->hide(); + tools[SHAPE_DELETE]->hide(); + + separator_grid->hide(); + tools[SHAPE_KEEP_INSIDE_TILE]->hide(); + tools[TOOL_GRID_SNAP]->hide(); + + tools[TOOL_SELECT]->set_pressed(true); + tools[TOOL_SELECT]->set_tooltip(TTR("LMB: Set bit on.\nRMB: Set bit off.\nClick on another Tile to edit it.")); + spin_priority->hide(); + } break; + case EDITMODE_Z_INDEX: + case EDITMODE_PRIORITY: + case EDITMODE_ICON: { + tools[TOOL_SELECT]->show(); + + separator_bitmask->hide(); tools[BITMASK_COPY]->hide(); tools[BITMASK_PASTE]->hide(); tools[BITMASK_CLEAR]->hide(); @@ -680,11 +696,18 @@ void TileSetEditor::_on_edit_mode_changed(int p_edit_mode) { if (edit_mode == EDITMODE_ICON) { tools[TOOL_SELECT]->set_tooltip(TTR("Select sub-tile to use as icon, this will be also used on invalid autotile bindings.\nClick on another Tile to edit it.")); spin_priority->hide(); - } else { + spin_z_index->hide(); + } else if (edit_mode == EDITMODE_PRIORITY) { tools[TOOL_SELECT]->set_tooltip(TTR("Select sub-tile to change its priority.\nClick on another Tile to edit it.")); spin_priority->show(); + spin_z_index->hide(); + } else { + tools[TOOL_SELECT]->set_tooltip(TTR("Select sub-tile to change its z index.\nClick on another Tile to edit it.")); + spin_priority->hide(); + spin_z_index->show(); } } break; + default: {} } workspace->update(); } @@ -706,15 +729,16 @@ void TileSetEditor::_on_workspace_mode_changed(int p_workspace_mode) { void TileSetEditor::_on_workspace_draw() { - const Color COLOR_AUTOTILE = Color(0.266373, 0.565288, 0.988281); - const Color COLOR_SINGLE = Color(0.988281, 0.909323, 0.266373); - const Color COLOR_ATLAS = Color(0.78653, 0.812835, 0.832031); - - if (tileset.is_null()) - return; - if (!get_current_texture().is_valid()) + if (tileset.is_null() || !get_current_texture().is_valid()) return; + const Color COLOR_AUTOTILE = Color(0.3, 0.6, 1); + const Color COLOR_SINGLE = Color(1, 1, 0.3); + const Color COLOR_ATLAS = Color(0.8, 0.8, 0.8); + const Color COLOR_SUBDIVISION = Color(0.3, 0.7, 0.6); + + draw_handles = false; + draw_highlight_current_tile(); draw_grid_snap(); @@ -808,10 +832,12 @@ void TileSetEditor::_on_workspace_draw() { spin_priority->set_suffix(" / " + String::num(total, 0)); draw_highlight_subtile(edited_shape_coord, queue_others); } break; + case EDITMODE_Z_INDEX: { + spin_z_index->set_value(tileset->autotile_get_z_index(get_current_tile(), edited_shape_coord)); + draw_highlight_subtile(edited_shape_coord); + } break; default: {} } - - draw_tile_subdivision(get_current_tile(), Color(0.347214, 0.722656, 0.617063)); } RID current_texture_rid = get_current_texture()->get_rid(); @@ -819,7 +845,7 @@ void TileSetEditor::_on_workspace_draw() { tileset->get_tile_list(tiles); for (List<int>::Element *E = tiles->front(); E; E = E->next()) { int t_id = E->get(); - if (tileset->tile_get_texture(t_id)->get_rid() == current_texture_rid && (t_id != get_current_tile() || edit_mode != EDITMODE_REGION)) { + if (tileset->tile_get_texture(t_id)->get_rid() == current_texture_rid && (t_id != get_current_tile() || edit_mode != EDITMODE_REGION || workspace_mode != WORKSPACE_EDIT)) { Rect2i region = tileset->tile_get_region(t_id); region.position += WORKSPACE_MARGIN; Color c; @@ -829,10 +855,11 @@ void TileSetEditor::_on_workspace_draw() { c = COLOR_AUTOTILE; else if (tileset->tile_get_tile_mode(t_id) == TileSet::ATLAS_TILE) c = COLOR_ATLAS; - draw_tile_subdivision(t_id, Color(0.347214, 0.722656, 0.617063, 0.5)); + draw_tile_subdivision(t_id, COLOR_SUBDIVISION); workspace->draw_rect(region, c, false); } } + if (edit_mode == EDITMODE_REGION) { if (workspace_mode != WORKSPACE_EDIT) { Rect2i region = edited_region; @@ -854,6 +881,12 @@ void TileSetEditor::_on_workspace_draw() { region = tileset->tile_get_region(t_id); region.position += WORKSPACE_MARGIN; } + + if (draw_edited_region) + draw_edited_region_subdivision(); + else + draw_tile_subdivision(t_id, COLOR_SUBDIVISION); + Color c; if (tileset->tile_get_tile_mode(t_id) == TileSet::SINGLE_TILE) c = COLOR_SINGLE; @@ -861,13 +894,10 @@ void TileSetEditor::_on_workspace_draw() { c = COLOR_AUTOTILE; else if (tileset->tile_get_tile_mode(t_id) == TileSet::ATLAS_TILE) c = COLOR_ATLAS; - if (draw_edited_region) - draw_edited_region_subdivision(); - else - draw_tile_subdivision(t_id, Color(0.347214, 0.722656, 0.617063, 1)); workspace->draw_rect(region, c, false); } } + workspace_overlay->update(); } @@ -887,9 +917,7 @@ void TileSetEditor::_on_workspace_process() { void TileSetEditor::_on_workspace_overlay_draw() { - if (!tileset.is_valid()) - return; - if (!get_current_texture().is_valid()) + if (!tileset.is_valid() || !get_current_texture().is_valid()) return; const Color COLOR_AUTOTILE = Color(0.266373, 0.565288, 0.988281); @@ -939,9 +967,8 @@ void TileSetEditor::_on_workspace_overlay_draw() { #define MIN_DISTANCE_SQUARED 6 void TileSetEditor::_on_workspace_input(const Ref<InputEvent> &p_ie) { - if (tileset.is_null()) - return; - if (!get_current_texture().is_valid()) + + if (tileset.is_null() || !get_current_texture().is_valid()) return; static bool dragging; @@ -979,11 +1006,9 @@ void TileSetEditor::_on_workspace_input(const Ref<InputEvent> &p_ie) { } // Mouse Wheel Event - const int _mouse_button_index = mb->get_button_index(); - if (_mouse_button_index == BUTTON_WHEEL_UP && mb->get_control()) { + if (mb->get_button_index() == BUTTON_WHEEL_UP && mb->is_pressed() && mb->get_control()) { _zoom_in(); - - } else if (_mouse_button_index == BUTTON_WHEEL_DOWN && mb->get_control()) { + } else if (mb->get_button_index() == BUTTON_WHEEL_DOWN && mb->is_pressed() && mb->get_control()) { _zoom_out(); } } @@ -1032,10 +1057,14 @@ void TileSetEditor::_on_workspace_input(const Ref<InputEvent> &p_ie) { tileset->tile_set_tile_mode(t_id, workspace_mode == WORKSPACE_CREATE_AUTOTILE ? TileSet::AUTO_TILE : TileSet::ATLAS_TILE); } set_current_tile(t_id); + tool_workspacemode[WORKSPACE_EDIT]->set_pressed(true); + tool_editmode[EDITMODE_COLLISION]->set_pressed(true); + edit_mode = EDITMODE_COLLISION; _on_workspace_mode_changed(WORKSPACE_EDIT); } } + edited_region = Rect2(); workspace->update(); workspace_overlay->update(); return; @@ -1201,7 +1230,8 @@ void TileSetEditor::_on_workspace_input(const Ref<InputEvent> &p_ie) { case EDITMODE_COLLISION: case EDITMODE_OCCLUSION: case EDITMODE_NAVIGATION: - case EDITMODE_PRIORITY: { + case EDITMODE_PRIORITY: + case EDITMODE_Z_INDEX: { Vector2 shape_anchor = Vector2(0, 0); if (tileset->tile_get_tile_mode(get_current_tile()) == TileSet::AUTO_TILE || tileset->tile_get_tile_mode(get_current_tile()) == TileSet::ATLAS_TILE) { shape_anchor = edited_shape_coord; @@ -1416,6 +1446,7 @@ void TileSetEditor::_on_tool_clicked(int p_tool) { case EDITMODE_REGION: { if (workspace_mode == WORKSPACE_EDIT && get_current_tile() >= 0) { tileset->remove_tile(get_current_tile()); + set_current_tile(-1); workspace->update(); workspace_overlay->update(); } @@ -1461,12 +1492,6 @@ void TileSetEditor::_on_tool_clicked(int p_tool) { default: {} } } - } else if (p_tool == ZOOM_OUT) { - _zoom_out(); - } else if (p_tool == ZOOM_1) { - _reset_zoom(); - } else if (p_tool == ZOOM_IN) { - _zoom_in(); } else if (p_tool == TOOL_SELECT) { if (creating_shape) { // Cancel Creation @@ -1482,6 +1507,11 @@ void TileSetEditor::_on_priority_changed(float val) { workspace->update(); } +void TileSetEditor::_on_z_index_changed(float val) { + tileset->autotile_set_z_index(get_current_tile(), edited_shape_coord, (int)val); + workspace->update(); +} + void TileSetEditor::_on_grid_snap_toggled(bool p_val) { helper->set_snap_options_visible(p_val); workspace->update(); @@ -1524,7 +1554,7 @@ void TileSetEditor::_zoom_out() { workspace_overlay->set_custom_minimum_size(workspace->get_rect().size * scale); } } -void TileSetEditor::_reset_zoom() { +void TileSetEditor::_zoom_reset() { workspace->set_scale(Vector2(1, 1)); workspace_container->set_custom_minimum_size(workspace->get_rect().size); workspace_overlay->set_custom_minimum_size(workspace->get_rect().size); @@ -1532,20 +1562,32 @@ void TileSetEditor::_reset_zoom() { void TileSetEditor::draw_highlight_current_tile() { - if (get_current_tile() >= 0) { - Rect2 region = tileset->tile_get_region(get_current_tile()); - region.position += WORKSPACE_MARGIN; - workspace->draw_rect(Rect2(0, 0, workspace->get_rect().size.x, region.position.y), Color(0.3, 0.3, 0.3, 0.3)); - workspace->draw_rect(Rect2(0, region.position.y, region.position.x, region.size.y), Color(0.3, 0.3, 0.3, 0.3)); - workspace->draw_rect(Rect2(region.position.x + region.size.x, region.position.y, workspace->get_rect().size.x - region.position.x - region.size.x, region.size.y), Color(0.3, 0.3, 0.3, 0.3)); - workspace->draw_rect(Rect2(0, region.position.y + region.size.y, workspace->get_rect().size.x, workspace->get_rect().size.y - region.size.y - region.position.y), Color(0.3, 0.3, 0.3, 0.3)); + Color shadow_color = Color(0.3, 0.3, 0.3, 0.3); + if ((workspace_mode == WORKSPACE_EDIT && get_current_tile() >= 0) || !edited_region.has_no_area()) { + Rect2 region; + if (edited_region.has_no_area()) { + region = tileset->tile_get_region(get_current_tile()); + region.position += WORKSPACE_MARGIN; + } else { + region = edited_region; + } + + if (region.position.y >= 0) + workspace->draw_rect(Rect2(0, 0, workspace->get_rect().size.x, region.position.y), shadow_color); + if (region.position.x >= 0) + workspace->draw_rect(Rect2(0, MAX(0, region.position.y), region.position.x, MIN(workspace->get_rect().size.y - region.position.y, MIN(region.size.y, region.position.y + region.size.y))), shadow_color); + if (region.position.x + region.size.x <= workspace->get_rect().size.x) + workspace->draw_rect(Rect2(region.position.x + region.size.x, MAX(0, region.position.y), workspace->get_rect().size.x - region.position.x - region.size.x, MIN(workspace->get_rect().size.y - region.position.y, MIN(region.size.y, region.position.y + region.size.y))), shadow_color); + if (region.position.y + region.size.y <= workspace->get_rect().size.y) + workspace->draw_rect(Rect2(0, region.position.y + region.size.y, workspace->get_rect().size.x, workspace->get_rect().size.y - region.size.y - region.position.y), shadow_color); } else { - workspace->draw_rect(Rect2(Point2(0, 0), workspace->get_rect().size), Color(0.3, 0.3, 0.3, 0.3)); + workspace->draw_rect(Rect2(Point2(0, 0), workspace->get_rect().size), shadow_color); } } void TileSetEditor::draw_highlight_subtile(Vector2 coord, const Vector<Vector2> &other_highlighted) { + Color shadow_color = Color(0.3, 0.3, 0.3, 0.3); Vector2 size = tileset->autotile_get_size(get_current_tile()); int spacing = tileset->autotile_get_spacing(get_current_tile()); Rect2 region = tileset->tile_get_region(get_current_tile()); @@ -1553,10 +1595,16 @@ void TileSetEditor::draw_highlight_subtile(Vector2 coord, const Vector<Vector2> coord.y *= (size.y + spacing); coord += region.position; coord += WORKSPACE_MARGIN; - workspace->draw_rect(Rect2(0, 0, workspace->get_rect().size.x, coord.y), Color(0.3, 0.3, 0.3, 0.3)); - workspace->draw_rect(Rect2(0, coord.y, coord.x, size.y), Color(0.3, 0.3, 0.3, 0.3)); - workspace->draw_rect(Rect2(coord.x + size.x, coord.y, workspace->get_rect().size.x - coord.x - size.x, size.y), Color(0.3, 0.3, 0.3, 0.3)); - workspace->draw_rect(Rect2(0, coord.y + size.y, workspace->get_rect().size.x, workspace->get_rect().size.y - size.y - coord.y), Color(0.3, 0.3, 0.3, 0.3)); + + if (coord.y >= 0) + workspace->draw_rect(Rect2(0, 0, workspace->get_rect().size.x, coord.y), shadow_color); + if (coord.x >= 0) + workspace->draw_rect(Rect2(0, MAX(0, coord.y), coord.x, MIN(workspace->get_rect().size.y - coord.y, MIN(size.y, coord.y + size.y))), shadow_color); + if (coord.x + size.x <= workspace->get_rect().size.x) + workspace->draw_rect(Rect2(coord.x + size.x, MAX(0, coord.y), workspace->get_rect().size.x - coord.x - size.x, MIN(workspace->get_rect().size.y - coord.y, MIN(size.y, coord.y + size.y))), shadow_color); + if (coord.y + size.y <= workspace->get_rect().size.y) + workspace->draw_rect(Rect2(0, coord.y + size.y, workspace->get_rect().size.x, workspace->get_rect().size.y - size.y - coord.y), shadow_color); + coord += Vector2(1, 1) / workspace->get_scale().x; workspace->draw_rect(Rect2(coord, size - Vector2(2, 2) / workspace->get_scale().x), Color(1, 0, 0), false); for (int i = 0; i < other_highlighted.size(); i++) { @@ -1576,35 +1624,35 @@ void TileSetEditor::draw_tile_subdivision(int p_id, Color p_color) const { Rect2 region = tileset->tile_get_region(p_id); Size2 size = tileset->autotile_get_size(p_id); int spacing = tileset->autotile_get_spacing(p_id); - float j = 0; + float j = size.x; + while (j < region.size.x) { - j += size.x; if (spacing <= 0) { workspace->draw_line(region.position + WORKSPACE_MARGIN + Point2(j, 0), region.position + WORKSPACE_MARGIN + Point2(j, region.size.y), c); } else { workspace->draw_rect(Rect2(region.position + WORKSPACE_MARGIN + Point2(j, 0), Size2(spacing, region.size.y)), c); } - j += spacing; + j += spacing + size.x; } - j = 0; + j = size.y; while (j < region.size.y) { - j += size.y; if (spacing <= 0) { workspace->draw_line(region.position + WORKSPACE_MARGIN + Point2(0, j), region.position + WORKSPACE_MARGIN + Point2(region.size.x, j), c); } else { workspace->draw_rect(Rect2(region.position + WORKSPACE_MARGIN + Point2(0, j), Size2(region.size.x, spacing)), c); } - j += spacing; + j += spacing + size.y; } } } void TileSetEditor::draw_edited_region_subdivision() const { - Color c = Color(0.347214, 0.722656, 0.617063, 1); + Color c = Color(0.3, 0.7, 0.6); Rect2 region = edited_region; Size2 size; int spacing; bool draw; + if (workspace_mode == WORKSPACE_EDIT) { int p_id = get_current_tile(); size = tileset->autotile_get_size(p_id); @@ -1615,66 +1663,72 @@ void TileSetEditor::draw_edited_region_subdivision() const { spacing = snap_separation.x; draw = workspace_mode != WORKSPACE_CREATE_SINGLE; } - if (draw) { - float j = 0; + if (draw) { + float j = size.x; while (j < region.size.x) { - j += size.x; if (spacing <= 0) { workspace->draw_line(region.position + Point2(j, 0), region.position + Point2(j, region.size.y), c); } else { workspace->draw_rect(Rect2(region.position + Point2(j, 0), Size2(spacing, region.size.y)), c); } - j += spacing; + j += spacing + size.x; } - j = 0; + j = size.y; while (j < region.size.y) { - j += size.y; if (spacing <= 0) { workspace->draw_line(region.position + Point2(0, j), region.position + Point2(region.size.x, j), c); } else { workspace->draw_rect(Rect2(region.position + Point2(0, j), Size2(region.size.x, spacing)), c); } - j += spacing; + j += spacing + size.y; } } } void TileSetEditor::draw_grid_snap() { if (tools[TOOL_GRID_SNAP]->is_pressed()) { - Color grid_color = Color(0.39, 0, 1, 0.2f); + Color grid_color = Color(0.4, 0, 1); Size2 s = workspace->get_size(); - int width_count = (int)(s.width / (snap_step.x + snap_separation.x)); - int height_count = (int)(s.height / (snap_step.y + snap_separation.y)); + int width_count = Math::floor((s.width - WORKSPACE_MARGIN.x) / (snap_step.x + snap_separation.x)); + int height_count = Math::floor((s.height - WORKSPACE_MARGIN.y) / (snap_step.y + snap_separation.y)); + int last_p = 0; if (snap_step.x != 0) { - int last_p = 0; for (int i = 0; i <= width_count; i++) { if (i == 0 && snap_offset.x != 0) { last_p = snap_offset.x; } - if (snap_separation.x != 0 && i != 0) { - workspace->draw_rect(Rect2(last_p, 0, snap_separation.x, s.height), grid_color); - last_p += snap_separation.x; - } else + if (snap_separation.x != 0) { + if (i != 0) { + workspace->draw_rect(Rect2(last_p, 0, snap_separation.x, s.height), grid_color); + last_p += snap_separation.x; + } else { + workspace->draw_rect(Rect2(last_p, 0, -snap_separation.x, s.height), grid_color); + } + } else { workspace->draw_line(Point2(last_p, 0), Point2(last_p, s.height), grid_color); - + } last_p += snap_step.x; } } - + last_p = 0; if (snap_step.y != 0) { - int last_p = 0; for (int i = 0; i <= height_count; i++) { if (i == 0 && snap_offset.y != 0) { last_p = snap_offset.y; } - if (snap_separation.x != 0 && i != 0) { - workspace->draw_rect(Rect2(0, last_p, s.width, snap_separation.y), grid_color); - last_p += snap_separation.y; - } else + if (snap_separation.x != 0) { + if (i != 0) { + workspace->draw_rect(Rect2(0, last_p, s.width, snap_separation.y), grid_color); + last_p += snap_separation.y; + } else { + workspace->draw_rect(Rect2(0, last_p, s.width, -snap_separation.y), grid_color); + } + } else { workspace->draw_line(Point2(0, last_p), Point2(s.width, last_p), grid_color); + } last_p += snap_step.y; } } @@ -1687,8 +1741,6 @@ void TileSetEditor::draw_polygon_shapes() { if (t_id < 0) return; - draw_handles = false; - switch (edit_mode) { case EDITMODE_COLLISION: { Vector<TileSet::ShapeData> sd = tileset->tile_get_shapes(t_id); @@ -2154,6 +2206,18 @@ void TileSetEditor::update_texture_list_icon() { void TileSetEditor::update_workspace_tile_mode() { + if (!get_current_texture().is_valid()) { + tool_workspacemode[WORKSPACE_EDIT]->set_pressed(true); + workspace_mode = WORKSPACE_EDIT; + for (int i = 1; i < WORKSPACE_MODE_MAX; i++) { + tool_workspacemode[i]->set_disabled(true); + } + } else { + for (int i = 1; i < WORKSPACE_MODE_MAX; i++) { + tool_workspacemode[i]->set_disabled(false); + } + } + if (workspace_mode != WORKSPACE_EDIT) { for (int i = 0; i < EDITMODE_MAX; i++) { tool_editmode[i]->hide(); @@ -2172,7 +2236,9 @@ void TileSetEditor::update_workspace_tile_mode() { for (int i = 0; i < ZOOM_OUT; i++) { tools[i]->hide(); } + separator_editmode->hide(); + separator_bitmask->hide(); separator_delete->hide(); separator_grid->hide(); return; @@ -2184,7 +2250,7 @@ void TileSetEditor::update_workspace_tile_mode() { separator_editmode->show(); if (tileset->tile_get_tile_mode(get_current_tile()) == TileSet::SINGLE_TILE) { - if (tool_editmode[EDITMODE_ICON]->is_pressed() || tool_editmode[EDITMODE_PRIORITY]->is_pressed() || tool_editmode[EDITMODE_BITMASK]->is_pressed()) { + if (tool_editmode[EDITMODE_ICON]->is_pressed() || tool_editmode[EDITMODE_PRIORITY]->is_pressed() || tool_editmode[EDITMODE_BITMASK]->is_pressed() || tool_editmode[EDITMODE_Z_INDEX]->is_pressed()) { tool_editmode[EDITMODE_COLLISION]->set_pressed(true); edit_mode = EDITMODE_COLLISION; } @@ -2193,6 +2259,7 @@ void TileSetEditor::update_workspace_tile_mode() { tool_editmode[EDITMODE_ICON]->hide(); tool_editmode[EDITMODE_BITMASK]->hide(); tool_editmode[EDITMODE_PRIORITY]->hide(); + tool_editmode[EDITMODE_Z_INDEX]->hide(); } else if (tileset->tile_get_tile_mode(get_current_tile()) == TileSet::AUTO_TILE || tileset->tile_get_tile_mode(get_current_tile()) == TileSet::ATLAS_TILE) { if (edit_mode == EDITMODE_ICON) select_coord(tileset->autotile_get_icon_coordinate(get_current_tile())); @@ -2218,25 +2285,18 @@ void TileSetEditor::update_edited_region(const Vector2 &end_point) { edited_region = Rect2(region_from, Size2()); if (tools[TOOL_GRID_SNAP]->is_pressed()) { Vector2 grid_coord; - grid_coord.x = Math::floor((region_from.x - snap_offset.x) / (snap_step.x + snap_separation.x)); - grid_coord.y = Math::floor((region_from.y - snap_offset.y) / (snap_step.y + snap_separation.y)); - grid_coord.x *= (snap_step.x + snap_separation.x); - grid_coord.y *= (snap_step.y + snap_separation.y); + grid_coord = ((region_from - snap_offset) / (snap_step + snap_separation)).floor(); + grid_coord *= (snap_step + snap_separation); grid_coord += snap_offset; edited_region.expand_to(grid_coord); - grid_coord += snap_step; + grid_coord += snap_step + snap_separation; edited_region.expand_to(grid_coord); - grid_coord.x = Math::floor((end_point.x - snap_offset.x) / (snap_step.x + snap_separation.x)); - grid_coord.y = Math::floor((end_point.y - snap_offset.y) / (snap_step.y + snap_separation.y)); - grid_coord.x *= (snap_step.x + snap_separation.x); - grid_coord.y *= (snap_step.y + snap_separation.y); + + grid_coord = ((end_point - snap_offset) / (snap_step + snap_separation)).floor(); + grid_coord *= (snap_step + snap_separation); grid_coord += snap_offset; edited_region.expand_to(grid_coord); - grid_coord += snap_step; - if (grid_coord.x < end_point.x) - grid_coord.x += snap_separation.x; - if (grid_coord.y < end_point.y) - grid_coord.y += snap_separation.y; + grid_coord += snap_step + snap_separation; edited_region.expand_to(grid_coord); } else { edited_region.expand_to(end_point); @@ -2414,7 +2474,13 @@ void TilesetEditorContext::_get_property_list(List<PropertyInfo> *p_list) const } } +void TilesetEditorContext::_bind_methods() { + + ClassDB::bind_method("_hide_script_from_inspector", &TilesetEditorContext::_hide_script_from_inspector); +} + TilesetEditorContext::TilesetEditorContext(TileSetEditor *p_tileset_editor) { + tileset_editor = p_tileset_editor; } @@ -2428,8 +2494,7 @@ void TileSetEditorPlugin::edit(Object *p_node) { bool TileSetEditorPlugin::handles(Object *p_node) const { - return p_node->is_class("TileSet") || - p_node->is_class("TilesetEditorContext"); + return p_node->is_class("TileSet") || p_node->is_class("TilesetEditorContext"); } void TileSetEditorPlugin::make_visible(bool p_visible) { @@ -2444,6 +2509,41 @@ void TileSetEditorPlugin::make_visible(bool p_visible) { } } +Dictionary TileSetEditorPlugin::get_state() const { + + Dictionary state; + state["snap_offset"] = tileset_editor->snap_offset; + state["snap_step"] = tileset_editor->snap_step; + state["snap_separation"] = tileset_editor->snap_separation; + state["snap_enabled"] = tileset_editor->tools[TileSetEditor::TOOL_GRID_SNAP]->is_pressed(); + state["keep_inside_tile"] = tileset_editor->tools[TileSetEditor::SHAPE_KEEP_INSIDE_TILE]->is_pressed(); + return state; +} + +void TileSetEditorPlugin::set_state(const Dictionary &p_state) { + + Dictionary state = p_state; + if (state.has("snap_step")) { + tileset_editor->_set_snap_step(state["snap_step"]); + } + + if (state.has("snap_offset")) { + tileset_editor->_set_snap_off(state["snap_offset"]); + } + + if (state.has("snap_separation")) { + tileset_editor->_set_snap_sep(state["snap_separation"]); + } + + if (state.has("snap_enabled")) { + tileset_editor->tools[TileSetEditor::TOOL_GRID_SNAP]->set_pressed(state["snap_enabled"]); + } + + if (state.has("keep_inside_tile")) { + tileset_editor->tools[TileSetEditor::SHAPE_KEEP_INSIDE_TILE]->set_pressed(state["keep_inside_tile"]); + } +} + TileSetEditorPlugin::TileSetEditorPlugin(EditorNode *p_node) { editor = p_node; tileset_editor = memnew(TileSetEditor(p_node)); @@ -2451,6 +2551,6 @@ TileSetEditorPlugin::TileSetEditorPlugin(EditorNode *p_node) { tileset_editor->set_custom_minimum_size(Size2(0, 200) * EDSCALE); tileset_editor->hide(); - tileset_editor_button = p_node->add_bottom_panel_item(TTR("Tile Set"), tileset_editor); + tileset_editor_button = p_node->add_bottom_panel_item(TTR("TileSet"), tileset_editor); tileset_editor_button->hide(); } diff --git a/editor/plugins/tile_set_editor_plugin.h b/editor/plugins/tile_set_editor_plugin.h index bd8a2ddb98..276e23f9ee 100644 --- a/editor/plugins/tile_set_editor_plugin.h +++ b/editor/plugins/tile_set_editor_plugin.h @@ -40,12 +40,12 @@ #define WORKSPACE_MARGIN Vector2(10, 10) class TilesetEditorContext; -class TileSetEditor : public Control { +class TileSetEditor : public HSplitContainer { friend class TileSetEditorPlugin; friend class TilesetEditorContext; - GDCLASS(TileSetEditor, Control) + GDCLASS(TileSetEditor, HSplitContainer) enum TextureToolButtons { TOOL_TILESET_ADD_TEXTURE, @@ -71,6 +71,7 @@ class TileSetEditor : public Control { EDITMODE_BITMASK, EDITMODE_PRIORITY, EDITMODE_ICON, + EDITMODE_Z_INDEX, EDITMODE_MAX }; @@ -134,9 +135,11 @@ class TileSetEditor : public Control { HSeparator *separator_editmode; HBoxContainer *toolbar; ToolButton *tools[TOOL_MAX]; + VSeparator *separator_bitmask; VSeparator *separator_delete; VSeparator *separator_grid; SpinBox *spin_priority; + SpinBox *spin_z_index; WorkspaceMode workspace_mode; EditMode edit_mode; int current_tile; @@ -177,6 +180,7 @@ private: void _on_workspace_input(const Ref<InputEvent> &p_ie); void _on_tool_clicked(int p_tool); void _on_priority_changed(float val); + void _on_z_index_changed(float val); void _on_grid_snap_toggled(bool p_val); void _set_snap_step(Vector2 p_val); void _set_snap_off(Vector2 p_val); @@ -184,7 +188,7 @@ private: void _zoom_in(); void _zoom_out(); - void _reset_zoom(); + void _zoom_reset(); void draw_highlight_current_tile(); void draw_highlight_subtile(Vector2 coord, const Vector<Vector2> &other_highlighted = Vector<Vector2>()); @@ -212,6 +216,7 @@ class TilesetEditorContext : public Object { bool snap_options_visible; public: + bool _hide_script_from_inspector() { return true; } void set_tileset(const Ref<TileSet> &p_tileset); private: @@ -221,6 +226,7 @@ protected: bool _set(const StringName &p_name, const Variant &p_value); bool _get(const StringName &p_name, Variant &r_ret) const; void _get_property_list(List<PropertyInfo> *p_list) const; + static void _bind_methods(); public: TilesetEditorContext(TileSetEditor *p_tileset_editor); @@ -240,6 +246,8 @@ public: virtual void edit(Object *p_node); virtual bool handles(Object *p_node) const; virtual void make_visible(bool p_visible); + void set_state(const Dictionary &p_state); + Dictionary get_state() const; TileSetEditorPlugin(EditorNode *p_node); }; diff --git a/editor/plugins/visual_shader_editor_plugin.cpp b/editor/plugins/visual_shader_editor_plugin.cpp index 39e50ec7f8..d3295c0f51 100644 --- a/editor/plugins/visual_shader_editor_plugin.cpp +++ b/editor/plugins/visual_shader_editor_plugin.cpp @@ -633,18 +633,23 @@ void VisualShaderEditor::_duplicate_nodes() { VisualShader::Type type = VisualShader::Type(edit_type->get_selected()); List<int> nodes; + Set<int> excluded; for (int i = 0; i < graph->get_child_count(); i++) { - if (Object::cast_to<GraphNode>(graph->get_child(i))) { - int id = String(graph->get_child(i)->get_name()).to_int(); + GraphNode *gn = Object::cast_to<GraphNode>(graph->get_child(i)); + if (gn) { + int id = String(gn->get_name()).to_int(); Ref<VisualShaderNode> node = visual_shader->get_node(type, id); Ref<VisualShaderNodeOutput> output = node; - if (output.is_valid()) //can't duplicate output + if (output.is_valid()) { // can't duplicate output + excluded.insert(id); continue; - if (node.is_valid()) { + } + if (node.is_valid() && gn->is_selected()) { nodes.push_back(id); } + excluded.insert(id); } } @@ -683,15 +688,16 @@ void VisualShaderEditor::_duplicate_nodes() { undo_redo->add_undo_method(this, "_update_graph"); undo_redo->commit_action(); - //reselect + // reselect duplicated nodes by excluding the other ones for (int i = 0; i < graph->get_child_count(); i++) { - if (Object::cast_to<GraphNode>(graph->get_child(i))) { - int id = String(graph->get_child(i)->get_name()).to_int(); - if (nodes.find(id)) { - Object::cast_to<GraphNode>(graph->get_child(i))->set_selected(true); + GraphNode *gn = Object::cast_to<GraphNode>(graph->get_child(i)); + if (gn) { + int id = String(gn->get_name()).to_int(); + if (!excluded.has(id)) { + gn->set_selected(true); } else { - Object::cast_to<GraphNode>(graph->get_child(i))->set_selected(false); + gn->set_selected(false); } } } @@ -798,7 +804,7 @@ VisualShaderEditor::VisualShaderEditor() { add_node = memnew(MenuButton); graph->get_zoom_hbox()->add_child(add_node); - add_node->set_text(TTR("Add Node..")); + add_node->set_text(TTR("Add Node...")); graph->get_zoom_hbox()->move_child(add_node, 0); add_node->get_popup()->connect("id_pressed", this, "_add_node"); diff --git a/editor/project_export.cpp b/editor/project_export.cpp index f8ba6fd4e3..557aac021d 100644 --- a/editor/project_export.cpp +++ b/editor/project_export.cpp @@ -56,7 +56,7 @@ void ProjectExportDialog::_notification(int p_what) { custom_feature_display->get_parent_control()->add_style_override("panel", get_stylebox("bg", "Tree")); } break; case NOTIFICATION_POPUP_HIDE: { - EditorSettings::get_singleton()->set("interface/dialogs/export_bounds", get_rect()); + EditorSettings::get_singleton()->set_project_metadata("dialog_bounds", "export", get_rect()); } break; case NOTIFICATION_THEME_CHANGED: { duplicate_preset->set_icon(get_icon("Duplicate", "EditorIcons")); @@ -84,8 +84,9 @@ void ProjectExportDialog::popup_export() { } // Restore valid window bounds or pop up at default size. - if (EditorSettings::get_singleton()->has_setting("interface/dialogs/export_bounds")) { - popup(EditorSettings::get_singleton()->get("interface/dialogs/export_bounds")); + Rect2 saved_size = EditorSettings::get_singleton()->get_project_metadata("dialog_bounds", "export", Rect2()); + if (saved_size != Rect2()) { + popup(saved_size); } else { Size2 popup_size = Size2(900, 700) * editor_get_scale(); @@ -191,7 +192,7 @@ void ProjectExportDialog::_edit_preset(int p_index) { if (p_index < 0 || p_index >= presets->get_item_count()) { name->set_text(""); name->set_editable(false); - export_path->set_editable(false); + export_path->hide(); runnable->set_disabled(true); parameters->edit(NULL); presets->unselect_all(); @@ -213,11 +214,19 @@ void ProjectExportDialog::_edit_preset(int p_index) { sections->show(); name->set_editable(true); - export_path->set_editable(true); + export_path->show(); duplicate_preset->set_disabled(false); delete_preset->set_disabled(false); name->set_text(current->get_name()); - export_path->set_text(current->get_export_path()); + + List<String> extension_list = current->get_platform()->get_binary_extensions(current); + Vector<String> extension_vector; + for (int i = 0; i < extension_list.size(); i++) { + extension_vector.push_back("*." + extension_list[i]); + } + + export_path->setup(extension_vector, false, true); + export_path->update_property(); runnable->set_disabled(false); runnable->set_pressed(current->is_runnable()); parameters->edit(current.ptr()); @@ -457,7 +466,21 @@ void ProjectExportDialog::_name_changed(const String &p_string) { _update_presets(); } -void ProjectExportDialog::_export_path_changed(const String &p_string) { +void ProjectExportDialog::set_export_path(const String &p_value) { + Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current()); + ERR_FAIL_COND(current.is_null()); + + current->set_export_path(p_value); +} + +String ProjectExportDialog::get_export_path() { + Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current()); + ERR_FAIL_COND_V(current.is_null(), String("")); + + return current->get_export_path(); +} + +void ProjectExportDialog::_export_path_changed(const StringName &p_property, const Variant &p_value) { if (updating) return; @@ -465,7 +488,7 @@ void ProjectExportDialog::_export_path_changed(const String &p_string) { Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current()); ERR_FAIL_COND(current.is_null()); - current->set_export_path(p_string); + current->set_export_path(p_value); _update_presets(); } @@ -954,6 +977,10 @@ void ProjectExportDialog::_bind_methods() { ClassDB::bind_method("_export_all_dialog_action", &ProjectExportDialog::_export_all_dialog_action); ClassDB::bind_method("_custom_features_changed", &ProjectExportDialog::_custom_features_changed); ClassDB::bind_method("_tab_changed", &ProjectExportDialog::_tab_changed); + ClassDB::bind_method("set_export_path", &ProjectExportDialog::set_export_path); + ClassDB::bind_method("get_export_path", &ProjectExportDialog::get_export_path); + + ADD_PROPERTY(PropertyInfo(Variant::STRING, "export_path"), "set_export_path", "get_export_path"); } ProjectExportDialog::ProjectExportDialog() { @@ -1006,9 +1033,12 @@ ProjectExportDialog::ProjectExportDialog() { runnable->connect("pressed", this, "_runnable_pressed"); settings_vb->add_child(runnable); - export_path = memnew(LineEdit); - settings_vb->add_margin_child(TTR("Export Path:"), export_path); - export_path->connect("text_changed", this, "_export_path_changed"); + export_path = memnew(EditorPropertyPath); + settings_vb->add_child(export_path); + export_path->set_label(TTR("Export Path")); + export_path->set_object_and_property(this, "export_path"); + export_path->set_save_mode(); + export_path->connect("property_changed", this, "_export_path_changed"); sections = memnew(TabContainer); sections->set_tab_align(TabContainer::ALIGN_LEFT); @@ -1100,7 +1130,7 @@ ProjectExportDialog::ProjectExportDialog() { //disable by default name->set_editable(false); - export_path->set_editable(false); + export_path->hide(); runnable->set_disabled(true); duplicate_preset->set_disabled(true); delete_preset->set_disabled(true); diff --git a/editor/project_export.h b/editor/project_export.h index 7009968138..b43dd9a392 100644 --- a/editor/project_export.h +++ b/editor/project_export.h @@ -37,6 +37,7 @@ #include "editor/editor_file_dialog.h" #include "editor/editor_file_system.h" #include "editor/editor_inspector.h" +#include "editor/editor_properties.h" #include "scene/gui/button.h" #include "scene/gui/check_button.h" #include "scene/gui/control.h" @@ -66,7 +67,7 @@ private: ItemList *presets; LineEdit *name; - LineEdit *export_path; + EditorPropertyPath *export_path; EditorInspector *parameters; CheckButton *runnable; @@ -110,7 +111,7 @@ private: void _runnable_pressed(); void _update_parameters(const String &p_edited_property); void _name_changed(const String &p_string); - void _export_path_changed(const String &p_string); + void _export_path_changed(const StringName &p_property, const Variant &p_value); void _add_preset(int p_platform); void _edit_preset(int p_index); void _duplicate_preset(); @@ -162,6 +163,9 @@ protected: public: void popup_export(); + void set_export_path(const String &p_value); + String get_export_path(); + ProjectExportDialog(); ~ProjectExportDialog(); }; diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp index 8c906e5f0b..8d5847bea4 100644 --- a/editor/project_manager.cpp +++ b/editor/project_manager.cpp @@ -745,7 +745,8 @@ public: get_ok()->set_text(TTR("Create & Edit")); name_container->show(); install_path_container->hide(); - project_name->grab_focus(); + project_name->call_deferred("grab_focus"); + project_name->call_deferred("select_all"); } else if (mode == MODE_INSTALL) { @@ -866,16 +867,22 @@ struct ProjectItem { uint64_t last_modified; bool favorite; bool grayed; + bool ordered_latest_modification; ProjectItem() {} - ProjectItem(const String &p_project, const String &p_path, const String &p_conf, uint64_t p_last_modified, bool p_favorite = false, bool p_grayed = false) { + ProjectItem(const String &p_project, const String &p_path, const String &p_conf, uint64_t p_last_modified, bool p_favorite = false, bool p_grayed = false, const bool p_ordered_latest_modification = true) { project = p_project; path = p_path; conf = p_conf; last_modified = p_last_modified; favorite = p_favorite; grayed = p_grayed; + ordered_latest_modification = p_ordered_latest_modification; + } + _FORCE_INLINE_ bool operator<(const ProjectItem &l) const { + if (ordered_latest_modification) + return last_modified > l.last_modified; + return project < l.project; } - _FORCE_INLINE_ bool operator<(const ProjectItem &l) const { return last_modified > l.last_modified; } _FORCE_INLINE_ bool operator==(const ProjectItem &l) const { return project == l.project; } }; @@ -1156,6 +1163,13 @@ void ProjectManager::_load_recent_projects() { Color font_color = gui_base->get_color("font_color", "Tree"); + bool set_ordered_latest_modification; + ProjectListFilter::FilterOption filter_order_option = project_order_filter->get_filter_option(); + if (filter_order_option == ProjectListFilter::FILTER_NAME) + set_ordered_latest_modification = false; + else + set_ordered_latest_modification = true; + List<ProjectItem> projects; List<ProjectItem> favorite_projects; @@ -1188,13 +1202,12 @@ void ProjectManager::_load_recent_projects() { grayed = true; } - ProjectItem item(project, path, conf, last_modified, favorite, grayed); + ProjectItem item(project, path, conf, last_modified, favorite, grayed, set_ordered_latest_modification); if (favorite) favorite_projects.push_back(item); else projects.push_back(item); } - projects.sort(); favorite_projects.sort(); @@ -1818,16 +1831,41 @@ ProjectManager::ProjectManager() { tabs->add_child(tree_hb); VBoxContainer *search_tree_vb = memnew(VBoxContainer); - search_tree_vb->set_h_size_flags(SIZE_EXPAND_FILL); tree_hb->add_child(search_tree_vb); + search_tree_vb->set_h_size_flags(SIZE_EXPAND_FILL); - HBoxContainer *search_box = memnew(HBoxContainer); - search_box->add_spacer(true); + HBoxContainer *sort_filters = memnew(HBoxContainer); + Label *sort_label = memnew(Label); + sort_label->set_text(TTR("Sort:")); + sort_filters->add_child(sort_label); + Vector<String> vec1; + vec1.push_back("Name"); + vec1.push_back("Last Modified"); + project_order_filter = memnew(ProjectListFilter); + project_order_filter->_setup_filters(vec1); + project_order_filter->set_filter_size(150); + sort_filters->add_child(project_order_filter); + project_order_filter->connect("filter_changed", this, "_load_recent_projects"); + project_order_filter->set_custom_minimum_size(Size2(180, 10) * EDSCALE); + + sort_filters->add_spacer(true); + Label *search_label = memnew(Label); + search_label->set_text(TTR(" Search:")); + sort_filters->add_child(search_label); + + HBoxContainer *search_filters = memnew(HBoxContainer); + Vector<String> vec2; + vec2.push_back("Name"); + vec2.push_back("Path"); project_filter = memnew(ProjectListFilter); - search_box->add_child(project_filter); + project_filter->_setup_filters(vec2); + project_filter->add_search_box(); + search_filters->add_child(project_filter); project_filter->connect("filter_changed", this, "_load_recent_projects"); project_filter->set_custom_minimum_size(Size2(280, 10) * EDSCALE); - search_tree_vb->add_child(search_box); + sort_filters->add_child(search_filters); + + search_tree_vb->add_child(sort_filters); PanelContainer *pc = memnew(PanelContainer); pc->add_style_override("panel", gui_base->get_stylebox("bg", "Tree")); @@ -2017,11 +2055,11 @@ ProjectManager::~ProjectManager() { EditorSettings::destroy(); } -void ProjectListFilter::_setup_filters() { +void ProjectListFilter::_setup_filters(Vector<String> options) { filter_option->clear(); - filter_option->add_item(TTR("Name")); - filter_option->add_item(TTR("Path")); + for (int i = 0; i < options.size(); i++) + filter_option->add_item(TTR(options[i])); } void ProjectListFilter::_search_text_changed(const String &p_newtext) { @@ -2046,7 +2084,7 @@ void ProjectListFilter::_filter_option_selected(int p_idx) { void ProjectListFilter::_notification(int p_what) { - if (p_what == NOTIFICATION_ENTER_TREE) { + if (p_what == NOTIFICATION_ENTER_TREE && has_search_box) { search_box->set_right_icon(get_icon("Search", "EditorIcons")); search_box->set_clear_button_enabled(true); } @@ -2060,20 +2098,27 @@ void ProjectListFilter::_bind_methods() { ADD_SIGNAL(MethodInfo("filter_changed")); } +void ProjectListFilter::add_search_box() { + search_box = memnew(LineEdit); + search_box->connect("text_changed", this, "_search_text_changed"); + search_box->set_h_size_flags(SIZE_EXPAND_FILL); + add_child(search_box); + has_search_box = true; +} + +void ProjectListFilter::set_filter_size(int h_size) { + filter_option->set_custom_minimum_size(Size2(h_size * EDSCALE, 10 * EDSCALE)); +} + ProjectListFilter::ProjectListFilter() { _current_filter = FILTER_NAME; filter_option = memnew(OptionButton); - filter_option->set_custom_minimum_size(Size2(80 * EDSCALE, 10 * EDSCALE)); + set_filter_size(80); filter_option->set_clip_text(true); filter_option->connect("item_selected", this, "_filter_option_selected"); add_child(filter_option); - _setup_filters(); - - search_box = memnew(LineEdit); - search_box->connect("text_changed", this, "_search_text_changed"); - search_box->set_h_size_flags(SIZE_EXPAND_FILL); - add_child(search_box); + has_search_box = false; } diff --git a/editor/project_manager.h b/editor/project_manager.h index ad21e00b0d..88fc081272 100644 --- a/editor/project_manager.h +++ b/editor/project_manager.h @@ -54,6 +54,7 @@ class ProjectManager : public Control { EditorAssetLibrary *asset_library; ProjectListFilter *project_filter; + ProjectListFilter *project_order_filter; ConfirmationDialog *language_restart_ask; ConfirmationDialog *erase_ask; @@ -130,6 +131,7 @@ private: OptionButton *filter_option; LineEdit *search_box; + bool has_search_box; enum FilterOption { FILTER_NAME, @@ -138,7 +140,6 @@ private: FilterOption _current_filter; void _search_text_changed(const String &p_newtext); - void _setup_filters(); void _filter_option_selected(int p_idx); protected: @@ -146,6 +147,9 @@ protected: static void _bind_methods(); public: + void _setup_filters(Vector<String> options); + void add_search_box(); + void set_filter_size(int h_size); String get_search_term(); FilterOption get_filter_option(); ProjectListFilter(); diff --git a/editor/project_settings_editor.cpp b/editor/project_settings_editor.cpp index 7a68646f40..af8d33d3d1 100644 --- a/editor/project_settings_editor.cpp +++ b/editor/project_settings_editor.cpp @@ -115,10 +115,9 @@ void ProjectSettingsEditor::_notification(int p_what) { } break; case NOTIFICATION_POPUP_HIDE: { - EditorSettings::get_singleton()->set("interface/dialogs/project_settings_bounds", get_rect()); + EditorSettings::get_singleton()->set_project_metadata("dialog_bounds", "project_settings", get_rect()); } break; case EditorSettings::NOTIFICATION_EDITOR_SETTINGS_CHANGED: { - search_button->set_icon(get_icon("Search", "EditorIcons")); search_box->set_right_icon(get_icon("Search", "EditorIcons")); search_box->set_clear_button_enabled(true); @@ -788,8 +787,9 @@ void ProjectSettingsEditor::_update_actions() { void ProjectSettingsEditor::popup_project_settings() { // Restore valid window bounds or pop up at default size. - if (EditorSettings::get_singleton()->has_setting("interface/dialogs/project_settings_bounds")) { - popup(EditorSettings::get_singleton()->get("interface/dialogs/project_settings_bounds")); + Rect2 saved_size = EditorSettings::get_singleton()->get_project_metadata("dialog_bounds", "project_settings", Rect2()); + if (saved_size != Rect2()) { + popup(saved_size); } else { Size2 popup_size = Size2(900, 700) * editor_get_scale(); diff --git a/editor/settings_config_dialog.cpp b/editor/settings_config_dialog.cpp index 537c9ac6b8..a4956bee27 100644 --- a/editor/settings_config_dialog.cpp +++ b/editor/settings_config_dialog.cpp @@ -94,8 +94,9 @@ void EditorSettingsDialog::popup_edit_settings() { set_process_unhandled_input(true); // Restore valid window bounds or pop up at default size. - if (EditorSettings::get_singleton()->has_setting("interface/dialogs/editor_settings_bounds")) { - popup(EditorSettings::get_singleton()->get("interface/dialogs/editor_settings_bounds")); + Rect2 saved_size = EditorSettings::get_singleton()->get_project_metadata("dialog_bounds", "editor_settings", Rect2()); + if (saved_size != Rect2()) { + popup(saved_size); } else { Size2 popup_size = Size2(900, 700) * editor_get_scale(); @@ -132,7 +133,7 @@ void EditorSettingsDialog::_notification(int p_what) { _update_icons(); } break; case NOTIFICATION_POPUP_HIDE: { - EditorSettings::get_singleton()->set("interface/dialogs/editor_settings_bounds", get_rect()); + EditorSettings::get_singleton()->set_project_metadata("dialog_bounds", "editor_settings", get_rect()); set_process_unhandled_input(false); } break; case EditorSettings::NOTIFICATION_EDITOR_SETTINGS_CHANGED: { diff --git a/editor/translations/af.po b/editor/translations/af.po index 17dd7b19c5..d3647bdb0f 100644 --- a/editor/translations/af.po +++ b/editor/translations/af.po @@ -552,9 +552,8 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -#, fuzzy -msgid "Zoom:" -msgstr "Zoem In" +msgid "Font Size:" +msgstr "" #: editor/code_editor.cpp msgid "Line:" @@ -1726,6 +1725,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2125,7 +2130,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -9042,7 +9047,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9269,6 +9274,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Zoem In" + #~ msgid "Class List:" #~ msgstr "Klas Lys:" diff --git a/editor/translations/ar.po b/editor/translations/ar.po index ed3b98016a..a93f3ebed9 100644 --- a/editor/translations/ar.po +++ b/editor/translations/ar.po @@ -567,8 +567,8 @@ msgstr "" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "تقريب" +msgid "Font Size:" +msgstr "حجم الخطوط:" #: editor/code_editor.cpp msgid "Line:" @@ -1729,6 +1729,12 @@ msgstr "هذه العملية لا يمكنها الإكتمال من غير ج #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "لا يمكن حفظ المشهد. على الأرجح لا يمكن إستيفاء التبعيات (مجسّدات)." @@ -2163,7 +2169,7 @@ msgid "Undo" msgstr "تراجع" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "إعادة" @@ -9208,7 +9214,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9438,6 +9444,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "تقريب" + #~ msgid "Class List:" #~ msgstr "قائمة الأصناف:" diff --git a/editor/translations/bg.po b/editor/translations/bg.po index 60f5eafb45..f75e29e11a 100644 --- a/editor/translations/bg.po +++ b/editor/translations/bg.po @@ -552,8 +552,9 @@ msgid "Warnings:" msgstr "Предупреждения:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Приближение:" +#, fuzzy +msgid "Font Size:" +msgstr "Изглед Отпред." #: editor/code_editor.cpp msgid "Line:" @@ -1692,6 +1693,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2098,7 +2105,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -9147,7 +9154,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9375,6 +9382,9 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#~ msgid "Zoom:" +#~ msgstr "Приближение:" + #~ msgid "Class List:" #~ msgstr "Списък на Класове:" diff --git a/editor/translations/bn.po b/editor/translations/bn.po index ae6a8a7f70..a99a1360a2 100644 --- a/editor/translations/bn.po +++ b/editor/translations/bn.po @@ -572,8 +572,8 @@ msgstr "সতর্কতা" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "জুম্ (%):" +msgid "Font Size:" +msgstr "উৎস ফন্টের আকার:" #: editor/code_editor.cpp msgid "Line:" @@ -1768,6 +1768,12 @@ msgid "This operation can't be done without a tree root." msgstr "দৃশ্য ছাড়া এটি করা সম্ভব হবে না।" #: 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 "" + +#: editor/editor_node.cpp #, fuzzy msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " @@ -2219,7 +2225,7 @@ msgid "Undo" msgstr "সাবেক অবস্থায় যান/আনডু" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "পুনরায় করুন" @@ -9689,7 +9695,7 @@ msgstr "" "আকৃতি তৈরি করুন!" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9940,6 +9946,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "জুম্ (%):" + #~ msgid "Class List:" #~ msgstr "ক্লাসের তালিকা:" @@ -10655,9 +10665,6 @@ msgstr "" #~ msgid "Source Font:" #~ msgstr "ফন্টের উৎস:" -#~ msgid "Source Font Size:" -#~ msgstr "উৎস ফন্টের আকার:" - #~ msgid "Dest Resource:" #~ msgstr "রিসোর্সের গন্তব্যস্থান:" diff --git a/editor/translations/ca.po b/editor/translations/ca.po index 1b8fa8933c..c0ec1493a3 100644 --- a/editor/translations/ca.po +++ b/editor/translations/ca.po @@ -547,8 +547,9 @@ msgid "Warnings:" msgstr "Avisos:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Zoom:" +#, fuzzy +msgid "Font Size:" +msgstr "Mida de la lletra:" #: editor/code_editor.cpp msgid "Line:" @@ -1711,6 +1712,12 @@ msgstr "Aquesta operació no es pot fer sense cap arrel d'arbre." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2154,7 +2161,7 @@ msgid "Undo" msgstr "Desfés" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Refés" @@ -9316,7 +9323,7 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "Res és visible perquè no s'ha assignat cap Malla a cap pas de Dibuix." #: scene/3d/cpu_particles.cpp @@ -9584,6 +9591,9 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#~ msgid "Zoom:" +#~ msgstr "Zoom:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "Esteu segur que voleu eliminar totes les connexions de \"" @@ -10277,9 +10287,6 @@ msgstr "" #~ msgid "Source Font:" #~ msgstr "Lletra:" -#~ msgid "Source Font Size:" -#~ msgstr "Mida de la lletra:" - #~ msgid "Dest Resource:" #~ msgstr "Recurs Objectiu:" diff --git a/editor/translations/cs.po b/editor/translations/cs.po index f6bc57ed66..9a1d88ba87 100644 --- a/editor/translations/cs.po +++ b/editor/translations/cs.po @@ -13,15 +13,15 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2018-11-21 19:07+0000\n" -"Last-Translator: Jan 'spl!te' Kondelík <j.kondelik@centrum.cz>\n" +"PO-Revision-Date: 2018-12-04 22:14+0000\n" +"Last-Translator: Vojtěch Šamla <auzkok@seznam.cz>\n" "Language-Team: Czech <https://hosted.weblate.org/projects/godot-engine/godot/" "cs/>\n" "Language: cs\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -"X-Generator: Weblate 3.3-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -499,7 +499,7 @@ msgstr "Změnit hodnotu pole" #: editor/code_editor.cpp msgid "Go to Line" -msgstr "Běž na řádek" +msgstr "Jít na řádek" #: editor/code_editor.cpp msgid "Line Number:" @@ -550,8 +550,9 @@ msgid "Warnings:" msgstr "Varování:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Přiblížit:" +#, fuzzy +msgid "Font Size:" +msgstr "Pohled zepředu" #: editor/code_editor.cpp msgid "Line:" @@ -665,9 +666,9 @@ msgid "Edit Connection: " msgstr "Upravit připojení: " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "Jste si jisti, že chcete odstranit všechna připojení od \"" +msgstr "" +"Jste si jisti, že chcete odstranit všechna připojení ze signálu \"%s\"?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -675,7 +676,7 @@ msgstr "Signály" #: editor/connections_dialog.cpp msgid "Are you sure you want to remove all connections from this signal?" -msgstr "" +msgstr "Jste si jistí, že chcete odstranit všechna připojení z tohoto signálu?" #: editor/connections_dialog.cpp msgid "Disconnect All" @@ -686,9 +687,8 @@ msgid "Edit..." msgstr "Upravit..." #: editor/connections_dialog.cpp -#, fuzzy msgid "Go To Method" -msgstr "Metody" +msgstr "Přejít na metodu" #: editor/create_dialog.cpp msgid "Change %s Type" @@ -1306,7 +1306,6 @@ msgid "File Exists, Overwrite?" msgstr "Soubor už existuje. Přepsat?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Select This Folder" msgstr "Vybrat tuto složku" @@ -1315,15 +1314,13 @@ msgid "Copy Path" msgstr "Kopírovat cestu" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp -#, fuzzy msgid "Open in File Manager" msgstr "Otevřít ve správci souborů" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp #: editor/project_manager.cpp -#, fuzzy msgid "Show in File Manager" -msgstr "Ukázat ve správci souborů" +msgstr "Zobrazit ve správci souborů" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "New Folder..." @@ -1466,19 +1463,16 @@ msgid "Methods" msgstr "Metody" #: editor/editor_help.cpp -#, fuzzy msgid "Methods:" -msgstr "Metody" +msgstr "Metody:" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties" -msgstr "Vlastnosti" +msgstr "Vlastnosti motivu" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties:" -msgstr "Vlastnosti:" +msgstr "Vlastnosti motivu:" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Signals:" @@ -1505,14 +1499,12 @@ msgid "Constants:" msgstr "Konstanty:" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description" -msgstr "Popis" +msgstr "Popis třídy" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description:" -msgstr "Popis:" +msgstr "Popis třídy:" #: editor/editor_help.cpp msgid "Online Tutorials:" @@ -1529,12 +1521,10 @@ msgstr "" "$url2]zažádat[/url][/color]." #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions" -msgstr "Popis vlastnosti:" +msgstr "Popis vlastnosti" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions:" msgstr "Popis vlastnosti:" @@ -1547,12 +1537,10 @@ msgstr "" "nám tím, že ho[color=$color][url=$url]vytvoříte[/url][/color]!" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions" -msgstr "Popis metody:" +msgstr "Popis metody" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions:" msgstr "Popis metody:" @@ -1570,39 +1558,32 @@ msgid "Search Help" msgstr "Prohledat nápovědu" #: editor/editor_help_search.cpp -#, fuzzy msgid "Display All" -msgstr "Nahradit všechny" +msgstr "Zobrazit všechny" #: editor/editor_help_search.cpp -#, fuzzy msgid "Classes Only" -msgstr "Třídy" +msgstr "Pouze třídy" #: editor/editor_help_search.cpp -#, fuzzy msgid "Methods Only" -msgstr "Metody" +msgstr "Pouze metody" #: editor/editor_help_search.cpp -#, fuzzy msgid "Signals Only" -msgstr "Signály" +msgstr "Pouze signály" #: editor/editor_help_search.cpp -#, fuzzy msgid "Constants Only" -msgstr "Konstanty" +msgstr "Pouze konstanty" #: editor/editor_help_search.cpp -#, fuzzy msgid "Properties Only" -msgstr "Vlastnosti" +msgstr "Pouze vlastnosti" #: editor/editor_help_search.cpp -#, fuzzy msgid "Theme Properties Only" -msgstr "Vlastnosti" +msgstr "Pouze vlastnosti motivu" #: editor/editor_help_search.cpp #, fuzzy @@ -1610,9 +1591,8 @@ msgid "Member Type" msgstr "Členové" #: editor/editor_help_search.cpp -#, fuzzy msgid "Class" -msgstr "Třída:" +msgstr "Třída" #: editor/editor_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" @@ -1711,6 +1691,12 @@ msgstr "Tato operace nemůže být provedena bez kořenového uzlu." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1719,7 +1705,7 @@ msgstr "" #: editor/editor_node.cpp editor/scene_tree_dock.cpp msgid "Can't overwrite scene that is still open!" -msgstr "" +msgstr "Nelze přepsat scénu, která je stále otevřená!" #: editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" @@ -1797,6 +1783,9 @@ msgid "" "Please read the documentation relevant to debugging to better understand " "this workflow." msgstr "" +"Toto je vzdálený objekt, takže jeho změny nebudou zachovány.\n" +"Přečtěte si, prosím, dokumentaci týkající se debugování, abyste lépe " +"pochopili tento proces." #: editor/editor_node.cpp msgid "There is no defined scene to run." @@ -1962,13 +1951,12 @@ msgid "Unable to load addon script from path: '%s'." msgstr "Nelze načíst skript rozšíření z cesty: '%s'." #: editor/editor_node.cpp -#, fuzzy msgid "" "Unable to load addon script from path: '%s' There seems to be an error in " "the code, please check the syntax." msgstr "" -"Nelze načíst skript rozšíření z cesty: '%s'. Skript není v režimu nástroje " -"(tool)." +"Nelze načíst skript rozšíření z cesty: '%s'. Zdá se, že se v kódu nachází " +"chyba. Prosím, zkontrolujte syntax." #: editor/editor_node.cpp msgid "" @@ -2022,7 +2010,6 @@ msgstr "Výchozí" #: editor/editor_node.cpp editor/editor_properties.cpp #: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp -#, fuzzy msgid "Show in FileSystem" msgstr "Zobrazit v souborovém systému" @@ -2107,7 +2094,6 @@ msgid "Save Scene" msgstr "Uložit scénu" #: editor/editor_node.cpp -#, fuzzy msgid "Save All Scenes" msgstr "Uložit všechny scény" @@ -2137,7 +2123,7 @@ msgid "Undo" msgstr "Zpět" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Znovu" @@ -2166,9 +2152,8 @@ msgid "Tools" msgstr "Nástroje" #: editor/editor_node.cpp -#, fuzzy msgid "Open Project Data Folder" -msgstr "Otevřít Správce projektu?" +msgstr "Otevřít složku s daty projektu" #: editor/editor_node.cpp msgid "Quit to Project List" @@ -2473,7 +2458,7 @@ msgstr "Otevřít editor skriptů" #: editor/editor_node.cpp editor/project_manager.cpp msgid "Open Asset Library" -msgstr "" +msgstr "Otevřít knihovnu assetů" #: editor/editor_node.cpp msgid "Open the next Editor" @@ -2492,9 +2477,8 @@ msgid "Thumbnail..." msgstr "Náhled..." #: editor/editor_plugin_settings.cpp -#, fuzzy msgid "Edit Plugin" -msgstr "Pluginy" +msgstr "Upravit plugin" #: editor/editor_plugin_settings.cpp msgid "Installed Plugins:" @@ -2523,9 +2507,8 @@ msgstr "Upravit:" #: editor/editor_profiler.cpp editor/plugins/animation_state_machine_editor.cpp #: editor/rename_dialog.cpp -#, fuzzy msgid "Start" -msgstr "Start!" +msgstr "Start" #: editor/editor_profiler.cpp msgid "Measure:" @@ -2577,11 +2560,11 @@ msgstr "" #: editor/editor_properties.cpp msgid "Layer" -msgstr "" +msgstr "Vrstva" #: editor/editor_properties.cpp msgid "Bit %d, value %d" -msgstr "" +msgstr "Bit %d, hodnota %d" #: editor/editor_properties.cpp msgid "[Empty]" @@ -2596,6 +2579,8 @@ msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." msgstr "" +"Nelze vytvořit ViewportTexture na zdroji uloženém jako soubor.\n" +"Zdroj musí patřit scéně." #: editor/editor_properties.cpp msgid "" @@ -2644,9 +2629,8 @@ msgstr "Konvertovat na %s" #: editor/plugins/animation_blend_space_1d_editor.cpp #: editor/plugins/animation_blend_space_2d_editor.cpp #: editor/plugins/animation_blend_tree_editor_plugin.cpp -#, fuzzy msgid "Open Editor" -msgstr "Otevřít v editoru" +msgstr "Otevřít editor" #: editor/editor_properties.cpp editor/property_editor.cpp msgid "Selected node is not a Viewport!" @@ -2694,7 +2678,6 @@ msgid "Write your logic in the _run() method." msgstr "Napište svůj kód v _run() metodě." #: editor/editor_run_script.cpp -#, fuzzy msgid "There is an edited scene already." msgstr "Nějaka scéna už je upravována." @@ -2753,11 +2736,11 @@ msgstr "(Aktuální)" #: editor/export_template_manager.cpp msgid "Retrieving mirrors, please wait..." -msgstr "" +msgstr "Získávání zrcadel, prosím čekejte..." #: editor/export_template_manager.cpp msgid "Remove template version '%s'?" -msgstr "" +msgstr "Odstranit šablonu verze '%s'?" #: editor/export_template_manager.cpp msgid "Can't open export templates zip." @@ -2781,18 +2764,20 @@ msgstr "Extrakce exportních šablon" #: editor/export_template_manager.cpp msgid "Importing:" -msgstr "" +msgstr "Importování:" #: editor/export_template_manager.cpp msgid "" "No download links found for this version. Direct download is only available " "for official releases." msgstr "" +"Nebyly nalezeny odkazy pro stažení této verze. Přímé stažení je dostupné " +"pouze pro oficiální vydání." #: editor/export_template_manager.cpp #: editor/plugins/asset_library_editor_plugin.cpp msgid "Can't resolve." -msgstr "" +msgstr "Nelze vyřešit." #: editor/export_template_manager.cpp #: editor/plugins/asset_library_editor_plugin.cpp @@ -2802,7 +2787,7 @@ msgstr "Nelze se připojit." #: editor/export_template_manager.cpp #: editor/plugins/asset_library_editor_plugin.cpp msgid "No response." -msgstr "" +msgstr "Žádná odpověď." #: editor/export_template_manager.cpp #: editor/plugins/asset_library_editor_plugin.cpp @@ -2812,22 +2797,23 @@ msgstr "Požadavek se nezdařil." #: editor/export_template_manager.cpp #: editor/plugins/asset_library_editor_plugin.cpp msgid "Redirect Loop." -msgstr "" +msgstr "Zacyklené přesměrování." #: editor/export_template_manager.cpp #: editor/plugins/asset_library_editor_plugin.cpp msgid "Failed:" -msgstr "" +msgstr "Selhalo:" #: editor/export_template_manager.cpp msgid "Download Complete." -msgstr "" +msgstr "Stahování dokončeno." #: editor/export_template_manager.cpp msgid "" "Templates installation failed. The problematic templates archives can be " "found at '%s'." msgstr "" +"Instalace šablon selhala. Problémové archivy šablon lze nalézt na '%s'." #: editor/export_template_manager.cpp msgid "Error requesting url: " @@ -2843,11 +2829,11 @@ msgstr "Odpojeno" #: editor/export_template_manager.cpp msgid "Resolving" -msgstr "" +msgstr "Řeším" #: editor/export_template_manager.cpp msgid "Can't Resolve" -msgstr "" +msgstr "Nelze vyřešit" #: editor/export_template_manager.cpp #: editor/plugins/asset_library_editor_plugin.cpp @@ -2877,19 +2863,19 @@ msgstr "Chyba připojení" #: editor/export_template_manager.cpp msgid "SSL Handshake Error" -msgstr "" +msgstr "Selhání SSL handshaku" #: editor/export_template_manager.cpp msgid "Current Version:" -msgstr "" +msgstr "Aktuální verze:" #: editor/export_template_manager.cpp msgid "Installed Versions:" -msgstr "" +msgstr "Instalované verze:" #: editor/export_template_manager.cpp msgid "Install From File" -msgstr "" +msgstr "Instalovat ze souboru" #: editor/export_template_manager.cpp msgid "Remove Template" @@ -2918,9 +2904,8 @@ msgstr "" "ukládána!" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Favorites" -msgstr "Oblíbené:" +msgstr "Oblíbené" #: editor/filesystem_dock.cpp msgid "Cannot navigate to '%s' as it has not been found in the file system!" @@ -3005,14 +2990,12 @@ msgid "Instance" msgstr "Instance" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Add to favorites" -msgstr "Oblíbené:" +msgstr "Přidat do oblíbených" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Remove from favorites" -msgstr "Odebrat ze skupiny" +msgstr "Odebrat z oblíbených" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." @@ -3043,12 +3026,10 @@ msgid "New Resource..." msgstr "Nový zdroj..." #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Expand All" msgstr "Rozbalit vše" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Collapse All" msgstr "Sbalit vše" @@ -3109,24 +3090,20 @@ msgid "Create Script" msgstr "Vytvořit skript" #: editor/find_in_files.cpp -#, fuzzy msgid "Find in Files" msgstr "Najít v souborech" #: editor/find_in_files.cpp -#, fuzzy msgid "Find:" -msgstr "Najít: " +msgstr "Najít:" #: editor/find_in_files.cpp -#, fuzzy msgid "Folder:" -msgstr "Složka: " +msgstr "Složka:" #: editor/find_in_files.cpp -#, fuzzy msgid "Filters:" -msgstr "Filtr: " +msgstr "Filtry:" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp @@ -3303,12 +3280,10 @@ msgid "Failed to load resource." msgstr "Selhalo nahrání zdroje." #: editor/inspector_dock.cpp -#, fuzzy msgid "Expand All Properties" msgstr "Rozbalit všechny vlastnosti" #: editor/inspector_dock.cpp -#, fuzzy msgid "Collapse All Properties" msgstr "Sbalit všechny vlastnosti" @@ -3450,6 +3425,10 @@ msgid "" "Ctrl+LMB: Split Segment.\n" "RMB: Erase Point." msgstr "" +"Upravit existující polygon:\n" +"LMB: Přesunout bod.\n" +"Ctrl+LMB: Rozdělit segment.\n" +"RMB: Vymazat bod." #: editor/plugins/abstract_polygon_2d_editor.cpp msgid "Delete points" @@ -3467,15 +3446,14 @@ msgstr "Přidat animaci" #: editor/plugins/animation_blend_space_2d_editor.cpp #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Load.." -msgstr "Načíst" +msgstr "Načíst.." #: editor/plugins/animation_blend_space_1d_editor.cpp #: editor/plugins/animation_blend_space_2d_editor.cpp #: editor/plugins/animation_state_machine_editor.cpp msgid "This type of node can't be used. Only root nodes are allowed." -msgstr "" +msgstr "Tento typ uzlu nelze použít. Jsou povoleny pouze kořenové uzly." #: editor/plugins/animation_blend_space_1d_editor.cpp #: editor/plugins/animation_blend_space_2d_editor.cpp @@ -3494,37 +3472,32 @@ msgstr "" #: editor/plugins/animation_blend_space_1d_editor.cpp #: editor/plugins/animation_blend_space_2d_editor.cpp msgid "Select and move points, create points with RMB." -msgstr "" +msgstr "Zvolte a přesuňte body. Nové uzly vytvořte pomocí RMB." #: editor/plugins/animation_blend_space_1d_editor.cpp #: editor/plugins/animation_blend_space_2d_editor.cpp -#, fuzzy msgid "Create points." -msgstr "Odstranit body" +msgstr "Vytvořit body." #: editor/plugins/animation_blend_space_1d_editor.cpp -#, fuzzy msgid "Erase points." -msgstr "RMB: Vymazat bod." +msgstr "Vymazat body." #: editor/plugins/animation_blend_space_1d_editor.cpp #: editor/plugins/animation_blend_space_2d_editor.cpp -#, fuzzy msgid "Point" -msgstr "Přesunout bod" +msgstr "Bod" #: editor/plugins/animation_blend_space_1d_editor.cpp #: editor/plugins/animation_blend_space_2d_editor.cpp #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Open Animation Node" -msgstr "Jméno animace:" +msgstr "Otevřít uzel animace" #: editor/plugins/animation_blend_space_2d_editor.cpp -#, fuzzy msgid "Triangle already exists" -msgstr "Akce '%s' již existuje!" +msgstr "Trojúhelník již existuje" #: editor/plugins/animation_blend_space_2d_editor.cpp msgid "BlendSpace2D does not belong to an AnimationTree node." @@ -3588,15 +3561,13 @@ msgstr "" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/visual_shader_editor_plugin.cpp -#, fuzzy msgid "Add Node.." -msgstr "Přidat uzel" +msgstr "Přidat uzel.." #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/root_motion_editor_plugin.cpp -#, fuzzy msgid "Edit Filtered Tracks:" -msgstr "Editovat filtry" +msgstr "Upravit filtrované stopy:" #: editor/plugins/animation_blend_tree_editor_plugin.cpp msgid "Enable filtering" @@ -3608,15 +3579,15 @@ msgstr "" #: editor/plugins/animation_player_editor_plugin.cpp msgid "New Animation Name:" -msgstr "" +msgstr "Nový název animace:" #: editor/plugins/animation_player_editor_plugin.cpp msgid "New Anim" -msgstr "" +msgstr "Nová animace" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Change Animation Name:" -msgstr "" +msgstr "Změnit název animace:" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Delete Animation?" @@ -3628,14 +3599,12 @@ msgid "Remove Animation" msgstr "Smazat animaci" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Invalid animation name!" -msgstr "Chyba: Neplatné jméno animace!" +msgstr "Neplatné jméno animace!" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Animation name already exists!" -msgstr "Chyba: Jméno animace už existuje!" +msgstr "Jméno animace už existuje!" #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp @@ -3659,9 +3628,8 @@ msgid "Duplicate Animation" msgstr "Duplikovat animaci" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "No animation to copy!" -msgstr "ERROR: Nevybrána animace pro kopírování!" +msgstr "Žádná animace pro kopírování!" #: editor/plugins/animation_player_editor_plugin.cpp #, fuzzy @@ -3677,9 +3645,8 @@ msgid "Paste Animation" msgstr "Vložit animaci" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "No animation to edit!" -msgstr "ERROR: Nevybrána animace pro úpravu!" +msgstr "Žádná animace pro úpravu!" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Play selected animation backwards from current pos. (A)" @@ -3723,14 +3690,12 @@ msgid "New" msgstr "Nový" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Edit Transitions..." -msgstr "Přechody" +msgstr "Upravit přechody..." #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Open in Inspector" -msgstr "Otevřít v editoru" +msgstr "Otevřít v inspektoru" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Display list of animations in player." @@ -3823,7 +3788,7 @@ msgstr "" #: editor/plugins/animation_state_machine_editor.cpp msgid "End" -msgstr "" +msgstr "Konec" #: editor/plugins/animation_state_machine_editor.cpp msgid "Immediate" @@ -3858,14 +3823,12 @@ msgid "" msgstr "" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Create new nodes." -msgstr "Vytvořit nový %s" +msgstr "Vytvořit nové uzly." #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Connect nodes." -msgstr "Připojit uzly" +msgstr "Připojit uzly." #: editor/plugins/animation_state_machine_editor.cpp #, fuzzy @@ -3881,9 +3844,8 @@ msgid "Set the end animation. This is useful for sub-transitions." msgstr "" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition: " -msgstr "Přechod" +msgstr "Přechod: " #: editor/plugins/animation_tree_editor_plugin.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp @@ -4075,7 +4037,7 @@ msgstr "Neúspěšná kontrola sha256 hashe" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Asset Download Error:" -msgstr "" +msgstr "Chyba při stahování assetu:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Downloading (%s / %s)..." @@ -4107,7 +4069,7 @@ msgstr "Chyba při stahování" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Download for this asset is already in progress!" -msgstr "" +msgstr "Stahování tohoto assetu právě probíhá!" #: editor/plugins/asset_library_editor_plugin.cpp msgid "First" @@ -4480,9 +4442,8 @@ msgid "Show Origin" msgstr "Zobrazit počátek" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Show Viewport" -msgstr "Zobrazit pomocné" +msgstr "Zobrazit Viewport" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" @@ -4501,13 +4462,12 @@ msgid "Layout" msgstr "Rozložení" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Insert keys." -msgstr "Vložit klíče" +msgstr "Vložit klíče." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key (Existing Tracks)" -msgstr "" +msgstr "Vložit klíč (existující stopy)" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Copy Pose" @@ -4887,11 +4847,11 @@ msgstr "" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Target Surface:" -msgstr "" +msgstr "Cílový povrch:" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Source Mesh:" -msgstr "" +msgstr "Zdrojová mesh:" #: editor/plugins/multimesh_editor_plugin.cpp msgid "X-Axis" @@ -4911,11 +4871,11 @@ msgstr "" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Random Rotation:" -msgstr "" +msgstr "Náhodná rotace:" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Random Tilt:" -msgstr "" +msgstr "Náhodné naklonění:" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Random Scale:" @@ -4927,7 +4887,7 @@ msgstr "Naplnit" #: editor/plugins/navigation_polygon_editor_plugin.cpp msgid "Create Navigation Polygon" -msgstr "" +msgstr "Vytvořit navigační polygon" #: editor/plugins/particles_2d_editor_plugin.cpp #, fuzzy @@ -5089,12 +5049,12 @@ msgstr "Shift+Táhnutí:" #: editor/plugins/path_2d_editor_plugin.cpp #: editor/plugins/path_editor_plugin.cpp msgid "Click: Add Point" -msgstr "Kliknutí: Přidat bod" +msgstr "Klik: Přidat bod" #: editor/plugins/path_2d_editor_plugin.cpp #: editor/plugins/path_editor_plugin.cpp msgid "Right Click: Delete Point" -msgstr "" +msgstr "Pravý klik: Smazat bod" #: editor/plugins/path_2d_editor_plugin.cpp msgid "Select Control Points (Shift+Drag)" @@ -5141,9 +5101,8 @@ msgid "Curve Point #" msgstr "Bod křivky #" #: editor/plugins/path_editor_plugin.cpp -#, fuzzy msgid "Set Curve Point Position" -msgstr "Odstranit signál" +msgstr "Nastavit pozici bodu křivky" #: editor/plugins/path_editor_plugin.cpp msgid "Set Curve In Position" @@ -5407,12 +5366,11 @@ msgstr "Zdroj" #: editor/plugins/root_motion_editor_plugin.cpp msgid "AnimationTree has no path set to an AnimationPlayer" -msgstr "" +msgstr "AnimationTree nemá nastavenou cestu k AnimstionPlayer" #: editor/plugins/root_motion_editor_plugin.cpp -#, fuzzy msgid "Path to AnimationPlayer is invalid" -msgstr "Strom animace je neplatný." +msgstr "Cesta k AnimationPlayer je neplatná" #: editor/plugins/script_editor_plugin.cpp msgid "Clear Recent Files" @@ -5423,19 +5381,16 @@ msgid "Close and save changes?" msgstr "Zavřít a uložit změny?" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error writing TextFile:" -msgstr "Chyba při načítání:" +msgstr "Chyba při zápisu textového souboru:" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error: could not load file." -msgstr "Chyba - Nelze vytvořit skript v souborovém systému." +msgstr "Chyba: nelze načíst soubor." #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error could not load file." -msgstr "Chyba - Nelze vytvořit skript v souborovém systému." +msgstr "Chyba nelze načíst soubor." #: editor/plugins/script_editor_plugin.cpp msgid "Error saving file!" @@ -5458,18 +5413,16 @@ msgid "Error importing" msgstr "Chyba při importu" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "New TextFile..." -msgstr "Nová složka..." +msgstr "Nový textový soubor..." #: editor/plugins/script_editor_plugin.cpp msgid "Open File" msgstr "Otevřít soubor" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Save File As..." -msgstr "Uložit jako..." +msgstr "Uložit soubor jako..." #: editor/plugins/script_editor_plugin.cpp msgid "Import Theme" @@ -5516,9 +5469,8 @@ msgid "File" msgstr "Soubor" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "New TextFile" -msgstr "Zobrazit soubory" +msgstr "Nový textový soubor" #: editor/plugins/script_editor_plugin.cpp msgid "Save All" @@ -5606,9 +5558,8 @@ msgid "Keep Debugger Open" msgstr "Nechat ladící program otevřený" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Debug with External Editor" -msgstr "Debugovat externím editorem" +msgstr "Debugovat v externím editoru" #: editor/plugins/script_editor_plugin.cpp msgid "Open Godot online documentation" @@ -5651,9 +5602,8 @@ msgid "Debugger" msgstr "Ladicí program" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Search Results" -msgstr "Prohledat výsledky" +msgstr "Výsledky hledání" #: editor/plugins/script_text_editor.cpp msgid "Line" @@ -5664,9 +5614,8 @@ msgid "(ignore)" msgstr "(ignorovat)" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function" -msgstr "Přejít na funkci..." +msgstr "Přejít na funkci" #: editor/plugins/script_text_editor.cpp msgid "Only resources from filesystem can be dropped." @@ -5755,12 +5704,10 @@ msgid "Trim Trailing Whitespace" msgstr "Osekat koncové mezery" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Spaces" msgstr "Převést odsazení na mezery" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Tabs" msgstr "Převést odsazení na taby" @@ -5778,12 +5725,10 @@ msgid "Remove All Breakpoints" msgstr "Odstranit všechny breakpointy" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Next Breakpoint" msgstr "Přejít na další breakpoint" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Previous Breakpoint" msgstr "Přejít na předchozí breakpoint" @@ -5792,17 +5737,14 @@ msgid "Find Previous" msgstr "Najít předchozí" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Find in Files..." msgstr "Najít v souborech..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function..." msgstr "Přejít na funkci..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Line..." msgstr "Přejít na řádek..." @@ -5843,9 +5785,8 @@ msgid "Create physical skeleton" msgstr "Vytvořit fyzickou kostru" #: editor/plugins/skeleton_ik_editor_plugin.cpp -#, fuzzy msgid "Play IK" -msgstr "Spustit" +msgstr "Spustit IK" #: editor/plugins/spatial_editor_plugin.cpp msgid "Orthogonal" @@ -7089,18 +7030,20 @@ msgid "" "You don't currently have any projects.\n" "Would you like to explore the official example projects in the Asset Library?" msgstr "" +"V této chvíli nemáte žádný projekt.\n" +"Přejete si prozkoumat oficiální ukázkové projekty v knihovně assetů?" #: editor/project_settings_editor.cpp msgid "Key " -msgstr "" +msgstr "Klávesa " #: editor/project_settings_editor.cpp msgid "Joy Button" -msgstr "" +msgstr "Tlačítko gamepadu" #: editor/project_settings_editor.cpp msgid "Joy Axis" -msgstr "" +msgstr "Osa gamepadu" #: editor/project_settings_editor.cpp msgid "Mouse Button" @@ -7559,9 +7502,8 @@ msgid "Initial value for the counter" msgstr "" #: editor/rename_dialog.cpp -#, fuzzy msgid "Step" -msgstr "Krok:" +msgstr "Krok" #: editor/rename_dialog.cpp msgid "Amount by which counter is incremented for each node" @@ -9195,7 +9137,7 @@ msgstr "" "prosím zdroj tvar!" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9449,6 +9391,9 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#~ msgid "Zoom:" +#~ msgstr "Přiblížit:" + #~ msgid "Class List:" #~ msgstr "Seznam tříd:" diff --git a/editor/translations/da.po b/editor/translations/da.po index 03e628df44..c92d2f2ece 100644 --- a/editor/translations/da.po +++ b/editor/translations/da.po @@ -556,9 +556,8 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -#, fuzzy -msgid "Zoom:" -msgstr "Zoom Ind" +msgid "Font Size:" +msgstr "" #: editor/code_editor.cpp msgid "Line:" @@ -1728,6 +1727,12 @@ msgstr "Denne handling kan ikke foretages uden tree root" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2173,7 +2178,7 @@ msgid "Undo" msgstr "Fortryd" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Annuller Fortyd" @@ -9274,7 +9279,7 @@ msgstr "" "til det!" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9522,6 +9527,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Zoom Ind" + #~ msgid "Class List:" #~ msgstr "Class Liste:" diff --git a/editor/translations/de.po b/editor/translations/de.po index 95d275e732..fc6396fd5b 100644 --- a/editor/translations/de.po +++ b/editor/translations/de.po @@ -34,12 +34,13 @@ # Robin Bauknecht <robin.bauknecht@gmail.com>, 2018. # Julian Retzlaff <julian.retzlaff@googlemail.com>, 2018. # asyncial <mahlburg@posteo.de>, 2018. +# ssantos <ssantos@web.de>, 2018. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2018-11-10 20:07+0000\n" -"Last-Translator: So Wieso <sowieso@dukun.de>\n" +"PO-Revision-Date: 2018-12-04 22:14+0000\n" +"Last-Translator: ssantos <ssantos@web.de>\n" "Language-Team: German <https://hosted.weblate.org/projects/godot-engine/" "godot/de/>\n" "Language: de\n" @@ -47,7 +48,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 3.3-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -63,9 +64,8 @@ msgstr "" "Nicht genügend Bytes zum Dekodieren des Byte-Strings oder ungültiges Format." #: core/math/expression.cpp -#, fuzzy msgid "Invalid input %i (not passed) in expression" -msgstr "Ungültige Eingabe %i (fehlgeschlagen) in Ausdruck" +msgstr "Ungültige Eingabe %i (nicht bestanden) in Ausdruck" #: core/math/expression.cpp msgid "self can't be used because instance is null (not passed)" @@ -433,14 +433,12 @@ msgid "Delete Selection" msgstr "Auswahl löschen" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Next Step" -msgstr "Gehe zum nächsten Schritt" +msgstr "Zum nächsten Schritt" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Previous Step" -msgstr "Gehe zum vorherigen Schritt" +msgstr "Zum vorherigen Schritt" #: editor/animation_track_editor.cpp msgid "Optimize Animation" @@ -579,8 +577,9 @@ msgid "Warnings:" msgstr "Warnungen:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Vergrößerung:" +#, fuzzy +msgid "Font Size:" +msgstr "Quellschriftgröße:" #: editor/code_editor.cpp msgid "Line:" @@ -693,9 +692,8 @@ msgid "Edit Connection: " msgstr "Verbindung bearbeiten: " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "Sollen wirklich alle Verbindungen mit diesem Signal entfernt werden?" +msgstr "Sollen wirklich alle Verbindungen des Signals „%s“ entfernt werden?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -852,10 +850,8 @@ msgid "Error loading:" msgstr "Fehler beim Laden:" #: editor/dependency_editor.cpp -#, fuzzy msgid "Load failed due to missing dependencies:" -msgstr "" -"Die Szene konnte aufgrund fehlender Abhängigkeiten nicht geladen werden:" +msgstr "Ladefehler aufgrund fehlender Abhängigkeiten:" #: editor/dependency_editor.cpp editor/editor_node.cpp msgid "Open Anyway" @@ -1343,7 +1339,6 @@ msgid "File Exists, Overwrite?" msgstr "Datei existiert bereits. Überschreiben?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Select This Folder" msgstr "Diesen Ordner auswählen" @@ -1352,15 +1347,13 @@ msgid "Copy Path" msgstr "Pfad kopieren" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp -#, fuzzy msgid "Open in File Manager" msgstr "Im Dateimanager öffnen" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp #: editor/project_manager.cpp -#, fuzzy msgid "Show in File Manager" -msgstr "Zeige im Dateimanager" +msgstr "Im Dateimanager anzeigen" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "New Folder..." @@ -1503,19 +1496,16 @@ msgid "Methods" msgstr "Methoden" #: editor/editor_help.cpp -#, fuzzy msgid "Methods:" -msgstr "Methoden" +msgstr "Methoden:" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties" -msgstr "Eigenschaften" +msgstr "Motiv-Eigenschaften" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties:" -msgstr "Eigenschaften:" +msgstr "Motiv-Eigenschaften:" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Signals:" @@ -1542,14 +1532,12 @@ msgid "Constants:" msgstr "Konstanten:" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description" -msgstr "Beschreibung" +msgstr "Klassenbeschreibung" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description:" -msgstr "Beschreibung:" +msgstr "Klassenbeschreibung:" #: editor/editor_help.cpp msgid "Online Tutorials:" @@ -1566,12 +1554,10 @@ msgstr "" "$url2]Meldung von Problemen[/url][/color] sind sehr erwünscht." #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions" -msgstr "Eigenschaften-Beschreibung:" +msgstr "Eigenschaften-Beschreibung" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions:" msgstr "Eigenschaften-Beschreibung:" @@ -1584,12 +1570,10 @@ msgstr "" "$url]Ergänzungen durch eigene Beiträge[/url][/color] sind sehr erwünscht!" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions" -msgstr "Methoden-Beschreibung:" +msgstr "Methoden-Beschreibung" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions:" msgstr "Methoden-Beschreibung:" @@ -1607,49 +1591,40 @@ msgid "Search Help" msgstr "Hilfe durchsuchen" #: editor/editor_help_search.cpp -#, fuzzy msgid "Display All" -msgstr "Normale Ansicht" +msgstr "Alles anzeigen" #: editor/editor_help_search.cpp -#, fuzzy msgid "Classes Only" -msgstr "Klassen" +msgstr "Nur Klassen" #: editor/editor_help_search.cpp -#, fuzzy msgid "Methods Only" -msgstr "Methoden" +msgstr "Nur Methoden" #: editor/editor_help_search.cpp -#, fuzzy msgid "Signals Only" -msgstr "Signale" +msgstr "Nur Signale" #: editor/editor_help_search.cpp -#, fuzzy msgid "Constants Only" -msgstr "Konstanten" +msgstr "Nur Konstanten" #: editor/editor_help_search.cpp -#, fuzzy msgid "Properties Only" -msgstr "Eigenschaften" +msgstr "Nur Eigenschaften" #: editor/editor_help_search.cpp -#, fuzzy msgid "Theme Properties Only" -msgstr "Eigenschaften" +msgstr "Nur Motiv-Eigenschaften" #: editor/editor_help_search.cpp -#, fuzzy msgid "Member Type" -msgstr "Mitglieder" +msgstr "Mitgliedstyp" #: editor/editor_help_search.cpp -#, fuzzy msgid "Class" -msgstr "Klasse:" +msgstr "Klasse" #: editor/editor_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" @@ -1750,6 +1725,12 @@ msgstr "Diese Aktion kann nicht ohne eine Wurzel ausgeführt werden." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1758,7 +1739,7 @@ msgstr "" #: editor/editor_node.cpp editor/scene_tree_dock.cpp msgid "Can't overwrite scene that is still open!" -msgstr "" +msgstr "Momentan geöffnete Szenen können nicht überschrieben werden!" #: editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" @@ -2021,13 +2002,12 @@ msgid "Unable to load addon script from path: '%s'." msgstr "Erweiterungsskript konnte nicht geladen werden: ‚%s‘." #: editor/editor_node.cpp -#, fuzzy msgid "" "Unable to load addon script from path: '%s' There seems to be an error in " "the code, please check the syntax." msgstr "" -"Erweiterungsskript konnte nicht geladen werden: ‚%s‘ Skript ist nicht im " -"Werkzeugmodus." +"Erweiterungsskript konnte nicht von folgendem Pfad geladen werden: ‚%s‘. Es " +"scheint ein Fehler im Quellcode zu sein. Bitte Syntax überprüfen." #: editor/editor_node.cpp msgid "" @@ -2084,7 +2064,6 @@ msgstr "Standard" #: editor/editor_node.cpp editor/editor_properties.cpp #: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp -#, fuzzy msgid "Show in FileSystem" msgstr "Im Dateisystem anzeigen" @@ -2169,7 +2148,6 @@ msgid "Save Scene" msgstr "Szene speichern" #: editor/editor_node.cpp -#, fuzzy msgid "Save All Scenes" msgstr "Alle Szenen speichern" @@ -2199,7 +2177,7 @@ msgid "Undo" msgstr "Rückgängig machen" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Wiederherstellen" @@ -2657,6 +2635,9 @@ msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." msgstr "" +"ViewportTextures können nicht für Ressourcen erstellt werden die als Datei " +"gespeichert sind.\n" +"Diese Ressourcen müssen zu einer Szene gehören." #: editor/editor_properties.cpp msgid "" @@ -2665,6 +2646,10 @@ msgid "" "Please switch on the 'local to scene' property on it (and all resources " "containing it up to a node)." msgstr "" +"ViewportTexture kann für diese Ressource nicht erstellt werden weil sie " +"nicht als lokal zu einer Szene markiert wurde.\n" +"Bitte die ‚Lokal zu Szene‘-Eigenschaft an dieser Ressource aktivieren (und " +"an allen Ressourcen die sie enthalten, bis zum nächsten Node)." #: editor/editor_properties.cpp editor/property_editor.cpp msgid "Pick a Viewport" @@ -2981,9 +2966,8 @@ msgstr "" "Der Dateityp-Cache wird nicht gespeichert!" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Favorites" -msgstr "Favoriten:" +msgstr "Favoriten" #: editor/filesystem_dock.cpp msgid "Cannot navigate to '%s' as it has not been found in the file system!" @@ -3069,14 +3053,12 @@ msgid "Instance" msgstr "Instanz" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Add to favorites" -msgstr "Favoriten:" +msgstr "Zu Favoriten hinzufügen" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Remove from favorites" -msgstr "Aus Gruppe entfernen" +msgstr "Aus Favoriten entfernen" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." @@ -3107,12 +3089,10 @@ msgid "New Resource..." msgstr "Neue Ressource..." #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Expand All" -msgstr "Alle expandieren" +msgstr "Alle ausklappen" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Collapse All" msgstr "Alle einklappen" @@ -3136,9 +3116,8 @@ msgid "Re-Scan Filesystem" msgstr "Dateisystem erneut einlesen" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Toggle split mode" -msgstr "Modus umschalten" +msgstr "Geteilten Modus umschalten" #: editor/filesystem_dock.cpp msgid "Search files" @@ -3175,24 +3154,20 @@ msgid "Create Script" msgstr "Erstelle Skript" #: editor/find_in_files.cpp -#, fuzzy msgid "Find in Files" msgstr "In Dateien suchen" #: editor/find_in_files.cpp -#, fuzzy msgid "Find:" -msgstr "Suche: " +msgstr "Suche:" #: editor/find_in_files.cpp -#, fuzzy msgid "Folder:" -msgstr "Verzeichnis: " +msgstr "Verzeichnis:" #: editor/find_in_files.cpp -#, fuzzy msgid "Filters:" -msgstr "Filter" +msgstr "Filter:" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp @@ -3369,12 +3344,10 @@ msgid "Failed to load resource." msgstr "Laden der Ressource gescheitert." #: editor/inspector_dock.cpp -#, fuzzy msgid "Expand All Properties" msgstr "Alle Eigenschaften ausklappen" #: editor/inspector_dock.cpp -#, fuzzy msgid "Collapse All Properties" msgstr "Alle Eigenschaften einklappen" @@ -4329,9 +4302,8 @@ msgid "Resize CanvasItem" msgstr "CanvasItem in Größe anpassen" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale CanvasItem" -msgstr "CanvasItem rotieren" +msgstr "CanvasItem skalieren" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Move CanvasItem" @@ -4396,9 +4368,8 @@ msgid "Rotate Mode" msgstr "Rotationsmodus" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale Mode" -msgstr "Skalierungsmodus (R)" +msgstr "Skalierungsmodus" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -4499,9 +4470,8 @@ msgid "Restores the object's children's ability to be selected." msgstr "Macht Unterobjekte dieses Objekts wieder auswählbar." #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Skeleton Options" -msgstr "Skelett" +msgstr "Skelett-Einstellungen" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Bones" @@ -4555,7 +4525,7 @@ msgstr "Zeige Ansichtsfenster (Viewport)" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" -msgstr "" +msgstr "Gruppe zeigen und Icons sperren" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" @@ -4998,7 +4968,6 @@ msgid "Create Navigation Polygon" msgstr "Erzeuge Navigationspolygon" #: editor/plugins/particles_2d_editor_plugin.cpp -#, fuzzy msgid "Generating Visibility Rect" msgstr "Generiere Sichtbarkeits-Rechteck" @@ -5482,7 +5451,6 @@ msgid "Error writing TextFile:" msgstr "Fehler beim Schreiben von Textdatei:" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error: could not load file." msgstr "Fehler: Datei konnte nicht geladen werden." @@ -5583,7 +5551,6 @@ msgid "Copy Script Path" msgstr "Skriptpfad kopieren" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "History Previous" msgstr "Zurück im Verlauf" @@ -5655,7 +5622,6 @@ msgid "Keep Debugger Open" msgstr "Debugger offen halten" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Debug with External Editor" msgstr "Mit externem Editor debuggen" @@ -5700,7 +5666,6 @@ msgid "Debugger" msgstr "Debugger" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Search Results" msgstr "Suchergebnisse" @@ -5713,9 +5678,8 @@ msgid "(ignore)" msgstr "(ignorieren)" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function" -msgstr "Springe zu Funktion..." +msgstr "Springe zu Funktion" #: editor/plugins/script_text_editor.cpp msgid "Only resources from filesystem can be dropped." @@ -5804,12 +5768,10 @@ msgid "Trim Trailing Whitespace" msgstr "Kürze Leerraum am Zeilenende" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Spaces" msgstr "Konvertiere Einrückung zu Leerzeichen" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Tabs" msgstr "Konvertiere Einrückung zu Tabulatoren" @@ -5827,12 +5789,10 @@ msgid "Remove All Breakpoints" msgstr "Lösche alle Haltepunkte" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Next Breakpoint" msgstr "Springe zum nächsten Haltepunkt" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Previous Breakpoint" msgstr "Springe zum vorigen Haltepunkt" @@ -5841,17 +5801,14 @@ msgid "Find Previous" msgstr "Finde Vorheriges" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Find in Files..." msgstr "In Dateien suchen..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function..." msgstr "Springe zu Funktion..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Line..." msgstr "Springe zu Zeile..." @@ -5947,11 +5904,11 @@ msgstr "Animationsschlüsselbild eingefügt." #: editor/plugins/spatial_editor_plugin.cpp msgid "Pitch" -msgstr "Tonhöhe" +msgstr "Neigen" #: editor/plugins/spatial_editor_plugin.cpp msgid "Yaw" -msgstr "" +msgstr "Gieren" #: editor/plugins/spatial_editor_plugin.cpp msgid "Objects Drawn" @@ -6118,9 +6075,8 @@ msgid "Freelook Speed Modifier" msgstr "Freisicht Geschwindigkeitsregler" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "View Rotation Locked" -msgstr "Sichtrotation sperren" +msgstr "Sichtrotation gesperrt" #: editor/plugins/spatial_editor_plugin.cpp msgid "XForm Dialog" @@ -6624,9 +6580,8 @@ msgid "Fix Invalid Tiles" msgstr "Ungültige Kacheln reparieren" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Cut Selection" -msgstr "Auswahl zentrieren" +msgstr "Auswahl ausschneiden" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Paint TileMap" @@ -6673,32 +6628,28 @@ msgid "Pick Tile" msgstr "Wähle Kachel" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Copy Selection" -msgstr "Auswahl verschieben" +msgstr "Auswahl kopieren" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate left" -msgstr "Rotationsmodus" +msgstr "Nach links rotieren" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate right" -msgstr "nach rechts" +msgstr "Nach rechts rotieren" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip horizontally" -msgstr "" +msgstr "Horizontal spiegeln" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip vertically" -msgstr "" +msgstr "Vertikal spiegeln" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Clear transform" -msgstr "Transformation" +msgstr "Transform löschen" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Add Texture(s) to TileSet" @@ -6729,9 +6680,8 @@ msgid "Display tile's names (hold Alt Key)" msgstr "Kachelnamen anzeigen (Alt-Taste halten)" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Remove selected texture and ALL TILES which use it?" -msgstr "Wirklich ausgewählte Textur und ALLE sie nutzenden Kacheln entfernen?" +msgstr "Ausgewählte Textur und ALLE sie nutzenden Kacheln entfernen?" #: editor/plugins/tile_set_editor_plugin.cpp msgid "You haven't selected a texture to remove." @@ -6746,10 +6696,10 @@ msgid "Merge from scene?" msgstr "Aus Szene vereinen?" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "%s file(s) were not added because was already on the list." msgstr "" -" Dateien wurde nicht hinzugefügt weil sie schon in der Liste vorhanden waren." +"%s Datei(en) wurde(n) nicht hinzugefügt weil sie schon in der Liste " +"vorhanden war(en)." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -6836,14 +6786,12 @@ msgid "Export templates for this platform are missing/corrupted:" msgstr "Export-Vorlagen für dieses Systeme fehlen / sind fehlerhaft:" #: editor/project_export.cpp -#, fuzzy msgid "Release" -msgstr "gerade losgelassen" +msgstr "Veröffentlichung" #: editor/project_export.cpp -#, fuzzy msgid "Exporting All" -msgstr "Exportiere für %s" +msgstr "Exportiere alles" #: editor/project_export.cpp msgid "Presets" @@ -6854,9 +6802,8 @@ msgid "Add..." msgstr "Hinzufügen..." #: editor/project_export.cpp -#, fuzzy msgid "Export Path:" -msgstr "Exportvorlage:" +msgstr "Exportpfad:" #: editor/project_export.cpp msgid "Resources" @@ -6921,14 +6868,12 @@ msgid "Export PCK/Zip" msgstr "Exportiere PCK/Zip" #: editor/project_export.cpp -#, fuzzy msgid "Export mode?" -msgstr "Export-Modus:" +msgstr "Export-Modus?" #: editor/project_export.cpp -#, fuzzy msgid "Export All" -msgstr "Exportieren" +msgstr "Alles exportieren" #: editor/project_export.cpp msgid "Export templates for this platform are missing:" @@ -7618,16 +7563,14 @@ msgid "Step" msgstr "Schritt" #: editor/rename_dialog.cpp -#, fuzzy msgid "Amount by which counter is incremented for each node" -msgstr "Wert um welchen Zähler für jedes Node erhöht wird" +msgstr "Wert um welchen der Zähler für jedes Node erhöht wird" #: editor/rename_dialog.cpp msgid "Padding" msgstr "Versatz" #: editor/rename_dialog.cpp -#, fuzzy msgid "" "Minimum number of digits for the counter.\n" "Missing digits are padded with leading zeros." @@ -7778,6 +7721,8 @@ msgid "" "Disabling \"editable_instance\" will cause all properties of the node to be " "reverted to their default." msgstr "" +"Wenn „Editierbare Instanz“ deaktiviert wird, werden alle Eigenschaften " +"dieses Nodes wieder in ihren Ausgangszustand zurückgesetzt." #: editor/scene_tree_dock.cpp msgid "Editable Children" @@ -7852,9 +7797,8 @@ msgid "Clear Inheritance" msgstr "Leere Vererbung" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Open documentation" -msgstr "Öffne Godot-Referenzdokumentation" +msgstr "Dokumentation öffnen" #: editor/scene_tree_dock.cpp msgid "Delete Node(s)" @@ -7869,9 +7813,8 @@ msgid "Change Type" msgstr "Typ ändern" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Extend Script" -msgstr "Skript öffnen" +msgstr "Skript erweitern" #: editor/scene_tree_dock.cpp msgid "Make Scene Root" @@ -8035,9 +7978,8 @@ msgid "Path is empty" msgstr "Pfad ist leer" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Filename is empty" -msgstr "Sprite ist leer!" +msgstr "Dateiname ist leer" #: editor/script_create_dialog.cpp msgid "Path is not local" @@ -8128,9 +8070,8 @@ msgid "Bytes:" msgstr "Bytes:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Stack Trace" -msgstr "Aufrufsverlauf" +msgstr "Stacktrace" #: editor/script_editor_debugger.cpp msgid "Pick one or more items from the list to display the graph." @@ -8580,7 +8521,7 @@ msgstr "Ende des inneren Exception-Stack-Traces" #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Bake NavMesh" -msgstr "" +msgstr "NavMesh backen" #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Clear the navigation mesh." @@ -8969,12 +8910,11 @@ msgstr "VisualScript suchen" #: modules/visual_script/visual_script_property_selector.cpp msgid "Get %s" -msgstr "" +msgstr "%s abrufen" #: modules/visual_script/visual_script_property_selector.cpp -#, fuzzy msgid "Set %s" -msgstr "Setzen " +msgstr "%s setzen" #: platform/javascript/export/export.cpp msgid "Run in Browser" @@ -9075,6 +9015,8 @@ msgid "" "CPUParticles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"CPUParticles2D-Animationen benötigen ein CanvasItemMaterial mit der " +"Eigenschaft „Particles Animation“ aktiviert." #: scene/2d/light_2d.cpp msgid "" @@ -9134,6 +9076,8 @@ msgid "" "Particles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"Particles2D-Animationen benötigen ein CanvasItemMaterial mit der Eigenschaft " +"„Particles Animation“ aktiviert." #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." @@ -9284,15 +9228,16 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." -msgstr "" -"Nichts ist sichtbar da keine Meshe den Zeichendurchläufen zugewiesen wurden." +msgid "Nothing is visible because no mesh has been assigned." +msgstr "Nichts ist sichtbar da kein Mesh zugewiesen wurden." #: scene/3d/cpu_particles.cpp msgid "" "CPUParticles animation requires the usage of a SpatialMaterial with " "\"Billboard Particles\" enabled." msgstr "" +"CPUParticles-Animationen benötigen ein SpatialMaterial mit der Eigenschaft " +"„Billboard Particles“ aktiviert." #: scene/3d/gi_probe.cpp msgid "Plotting Meshes" @@ -9323,24 +9268,24 @@ msgid "" "Particles animation requires the usage of a SpatialMaterial with \"Billboard " "Particles\" enabled." msgstr "" +"Particles-Animationen benötigen ein SpatialMaterial mit der Eigenschaft " +"„Billboard Particles“ aktiviert." #: scene/3d/path.cpp -#, fuzzy msgid "PathFollow only works when set as a child of a Path node." msgstr "" -"PathFollow2D funktioniert nur, wenn es als Unterobjekt eines Path2D-Nodes " +"PathFollow funktioniert nur, wenn es als Unterobjekt eines Path-Nodes " "gesetzt wird." #: scene/3d/path.cpp -#, fuzzy msgid "OrientedPathFollow only works when set as a child of a Path node." msgstr "" -"PathFollow2D funktioniert nur, wenn es als Unterobjekt eines Path2D-Nodes " -"gesetzt wird." +"OrientedPathFollow funktioniert nur, wenn es als Unterobjekt eines Path-" +"Nodes gesetzt wird." #: scene/3d/path.cpp msgid "OrientedPathFollow requires up vectors enabled in its parent Path." -msgstr "" +msgstr "OrientedPathFollow benötigt im Elternpfad aktivierte Aufwärtsvektoren." #: scene/3d/physics_body.cpp msgid "" @@ -9382,7 +9327,6 @@ msgid "This body will be ignored until you set a mesh" msgstr "Diese Körper wird ignoriert werden bis ein Mesh gesetzt wurde" #: scene/3d/soft_body.cpp -#, fuzzy msgid "" "Size changes to SoftBody will be overridden by the physics engine when " "running.\n" @@ -9479,7 +9423,7 @@ msgstr "" #: scene/gui/range.cpp msgid "If exp_edit is true min_value must be > 0." -msgstr "" +msgstr "Wenn exp_edit true ist muss min_value größer als null sein." #: scene/gui/scroll_container.cpp msgid "" @@ -9558,6 +9502,9 @@ msgstr "Zuweisung an Uniform." msgid "Varyings can only be assigned in vertex function." msgstr "Varyings können nur in Vertex-Funktion zugewiesen werden." +#~ msgid "Zoom:" +#~ msgstr "Vergrößerung:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "Sollen wirklich alle Verbindungen entfernt werden von „" @@ -10280,9 +10227,6 @@ msgstr "Varyings können nur in Vertex-Funktion zugewiesen werden." #~ msgid "Source Font:" #~ msgstr "Quellschriftart:" -#~ msgid "Source Font Size:" -#~ msgstr "Quellschriftgröße:" - #~ msgid "Dest Resource:" #~ msgstr "Ziel-Ressource:" diff --git a/editor/translations/de_CH.po b/editor/translations/de_CH.po index 66085ed6b8..4ec0459cf0 100644 --- a/editor/translations/de_CH.po +++ b/editor/translations/de_CH.po @@ -549,7 +549,7 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" +msgid "Font Size:" msgstr "" #: editor/code_editor.cpp @@ -1696,6 +1696,12 @@ msgstr "Ohne eine Szene kann das nicht funktionieren." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2102,7 +2108,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -9147,7 +9153,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp diff --git a/editor/translations/editor.pot b/editor/translations/editor.pot index 7f7d1391a1..beba25ff56 100644 --- a/editor/translations/editor.pot +++ b/editor/translations/editor.pot @@ -528,7 +528,7 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" +msgid "Font Size:" msgstr "" #: editor/code_editor.cpp @@ -1643,6 +1643,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2039,7 +2045,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8839,7 +8845,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp diff --git a/editor/translations/el.po b/editor/translations/el.po index 3f04d1ce6a..1eec84e7e5 100644 --- a/editor/translations/el.po +++ b/editor/translations/el.po @@ -546,8 +546,9 @@ msgid "Warnings:" msgstr "Προειδοποιήσεις:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Μεγέθυνση:" +#, fuzzy +msgid "Font Size:" +msgstr "Μέγεθος πηγαίας γραμματοσειράς:" #: editor/code_editor.cpp msgid "Line:" @@ -1709,6 +1710,12 @@ msgstr "Αυτή η λειτουργία δεν μπορεί να γίνει χ #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2161,7 +2168,7 @@ msgid "Undo" msgstr "Αναίρεση" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Ακύρωση αναίρεσης" @@ -9332,7 +9339,7 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" "Τίποτα δεν είναι ορατό, επειδή δεν έχουν οριστεί περάσματα για τα πλέγματα." @@ -9603,6 +9610,9 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#~ msgid "Zoom:" +#~ msgstr "Μεγέθυνση:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "" #~ "Είστε σίγουροι πως θέλετε να αφαιρέσετε όλες τις συνδέσεις απο το \"" @@ -10320,9 +10330,6 @@ msgstr "" #~ msgid "Source Font:" #~ msgstr "Πηγαία γραμματοσειρά:" -#~ msgid "Source Font Size:" -#~ msgstr "Μέγεθος πηγαίας γραμματοσειράς:" - #~ msgid "Dest Resource:" #~ msgstr "Πόρος προορισμού:" diff --git a/editor/translations/es.po b/editor/translations/es.po index 6c1b5908cd..012cff890c 100644 --- a/editor/translations/es.po +++ b/editor/translations/es.po @@ -33,12 +33,13 @@ # Franklin David Macias Avellan <franklin.macias864@gmail.com>, 2018. # Dianiel García <jdangarr@gmail.com>, 2018. # ayahuasca1979 <ayahuasca1979@gmail.com>, 2018. +# Elena G <elena.guzbla@gmail.com>, 2018. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2018-09-14 23:25+0000\n" -"Last-Translator: Javier Ocampos <xavier.ocampos@gmail.com>\n" +"PO-Revision-Date: 2018-12-04 22:15+0000\n" +"Last-Translator: Elena G <elena.guzbla@gmail.com>\n" "Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/" "godot/es/>\n" "Language: es\n" @@ -46,7 +47,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 3.2-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -580,8 +581,9 @@ msgid "Warnings:" msgstr "Advertencias:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Zoom:" +#, fuzzy +msgid "Font Size:" +msgstr "Tamaño de la tipografía elegida:" #: editor/code_editor.cpp msgid "Line:" @@ -1745,6 +1747,12 @@ msgstr "Esta operación no puede realizarse sin una escena raíz." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1753,7 +1761,7 @@ msgstr "" #: editor/editor_node.cpp editor/scene_tree_dock.cpp msgid "Can't overwrite scene that is still open!" -msgstr "" +msgstr "¡No se puede sobreescribir una escena que está abierta!" #: editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" @@ -2194,7 +2202,7 @@ msgid "Undo" msgstr "Deshacer" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Rehacer" @@ -4553,8 +4561,9 @@ msgid "Show Viewport" msgstr "Ver viewport" #: editor/plugins/canvas_item_editor_plugin.cpp +#, fuzzy msgid "Show Group And Lock Icons" -msgstr "" +msgstr "Mostrar iconos de grupo y bloqueo" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" @@ -5948,8 +5957,9 @@ msgid "Pitch" msgstr "Altura" #: editor/plugins/spatial_editor_plugin.cpp +#, fuzzy msgid "Yaw" -msgstr "" +msgstr "Girar desde eje vertical" #: editor/plugins/spatial_editor_plugin.cpp msgid "Objects Drawn" @@ -6685,11 +6695,11 @@ msgstr "Mover a la derecha" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip horizontally" -msgstr "" +msgstr "Voltear horizontalmente" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip vertically" -msgstr "" +msgstr "Voltear verticalmente" #: editor/plugins/tile_map_editor_plugin.cpp #, fuzzy @@ -8965,12 +8975,11 @@ msgstr "Buscar en VisualScript" #: modules/visual_script/visual_script_property_selector.cpp msgid "Get %s" -msgstr "" +msgstr "Obtener %s" #: modules/visual_script/visual_script_property_selector.cpp -#, fuzzy msgid "Set %s" -msgstr "Establecer " +msgstr "Establecer %s" #: platform/javascript/export/export.cpp msgid "Run in Browser" @@ -9070,6 +9079,8 @@ msgid "" "CPUParticles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"La animación CPUParticles2D requiere el uso de un CanvasItemMaterial con " +"\"Particles Animation\" activado." #: scene/2d/light_2d.cpp msgid "" @@ -9127,6 +9138,8 @@ msgid "" "Particles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"La animación Particles2D requiere el uso de un CanvasItemMaterial con " +"\"Particles Animation\" activado." #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." @@ -9273,7 +9286,7 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" "Nada es visible porque las mallas no se han asignado a los pases de dibujo." @@ -9282,6 +9295,8 @@ msgid "" "CPUParticles animation requires the usage of a SpatialMaterial with " "\"Billboard Particles\" enabled." msgstr "" +"La animación CPUParticles requiere el uso de un SpatialMaterial con " +"\"Billboard Particles\" activado." #: scene/3d/gi_probe.cpp msgid "Plotting Meshes" @@ -9312,6 +9327,8 @@ msgid "" "Particles animation requires the usage of a SpatialMaterial with \"Billboard " "Particles\" enabled." msgstr "" +"La animación de partículas requiere el uso de un SpatialMaterial con " +"\"Billboard Particles\" activado." #: scene/3d/path.cpp #, fuzzy @@ -9461,7 +9478,7 @@ msgstr "" #: scene/gui/range.cpp msgid "If exp_edit is true min_value must be > 0." -msgstr "" +msgstr "Si exp_edit es `true` min_value debe ser > 0." #: scene/gui/scroll_container.cpp msgid "" @@ -9537,6 +9554,9 @@ msgstr "Asignación a uniform." msgid "Varyings can only be assigned in vertex function." msgstr "Solo se pueden asignar variaciones en funciones de vértice." +#~ msgid "Zoom:" +#~ msgstr "Zoom:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "¿Estás seguro/a que quieres quitar todas las conexiones de el/la \"" @@ -10271,9 +10291,6 @@ msgstr "Solo se pueden asignar variaciones en funciones de vértice." #~ msgid "Source Font:" #~ msgstr "Tipografía elegida:" -#~ msgid "Source Font Size:" -#~ msgstr "Tamaño de la tipografía elegida:" - #~ msgid "Dest Resource:" #~ msgstr "Recurso de destino:" diff --git a/editor/translations/es_AR.po b/editor/translations/es_AR.po index 133c013958..f9196dbc6d 100644 --- a/editor/translations/es_AR.po +++ b/editor/translations/es_AR.po @@ -13,7 +13,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2018-11-21 19:08+0000\n" +"PO-Revision-Date: 2018-12-04 22:15+0000\n" "Last-Translator: Lisandro Lorea <lisandrolorea@gmail.com>\n" "Language-Team: Spanish (Argentina) <https://hosted.weblate.org/projects/" "godot-engine/godot/es_AR/>\n" @@ -22,7 +22,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 3.3-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -407,12 +407,10 @@ msgid "Delete Selection" msgstr "Eliminar Selección" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Next Step" msgstr "Ir a Paso Próximo" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Previous Step" msgstr "Ir a Paso Previo" @@ -553,8 +551,9 @@ msgid "Warnings:" msgstr "Advertencias:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Zoom:" +#, fuzzy +msgid "Font Size:" +msgstr "Tamaño de la Tipografía de Origen:" #: editor/code_editor.cpp msgid "Line:" @@ -667,9 +666,9 @@ msgid "Edit Connection: " msgstr "Editar Conexión: " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "¿Estás seguro/a que querés quitar todas las conexiones de esta señal?" +msgstr "" +"¿Estás seguro/a que querés quitar todas las conexiones de la señal \"%s\"?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -822,10 +821,8 @@ msgid "Error loading:" msgstr "Error cargando:" #: editor/dependency_editor.cpp -#, fuzzy msgid "Load failed due to missing dependencies:" -msgstr "" -"La escena falló al cargar debido a las siguientes dependencias faltantes:" +msgstr "Fallo la carga debido a dependencias faltantes:" #: editor/dependency_editor.cpp editor/editor_node.cpp msgid "Open Anyway" @@ -1311,24 +1308,21 @@ msgid "File Exists, Overwrite?" msgstr "El Archivo Existe, Sobreescribir?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Select This Folder" -msgstr "Seleccionar esta Carpeta" +msgstr "Seleccionar Esta Carpeta" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "Copy Path" msgstr "Copiar Ruta" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp -#, fuzzy msgid "Open in File Manager" msgstr "Abrir en el Explorador de Archivos" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp #: editor/project_manager.cpp -#, fuzzy msgid "Show in File Manager" -msgstr "Mostrar en Gestor de Archivos" +msgstr "Mostrar en Explorador de Archivos" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "New Folder..." @@ -1471,19 +1465,16 @@ msgid "Methods" msgstr "Métodos" #: editor/editor_help.cpp -#, fuzzy msgid "Methods:" -msgstr "Métodos" +msgstr "Métodos:" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties" -msgstr "Propiedades" +msgstr "Propiedades de Tema" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties:" -msgstr "Propiedades:" +msgstr "Propiedades de Tema:" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Signals:" @@ -1510,14 +1501,12 @@ msgid "Constants:" msgstr "Constantes:" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description" -msgstr "Descripción" +msgstr "Descripción de Clase" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description:" -msgstr "Descripción:" +msgstr "Descripción de Clase:" #: editor/editor_help.cpp msgid "Online Tutorials:" @@ -1534,14 +1523,12 @@ msgstr "" "url][/color]." #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions" -msgstr "Descripción de Propiedad:" +msgstr "Descripción de Propiedades" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions:" -msgstr "Descripción de Propiedad:" +msgstr "Descripción de Propiedades:" #: editor/editor_help.cpp msgid "" @@ -1552,12 +1539,10 @@ msgstr "" "[color=$color][url=$url]contribuyendo una[/url][/color]!" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions" -msgstr "Descripción de Métodos:" +msgstr "Descripción de Método" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions:" msgstr "Descripción de Métodos:" @@ -1575,49 +1560,40 @@ msgid "Search Help" msgstr "Buscar en la Ayuda" #: editor/editor_help_search.cpp -#, fuzzy msgid "Display All" -msgstr "Mostrar Normal" +msgstr "Mostrar Todo" #: editor/editor_help_search.cpp -#, fuzzy msgid "Classes Only" -msgstr "Clases" +msgstr "Solo Clases" #: editor/editor_help_search.cpp -#, fuzzy msgid "Methods Only" -msgstr "Métodos" +msgstr "Solo Métodos" #: editor/editor_help_search.cpp -#, fuzzy msgid "Signals Only" -msgstr "Señales" +msgstr "Solo Señales" #: editor/editor_help_search.cpp -#, fuzzy msgid "Constants Only" -msgstr "Constantes" +msgstr "Solo Constantes" #: editor/editor_help_search.cpp -#, fuzzy msgid "Properties Only" -msgstr "Propiedades" +msgstr "Solo Propiedades" #: editor/editor_help_search.cpp -#, fuzzy msgid "Theme Properties Only" -msgstr "Propiedades" +msgstr "Solo Propiedades de Tema" #: editor/editor_help_search.cpp -#, fuzzy msgid "Member Type" -msgstr "Miembros" +msgstr "Tipo de Miembro" #: editor/editor_help_search.cpp -#, fuzzy msgid "Class" -msgstr "Clase:" +msgstr "Clase" #: editor/editor_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" @@ -1717,6 +1693,12 @@ msgstr "Esta operación no puede hacerse sin una raíz de árbol." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1725,7 +1707,7 @@ msgstr "" #: editor/editor_node.cpp editor/scene_tree_dock.cpp msgid "Can't overwrite scene that is still open!" -msgstr "" +msgstr "No se puede sobrescribir una escena que todavía esta abierta!" #: editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" @@ -1988,13 +1970,12 @@ msgid "Unable to load addon script from path: '%s'." msgstr "No se pudo cargar el script de addon desde la ruta: '%s'." #: editor/editor_node.cpp -#, fuzzy msgid "" "Unable to load addon script from path: '%s' There seems to be an error in " "the code, please check the syntax." msgstr "" -"No se pudo cargar el script de addon desde la ruta: El script '%s' no está " -"en modo tool." +"No se pudo cargar el script de addon desde la ruta: '%s' Parece haber un " +"error en el código. Por favor, revisá la sintaxis." #: editor/editor_node.cpp msgid "" @@ -2050,7 +2031,6 @@ msgstr "Por Defecto" #: editor/editor_node.cpp editor/editor_properties.cpp #: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp -#, fuzzy msgid "Show in FileSystem" msgstr "Mostrar en Sistema de Archivos" @@ -2135,9 +2115,8 @@ msgid "Save Scene" msgstr "Guardar Escena" #: editor/editor_node.cpp -#, fuzzy msgid "Save All Scenes" -msgstr "Guardar todas las Escenas" +msgstr "Guardar Todas las Escenas" #: editor/editor_node.cpp msgid "Close Scene" @@ -2165,7 +2144,7 @@ msgid "Undo" msgstr "Deshacer" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Rehacer" @@ -2623,6 +2602,8 @@ msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." msgstr "" +"No se puede crear una ViewportTexture en recursos guardados como archivo.\n" +"El recurso debe pertenecer a una escena." #: editor/editor_properties.cpp msgid "" @@ -2631,6 +2612,10 @@ msgid "" "Please switch on the 'local to scene' property on it (and all resources " "containing it up to a node)." msgstr "" +"No se puede crear una ViewportTexture en este recurso porque no esta " +"asignado como local a la escena.\n" +"Por favor activá la propiedad 'local a escena' en él (y en todos los " +"recursos que lo contienen hasta un nodo)." #: editor/editor_properties.cpp editor/property_editor.cpp msgid "Pick a Viewport" @@ -2949,9 +2934,8 @@ msgstr "" "de tipos de archivo!" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Favorites" -msgstr "Favoritos:" +msgstr "Favoritos" #: editor/filesystem_dock.cpp msgid "Cannot navigate to '%s' as it has not been found in the file system!" @@ -3037,14 +3021,12 @@ msgid "Instance" msgstr "Instancia" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Add to favorites" -msgstr "Favoritos:" +msgstr "Agregar a favoritos" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Remove from favorites" -msgstr "Quitar del Grupo" +msgstr "Quitar de favoritos" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." @@ -3075,14 +3057,12 @@ msgid "New Resource..." msgstr "Nuevo Recurso..." #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Expand All" -msgstr "Expandir todos" +msgstr "Expandir Todos" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Collapse All" -msgstr "Colapsar todos" +msgstr "Colapsar Todos" #: editor/filesystem_dock.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp @@ -3104,9 +3084,8 @@ msgid "Re-Scan Filesystem" msgstr "Reexaminar Sistema de Archivos" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Toggle split mode" -msgstr "Act/Desact. Modo" +msgstr "Act/Desact. Modo Partido" #: editor/filesystem_dock.cpp msgid "Search files" @@ -3142,24 +3121,20 @@ msgid "Create Script" msgstr "Crear Script" #: editor/find_in_files.cpp -#, fuzzy msgid "Find in Files" -msgstr "Encontrar en archivos" +msgstr "Buscar en archivos" #: editor/find_in_files.cpp -#, fuzzy msgid "Find:" -msgstr "Encontrar: " +msgstr "Buscar:" #: editor/find_in_files.cpp -#, fuzzy msgid "Folder:" -msgstr "Carpeta: " +msgstr "Carpeta:" #: editor/find_in_files.cpp -#, fuzzy msgid "Filters:" -msgstr "Filtros" +msgstr "Filtros:" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp @@ -3336,14 +3311,12 @@ msgid "Failed to load resource." msgstr "Fallo al cargar recurso." #: editor/inspector_dock.cpp -#, fuzzy msgid "Expand All Properties" -msgstr "Expandir todas las propiedades" +msgstr "Expandir Todas las Propiedades" #: editor/inspector_dock.cpp -#, fuzzy msgid "Collapse All Properties" -msgstr "Colapsar todas las propiedades" +msgstr "Colapsar Todas las Propiedades" #: editor/inspector_dock.cpp editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/script_editor_plugin.cpp @@ -4299,9 +4272,8 @@ msgid "Resize CanvasItem" msgstr "Redimensionar CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale CanvasItem" -msgstr "Rotar CanvasItem" +msgstr "Escalar CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Move CanvasItem" @@ -4366,9 +4338,8 @@ msgid "Rotate Mode" msgstr "Modo Rotar" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale Mode" -msgstr "Modo de Escalado (R)" +msgstr "Modo de Escalado" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -4467,9 +4438,8 @@ msgid "Restores the object's children's ability to be selected." msgstr "Restaurar la habilidad de seleccionar los hijos de un objeto." #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Skeleton Options" -msgstr "Esqueleto" +msgstr "Opciones de Esqueleto" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Bones" @@ -4523,7 +4493,7 @@ msgstr "Mostrar Viewport" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" -msgstr "" +msgstr "Mostrar Grupo Y Bloquear Iconos" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" @@ -4965,9 +4935,8 @@ msgid "Create Navigation Polygon" msgstr "Crear Polígono de Navegación" #: editor/plugins/particles_2d_editor_plugin.cpp -#, fuzzy msgid "Generating Visibility Rect" -msgstr "Generar Rect. de Visibilidad" +msgstr "Generando Rect. de Visibilidad" #: editor/plugins/particles_2d_editor_plugin.cpp msgid "Can only set point into a ParticlesMaterial process material" @@ -5446,9 +5415,8 @@ msgid "Error writing TextFile:" msgstr "Error al escribir el TextFile:" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error: could not load file." -msgstr "Error no se pudo cargar el archivo." +msgstr "Error: no se pudo cargar el archivo." #: editor/plugins/script_editor_plugin.cpp msgid "Error could not load file." @@ -5547,7 +5515,6 @@ msgid "Copy Script Path" msgstr "Copiar Ruta de Script" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "History Previous" msgstr "Previo en Historial" @@ -5619,9 +5586,8 @@ msgid "Keep Debugger Open" msgstr "Mantener el Depurador Abierto" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Debug with External Editor" -msgstr "Depurar con editor externo" +msgstr "Depurar con Editor Externo" #: editor/plugins/script_editor_plugin.cpp msgid "Open Godot online documentation" @@ -5664,9 +5630,8 @@ msgid "Debugger" msgstr "Depurador" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Search Results" -msgstr "Resultados de la búsqueda" +msgstr "Resultados de la Búsqueda" #: editor/plugins/script_text_editor.cpp msgid "Line" @@ -5677,9 +5642,8 @@ msgid "(ignore)" msgstr "(ignorar)" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function" -msgstr "Ir a Función..." +msgstr "Ir a Función" #: editor/plugins/script_text_editor.cpp msgid "Only resources from filesystem can be dropped." @@ -5768,14 +5732,12 @@ msgid "Trim Trailing Whitespace" msgstr "Eliminar Espacios Sobrantes al Final" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Spaces" msgstr "Convertir Indentación En Espacios" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Tabs" -msgstr "Convertir Indentación En Tabs" +msgstr "Convertir Indentación En Tabulaciones" #: editor/plugins/script_text_editor.cpp msgid "Auto Indent" @@ -5791,31 +5753,26 @@ msgid "Remove All Breakpoints" msgstr "Quitar Todos los Breakpoints" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Next Breakpoint" -msgstr "Ir a Próximo Breakpoint" +msgstr "Ir al Breakpoint Siguiente" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Previous Breakpoint" -msgstr "Ir a Anterior Breakpoint" +msgstr "Ir al Breakpoint Anterior" #: editor/plugins/script_text_editor.cpp msgid "Find Previous" msgstr "Encontrar Anterior" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Find in Files..." -msgstr "Encontrar en archivos..." +msgstr "Buscar en Archivos..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function..." msgstr "Ir a Función..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Line..." msgstr "Ir a Línea..." @@ -5913,7 +5870,7 @@ msgstr "Altura" #: editor/plugins/spatial_editor_plugin.cpp msgid "Yaw" -msgstr "" +msgstr "Yaw" #: editor/plugins/spatial_editor_plugin.cpp msgid "Objects Drawn" @@ -6080,9 +6037,8 @@ msgid "Freelook Speed Modifier" msgstr "Modificador de Velocidad de Vista Libre" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "View Rotation Locked" -msgstr "Trabar Rotación de Vista" +msgstr "Rotación de Vista Trabada" #: editor/plugins/spatial_editor_plugin.cpp msgid "XForm Dialog" @@ -6584,9 +6540,8 @@ msgid "Fix Invalid Tiles" msgstr "Corregir Tiles Inválidos" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Cut Selection" -msgstr "Centrar Selección" +msgstr "Cortar Selección" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Paint TileMap" @@ -6633,32 +6588,28 @@ msgid "Pick Tile" msgstr "Elegir Tile" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Copy Selection" -msgstr "Mover Selección" +msgstr "Copiar Selección" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate left" -msgstr "Modo Rotar" +msgstr "Rotar a la izquierda" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate right" -msgstr "Mover a la Derecha" +msgstr "Rotar a la derecha" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip horizontally" -msgstr "" +msgstr "Espejar horizontalmente" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip vertically" -msgstr "" +msgstr "Espejar verticalmente" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Clear transform" -msgstr "Transform" +msgstr "Reestablecer transform" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Add Texture(s) to TileSet" @@ -6689,7 +6640,6 @@ msgid "Display tile's names (hold Alt Key)" msgstr "Mostrar nombres de tiles (mantener Tecla Alt)" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Remove selected texture and ALL TILES which use it?" msgstr "¿Quitar Textura Seleccionada y TODOS LOS TILES que la usen?" @@ -6706,9 +6656,8 @@ msgid "Merge from scene?" msgstr "¿Mergear desde escena?" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "%s file(s) were not added because was already on the list." -msgstr " archivo(s) no fueron agregados porque ya estaban en la lista." +msgstr "%s archivo(s) no fueron agregados porque ya estaban en la lista." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -6797,14 +6746,12 @@ msgstr "" "corruptas:" #: editor/project_export.cpp -#, fuzzy msgid "Release" -msgstr "recién soltado" +msgstr "Release" #: editor/project_export.cpp -#, fuzzy msgid "Exporting All" -msgstr "Exportando para %s" +msgstr "Exportar Todo" #: editor/project_export.cpp msgid "Presets" @@ -6815,9 +6762,8 @@ msgid "Add..." msgstr "Agregar..." #: editor/project_export.cpp -#, fuzzy msgid "Export Path:" -msgstr "Presets de Exportación:" +msgstr "Ruta de Exportación:" #: editor/project_export.cpp msgid "Resources" @@ -6882,14 +6828,12 @@ msgid "Export PCK/Zip" msgstr "Exportar PCK/Zip" #: editor/project_export.cpp -#, fuzzy msgid "Export mode?" -msgstr "Modo de Exportación:" +msgstr "¿Modo de Exportación?" #: editor/project_export.cpp -#, fuzzy msgid "Export All" -msgstr "Exportar" +msgstr "Exportar Todos" #: editor/project_export.cpp msgid "Export templates for this platform are missing:" @@ -7580,7 +7524,6 @@ msgid "Step" msgstr "Paso" #: editor/rename_dialog.cpp -#, fuzzy msgid "Amount by which counter is incremented for each node" msgstr "Cantidad en la que se incrementa el contador por cada nodo" @@ -7589,7 +7532,6 @@ msgid "Padding" msgstr "Relleno" #: editor/rename_dialog.cpp -#, fuzzy msgid "" "Minimum number of digits for the counter.\n" "Missing digits are padded with leading zeros." @@ -7738,6 +7680,8 @@ msgid "" "Disabling \"editable_instance\" will cause all properties of the node to be " "reverted to their default." msgstr "" +"Desactivar \"editable_instance\" causara que todas las propiedades del nodo " +"vuelvan a sus valores por defecto." #: editor/scene_tree_dock.cpp msgid "Editable Children" @@ -7813,9 +7757,8 @@ msgid "Clear Inheritance" msgstr "Limpiar Herencia" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Open documentation" -msgstr "Abrir la documentación online de Godot" +msgstr "Abrir documentación" #: editor/scene_tree_dock.cpp msgid "Delete Node(s)" @@ -7830,9 +7773,8 @@ msgid "Change Type" msgstr "Cambiar Tipo" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Extend Script" -msgstr "Abrir Script" +msgstr "Extender Script" #: editor/scene_tree_dock.cpp msgid "Make Scene Root" @@ -7996,9 +7938,8 @@ msgid "Path is empty" msgstr "La ruta está vacía" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Filename is empty" -msgstr "El sprite esta vacío!" +msgstr "Nombre de archivo vacio" #: editor/script_create_dialog.cpp msgid "Path is not local" @@ -8089,9 +8030,8 @@ msgid "Bytes:" msgstr "Bytes:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Stack Trace" -msgstr "Frames del Stack" +msgstr "Stack Trace" #: editor/script_editor_debugger.cpp msgid "Pick one or more items from the list to display the graph." @@ -8542,7 +8482,7 @@ msgstr "Fin del stack trace de excepción interna" #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Bake NavMesh" -msgstr "" +msgstr "Hacer Bake de NavMesh" #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Clear the navigation mesh." @@ -8929,12 +8869,11 @@ msgstr "Buscar en VisualScript" #: modules/visual_script/visual_script_property_selector.cpp msgid "Get %s" -msgstr "" +msgstr "Obtener %s" #: modules/visual_script/visual_script_property_selector.cpp -#, fuzzy msgid "Set %s" -msgstr "Set " +msgstr "Asignar %s" #: platform/javascript/export/export.cpp msgid "Run in Browser" @@ -9033,6 +8972,8 @@ msgid "" "CPUParticles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"Animar CPUParticles2D requiere el uso de un CanvasItemMaterial con " +"\"Particles Animation\" activado." #: scene/2d/light_2d.cpp msgid "" @@ -9088,6 +9029,8 @@ msgid "" "Particles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"Animar de Particles2D requiere el uso de un CanvasItemMaterial con " +"\"Particles Animation\" activado." #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." @@ -9233,14 +9176,16 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." -msgstr "Nada visible ya que no se asigno pasadas de dibujado a los meshes." +msgid "Nothing is visible because no mesh has been assigned." +msgstr "Nada visible ya que no se asignó ningún mesh." #: scene/3d/cpu_particles.cpp msgid "" "CPUParticles animation requires the usage of a SpatialMaterial with " "\"Billboard Particles\" enabled." msgstr "" +"Animar CPUParticles requiere el uso de un SpatialMaterial con \"Billboard " +"Particles\" activado." #: scene/3d/gi_probe.cpp msgid "Plotting Meshes" @@ -9269,22 +9214,25 @@ msgid "" "Particles animation requires the usage of a SpatialMaterial with \"Billboard " "Particles\" enabled." msgstr "" +"Animar Particles requiere el uso de un SpatialMaterial con \"Billboard " +"Particles\" activado." #: scene/3d/path.cpp -#, fuzzy msgid "PathFollow only works when set as a child of a Path node." msgstr "" -"PathFollow2D sólo funciona cuando está seteado como hijo de un nodo Path2D." +"PathFollow solo funciona cuando está asignado como hijo de un nodo Path." #: scene/3d/path.cpp -#, fuzzy msgid "OrientedPathFollow only works when set as a child of a Path node." msgstr "" -"PathFollow2D sólo funciona cuando está seteado como hijo de un nodo Path2D." +"OrientedPathFollow solo funciona cuando esta asignado como hijo de un nodo " +"Path." #: scene/3d/path.cpp msgid "OrientedPathFollow requires up vectors enabled in its parent Path." msgstr "" +"OrientedPathFollow requiere que los vectores up estén activos en su Path " +"padre." #: scene/3d/physics_body.cpp msgid "" @@ -9326,15 +9274,14 @@ msgid "This body will be ignored until you set a mesh" msgstr "Este cuerpo sera ignorado hasta que le asignes un mesh" #: scene/3d/soft_body.cpp -#, fuzzy msgid "" "Size changes to SoftBody will be overridden by the physics engine when " "running.\n" "Change the size in children collision shapes instead." msgstr "" -"Los cambios de tamaño a SoftBody serán sobre escritos por el motor de física " -"al ejecutar.\n" -"Cambiá el tamaño de los collision shapes hijos." +"Los cambios de tamaño a un SoftBody serán sobrescritos por el motor de " +"física al ejecutar.\n" +"En su lugar, cambiá el tamaño de los collision shapes hijos." #: scene/3d/sprite_3d.cpp msgid "" @@ -9418,7 +9365,7 @@ msgstr "" #: scene/gui/range.cpp msgid "If exp_edit is true min_value must be > 0." -msgstr "" +msgstr "Si exp_edit es verdadero min_value debe ser > 0." #: scene/gui/scroll_container.cpp msgid "" @@ -9494,6 +9441,9 @@ msgstr "Asignación a uniform." msgid "Varyings can only be assigned in vertex function." msgstr "Solo se pueden asignar variaciones en funciones de vértice." +#~ msgid "Zoom:" +#~ msgstr "Zoom:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "¿Estás seguro/a que querés quitar todas las conexiones de el/la \"" @@ -10217,9 +10167,6 @@ msgstr "Solo se pueden asignar variaciones en funciones de vértice." #~ msgid "Source Font:" #~ msgstr "Tipografía de Origen:" -#~ msgid "Source Font Size:" -#~ msgstr "Tamaño de la Tipografía de Origen:" - #~ msgid "Dest Resource:" #~ msgstr "Recurso de Dest:" diff --git a/editor/translations/fa.po b/editor/translations/fa.po index 4f908a5ad2..8b0fcd0b15 100644 --- a/editor/translations/fa.po +++ b/editor/translations/fa.po @@ -560,9 +560,8 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -#, fuzzy -msgid "Zoom:" -msgstr "بزرگنمایی بیشتر" +msgid "Font Size:" +msgstr "" #: editor/code_editor.cpp msgid "Line:" @@ -1724,6 +1723,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2126,7 +2131,7 @@ msgid "Undo" msgstr "خنثی کردن (Undo)" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -9252,7 +9257,7 @@ msgstr "" "برای آن ایجاد کنید!" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9501,6 +9506,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "بزرگنمایی بیشتر" + #~ msgid "Class List:" #~ msgstr "فهرست کلاس:" diff --git a/editor/translations/fi.po b/editor/translations/fi.po index 40def6086b..8e3c605afb 100644 --- a/editor/translations/fi.po +++ b/editor/translations/fi.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2018-10-04 17:26+0000\n" +"PO-Revision-Date: 2018-12-04 05:21+0000\n" "Last-Translator: Tapani Niemi <tapani.niemi@kapsi.fi>\n" "Language-Team: Finnish <https://hosted.weblate.org/projects/godot-engine/" "godot/fi/>\n" @@ -20,7 +20,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 3.2-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -545,8 +545,9 @@ msgid "Warnings:" msgstr "Varoitukset:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Lähennä:" +#, fuzzy +msgid "Font Size:" +msgstr "Etunäkymä" #: editor/code_editor.cpp msgid "Line:" @@ -659,9 +660,8 @@ msgid "Edit Connection: " msgstr "Muokkaa yhteyttä: " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "Oletko varma, että haluat poistaa kaikki kytkennät tältä signaalilta?" +msgstr "Oletko varma, että haluat poistaa kaikki kytkennät signaalilta \"%s\"?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -816,9 +816,8 @@ msgid "Error loading:" msgstr "Virhe ladatessa:" #: editor/dependency_editor.cpp -#, fuzzy msgid "Load failed due to missing dependencies:" -msgstr "Skenen lataaminen epäonnistui puuttuvan riippuvuuden takia:" +msgstr "Lataaminen epäonnistui puuttuvien riippuvuuksien takia:" #: editor/dependency_editor.cpp editor/editor_node.cpp msgid "Open Anyway" @@ -1709,6 +1708,12 @@ msgstr "Tätä toimintoa ei voi tehdä ilman että puun juuri on olemassa." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2141,7 +2146,7 @@ msgid "Undo" msgstr "Peru" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Tee uudelleen" @@ -9195,7 +9200,7 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" "Mitään ei näy, koska mesheille ei ole asetettu piirtopyyhkäisyjä (draw " "passes)." @@ -9458,6 +9463,9 @@ msgstr "Sijoitus uniformille." msgid "Varyings can only be assigned in vertex function." msgstr "Varying tyypin voi sijoittaa vain vertex-funktiossa." +#~ msgid "Zoom:" +#~ msgstr "Lähennä:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "Oletko varma, että haluat poistaa kaikki yhteydet kohteesta \"" diff --git a/editor/translations/fr.po b/editor/translations/fr.po index e62b20139a..4e2515081c 100644 --- a/editor/translations/fr.po +++ b/editor/translations/fr.po @@ -50,12 +50,14 @@ # Florent Wijanto <f_wijanto@hotmail.com>, 2018. # Olivier gareau <olivier.gareau@protonmail.com>, 2018. # Rémi Verschelde <akien@godotengine.org>, 2018. +# Rémi Bintein <reminus5@hotmail.fr>, 2018. +# Sylvain Corsini <sylvain.corsini@gmail.com>, 2018. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2018-11-26 16:07+0000\n" -"Last-Translator: Rémi Verschelde <akien@godotengine.org>\n" +"PO-Revision-Date: 2018-11-29 13:23+0000\n" +"Last-Translator: Sylvain Corsini <sylvain.corsini@gmail.com>\n" "Language-Team: French <https://hosted.weblate.org/projects/godot-engine/" "godot/fr/>\n" "Language: fr\n" @@ -452,12 +454,10 @@ msgid "Delete Selection" msgstr "Supprimer la sélection" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Next Step" msgstr "Aller à l'étape suivante" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Previous Step" msgstr "Aller à l'étape précédente" @@ -598,8 +598,9 @@ msgid "Warnings:" msgstr "Avertissements :" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Agrandissement (%) :" +#, fuzzy +msgid "Font Size:" +msgstr "Taille de la police source :" #: editor/code_editor.cpp msgid "Line:" @@ -712,7 +713,6 @@ msgid "Edit Connection: " msgstr "Modifier les connexions : " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" msgstr "Voulez-vous vraiment supprimer toutes les connexions de ce signal ?" @@ -870,7 +870,6 @@ msgid "Error loading:" msgstr "Erreur au chargement :" #: editor/dependency_editor.cpp -#, fuzzy msgid "Load failed due to missing dependencies:" msgstr "La scène n'a pas pu être chargée à cause de dépendances manquantes :" @@ -1358,7 +1357,6 @@ msgid "File Exists, Overwrite?" msgstr "Le fichier existe, l'écraser ?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Select This Folder" msgstr "Sélectionner ce dossier" @@ -1367,13 +1365,11 @@ msgid "Copy Path" msgstr "Copier le chemin" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp -#, fuzzy msgid "Open in File Manager" msgstr "Ouvrir dans le gestionnaire de fichiers" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp #: editor/project_manager.cpp -#, fuzzy msgid "Show in File Manager" msgstr "Montrer dans le gestionnaire de fichiers" @@ -1518,19 +1514,16 @@ msgid "Methods" msgstr "Méthodes :" #: editor/editor_help.cpp -#, fuzzy msgid "Methods:" msgstr "Méthodes :" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties" -msgstr "Propriétés" +msgstr "Propriétés du thème" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties:" -msgstr "Propriétés :" +msgstr "Propriétés du thème :" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Signals:" @@ -1557,14 +1550,12 @@ msgid "Constants:" msgstr "Constantes :" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description" -msgstr "Description" +msgstr "Description de la classe" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description:" -msgstr "Description :" +msgstr "Description de la classe :" #: editor/editor_help.cpp msgid "Online Tutorials:" @@ -1581,12 +1572,10 @@ msgstr "" "demander un[/url][/color]." #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions" msgstr "Description des propriétés :" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions:" msgstr "Description des propriétés :" @@ -1599,12 +1588,10 @@ msgstr "" "[color=$color][url=$url]en créant[/url][/color] une !" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions" msgstr "Description de la méthode :" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions:" msgstr "Description de la méthode :" @@ -1622,47 +1609,38 @@ msgid "Search Help" msgstr "Chercher dans l'aide" #: editor/editor_help_search.cpp -#, fuzzy msgid "Display All" -msgstr "Affichage normal" +msgstr "Tout afficher" #: editor/editor_help_search.cpp -#, fuzzy msgid "Classes Only" -msgstr "Classes" +msgstr "Classes seulement" #: editor/editor_help_search.cpp -#, fuzzy msgid "Methods Only" -msgstr "Méthodes :" +msgstr "Méthodes seulement" #: editor/editor_help_search.cpp -#, fuzzy msgid "Signals Only" -msgstr "Signaux" +msgstr "Signaux seulement" #: editor/editor_help_search.cpp -#, fuzzy msgid "Constants Only" -msgstr "Constantes" +msgstr "Constantes seulement" #: editor/editor_help_search.cpp -#, fuzzy msgid "Properties Only" -msgstr "Propriétés" +msgstr "Propriétés seulement" #: editor/editor_help_search.cpp -#, fuzzy msgid "Theme Properties Only" -msgstr "Propriétés" +msgstr "Propriétés du thème seulement" #: editor/editor_help_search.cpp -#, fuzzy msgid "Member Type" -msgstr "Membres" +msgstr "Type de membre" #: editor/editor_help_search.cpp -#, fuzzy msgid "Class" msgstr "Classe :" @@ -1763,6 +1741,12 @@ msgstr "Cette opération ne peut être réalisée sans une arborescence racine." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1771,7 +1755,7 @@ msgstr "" #: editor/editor_node.cpp editor/scene_tree_dock.cpp msgid "Can't overwrite scene that is still open!" -msgstr "" +msgstr "Impossible de ré-écrire une scène encore ouverte !" #: editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" @@ -2040,13 +2024,12 @@ msgstr "" "Impossible de charger le script de l’extension depuis le chemin : '%s'." #: editor/editor_node.cpp -#, fuzzy msgid "" "Unable to load addon script from path: '%s' There seems to be an error in " "the code, please check the syntax." msgstr "" -"Impossible de charger le script de l’extension depuis le chemin : '%s' Le " -"script n'est pas en mode outil." +"Impossible de charger le script de l’extension depuis le chemin : '%s' Il " +"semble y avoir une erreur dans le code, merci de vérifier la syntaxe." #: editor/editor_node.cpp msgid "" @@ -2102,7 +2085,6 @@ msgstr "Par défaut" #: editor/editor_node.cpp editor/editor_properties.cpp #: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp -#, fuzzy msgid "Show in FileSystem" msgstr "Montrer dans le système de fichiers" @@ -2187,7 +2169,6 @@ msgid "Save Scene" msgstr "Enregistrer la scène" #: editor/editor_node.cpp -#, fuzzy msgid "Save All Scenes" msgstr "Enregistrer toutes les scènes" @@ -2217,7 +2198,7 @@ msgid "Undo" msgstr "Annuler" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Refaire" @@ -2676,6 +2657,9 @@ msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." msgstr "" +"Impossible de créer un ViewportTexture sur des ressources enregistrées comme " +"fichier.\n" +"La ressource a besoin d'appartenir à une scène." #: editor/editor_properties.cpp msgid "" @@ -3002,7 +2986,6 @@ msgstr "" "sera pas sauvé !" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Favorites" msgstr "Favoris :" @@ -3091,14 +3074,12 @@ msgid "Instance" msgstr "Instance" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Add to favorites" -msgstr "Favoris :" +msgstr "Ajouter aux favoris" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Remove from favorites" -msgstr "Supprimer du groupe" +msgstr "Supprimer des favoris" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." @@ -3129,12 +3110,10 @@ msgid "New Resource..." msgstr "Nouvelle Ressource…" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Expand All" msgstr "Développer tout" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Collapse All" msgstr "Réduire tout" @@ -3198,24 +3177,20 @@ msgid "Create Script" msgstr "Créer un script" #: editor/find_in_files.cpp -#, fuzzy msgid "Find in Files" msgstr "Trouver dans les fichiers" #: editor/find_in_files.cpp -#, fuzzy msgid "Find:" -msgstr "Trouver : " +msgstr "Trouver :" #: editor/find_in_files.cpp -#, fuzzy msgid "Folder:" -msgstr "Dossier : " +msgstr "Dossier :" #: editor/find_in_files.cpp -#, fuzzy msgid "Filters:" -msgstr "Filtres" +msgstr "Filtres :" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp @@ -3393,12 +3368,10 @@ msgid "Failed to load resource." msgstr "Impossible de charger la ressource." #: editor/inspector_dock.cpp -#, fuzzy msgid "Expand All Properties" msgstr "Développer toutes les propriétés" #: editor/inspector_dock.cpp -#, fuzzy msgid "Collapse All Properties" msgstr "Réduire toutes les propriétés" @@ -4428,9 +4401,8 @@ msgid "Rotate Mode" msgstr "Mode rotation" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale Mode" -msgstr "Mode de mise à l'échelle (R)" +msgstr "Mode de mise à l'échelle" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -4585,7 +4557,7 @@ msgstr "Montrer La fenêtre d'affichage" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" -msgstr "" +msgstr "Montrer le groupe et verrouiller les icônes" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" @@ -5513,7 +5485,6 @@ msgid "Error writing TextFile:" msgstr "Erreur lors de l'écriture du fichier texte :" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error: could not load file." msgstr "Erreur de chargement de fichier." @@ -5686,7 +5657,6 @@ msgid "Keep Debugger Open" msgstr "Garder le débogueur ouvert" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Debug with External Editor" msgstr "Déboguer avec un éditeur externe" @@ -5731,7 +5701,6 @@ msgid "Debugger" msgstr "Débogueur" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Search Results" msgstr "Résultats de recherche" @@ -5744,9 +5713,8 @@ msgid "(ignore)" msgstr "(ignorer)" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function" -msgstr "Aller à la fonction…" +msgstr "Aller à la fonction" #: editor/plugins/script_text_editor.cpp msgid "Only resources from filesystem can be dropped." @@ -5835,12 +5803,10 @@ msgid "Trim Trailing Whitespace" msgstr "Supprimer les espaces de fin de ligne" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Spaces" msgstr "Convertir indentations en espaces" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Tabs" msgstr "Convertir les indentations en tabulations" @@ -5858,12 +5824,10 @@ msgid "Remove All Breakpoints" msgstr "Supprimer tous les points d'arrêt" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Next Breakpoint" msgstr "Aller au point d'arrêt suivant" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Previous Breakpoint" msgstr "Aller au point d'arrêt précédent" @@ -5872,17 +5836,14 @@ msgid "Find Previous" msgstr "Trouver le précédent" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Find in Files..." msgstr "Trouver dans les fichiers..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function..." msgstr "Aller à la fonction…" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Line..." msgstr "Aller à la ligne…" @@ -6149,7 +6110,6 @@ msgid "Freelook Speed Modifier" msgstr "Modificateur de vitesse de la vue libre" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "View Rotation Locked" msgstr "Verrouiller la rotation de la vue" @@ -6655,9 +6615,8 @@ msgid "Fix Invalid Tiles" msgstr "Résoudre les tuiles invalides" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Cut Selection" -msgstr "Centrer sur la sélection" +msgstr "Couper la sélection" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Paint TileMap" @@ -6704,27 +6663,24 @@ msgid "Pick Tile" msgstr "Sélectionner une case" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Copy Selection" -msgstr "Déplacer la sélection" +msgstr "Copier la sélection" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate left" -msgstr "Mode rotation" +msgstr "Rotation à gauche" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate right" -msgstr "Aller à droite" +msgstr "Rotation à droite" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip horizontally" -msgstr "" +msgstr "Retourner horizontalement" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip vertically" -msgstr "" +msgstr "Retourner verticalement" #: editor/plugins/tile_map_editor_plugin.cpp #, fuzzy @@ -6869,12 +6825,11 @@ msgstr "Modèles d'exportation manquants ou corrompus pour cette plateforme :" #: editor/project_export.cpp #, fuzzy msgid "Release" -msgstr "vient d'être relâché" +msgstr "Réalisation" #: editor/project_export.cpp -#, fuzzy msgid "Exporting All" -msgstr "Exportation pour %s" +msgstr "Tout exporter" #: editor/project_export.cpp msgid "Presets" @@ -6952,14 +6907,12 @@ msgid "Export PCK/Zip" msgstr "Exporter le PCK/ZIP" #: editor/project_export.cpp -#, fuzzy msgid "Export mode?" -msgstr "Mode d'exportation :" +msgstr "Mode Exportation?" #: editor/project_export.cpp -#, fuzzy msgid "Export All" -msgstr "Exporter" +msgstr "Tout exporter" #: editor/project_export.cpp msgid "Export templates for this platform are missing:" @@ -7651,7 +7604,6 @@ msgid "Step" msgstr "Pas" #: editor/rename_dialog.cpp -#, fuzzy msgid "Amount by which counter is incremented for each node" msgstr "Valeur par laquelle le compteur est incrémenté pour chaque nœud" @@ -7660,7 +7612,6 @@ msgid "Padding" msgstr "Remplissage" #: editor/rename_dialog.cpp -#, fuzzy msgid "" "Minimum number of digits for the counter.\n" "Missing digits are padded with leading zeros." @@ -7883,9 +7834,8 @@ msgid "Clear Inheritance" msgstr "Effacer l'héritage" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Open documentation" -msgstr "Ouvrir la documentation Godot en ligne" +msgstr "Ouvrir la documentation" #: editor/scene_tree_dock.cpp msgid "Delete Node(s)" @@ -8066,9 +8016,8 @@ msgid "Path is empty" msgstr "Le chemin est vide" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Filename is empty" -msgstr "Le sprite est vide !" +msgstr "Le nom de fichier est vide" #: editor/script_create_dialog.cpp msgid "Path is not local" @@ -9002,12 +8951,11 @@ msgstr "Rechercher VisualScript" #: modules/visual_script/visual_script_property_selector.cpp msgid "Get %s" -msgstr "" +msgstr "Obtenir %s" #: modules/visual_script/visual_script_property_selector.cpp -#, fuzzy msgid "Set %s" -msgstr "Définir " +msgstr "Définir %s" #: platform/javascript/export/export.cpp msgid "Run in Browser" @@ -9101,10 +9049,13 @@ msgstr "" "créer une ressource de forme !" #: scene/2d/cpu_particles_2d.cpp +#, fuzzy msgid "" "CPUParticles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"L'animation CPUParticles2D a besoin de l'usage d'un CanvasItemMaterial avec " +"\"Animation de Particules\" activé." #: scene/2d/light_2d.cpp msgid "" @@ -9160,10 +9111,13 @@ msgstr "" "comportement n'est donc imprimé." #: scene/2d/particles_2d.cpp +#, fuzzy msgid "" "Particles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"L'animation Particles2D a besoin de l'usage d'un CanvasItemMaterial avec " +"\"Animation de Particules\" activé." #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." @@ -9310,11 +9264,8 @@ msgstr "" "de forme pour cette CollisionShape !" #: scene/3d/cpu_particles.cpp -#, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." -msgstr "" -"Rien n'est visible car les maillages n'ont pas été assignés au tirage des " -"passes." +msgid "Nothing is visible because no mesh has been assigned." +msgstr "Rien n'est visible car aucun maillage n'a été assigné." #: scene/3d/cpu_particles.cpp msgid "" @@ -9505,7 +9456,7 @@ msgstr "" #: scene/gui/range.cpp msgid "If exp_edit is true min_value must be > 0." -msgstr "" +msgstr "Si exp_edit est vrai min_value doit être > 0." #: scene/gui/scroll_container.cpp msgid "" @@ -9581,6 +9532,9 @@ msgstr "Affectation à l'uniforme." msgid "Varyings can only be assigned in vertex function." msgstr "Les variations ne peuvent être affectées que dans la fonction vertex." +#~ msgid "Zoom:" +#~ msgstr "Agrandissement (%) :" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "Voulez-vous vraiment supprimer toutes les connexions du ''" @@ -10308,9 +10262,6 @@ msgstr "Les variations ne peuvent être affectées que dans la fonction vertex." #~ msgid "Source Font:" #~ msgstr "Police source :" -#~ msgid "Source Font Size:" -#~ msgstr "Taille de la police source :" - #~ msgid "Dest Resource:" #~ msgstr "Ressource de destination :" diff --git a/editor/translations/he.po b/editor/translations/he.po index ed2657f46b..3d9418b4fd 100644 --- a/editor/translations/he.po +++ b/editor/translations/he.po @@ -564,8 +564,8 @@ msgstr "אזהרות" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "להתקרב" +msgid "Font Size:" +msgstr "מבט קדמי" #: editor/code_editor.cpp msgid "Line:" @@ -1706,6 +1706,12 @@ msgstr "לא ניתן לבצע פעולה זו ללא שורש העץ." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2112,7 +2118,7 @@ msgid "Undo" msgstr "ביטול" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "ביצוע חוזר" @@ -9090,7 +9096,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9318,6 +9324,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "להתקרב" + #~ msgid "Class List:" #~ msgstr "רשימת מחלקות:" diff --git a/editor/translations/hi.po b/editor/translations/hi.po index 92f64ab6d1..1188b26a7c 100644 --- a/editor/translations/hi.po +++ b/editor/translations/hi.po @@ -544,9 +544,8 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -#, fuzzy -msgid "Zoom:" -msgstr "बड़ा करो" +msgid "Font Size:" +msgstr "" #: editor/code_editor.cpp msgid "Line:" @@ -1706,6 +1705,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2103,7 +2108,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8955,7 +8960,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9182,6 +9187,10 @@ msgid "Varyings can only be assigned in vertex function." msgstr "" #, fuzzy +#~ msgid "Zoom:" +#~ msgstr "बड़ा करो" + +#, fuzzy #~ msgid "Match case" #~ msgstr "एक जैसा:" diff --git a/editor/translations/hu.po b/editor/translations/hu.po index 5524b9319d..7fb0a8b353 100644 --- a/editor/translations/hu.po +++ b/editor/translations/hu.po @@ -564,8 +564,8 @@ msgstr "" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "Nagyítás" +msgid "Font Size:" +msgstr "Körvonal Mérete:" #: editor/code_editor.cpp msgid "Line:" @@ -1727,6 +1727,12 @@ msgstr "Ezt a műveletet nem lehet fagyökér nélkül végrehajtani." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2179,7 +2185,7 @@ msgid "Undo" msgstr "Visszavonás" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Mégis" @@ -9231,7 +9237,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9467,6 +9473,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Nagyítás" + #~ msgid "Class List:" #~ msgstr "Osztálylista:" diff --git a/editor/translations/id.po b/editor/translations/id.po index 04d72d94d2..a63dd99bc3 100644 --- a/editor/translations/id.po +++ b/editor/translations/id.po @@ -572,8 +572,8 @@ msgstr "" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "Perbesar Pandangan" +msgid "Font Size:" +msgstr "Tampilan Depan." #: editor/code_editor.cpp msgid "Line:" @@ -1740,6 +1740,12 @@ msgstr "Operasi ini tidak dapat diselesaikan tanpa root pohon." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2183,7 +2189,7 @@ msgid "Undo" msgstr "Batal" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Ulangi" @@ -9433,7 +9439,7 @@ msgstr "" "ciptakan sebuah resource bentuk untuk itu!" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9690,6 +9696,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Perbesar Pandangan" + #~ msgid "Class List:" #~ msgstr "Daftar Class:" diff --git a/editor/translations/is.po b/editor/translations/is.po index 518e43ac10..0300245fc6 100644 --- a/editor/translations/is.po +++ b/editor/translations/is.po @@ -552,7 +552,7 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" +msgid "Font Size:" msgstr "" #: editor/code_editor.cpp @@ -1668,6 +1668,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2065,7 +2071,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8879,7 +8885,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp diff --git a/editor/translations/it.po b/editor/translations/it.po index 3a1f0a2dd2..6a293bb667 100644 --- a/editor/translations/it.po +++ b/editor/translations/it.po @@ -587,8 +587,8 @@ msgstr "Avvertimento" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "Zoom(%):" +msgid "Font Size:" +msgstr "Dimensione Font sorgente:" #: editor/code_editor.cpp msgid "Line:" @@ -1758,6 +1758,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2207,7 +2213,7 @@ msgid "Undo" msgstr "Annulla" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Redo" @@ -9525,7 +9531,7 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "Nulla é visibile perché le mesh non sono state assegnate ai draw pass." #: scene/3d/cpu_particles.cpp @@ -9797,6 +9803,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Zoom(%):" + #~ msgid "Class List:" #~ msgstr "Lista Classi:" @@ -10528,9 +10538,6 @@ msgstr "" #~ msgid "Source Font:" #~ msgstr "Font Sorgente:" -#~ msgid "Source Font Size:" -#~ msgstr "Dimensione Font sorgente:" - #~ msgid "Dest Resource:" #~ msgstr "Risorsa di destin. :" diff --git a/editor/translations/ja.po b/editor/translations/ja.po index e2db7c16d1..72ea5d8d14 100644 --- a/editor/translations/ja.po +++ b/editor/translations/ja.po @@ -18,18 +18,19 @@ # sugusan <sugusan.development@gmail.com>, 2018. # Nathan Lovato <nathan.lovato.art@gmail.com>, 2018. # nyanode <akaruooyagi@yahoo.co.jp>, 2018. +# nitenook <admin@alterbaum.net>, 2018. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2018-10-09 09:33+0000\n" -"Last-Translator: nyanode <akaruooyagi@yahoo.co.jp>\n" +"PO-Revision-Date: 2018-12-04 22:14+0000\n" +"Last-Translator: nitenook <admin@alterbaum.net>\n" "Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/" "godot/ja/>\n" "Language: ja\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 3.2.1\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -52,11 +53,11 @@ msgstr "インスタンスが null のため、self は使用できません" #: core/math/expression.cpp msgid "Invalid operands to operator %s, %s and %s." -msgstr "演算子 %s 、 %s 、 %s に対する値が無効です。" +msgstr "演算子 %s 、 %s 、 %s に対する値が無効です。" #: core/math/expression.cpp msgid "Invalid index of type %s for base type %s" -msgstr "基本型 %s の型 %s のインデックスが無効です" +msgstr "基本型 %s の型 %s のインデックスが無効です" #: core/math/expression.cpp msgid "Invalid named index '%s' for base type %s" @@ -68,7 +69,7 @@ msgstr "'%s' の引数は無効です" #: core/math/expression.cpp msgid "On call to '%s':" -msgstr "'%s' への呼び出し:" +msgstr "'%s' への呼び出し:" #: editor/animation_bezier_editor.cpp #: editor/plugins/asset_library_editor_plugin.cpp @@ -194,7 +195,7 @@ msgstr "このトラックを除去する。" #: editor/animation_track_editor.cpp msgid "Time (s): " -msgstr "時間: " +msgstr "時間 (秒): " #: editor/animation_track_editor.cpp msgid "Continuous" @@ -559,8 +560,9 @@ msgid "Warnings:" msgstr "警告:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "ズーム:" +#, fuzzy +msgid "Font Size:" +msgstr "ソース フォントサイズ:" #: editor/code_editor.cpp msgid "Line:" @@ -579,8 +581,8 @@ msgid "" "Target method not found! Specify a valid method or attach a script to target " "Node." msgstr "" -"対象メソッドが見つかりません! 有効なメソッドを指定するか、対象ノードにスク" -"リプトを添付してください。" +"対象メソッドが見つかりません!有効なメソッドを指定するか、対象ノードにスクリ" +"プトを添付してください。" #: editor/connections_dialog.cpp msgid "Connect To Node:" @@ -649,7 +651,7 @@ msgstr "'%s' を '%s' に接続" #: editor/connections_dialog.cpp msgid "Disconnect '%s' from '%s'" -msgstr "'%s' から '%s' を切断" +msgstr "'%s' を '%s' から切断" #: editor/connections_dialog.cpp msgid "Disconnect all from signal: '%s'" @@ -835,7 +837,7 @@ msgstr "依存関係が確認できず、シーンを読込めません:" #: editor/dependency_editor.cpp editor/editor_node.cpp msgid "Open Anyway" -msgstr "ともかく開く" +msgstr "とにかく開く" #: editor/dependency_editor.cpp msgid "Which action should be taken?" @@ -1117,7 +1119,7 @@ msgstr "オーディオバスのレイアウトを開く" #: editor/editor_audio_buses.cpp msgid "There is no 'res://default_bus_layout.tres' file." -msgstr "'res://default_bus_layout.tres' ファイルがありません!" +msgstr "'res://default_bus_layout.tres' ファイルがありません。" #: editor/editor_audio_buses.cpp msgid "Invalid file, not an audio bus layout." @@ -1310,9 +1312,8 @@ msgid "File Exists, Overwrite?" msgstr "ファイルが既に存在します。上書きしますか?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Select This Folder" -msgstr "すべて選択" +msgstr "このフォルダーを選択" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "Copy Path" @@ -1510,14 +1511,12 @@ msgid "Constants:" msgstr "定数:" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description" -msgstr "説明" +msgstr "クラスの説明" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description:" -msgstr "説明:" +msgstr "クラスの説明:" #: editor/editor_help.cpp msgid "Online Tutorials:" @@ -1651,7 +1650,7 @@ msgstr "出力をクリア" #: editor/editor_node.cpp msgid "Project export failed with error code %d." -msgstr "エラーコード %d により、プロジェクトのエクスポートに失敗しました。" +msgstr "プロジェクトのエクスポートがエラーコード %d で失敗しました。" #: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp msgid "Error saving resource!" @@ -1681,8 +1680,7 @@ 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 "" -"'%s' を開くことができません。ファイルが移動または削除された可能性がありま" -"す。" +"'%s' を開くことができません。ファイルが移動または削除された可能性があります。" #: editor/editor_node.cpp msgid "Error while parsing '%s'." @@ -1718,6 +1716,12 @@ msgstr "この操作は、ツリーの root なしでは実行できません。 #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1726,7 +1730,7 @@ 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!" @@ -1980,7 +1984,7 @@ msgstr "" #: editor/editor_node.cpp msgid "Unable to load addon script from path: '%s'." -msgstr "パス '%s' からアドオンスクリプトを読込めません。" +msgstr "パス '%s' からアドオンスクリプトを読込めません。" #: editor/editor_node.cpp #, fuzzy @@ -2009,7 +2013,7 @@ 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" +"シーン '%s' は自動的にインポートされたので、変更できません。\n" "変更するためには、新たに継承されたシーンを作成してください。" #: editor/editor_node.cpp @@ -2062,7 +2066,7 @@ msgstr "シーンタブを切替え" #: editor/editor_node.cpp msgid "%d more files or folders" -msgstr "%d 以上のファイルとフォルダ" +msgstr "%d 以上のファイルとフォルダ" #: editor/editor_node.cpp msgid "%d more folders" @@ -2078,11 +2082,11 @@ 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." @@ -2156,12 +2160,12 @@ msgstr "タイルセット..." #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Undo" -msgstr "アンドゥ" +msgstr "元に戻す" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" -msgstr "リドゥ" +msgstr "やり直す" #: editor/editor_node.cpp msgid "Revert Scene" @@ -2848,7 +2852,7 @@ msgid "" "found at '%s'." msgstr "" "テンプレートのインストールに失敗しました。 問題のテンプレートのアーカイブは " -"'%s' にあります。" +"'%s' にあります。" #: editor/export_template_manager.cpp msgid "Error requesting url: " @@ -2898,7 +2902,7 @@ msgstr "接続エラー" #: editor/export_template_manager.cpp msgid "SSL Handshake Error" -msgstr "SS ハンドシェイクエラー" +msgstr "SSL ハンドシェイクエラー" #: editor/export_template_manager.cpp msgid "Current Version:" @@ -3033,9 +3037,8 @@ msgid "Add to favorites" msgstr "お気に入り:" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Remove from favorites" -msgstr "グループから除去" +msgstr "お気に入りから削除" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." @@ -3863,7 +3866,7 @@ msgstr "サブトランジションには、開始ノードと終了ノードが #: editor/plugins/animation_state_machine_editor.cpp msgid "No playback resource set at path: %s." -msgstr "パス( %s )に再生リソースが設定されていません。" +msgstr "パス( %s )に再生リソースが設定されていません。" #: editor/plugins/animation_state_machine_editor.cpp msgid "" @@ -4341,7 +4344,7 @@ msgstr "Alt+ドラッグ:移動" #, fuzzy msgid "Press 'v' to Change Pivot, 'Shift+v' to Drag Pivot (while moving)." msgstr "" -"vキーを押すとピボットの変更、'Shift+v' でピボットをドラッグ(移動中でも)" +"vキーを押すとピボットの変更、'Shift+v' でピボットをドラッグ(移動中でも)" #: editor/plugins/canvas_item_editor_plugin.cpp #, fuzzy @@ -4694,7 +4697,7 @@ msgstr "点を追加" #: editor/plugins/curve_editor_plugin.cpp msgid "Remove point" -msgstr "選択しているポイント=点を削除" +msgstr "ポイントを除去" #: editor/plugins/curve_editor_plugin.cpp #, fuzzy @@ -5384,7 +5387,7 @@ msgstr "ポリゴン2DのUVエディタ" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "UV" -msgstr "" +msgstr "UV" #: editor/plugins/polygon_2d_editor_plugin.cpp #, fuzzy @@ -5460,7 +5463,7 @@ msgstr "" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Radius:" -msgstr "" +msgstr "半径:" #: editor/plugins/polygon_2d_editor_plugin.cpp #, fuzzy @@ -5813,7 +5816,7 @@ msgstr "直前の「編集した文書」へ移動." #: editor/plugins/script_editor_plugin.cpp msgid "Go to next edited document." -msgstr "次のの「編集した文書」へ移動." +msgstr "次の「編集した文書」へ移動." #: editor/plugins/script_editor_plugin.cpp #, fuzzy @@ -6116,7 +6119,7 @@ msgstr "描画されたオブジェクト" #: editor/plugins/spatial_editor_plugin.cpp msgid "Material Changes" -msgstr "素材の変更" +msgstr "マテリアルの変更" #: editor/plugins/spatial_editor_plugin.cpp msgid "Shader Changes" @@ -6128,7 +6131,7 @@ msgstr "サーフェースの変更" #: editor/plugins/spatial_editor_plugin.cpp msgid "Draw Calls" -msgstr "ドローコール(Daw call)" +msgstr "ドローコール" #: editor/plugins/spatial_editor_plugin.cpp msgid "Vertices" @@ -7065,9 +7068,8 @@ msgid "Add..." msgstr "追加..." #: editor/project_export.cpp -#, fuzzy msgid "Export Path:" -msgstr "プロジェクトのエクスポート" +msgstr "エクスポートパス:" #: editor/project_export.cpp msgid "Resources" @@ -7284,7 +7286,7 @@ msgstr "プロジェクトパス:" #: editor/project_manager.cpp msgid "Browse" -msgstr "参照…" +msgstr "参照" #: editor/project_manager.cpp msgid "Unnamed Project" @@ -7578,6 +7580,8 @@ msgid "" "Invalid action name. It cannot be empty nor contain '/', ':', '=', '\\' or " "'\"'." msgstr "" +"無効なアクション名です。空もしくは'/', ':', '=', '\\' や '\"'を含めることはで" +"きません。" #: editor/project_settings_editor.cpp #, fuzzy @@ -8384,9 +8388,8 @@ msgid "Wrong extension chosen" msgstr "拡張子が誤っています" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Invalid Path" -msgstr "無効なフォント サイズです。" +msgstr "無効なパス" #: editor/script_create_dialog.cpp msgid "Invalid class name" @@ -8923,7 +8926,7 @@ msgstr "リソース読み込み失敗" #: modules/mono/editor/godotsharp_editor.cpp msgid "Mono" -msgstr "モノラル音声" +msgstr "Mono" #: modules/mono/editor/godotsharp_editor.cpp msgid "About C# support" @@ -9710,7 +9713,7 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "描画パスのためのメッシュが指定されていませんので見えません" #: scene/3d/cpu_particles.cpp @@ -9793,10 +9796,13 @@ msgstr "" "セット) ごとに許可されます。" #: scene/3d/scenario_fx.cpp +#, fuzzy 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 "" +"このWorldEnvironmentは無視されました。カメラを追加するか(3Dシーンの場合)、こ" +"のEnvironmentの Backgroundモード を Canvas に設定します(2Dシーンの場合)。" #: scene/3d/soft_body.cpp msgid "This body will be ignored until you set a mesh" @@ -9975,6 +9981,9 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#~ msgid "Zoom:" +#~ msgstr "ズーム:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "\" から全ての接続を除去してもよろしいですか" @@ -10756,10 +10765,6 @@ msgstr "" #~ msgstr "ソース フォント:" #, fuzzy -#~ msgid "Source Font Size:" -#~ msgstr "ソース フォントサイズ:" - -#, fuzzy #~ msgid "Dest Resource:" #~ msgstr "送り先のリソース:" diff --git a/editor/translations/ka.po b/editor/translations/ka.po index 7e13731d6a..e8b20b048f 100644 --- a/editor/translations/ka.po +++ b/editor/translations/ka.po @@ -549,9 +549,8 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -#, fuzzy -msgid "Zoom:" -msgstr "ზუმის გაზრდა" +msgid "Font Size:" +msgstr "" #: editor/code_editor.cpp msgid "Line:" @@ -1693,6 +1692,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2090,7 +2095,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8940,7 +8945,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9169,6 +9174,10 @@ msgid "Varyings can only be assigned in vertex function." msgstr "" #, fuzzy +#~ msgid "Zoom:" +#~ msgstr "ზუმის გაზრდა" + +#, fuzzy #~ msgid "Whole words" #~ msgstr "მთლიანი სიტყვები" diff --git a/editor/translations/ko.po b/editor/translations/ko.po index 31c64514ca..c598e5cb59 100644 --- a/editor/translations/ko.po +++ b/editor/translations/ko.po @@ -16,7 +16,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2018-11-16 16:07+0000\n" +"PO-Revision-Date: 2018-12-03 19:25+0000\n" "Last-Translator: 송태섭 <xotjq237@gmail.com>\n" "Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/" "godot/ko/>\n" @@ -25,7 +25,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 3.3-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -406,12 +406,10 @@ msgid "Delete Selection" msgstr "선택 삭제" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Next Step" msgstr "다음 스텝으로 이동" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Previous Step" msgstr "이전 스텝으로 이동" @@ -552,8 +550,9 @@ msgid "Warnings:" msgstr "경고:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "확대:" +#, fuzzy +msgid "Font Size:" +msgstr "소스 폰트 크기:" #: editor/code_editor.cpp msgid "Line:" @@ -666,9 +665,8 @@ msgid "Edit Connection: " msgstr "연결 편집 " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "이 시그널에서 모든 연결을 제거하시겠습니까?" +msgstr "\"%s\" 시그널에서 모든 연결을 제거하시겠습니까?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -822,9 +820,8 @@ msgid "Error loading:" msgstr "불러오기 중 에러:" #: editor/dependency_editor.cpp -#, fuzzy msgid "Load failed due to missing dependencies:" -msgstr "종속 관계를 찾을 수 없어 씬를 불러올 수 없습니다:" +msgstr "종속 관계를 찾을 수 없어 씬을 불러올 수 없습니다:" #: editor/dependency_editor.cpp editor/editor_node.cpp msgid "Open Anyway" @@ -1305,7 +1302,6 @@ msgid "File Exists, Overwrite?" msgstr "파일이 존재합니다. 덮어쓰시겠습니까?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Select This Folder" msgstr "이 폴더 선택" @@ -1314,15 +1310,13 @@ 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/filesystem_dock.cpp #: editor/project_manager.cpp -#, fuzzy msgid "Show in File Manager" -msgstr "파일 매니저에서 보기" +msgstr "파일 탐색기에서 보기" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "New Folder..." @@ -1465,19 +1459,16 @@ msgid "Methods" msgstr "메서드" #: editor/editor_help.cpp -#, fuzzy msgid "Methods:" -msgstr "메서드" +msgstr "메서드:" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties" -msgstr "속성" +msgstr "테마 속성" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties:" -msgstr "속성:" +msgstr "테마 속성:" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Signals:" @@ -1504,14 +1495,12 @@ msgid "Constants:" msgstr "상수:" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description" -msgstr "설명" +msgstr "클래스 설명" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description:" -msgstr "설명:" +msgstr "클래스 설명:" #: editor/editor_help.cpp msgid "Online Tutorials:" @@ -1528,12 +1517,10 @@ msgstr "" "니다." #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions" -msgstr "속성 설명:" +msgstr "속성 설명" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions:" msgstr "속성 설명:" @@ -1546,12 +1533,10 @@ msgstr "" "기여하여[/url][/color] 더 나아지게 도와주세요!" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions" -msgstr "메서드 설명:" +msgstr "메서드 설명" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions:" msgstr "메서드 설명:" @@ -1569,49 +1554,40 @@ msgid "Search Help" msgstr "도움말 검색" #: editor/editor_help_search.cpp -#, fuzzy msgid "Display All" -msgstr "Normal 표시" +msgstr "모두 표시" #: editor/editor_help_search.cpp -#, fuzzy msgid "Classes Only" -msgstr "클래스(Class)" +msgstr "클래스만" #: editor/editor_help_search.cpp -#, fuzzy msgid "Methods Only" -msgstr "메서드" +msgstr "메서드만" #: editor/editor_help_search.cpp -#, fuzzy msgid "Signals Only" -msgstr "시그널(Signal)" +msgstr "시그널만" #: editor/editor_help_search.cpp -#, fuzzy msgid "Constants Only" -msgstr "상수(Constant)" +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_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" @@ -1710,6 +1686,12 @@ msgstr "이 작업은 트리 루트 없이는 불가합니다." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1718,7 +1700,7 @@ 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!" @@ -1968,13 +1950,12 @@ msgid "Unable to load addon script from path: '%s'." msgstr "애드온 스크립트를 불러올 수 없습니다: '%s'." #: editor/editor_node.cpp -#, fuzzy msgid "" "Unable to load addon script from path: '%s' There seems to be an error in " "the code, please check the syntax." msgstr "" -"해당 경로에서 애드온 스크립트를 불러올 수 없습니다: '%s' 스크립트가 tool 모드" -"가 아닙니다." +"해당 경로에서 애드온 스크립트를 불러올 수 없습니다: '%s' 코드에 오류가 있는 " +"것 같습니다, 구문을 확인해 보십시오." #: editor/editor_node.cpp msgid "" @@ -2028,7 +2009,6 @@ 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 "파일 시스템에서 보기" @@ -2113,7 +2093,6 @@ msgid "Save Scene" msgstr "씬 저장" #: editor/editor_node.cpp -#, fuzzy msgid "Save All Scenes" msgstr "모든 씬 저장" @@ -2143,7 +2122,7 @@ msgid "Undo" msgstr "되돌리기" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "다시 실행" @@ -2601,6 +2580,8 @@ msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." msgstr "" +"파일로 저장된 리소스에서 ViewportTexture를 만들 수 없습니다.\n" +"리소스가 씬에 속해 있어야 합니다." #: editor/editor_properties.cpp msgid "" @@ -2609,6 +2590,10 @@ msgid "" "Please switch on the 'local to scene' property on it (and all resources " "containing it up to a node)." msgstr "" +"리소스가 씬에 로컬로 설정되지 않았기 때문에 ViewportTexture를 만들 수 없습니" +"다.\n" +"리소스의 'local to scene' 속성을 켜십시오 (그리고 모든 리소스를 노드가 포함하" +"고 있어야 합니다)." #: editor/editor_properties.cpp editor/property_editor.cpp msgid "Pick a Viewport" @@ -2923,9 +2908,8 @@ msgid "Can't open file_type_cache.cch for writing, not saving file type cache!" msgstr "file_type_cache.cch를 열수 없어서, 파일 타입 캐쉬를 저장하지 않습니다!" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Favorites" -msgstr "즐겨찾기:" +msgstr "즐겨찾기" #: editor/filesystem_dock.cpp msgid "Cannot navigate to '%s' as it has not been found in the file system!" @@ -3009,14 +2993,12 @@ msgid "Instance" msgstr "인스턴스" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Add to favorites" -msgstr "즐겨찾기:" +msgstr "즐겨찾기로 추가" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Remove from favorites" -msgstr "그룹에서 제거" +msgstr "즐겨찾기에서 제거" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." @@ -3047,12 +3029,10 @@ msgid "New Resource..." msgstr "새 리소스..." #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Expand All" msgstr "모두 확장" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Collapse All" msgstr "모두 접기" @@ -3076,9 +3056,8 @@ msgid "Re-Scan Filesystem" msgstr "파일 시스템 재검사" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Toggle split mode" -msgstr "모드 토글" +msgstr "분할 모드 토글" #: editor/filesystem_dock.cpp msgid "Search files" @@ -3113,24 +3092,20 @@ msgid "Create Script" msgstr "스크립트 만들기" #: editor/find_in_files.cpp -#, fuzzy msgid "Find in Files" msgstr "파일에서 찾기" #: editor/find_in_files.cpp -#, fuzzy msgid "Find:" -msgstr "찾기: " +msgstr "찾기:" #: editor/find_in_files.cpp -#, fuzzy msgid "Folder:" -msgstr "폴더: " +msgstr "폴더:" #: editor/find_in_files.cpp -#, fuzzy msgid "Filters:" -msgstr "필터" +msgstr "필터:" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp @@ -3308,12 +3283,10 @@ msgid "Failed to load resource." msgstr "리소스 불러오기 실패." #: editor/inspector_dock.cpp -#, fuzzy msgid "Expand All Properties" msgstr "모든 속성 펼치기" #: editor/inspector_dock.cpp -#, fuzzy msgid "Collapse All Properties" msgstr "모든 속성 접기" @@ -4261,9 +4234,8 @@ msgid "Resize CanvasItem" msgstr "CanvasItem 크기 조절" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale CanvasItem" -msgstr "CanvasItem 회전" +msgstr "CanvasItem 규모" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Move CanvasItem" @@ -4326,9 +4298,8 @@ msgid "Rotate Mode" msgstr "회전 모드" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale Mode" -msgstr "크기 조절 모드 (R)" +msgstr "규모 모드" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -4427,9 +4398,8 @@ msgid "Restores the object's children's ability to be selected." msgstr "오브젝트의 자식노드가 선택될 수 있도록 복원합니다." #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Skeleton Options" -msgstr "스켈레톤" +msgstr "스켈레톤 설정" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Bones" @@ -4483,7 +4453,7 @@ msgstr "뷰포트 보기" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" -msgstr "" +msgstr "그룹과 잠금 아이콘 보이기" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" @@ -4924,9 +4894,8 @@ msgid "Create Navigation Polygon" msgstr "네비게이션 폴리곤 만들기" #: editor/plugins/particles_2d_editor_plugin.cpp -#, fuzzy msgid "Generating Visibility Rect" -msgstr "가시성 직사각형을 만들기" +msgstr "가시성 직사각형 만들기" #: editor/plugins/particles_2d_editor_plugin.cpp msgid "Can only set point into a ParticlesMaterial process material" @@ -5404,9 +5373,8 @@ msgid "Error writing TextFile:" msgstr "텍스트 파일 쓰기 에러:" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error: could not load file." -msgstr "에러로 파일을 불러올 수 없음." +msgstr "에러: 파일을 불러올 수 없음." #: editor/plugins/script_editor_plugin.cpp msgid "Error could not load file." @@ -5505,7 +5473,6 @@ msgid "Copy Script Path" msgstr "스크립트 경로 복사" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "History Previous" msgstr "이전 히스토리" @@ -5577,9 +5544,8 @@ msgid "Keep Debugger Open" msgstr "디버거 항상 열어놓기" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Debug with External Editor" -msgstr "외부 에디터와 디버그" +msgstr "외부 에디터로 디버깅" #: editor/plugins/script_editor_plugin.cpp msgid "Open Godot online documentation" @@ -5622,7 +5588,6 @@ msgid "Debugger" msgstr "디버거" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Search Results" msgstr "검색 결과" @@ -5635,9 +5600,8 @@ msgid "(ignore)" 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." @@ -5726,12 +5690,10 @@ msgid "Trim Trailing Whitespace" msgstr "후행 공백 문자 제거" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Spaces" -msgstr "들여쓰기를 스페이스로 변환" +msgstr "들여쓰기를 공백으로 변환" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Tabs" msgstr "들여쓰기를 탭으로 변환" @@ -5749,12 +5711,10 @@ msgid "Remove All Breakpoints" msgstr "중단점 모두 삭제" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Next Breakpoint" msgstr "다음 중단점으로 이동" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Previous Breakpoint" msgstr "이전 중단점으로 이동" @@ -5763,17 +5723,14 @@ msgid "Find Previous" msgstr "이전 찾기" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Find in Files..." msgstr "파일에서 찾기..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function..." msgstr "함수로 이동..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Line..." msgstr "라인으로 이동..." @@ -5872,7 +5829,7 @@ msgstr "피치" #: editor/plugins/spatial_editor_plugin.cpp msgid "Yaw" -msgstr "" +msgstr "요" #: editor/plugins/spatial_editor_plugin.cpp msgid "Objects Drawn" @@ -6039,9 +5996,8 @@ msgid "Freelook Speed Modifier" msgstr "자유시점 속도 변화" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "View Rotation Locked" -msgstr "뷰 회전 잠금" +msgstr "뷰 회전 잠김" #: editor/plugins/spatial_editor_plugin.cpp msgid "XForm Dialog" @@ -6543,9 +6499,8 @@ msgid "Fix Invalid Tiles" msgstr "잘못된 타일 수정" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Cut Selection" -msgstr "선택 항목 화면 중앙에 표시" +msgstr "선택 잘라내기" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Paint TileMap" @@ -6592,32 +6547,28 @@ msgid "Pick Tile" msgstr "타일 선택" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Copy Selection" -msgstr "선택 이동" +msgstr "선택 복사" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate left" -msgstr "회전 모드" +msgstr "왼쪽으로 회전" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate right" -msgstr "오른쪽으로 이동" +msgstr "오른쪽으로 회전" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip horizontally" -msgstr "" +msgstr "가로로 뒤집기" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip vertically" -msgstr "" +msgstr "세로로 뒤집기" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Clear transform" -msgstr "변형" +msgstr "변형 지우기" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Add Texture(s) to TileSet" @@ -6648,9 +6599,8 @@ msgid "Display tile's names (hold Alt Key)" msgstr "타일 이름 보이기 (Alt 키를 누르세요)" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Remove selected texture and ALL TILES which use it?" -msgstr "선택한 텍스쳐와 모든 타일을 삭제하시겠습니까?" +msgstr "선택한 텍스쳐와 그것을 사용하는 모든 타일을 삭제하겠습니까?" #: editor/plugins/tile_set_editor_plugin.cpp msgid "You haven't selected a texture to remove." @@ -6665,9 +6615,8 @@ msgid "Merge from scene?" msgstr "씬으로부터 병합하시겠습니까?" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "%s file(s) were not added because was already on the list." -msgstr " %s 파일이 이미 목록에 존재하여 추가되지 않습니다." +msgstr "%s 파일이 이미 목록에 존재하여 추가되지 않습니다." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -6755,12 +6704,11 @@ msgstr "이 플랫폼에 대한 내보내기 템플릿이 없거나 손상됨:" #: editor/project_export.cpp msgid "Release" -msgstr "" +msgstr "배포" #: editor/project_export.cpp -#, fuzzy msgid "Exporting All" -msgstr "%s 내보내기" +msgstr "모두 내보내기" #: editor/project_export.cpp msgid "Presets" @@ -6771,9 +6719,8 @@ msgid "Add..." msgstr "추가..." #: editor/project_export.cpp -#, fuzzy msgid "Export Path:" -msgstr "프리셋 내보내기:" +msgstr "경로 내보내기:" #: editor/project_export.cpp msgid "Resources" @@ -6834,14 +6781,12 @@ msgid "Export PCK/Zip" msgstr "PCK/Zip 내보내기" #: editor/project_export.cpp -#, fuzzy msgid "Export mode?" -msgstr "내보내기 모드:" +msgstr "내보내기 모드?" #: editor/project_export.cpp -#, fuzzy msgid "Export All" -msgstr "내보내기" +msgstr "모두 내보내기" #: editor/project_export.cpp msgid "Export templates for this platform are missing:" @@ -7526,16 +7471,14 @@ msgid "Step" msgstr "단계" #: editor/rename_dialog.cpp -#, fuzzy msgid "Amount by which counter is incremented for each node" -msgstr "카운터가 각 노드에서 증가하는 양" +msgstr "각 노드에 대해 카운터가 증가하는 양" #: editor/rename_dialog.cpp msgid "Padding" msgstr "패딩(Padding)" #: editor/rename_dialog.cpp -#, fuzzy msgid "" "Minimum number of digits for the counter.\n" "Missing digits are padded with leading zeros." @@ -7682,6 +7625,8 @@ msgid "" "Disabling \"editable_instance\" will cause all properties of the node to be " "reverted to their default." msgstr "" +"\"editable_instance\"를 비활설화 하면 노드의 모든 속성이 기본 값으로 되돌아갑" +"니다." #: editor/scene_tree_dock.cpp msgid "Editable Children" @@ -7755,9 +7700,8 @@ msgid "Clear Inheritance" msgstr "상속 지우기" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Open documentation" -msgstr "Godot 온라인 문서 열기" +msgstr "문서 열기" #: editor/scene_tree_dock.cpp msgid "Delete Node(s)" @@ -7772,9 +7716,8 @@ msgid "Change Type" msgstr "타입 변경" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Extend Script" -msgstr "스크립트 열기" +msgstr "스크립트 확장" #: editor/scene_tree_dock.cpp msgid "Make Scene Root" @@ -7936,9 +7879,8 @@ msgid "Path is empty" msgstr "경로가 비어 있음" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Filename is empty" -msgstr "스프라이트가 비었습니다!" +msgstr "파일 이름이 비었습니다" #: editor/script_create_dialog.cpp msgid "Path is not local" @@ -8029,9 +7971,8 @@ msgid "Bytes:" msgstr "바이트:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Stack Trace" -msgstr "스택 프레임" +msgstr "스택 추적" #: editor/script_editor_debugger.cpp msgid "Pick one or more items from the list to display the graph." @@ -8481,7 +8422,7 @@ msgstr "내부 예외 스택 추적의 끝" #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Bake NavMesh" -msgstr "" +msgstr "NavMesh 베이크" #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Clear the navigation mesh." @@ -8867,12 +8808,11 @@ msgstr "비주얼 스크립트 검색" #: modules/visual_script/visual_script_property_selector.cpp msgid "Get %s" -msgstr "" +msgstr "Get %s" #: modules/visual_script/visual_script_property_selector.cpp -#, fuzzy msgid "Set %s" -msgstr "Set " +msgstr "Set %s" #: platform/javascript/export/export.cpp msgid "Run in Browser" @@ -8970,6 +8910,8 @@ msgid "" "CPUParticles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"CPUParticles2D 애니메이션을 사용하려면 \"Particles Animation\"이 활성화된 " +"CanvasItemMaterial이 필요합니다." #: scene/2d/light_2d.cpp msgid "" @@ -9022,6 +8964,8 @@ msgid "" "Particles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"Particles2D 애니메이션을 사용하려면 \"Particles Animation\"이 활성화된 " +"CanvasItemMaterial이 필요합니다." #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." @@ -9161,14 +9105,16 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." -msgstr "메시들을 패스를 그리도록 할당하지 않았으므로 보이지 않습니다." +msgid "Nothing is visible because no mesh has been assigned." +msgstr "지정된 메시가 없으므로 아무것도 보이지 않습니다." #: scene/3d/cpu_particles.cpp msgid "" "CPUParticles animation requires the usage of a SpatialMaterial with " "\"Billboard Particles\" enabled." msgstr "" +"CPUParticles 애니메이션을 사용하려면 \"Billboard Particles\"이 활성화된 " +"SpatialMaterial이 필요합니다." #: scene/3d/gi_probe.cpp msgid "Plotting Meshes" @@ -9198,20 +9144,20 @@ msgid "" "Particles animation requires the usage of a SpatialMaterial with \"Billboard " "Particles\" enabled." msgstr "" +"Particles 애니메이션을 사용하려면 \"Billboard Particles\"이 활성화된 " +"SpatialMaterial이 필요합니다." #: scene/3d/path.cpp -#, fuzzy msgid "PathFollow only works when set as a child of a Path node." -msgstr "PathFollow2D는 Path2D 노드의 자식노드로 있을 때만 동작합니다." +msgstr "PathFollow는 Path 노드의 자식으로 있을 때만 동작합니다." #: scene/3d/path.cpp -#, fuzzy msgid "OrientedPathFollow only works when set as a child of a Path node." -msgstr "PathFollow2D는 Path2D 노드의 자식노드로 있을 때만 동작합니다." +msgstr "OrientedPathFollow는 Path 노드의 자식으로 있을 때만 동작합니다." #: scene/3d/path.cpp msgid "OrientedPathFollow requires up vectors enabled in its parent Path." -msgstr "" +msgstr "OrientedPathFollow는 부모 Path에서 벡터를 활성화해야 합니다." #: scene/3d/physics_body.cpp msgid "" @@ -9249,7 +9195,6 @@ msgid "This body will be ignored until you set a mesh" msgstr "이 바디는 메시를 설정할 때 까지 무시됩니다" #: scene/3d/soft_body.cpp -#, fuzzy msgid "" "Size changes to SoftBody will be overridden by the physics engine when " "running.\n" @@ -9340,7 +9285,7 @@ msgstr "" #: scene/gui/range.cpp msgid "If exp_edit is true min_value must be > 0." -msgstr "" +msgstr "exp_edit이 참이라면 min_value는 반드시 > 0 이어야 합니다." #: scene/gui/scroll_container.cpp msgid "" @@ -9416,6 +9361,9 @@ msgstr "균일하게 배치함." msgid "Varyings can only be assigned in vertex function." msgstr "Varyings는 오직 버텍스 함수에서만 지정할 수 있습니다." +#~ msgid "Zoom:" +#~ msgstr "확대:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "\" 에서 모든 연결을 제거하시겠습니까" @@ -10115,9 +10063,6 @@ msgstr "Varyings는 오직 버텍스 함수에서만 지정할 수 있습니다. #~ msgid "Source Font:" #~ msgstr "소스 폰트:" -#~ msgid "Source Font Size:" -#~ msgstr "소스 폰트 크기:" - #~ msgid "Dest Resource:" #~ msgstr "리소스 경로:" diff --git a/editor/translations/lt.po b/editor/translations/lt.po index 3926aea3e4..954bd17af1 100644 --- a/editor/translations/lt.po +++ b/editor/translations/lt.po @@ -547,9 +547,8 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -#, fuzzy -msgid "Zoom:" -msgstr "Priartinti" +msgid "Font Size:" +msgstr "" #: editor/code_editor.cpp msgid "Line:" @@ -1680,6 +1679,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2077,7 +2082,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8955,7 +8960,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9186,6 +9191,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Priartinti" + #~ msgid "Disabled" #~ msgstr "Išjungta" diff --git a/editor/translations/lv.po b/editor/translations/lv.po index ff10ecd88c..07a4ac0444 100644 --- a/editor/translations/lv.po +++ b/editor/translations/lv.po @@ -542,8 +542,8 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Pietuvināt:" +msgid "Font Size:" +msgstr "" #: editor/code_editor.cpp msgid "Line:" @@ -1681,6 +1681,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2079,7 +2085,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8924,7 +8930,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9151,6 +9157,9 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#~ msgid "Zoom:" +#~ msgstr "Pietuvināt:" + #~ msgid "Disabled" #~ msgstr "Atspējots" diff --git a/editor/translations/ml.po b/editor/translations/ml.po index 0f15ac029c..4981f02aae 100644 --- a/editor/translations/ml.po +++ b/editor/translations/ml.po @@ -532,7 +532,7 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" +msgid "Font Size:" msgstr "" #: editor/code_editor.cpp @@ -1647,6 +1647,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2043,7 +2049,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8843,7 +8849,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp diff --git a/editor/translations/ms.po b/editor/translations/ms.po index 07b812a5dc..d9a769878b 100644 --- a/editor/translations/ms.po +++ b/editor/translations/ms.po @@ -541,7 +541,7 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" +msgid "Font Size:" msgstr "" #: editor/code_editor.cpp @@ -1656,6 +1656,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2052,7 +2058,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8861,7 +8867,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp diff --git a/editor/translations/nb.po b/editor/translations/nb.po index 6f08cbbc12..a32f59eef6 100644 --- a/editor/translations/nb.po +++ b/editor/translations/nb.po @@ -567,8 +567,8 @@ msgstr "" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "Zoom Inn" +msgid "Font Size:" +msgstr "Frontvisning" #: editor/code_editor.cpp msgid "Line:" @@ -1736,6 +1736,12 @@ msgstr "Denne operasjonen kan ikke gjennomføres uten en trerot." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2175,7 +2181,7 @@ msgid "Undo" msgstr "Angre" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Gjenta" @@ -9344,7 +9350,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9574,6 +9580,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Zoom Inn" + #~ msgid "Class List:" #~ msgstr "Klasseliste:" diff --git a/editor/translations/nl.po b/editor/translations/nl.po index ba5a4db2dc..e4e85160a0 100644 --- a/editor/translations/nl.po +++ b/editor/translations/nl.po @@ -24,18 +24,19 @@ # Wout Standaert <wout@blobkat.com>, 2017. # Zatherz <zatherz@linux.pl>, 2017. # Tahar Meijs <tntmeijs@gmail.com>, 2018. +# Laurent Windels <laurentwindels@yahoo.com>, 2018. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2018-09-24 22:24+0000\n" -"Last-Translator: frank <frankvprive@gmail.com>\n" +"PO-Revision-Date: 2018-12-04 22:14+0000\n" +"Last-Translator: Laurent Windels <laurentwindels@yahoo.com>\n" "Language-Team: Dutch <https://hosted.weblate.org/projects/godot-engine/godot/" "nl/>\n" "Language: nl\n" "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 3.2-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -309,10 +310,14 @@ msgid "" "-AudioStreamPlayer2D\n" "-AudioStreamPlayer3D" msgstr "" +"Audio tracks kunnen enkel verwijzen naar nodes van het type:\n" +"-AudioStreamPlayer\n" +"-AudioStreamPlayer2D\n" +"-AudioStreamPlayer3D" #: editor/animation_track_editor.cpp msgid "Animation tracks can only point to AnimationPlayer nodes." -msgstr "" +msgstr "Animatie tracks kunnen enkel verwijzen naar AnimatiePlayer nodes." #: editor/animation_track_editor.cpp msgid "An animation player can't animate itself, only other players." @@ -320,33 +325,31 @@ msgstr "Een animatiespeler kan zichzelf niet animeren, alleen andere spelers." #: editor/animation_track_editor.cpp msgid "Not possible to add a new track without a root" -msgstr "" +msgstr "Niet mogelijk om een nieuwe track toe te voegen zonder een root" #: editor/animation_track_editor.cpp msgid "Track path is invalid, so can't add a key." -msgstr "" +msgstr "Track path is niet geldig, dus kan geen key toevoegen." #: editor/animation_track_editor.cpp msgid "Track is not of type Spatial, can't insert key" -msgstr "" +msgstr "Track is niet van het type Spatial, kan geen key invoegen" #: editor/animation_track_editor.cpp msgid "Track path is invalid, so can't add a method key." -msgstr "" +msgstr "Track path is niet geldig, dus kan geen methode key toevoegen." #: editor/animation_track_editor.cpp -#, fuzzy msgid "Method not found in object: " -msgstr "VariableGet niet gevonden in script: " +msgstr "Methode niet gevonden in object " #: editor/animation_track_editor.cpp msgid "Anim Move Keys" msgstr "Anim Verplaats Keys" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Clipboard is empty" -msgstr "Bronnen klembord is leeg!" +msgstr "Klembord is leeg" #: editor/animation_track_editor.cpp msgid "Anim Scale Keys" @@ -385,19 +388,16 @@ msgid "Edit" msgstr "Bewerken" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Animation properties." -msgstr "AnimatieBoom" +msgstr "Animatie kenmerken." #: editor/animation_track_editor.cpp -#, fuzzy msgid "Copy Tracks" -msgstr "Kopieer Parameters" +msgstr "Kopieer Tracks" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Paste Tracks" -msgstr "Plak Parameters" +msgstr "Plak Tracks" #: editor/animation_track_editor.cpp msgid "Scale Selection" @@ -416,9 +416,8 @@ msgid "Duplicate Transposed" msgstr "Dupliceer Getransponeerde" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Delete Selection" -msgstr "Geselecteerde Verwijderen" +msgstr "Verwijder Selectie" #: editor/animation_track_editor.cpp #, fuzzy @@ -440,11 +439,11 @@ msgstr "Animatie Opschonen" #: editor/animation_track_editor.cpp msgid "Pick the node that will be animated:" -msgstr "" +msgstr "Kies de node die geanimeerd zal worden:" #: editor/animation_track_editor.cpp msgid "Use Bezier Curves" -msgstr "" +msgstr "Gebruik Bezier Curves" #: editor/animation_track_editor.cpp msgid "Anim. Optimizer" @@ -568,8 +567,8 @@ msgstr "" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "Inzoomen" +msgid "Font Size:" +msgstr "Vooraanzicht" #: editor/code_editor.cpp msgid "Line:" @@ -1737,6 +1736,12 @@ msgstr "Deze operatie kan niet gedaan worden zonder boomwortel." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2183,7 +2188,7 @@ msgid "Undo" msgstr "Ongedaan Maken" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Opnieuw" @@ -7105,9 +7110,8 @@ msgid "Import Existing Project" msgstr "Importeer bestaand project" #: editor/project_manager.cpp -#, fuzzy msgid "Import & Edit" -msgstr "Importeren" +msgstr "Importeer & Bewerk" #: editor/project_manager.cpp msgid "Create New Project" @@ -7123,9 +7127,8 @@ msgid "Install Project:" msgstr "Installeer project:" #: editor/project_manager.cpp -#, fuzzy msgid "Install & Edit" -msgstr "Installeer" +msgstr "Installeer & Bewerk" #: editor/project_manager.cpp msgid "Project Name:" @@ -7141,9 +7144,8 @@ msgid "Project Path:" msgstr "Projectpad:" #: editor/project_manager.cpp -#, fuzzy msgid "Project Installation Path:" -msgstr "Projectpad:" +msgstr "Project Installatie Path:" #: editor/project_manager.cpp msgid "Browse" @@ -7154,9 +7156,8 @@ msgid "Unnamed Project" msgstr "Naamloos Project" #: editor/project_manager.cpp -#, fuzzy msgid "Can't open project" -msgstr "Verbind..." +msgstr "Kan project niet openen" #: editor/project_manager.cpp msgid "Are you sure to open more than one project?" @@ -8074,7 +8075,7 @@ msgstr "" #: editor/scene_tree_editor.cpp msgid "Toggle Visibility" -msgstr "" +msgstr "Toggle Zichtbaarheid" #: editor/scene_tree_editor.cpp msgid "" @@ -8088,7 +8089,7 @@ msgstr "" #: editor/scene_tree_editor.cpp msgid "Rename Node" -msgstr "" +msgstr "Hernoem Node" #: editor/scene_tree_editor.cpp msgid "Scene Tree (Nodes):" @@ -8100,73 +8101,67 @@ msgstr "" #: editor/scene_tree_editor.cpp msgid "Select a Node" -msgstr "" +msgstr "Selecteer een Node" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Error loading template '%s'" -msgstr "Error bij het laden van lettertype." +msgstr "Error bij het laden van sjabloon '%s'" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Error - Could not create script in filesystem." -msgstr "Map kon niet gemaakt worden." +msgstr "Fout - Kon geen script aanmaken in bestandssysteem." #: editor/script_create_dialog.cpp msgid "Error loading script from %s" -msgstr "" +msgstr "Fout bij het laden script van %s" #: editor/script_create_dialog.cpp msgid "N/A" -msgstr "" +msgstr "Niet van toepassing" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Open Script/Choose Location" -msgstr "Open Script Bewerker" +msgstr "Open Script/Kies Locatie" #: editor/script_create_dialog.cpp msgid "Path is empty" -msgstr "" +msgstr "Path is leeg" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Filename is empty" -msgstr "Mesh is leeg!" +msgstr "Bestandsnaam is leeg" #: editor/script_create_dialog.cpp msgid "Path is not local" -msgstr "" +msgstr "Path is niet lokaal" #: editor/script_create_dialog.cpp msgid "Invalid base path" -msgstr "" +msgstr "Ongeldig basis path" #: editor/script_create_dialog.cpp msgid "Directory of the same name exists" -msgstr "" +msgstr "Directory met dezelfde naam bestaat al" #: editor/script_create_dialog.cpp -#, fuzzy msgid "File exists, will be reused" -msgstr "Bestand Bestaat, Overschrijven?" +msgstr "Bestand Bestaat, zal herbruikt worden" #: editor/script_create_dialog.cpp msgid "Invalid extension" -msgstr "" +msgstr "Ongeldige extensie" #: editor/script_create_dialog.cpp msgid "Wrong extension chosen" -msgstr "" +msgstr "Verkeerde extensie gekozen" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Invalid Path" -msgstr "Ongeldig Pad." +msgstr "Ongeldig Path" #: editor/script_create_dialog.cpp msgid "Invalid class name" -msgstr "" +msgstr "Ongeldige klassenaam" #: editor/script_create_dialog.cpp #, fuzzy @@ -8175,47 +8170,43 @@ msgstr "Ongeldige index eigenschap naam." #: editor/script_create_dialog.cpp msgid "Script valid" -msgstr "" +msgstr "Script geldig" #: editor/script_create_dialog.cpp msgid "Allowed: a-z, A-Z, 0-9 and _" -msgstr "" +msgstr "Toegestaan: a-z, A-Z, 0-9 en _" #: editor/script_create_dialog.cpp msgid "Built-in script (into scene file)" -msgstr "" +msgstr "Ingebouwd script (in scene bestand)" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Create new script file" -msgstr "Subscriptie Maken" +msgstr "Maak nieuw script bestand" #: editor/script_create_dialog.cpp msgid "Load existing script file" -msgstr "" +msgstr "Laad bestaand script" #: editor/script_create_dialog.cpp msgid "Language" -msgstr "" +msgstr "Taal" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Inherits" -msgstr "Erft:" +msgstr "Erft" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Class Name" -msgstr "Klasse:" +msgstr "Klasse Naam" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Template" -msgstr "Verwijder Selectie" +msgstr "Sjabloon" #: editor/script_create_dialog.cpp msgid "Built-in Script" -msgstr "" +msgstr "Ingebouwd Script" #: editor/script_create_dialog.cpp msgid "Attach Node Script" @@ -8240,24 +8231,23 @@ msgstr "" #: editor/script_editor_debugger.cpp modules/mono/editor/mono_bottom_panel.cpp msgid "Errors" -msgstr "" +msgstr "Fouten" #: editor/script_editor_debugger.cpp msgid "Child Process Connected" msgstr "" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Copy Error" -msgstr "Laadfouten" +msgstr "Kopieer Fout" #: editor/script_editor_debugger.cpp msgid "Inspect Previous Instance" -msgstr "" +msgstr "Inspecteer vorige instantie" #: editor/script_editor_debugger.cpp msgid "Inspect Next Instance" -msgstr "" +msgstr "Inspecteer Volgende Instantie" #: editor/script_editor_debugger.cpp msgid "Stack Frames" @@ -8285,7 +8275,7 @@ msgstr "" #: editor/script_editor_debugger.cpp msgid "Total:" -msgstr "" +msgstr "Totaal:" #: editor/script_editor_debugger.cpp msgid "Video Mem" @@ -8297,7 +8287,7 @@ msgstr "" #: editor/script_editor_debugger.cpp msgid "Type" -msgstr "" +msgstr "Type" #: editor/script_editor_debugger.cpp msgid "Format" @@ -8305,7 +8295,7 @@ msgstr "" #: editor/script_editor_debugger.cpp msgid "Usage" -msgstr "" +msgstr "Gebruik" #: editor/script_editor_debugger.cpp msgid "Misc" @@ -8329,7 +8319,7 @@ msgstr "" #: editor/settings_config_dialog.cpp msgid "Shortcuts" -msgstr "" +msgstr "Snelkoppelingen" #: editor/settings_config_dialog.cpp msgid "Binding" @@ -8345,7 +8335,7 @@ msgstr "" #: editor/spatial_editor_gizmos.cpp msgid "Change Camera FOV" -msgstr "" +msgstr "Wijzig Camera FOV" #: editor/spatial_editor_gizmos.cpp msgid "Change Camera Size" @@ -8365,7 +8355,7 @@ msgstr "" #: editor/spatial_editor_gizmos.cpp modules/csg/csg_gizmos.cpp msgid "Change Sphere Shape Radius" -msgstr "" +msgstr "Wijzig Sphere Vorm Straal" #: editor/spatial_editor_gizmos.cpp modules/csg/csg_gizmos.cpp msgid "Change Box Shape Extents" @@ -8373,11 +8363,11 @@ msgstr "" #: editor/spatial_editor_gizmos.cpp msgid "Change Capsule Shape Radius" -msgstr "" +msgstr "Wijzig Capsule Vorm Straal" #: editor/spatial_editor_gizmos.cpp msgid "Change Capsule Shape Height" -msgstr "" +msgstr "Wijzig Capsule Vorm Hoogte" #: editor/spatial_editor_gizmos.cpp msgid "Change Cylinder Shape Radius" @@ -8389,43 +8379,39 @@ msgstr "" #: editor/spatial_editor_gizmos.cpp msgid "Change Ray Shape Length" -msgstr "" +msgstr "Wijzig Ray Vorm Lengte" #: modules/csg/csg_gizmos.cpp -#, fuzzy msgid "Change Cylinder Radius" -msgstr "Wijzig Meng Tijd" +msgstr "Wijzig Cylinder Straal" #: modules/csg/csg_gizmos.cpp -#, fuzzy msgid "Change Cylinder Height" -msgstr "Wijzig Meng Tijd" +msgstr "Wijzig Cylinder Hoogte" #: modules/csg/csg_gizmos.cpp -#, fuzzy msgid "Change Torus Inner Radius" -msgstr "Wijzig Ankers en Marges" +msgstr "Wijzig Torus Binnenste Straal" #: modules/csg/csg_gizmos.cpp msgid "Change Torus Outer Radius" -msgstr "" +msgstr "Wijzig Torus Buitenste Straal" #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "Select the dynamic library for this entry" -msgstr "" +msgstr "Selecteer de dynamische bibliotheek voor deze ingave" #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "Select dependencies of the library for this entry" -msgstr "" +msgstr "Selecteer afhankelijkheden van de bibliotheek voor deze ingave" #: modules/gdnative/gdnative_library_editor_plugin.cpp -#, fuzzy msgid "Remove current entry" -msgstr "Verwijder Signaal" +msgstr "Verwijder huidige ingave" #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "Double click to create a new entry" -msgstr "" +msgstr "Dubbelklikken om een nieuwe ingave te creëren" #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "Platform:" @@ -8445,23 +8431,23 @@ msgstr "" #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "GDNativeLibrary" -msgstr "" +msgstr "GDInheemsBibliotheek" #: modules/gdnative/gdnative_library_singleton_editor.cpp msgid "Library" -msgstr "" +msgstr "Bibliotheek" #: modules/gdnative/gdnative_library_singleton_editor.cpp msgid "Status" -msgstr "" +msgstr "Status" #: modules/gdnative/gdnative_library_singleton_editor.cpp msgid "Libraries: " -msgstr "" +msgstr "Bibliotheken: " #: modules/gdnative/register_types.cpp msgid "GDNative" -msgstr "" +msgstr "GDInheems" #: modules/gdscript/gdscript_functions.cpp msgid "step argument is zero!" @@ -8565,27 +8551,27 @@ msgstr "" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Edit X Axis" -msgstr "" +msgstr "Bewerk X As" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Edit Y Axis" -msgstr "" +msgstr "Bewerk Y As" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Edit Z Axis" -msgstr "" +msgstr "Bewerk Z As" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Cursor Rotate X" -msgstr "" +msgstr "Cursor Roteer X" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Cursor Rotate Y" -msgstr "" +msgstr "Cursor Roteer Y" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Cursor Rotate Z" -msgstr "" +msgstr "Cursor Roteer Z" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Cursor Back Rotate X" @@ -9403,7 +9389,7 @@ msgstr "" "alsjeblieft een vorm resource voor deze!" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9656,6 +9642,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Inzoomen" + #~ msgid "Class List:" #~ msgstr "Klasse Lijst:" diff --git a/editor/translations/pl.po b/editor/translations/pl.po index a068bc8123..47f8918039 100644 --- a/editor/translations/pl.po +++ b/editor/translations/pl.po @@ -30,7 +30,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2018-11-10 20:07+0000\n" +"PO-Revision-Date: 2018-12-04 22:15+0000\n" "Last-Translator: Tomek <kobewi4e@gmail.com>\n" "Language-Team: Polish <https://hosted.weblate.org/projects/godot-engine/" "godot/pl/>\n" @@ -39,7 +39,7 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\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 3.3-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -347,7 +347,6 @@ msgid "Method not found in object: " msgstr "Metoda nie znaleziona w obiekcie: " #: editor/animation_track_editor.cpp -#, fuzzy msgid "Anim Move Keys" msgstr "Przemieść klucze animacji" @@ -423,12 +422,10 @@ msgid "Delete Selection" msgstr "Usuń zaznaczone" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Next Step" msgstr "Przejdź do następnego kroku" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Previous Step" msgstr "Przejdź do poprzedniego kroku" @@ -569,8 +566,9 @@ msgid "Warnings:" msgstr "Ostrzeżenia:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Powiększenie:" +#, fuzzy +msgid "Font Size:" +msgstr "Wielkość oryginalna fontu:" #: editor/code_editor.cpp msgid "Line:" @@ -683,9 +681,8 @@ msgid "Edit Connection: " msgstr "Edytuj połączenie: " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "Na pewno chcesz usunąć wszystkie połączenia z tego sygnału?" +msgstr "Na pewno chcesz usunąć wszystkie połączenia z sygnału \"%s\"?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -839,9 +836,8 @@ msgid "Error loading:" msgstr "Błąd ładowania:" #: editor/dependency_editor.cpp -#, fuzzy msgid "Load failed due to missing dependencies:" -msgstr "Scena nie została wczytana z powodu brakujących zależności:" +msgstr "Wczytywanie nieudane z powodu brakujących zależności:" #: editor/dependency_editor.cpp editor/editor_node.cpp msgid "Open Anyway" @@ -1323,24 +1319,21 @@ msgid "File Exists, Overwrite?" msgstr "Plik istnieje, nadpisać?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Select This Folder" -msgstr "Wybierz ten Folder" +msgstr "Wybierz ten folder" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "Copy Path" msgstr "Skopiuj Ścieżkę" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp -#, fuzzy msgid "Open in File Manager" -msgstr "Otwórz w menadżerze plików" +msgstr "Otwórz w menedżerze plików" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp #: editor/project_manager.cpp -#, fuzzy msgid "Show in File Manager" -msgstr "Pokaż w menadżerze plików" +msgstr "Pokaż w menedżerze plików" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "New Folder..." @@ -1483,19 +1476,16 @@ msgid "Methods" msgstr "Metody" #: editor/editor_help.cpp -#, fuzzy msgid "Methods:" -msgstr "Metody" +msgstr "Metody:" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties" -msgstr "Właściwości" +msgstr "Właściwości motywu" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties:" -msgstr "Właściwości:" +msgstr "Właściwości motywu:" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Signals:" @@ -1522,14 +1512,12 @@ msgid "Constants:" msgstr "Stałe:" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description" -msgstr "Opis" +msgstr "Opis klasy" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description:" -msgstr "Opis:" +msgstr "Opis klasy:" #: editor/editor_help.cpp msgid "Online Tutorials:" @@ -1546,14 +1534,12 @@ msgstr "" "jakiś[/url][/color]." #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions" -msgstr "Opis właściwości:" +msgstr "Opisy właściwości" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions:" -msgstr "Opis właściwości:" +msgstr "Opisy właściwości:" #: editor/editor_help.cpp msgid "" @@ -1564,14 +1550,12 @@ msgstr "" "$url]wysyłając ją[/url][/color]!" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions" -msgstr "Opis metody:" +msgstr "Opisy metod" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions:" -msgstr "Opis metody:" +msgstr "Opisy metod:" #: editor/editor_help.cpp msgid "" @@ -1587,49 +1571,40 @@ msgid "Search Help" msgstr "Wyszukaj w Pomocy" #: editor/editor_help_search.cpp -#, fuzzy msgid "Display All" -msgstr "Widok normalny" +msgstr "Pokaż wszystko" #: editor/editor_help_search.cpp -#, fuzzy msgid "Classes Only" -msgstr "Klasy" +msgstr "Tylko klasy" #: editor/editor_help_search.cpp -#, fuzzy msgid "Methods Only" -msgstr "Metody" +msgstr "Tylko metody" #: editor/editor_help_search.cpp -#, fuzzy msgid "Signals Only" -msgstr "Sygnały" +msgstr "Tylko sygnały" #: editor/editor_help_search.cpp -#, fuzzy msgid "Constants Only" -msgstr "Stałe" +msgstr "Tylko stałe" #: editor/editor_help_search.cpp -#, fuzzy msgid "Properties Only" -msgstr "Właściwości" +msgstr "Tylko właściwości" #: editor/editor_help_search.cpp -#, fuzzy msgid "Theme Properties Only" -msgstr "Właściwości" +msgstr "Tylko właściwości motywu" #: editor/editor_help_search.cpp -#, fuzzy msgid "Member Type" -msgstr "Członkowie" +msgstr "Typ członka" #: editor/editor_help_search.cpp -#, fuzzy msgid "Class" -msgstr "Klasa:" +msgstr "Klasa" #: editor/editor_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" @@ -1728,6 +1703,12 @@ msgstr "Ta operacja nie może zostać wykonana bez sceny." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1736,7 +1717,7 @@ msgstr "" #: editor/editor_node.cpp editor/scene_tree_dock.cpp msgid "Can't overwrite scene that is still open!" -msgstr "" +msgstr "Nie można nadpisać sceny, która wciąż jest otwarta!" #: editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" @@ -1992,13 +1973,12 @@ msgid "Unable to load addon script from path: '%s'." msgstr "Nie można załadować skryptu dodatku z ścieżki: '%s'." #: editor/editor_node.cpp -#, fuzzy msgid "" "Unable to load addon script from path: '%s' There seems to be an error in " "the code, please check the syntax." msgstr "" -"Nie można załadować skryptu dodatku z ścieżki: '%s' Skrypt nie jest w trybie " -"narzędzia (tool)." +"Nie można załadować skryptu dodatku ze ścieżki: '%s' W kodzie znajduje się " +"błąd, sprawdź składnię." #: editor/editor_node.cpp msgid "" @@ -2054,7 +2034,6 @@ msgstr "Domyślny" #: editor/editor_node.cpp editor/editor_properties.cpp #: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp -#, fuzzy msgid "Show in FileSystem" msgstr "Pokaż w systemie plików" @@ -2139,7 +2118,6 @@ msgid "Save Scene" msgstr "Zapisz scenę" #: editor/editor_node.cpp -#, fuzzy msgid "Save All Scenes" msgstr "Zapisz wszystkie sceny" @@ -2169,7 +2147,7 @@ msgid "Undo" msgstr "Cofnij" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Ponów" @@ -2623,6 +2601,8 @@ msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." msgstr "" +"Nie można utworzyć ViewportTexture na zasobach zapisanych jako plik.\n" +"Zasób musi należeć do sceny." #: editor/editor_properties.cpp msgid "" @@ -2631,6 +2611,10 @@ msgid "" "Please switch on the 'local to scene' property on it (and all resources " "containing it up to a node)." msgstr "" +"Nie można utworzyć ViewportTexture na tym zasobie, ponieważ nie jest " +"ustawiony jako lokalny dla sceny.\n" +"Włącz mu właściwość \"lokalny dla sceny\" (i wszystkim zasobom, które go " +"zawierają, aż do węzła)." #: editor/editor_properties.cpp editor/property_editor.cpp msgid "Pick a Viewport" @@ -2948,9 +2932,8 @@ msgstr "" "typu plików nie będzie zapisana!" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Favorites" -msgstr "Ulubione:" +msgstr "Ulubione" #: editor/filesystem_dock.cpp msgid "Cannot navigate to '%s' as it has not been found in the file system!" @@ -3035,14 +3018,12 @@ msgid "Instance" msgstr "Instancja" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Add to favorites" -msgstr "Ulubione:" +msgstr "Dodaj do ulubionych" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Remove from favorites" -msgstr "Usuń z Grupy" +msgstr "Usuń z ulubionych" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." @@ -3073,14 +3054,12 @@ msgid "New Resource..." msgstr "Nowy zasób..." #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Expand All" -msgstr "Rozwiń foldery" +msgstr "Rozwiń wszystko" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Collapse All" -msgstr "Zwiń foldery" +msgstr "Zwiń wszystko" #: editor/filesystem_dock.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp @@ -3102,9 +3081,8 @@ msgid "Re-Scan Filesystem" msgstr "Przeskanuj system plików ponownie" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Toggle split mode" -msgstr "Przełącz tryby" +msgstr "Przełącz tryb podziału" #: editor/filesystem_dock.cpp msgid "Search files" @@ -3112,7 +3090,7 @@ msgstr "Przeszukaj pliki" #: editor/filesystem_dock.cpp msgid "Instance the selected scene(s) as child of the selected node." -msgstr "Utwórz instancje wybranej sceny/scen jako dziecko wybranego węzła." +msgstr "Utwórz instancję wybranej sceny/scen jako dziecko wybranego węzła." #: editor/filesystem_dock.cpp msgid "" @@ -3139,24 +3117,20 @@ msgid "Create Script" msgstr "Utwórz Skrypt" #: editor/find_in_files.cpp -#, fuzzy msgid "Find in Files" msgstr "Znajdź w plikach" #: editor/find_in_files.cpp -#, fuzzy msgid "Find:" -msgstr "Znajdź: " +msgstr "Znajdź:" #: editor/find_in_files.cpp -#, fuzzy msgid "Folder:" -msgstr "Folder: " +msgstr "Folder:" #: editor/find_in_files.cpp -#, fuzzy msgid "Filters:" -msgstr "Filtry" +msgstr "Filtry:" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp @@ -3335,12 +3309,10 @@ msgid "Failed to load resource." msgstr "Nie udało się wczytać zasobu." #: editor/inspector_dock.cpp -#, fuzzy msgid "Expand All Properties" msgstr "Rozwiń wszystkie właściwości" #: editor/inspector_dock.cpp -#, fuzzy msgid "Collapse All Properties" msgstr "Zwiń wszystkie właściwości" @@ -3358,7 +3330,6 @@ msgid "Paste Params" msgstr "Wklej parametry" #: editor/inspector_dock.cpp -#, fuzzy msgid "Edit Resource Clipboard" msgstr "Edytuj schowek zasobów" @@ -3473,7 +3444,7 @@ msgstr "Usuń wielokąt i punkt" #: editor/plugins/abstract_polygon_2d_editor.cpp msgid "Create a new polygon from scratch" -msgstr "Utwórz nowy wielokąt" +msgstr "Utwórz nowy wielokąt od zera" #: editor/plugins/abstract_polygon_2d_editor.cpp msgid "" @@ -4038,7 +4009,6 @@ msgid "TimeScale Node" msgstr "Węzeł Skalowania Czasu" #: editor/plugins/animation_tree_player_editor_plugin.cpp -#, fuzzy msgid "TimeSeek Node" msgstr "Węzeł TimeSeek" @@ -4301,9 +4271,8 @@ msgid "Resize CanvasItem" msgstr "Zmień rozmiar CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale CanvasItem" -msgstr "Obróć CanvasItem" +msgstr "Skaluj CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Move CanvasItem" @@ -4368,9 +4337,8 @@ msgid "Rotate Mode" msgstr "Tryb Rotacji" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale Mode" -msgstr "Tryb skalowania (R)" +msgstr "Tryb skalowania" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -4469,9 +4437,8 @@ msgid "Restores the object's children's ability to be selected." msgstr "Odblokuj selekcję węzłów podrzędnych." #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Skeleton Options" -msgstr "Szkielet..." +msgstr "Opcje szkieletu" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Bones" @@ -4525,7 +4492,7 @@ msgstr "Pokaż widok" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" -msgstr "" +msgstr "Pokaż ikony grup i blokady" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" @@ -4713,7 +4680,7 @@ msgstr "Stwórz Occluder Polygon" #: editor/plugins/light_occluder_2d_editor_plugin.cpp msgid "Create a new polygon from scratch." -msgstr "Utwórz nowy wielokąt." +msgstr "Utwórz nowy wielokąt od zera." #: editor/plugins/light_occluder_2d_editor_plugin.cpp msgid "Edit existing polygon:" @@ -4814,7 +4781,6 @@ msgid "Create Trimesh Collision Sibling" msgstr "Utwórz trójsiatkę sąsiednich kolizji" #: editor/plugins/mesh_instance_editor_plugin.cpp -#, fuzzy msgid "Create Convex Collision Sibling" msgstr "Utwórz wypukłego sąsiada kolizji" @@ -4968,9 +4934,8 @@ msgid "Create Navigation Polygon" msgstr "Utwórz wielokąt nawigacyjny" #: editor/plugins/particles_2d_editor_plugin.cpp -#, fuzzy msgid "Generating Visibility Rect" -msgstr "Wygeneruj prostokąta widzialności" +msgstr "Generowanie prostokąta widzialności" #: editor/plugins/particles_2d_editor_plugin.cpp #, fuzzy @@ -5219,49 +5184,43 @@ msgstr "Przesuń złącze" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "" "The skeleton property of the Polygon2D does not point to a Skeleton2D node" -msgstr "" +msgstr "Właściwość skeleton węzła Polygon2D nie wskazuje na węzeł Skeleton2D" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Sync bones" -msgstr "Pokaż kości" +msgstr "Synchronizuj kości" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Create UV Map" msgstr "Utwórz Mapę UV" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Create Polygon & UV" -msgstr "Utwórz Polygon" +msgstr "Utwórz wielokąt i UV" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Split point with itself." -msgstr "" +msgstr "Podziel punkt ze sobą." #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Split can't form an existing edge." -msgstr "" +msgstr "Podział nie może uformować istniejącej krawędzi." #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Split already exists." -msgstr "Akcja %s już istnieje!" +msgstr "Podział już istnieje." #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Add Split" -msgstr "Dodaj punkt" +msgstr "Dodaj podział" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Invalid Split: " -msgstr "Niepoprawna ścieżka!" +msgstr "Niepoprawny podział: " #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Remove Split" -msgstr "Usuń punkt" +msgstr "Usuń podział" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Transform UV Map" @@ -5269,7 +5228,7 @@ msgstr "Przekształć Mapę UV" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Paint bone weights" -msgstr "" +msgstr "Maluj wagi kości" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Polygon 2D UV Editor" @@ -5277,27 +5236,23 @@ msgstr "Wielokąt 2D UV Edytor" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "UV" -msgstr "" +msgstr "UV" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Poly" -msgstr "Edytuj wielokąt" +msgstr "Wielokąt" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Splits" -msgstr "Podziel Ścieżkę" +msgstr "Podziały" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Bones" -msgstr "Utwórz Kości" +msgstr "Kości" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Create Polygon" -msgstr "Utwórz Polygon" +msgstr "Utwórz wielokąt" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Move Point" @@ -5329,24 +5284,23 @@ msgstr "Skaluj Wielokąt" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Connect two points to make a split" -msgstr "" +msgstr "Połącz dwa punkty, by utworzyć podział" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Select a split to erase it" -msgstr "Najpierw wybierz ustawienie z listy!" +msgstr "Wybierz podział, by go usunąć" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Paint weights with specified intensity" -msgstr "" +msgstr "Maluj wagi z podaną intensywnością" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "UnPaint weights with specified intensity" -msgstr "" +msgstr "Odmaluj wagi z podaną intensywnością" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Radius:" -msgstr "" +msgstr "Promień:" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Polygon->UV" @@ -5361,9 +5315,8 @@ msgid "Clear UV" msgstr "Wyczyść UV" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Grid Settings" -msgstr "Ustawienia GridMap" +msgstr "Ustawienia siatki" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Enable Snap" @@ -5374,34 +5327,28 @@ msgid "Grid" msgstr "Siatka" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Configure Grid:" -msgstr "Konfiguruj przyciąganie" +msgstr "Konfiguruj siatkę:" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Grid Offset X:" -msgstr "Offset siatki:" +msgstr "Przesunięcie X siatki:" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Grid Offset Y:" -msgstr "Offset siatki:" +msgstr "Przesunięcie Y siatki:" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Grid Step X:" -msgstr "Krok siatki:" +msgstr "Krok X siatki:" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Grid Step Y:" -msgstr "Krok siatki:" +msgstr "Krok Y siatki:" #: editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Sync Bones to Polygon" -msgstr "Skaluj Wielokąt" +msgstr "Synchronizuj kości z wielokątem" #: editor/plugins/resource_preloader_editor_plugin.cpp msgid "ERROR: Couldn't load resource!" @@ -5450,13 +5397,12 @@ msgid "Load Resource" msgstr "Wczytaj Zasób" #: editor/plugins/resource_preloader_editor_plugin.cpp -#, fuzzy msgid "ResourcePreloader" -msgstr "Ścieżka zasobu" +msgstr "Wstępny ładowacz zasobów" #: editor/plugins/root_motion_editor_plugin.cpp msgid "AnimationTree has no path set to an AnimationPlayer" -msgstr "" +msgstr "Węzeł AnimationTree nie ma ustawionej ścieżki do AnimationPlayer" #: editor/plugins/root_motion_editor_plugin.cpp msgid "Path to AnimationPlayer is invalid" @@ -5471,24 +5417,20 @@ msgid "Close and save changes?" msgstr "Zamknąć i zapisać zmiany?" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error writing TextFile:" -msgstr "Błąd wczytywania obrazu:" +msgstr "Błąd pisania pliku tekstowego:" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error: could not load file." -msgstr "Nie można wczytać obrazu" +msgstr "Błąd: nie udało się wczytać pliku." #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error could not load file." -msgstr "Nie można wczytać obrazu" +msgstr "Błąd nie udało się wczytać pliku." #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error saving file!" -msgstr "Błąd podczas zapisywania TileSet!" +msgstr "Błąd zapisywania pliku!" #: editor/plugins/script_editor_plugin.cpp msgid "Error while saving theme" @@ -5507,19 +5449,16 @@ msgid "Error importing" msgstr "Błąd importowania" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "New TextFile..." -msgstr "Utwórz katalog..." +msgstr "Nowy plik tekstowy..." #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Open File" msgstr "Otwórz plik" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Save File As..." -msgstr "Zapisz jako..." +msgstr "Zapisz plik jako..." #: editor/plugins/script_editor_plugin.cpp msgid "Import Theme" @@ -5536,12 +5475,11 @@ msgstr " Referencja klas" #: editor/plugins/script_editor_plugin.cpp msgid "Toggle alphabetical sorting of the method list." -msgstr "" +msgstr "Przełącz alfabetyczne sortowanie listy metod." #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Sort" -msgstr "Sortuj:" +msgstr "Sortuj" #: editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp @@ -5568,9 +5506,8 @@ msgid "File" msgstr "Plik" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "New TextFile" -msgstr "Pokaż pliki" +msgstr "Nowy plik tekstowy" #: editor/plugins/script_editor_plugin.cpp msgid "Save All" @@ -5585,7 +5522,6 @@ msgid "Copy Script Path" msgstr "Skopiuj ścieżkę skryptu" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "History Previous" msgstr "Poprzedni plik" @@ -5657,9 +5593,8 @@ msgid "Keep Debugger Open" msgstr "Pozostaw Debugger otwarty" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Debug with External Editor" -msgstr "Debugowanie z zewnętrznego edytora" +msgstr "Debugowanie z zewnętrznym edytorem" #: editor/plugins/script_editor_plugin.cpp msgid "Open Godot online documentation" @@ -5702,32 +5637,28 @@ msgid "Debugger" msgstr "Debugger" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Search Results" -msgstr "Wyszukaj w Pomocy" +msgstr "Wyniki wyszukiwania" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Line" -msgstr "Linia:" +msgstr "Linia" #: editor/plugins/script_text_editor.cpp msgid "(ignore)" -msgstr "" +msgstr "(ignoruj)" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function" -msgstr "Przejdź do funkcji..." +msgstr "Przejdź do funkcji" #: editor/plugins/script_text_editor.cpp msgid "Only resources from filesystem can be dropped." msgstr "Jedynie zasoby z systemu plików mogą zostać tu upuszczone." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Lookup Symbol" -msgstr "Uzupełnij symbol" +msgstr "Podejrzyj symbol" #: editor/plugins/script_text_editor.cpp msgid "Pick Color" @@ -5751,11 +5682,11 @@ msgstr "Wielkie litery na początku słów" #: editor/plugins/script_text_editor.cpp editor/plugins/text_editor.cpp msgid "Syntax Highlighter" -msgstr "" +msgstr "Podświetlacz składni" #: editor/plugins/script_text_editor.cpp editor/plugins/text_editor.cpp msgid "Standard" -msgstr "" +msgstr "Standardowy" #: editor/plugins/script_text_editor.cpp scene/gui/line_edit.cpp #: scene/gui/text_edit.cpp @@ -5808,12 +5739,10 @@ msgid "Trim Trailing Whitespace" msgstr "Przytnij końcowe spacje" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Spaces" msgstr "Zamień wcięcia na spacje" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Tabs" msgstr "Zamień wcięcia na tabulatory" @@ -5824,38 +5753,33 @@ msgstr "Automatyczne wcięcie" #: editor/plugins/script_text_editor.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Toggle Breakpoint" -msgstr "Przełącz pułapkę" +msgstr "Przełącz punkt wstrzymania" #: editor/plugins/script_text_editor.cpp msgid "Remove All Breakpoints" -msgstr "Usuń wszystkie pułapki" +msgstr "Usuń wszystkie punkty wstrzymania" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Next Breakpoint" -msgstr "Przejdź do następnej pułapki" +msgstr "Przejdź do następnego punktu wstrzymania" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Previous Breakpoint" -msgstr "Przejdź do poprzedniej pułapki" +msgstr "Przejdź do poprzedniego punktu wstrzymania" #: editor/plugins/script_text_editor.cpp msgid "Find Previous" msgstr "Znajdź poprzedni" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Find in Files..." -msgstr "Filtrowanie plików..." +msgstr "Znajdź w plikach..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function..." msgstr "Przejdź do funkcji..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Line..." msgstr "Przejdź do linii..." @@ -5869,40 +5793,35 @@ msgstr "Shader" #: editor/plugins/skeleton_2d_editor_plugin.cpp msgid "This skeleton has no bones, create some children Bone2D nodes." -msgstr "" +msgstr "Ten szkielet nie ma kości. Stwórz jakieś węzły potomne Bone2D." #: editor/plugins/skeleton_2d_editor_plugin.cpp -#, fuzzy msgid "Skeleton2D" -msgstr "Szkielet..." +msgstr "Szkielet 2D" #: editor/plugins/skeleton_2d_editor_plugin.cpp msgid "Make Rest Pose (From Bones)" -msgstr "" +msgstr "Utwórz pozę spoczynkową (z kości)" #: editor/plugins/skeleton_2d_editor_plugin.cpp msgid "Set Bones to Rest Pose" -msgstr "" +msgstr "Ustaw kości do pozy spoczynkowej" #: editor/plugins/skeleton_editor_plugin.cpp -#, fuzzy msgid "Create physical bones" -msgstr "Utwórz siatkę nawigacyjną (Navigation Mesh)" +msgstr "Utwórz fizyczne kości" #: editor/plugins/skeleton_editor_plugin.cpp -#, fuzzy msgid "Skeleton" -msgstr "Szkielet..." +msgstr "Szkielet" #: editor/plugins/skeleton_editor_plugin.cpp -#, fuzzy msgid "Create physical skeleton" -msgstr "Utwórz solucję C#" +msgstr "Utwórz fizyczny szkielet" #: editor/plugins/skeleton_ik_editor_plugin.cpp -#, fuzzy msgid "Play IK" -msgstr "Uruchom" +msgstr "Odtwórz IK" #: editor/plugins/spatial_editor_plugin.cpp msgid "Orthogonal" @@ -5930,29 +5849,25 @@ msgstr "Transformacja osi Z." #: editor/plugins/spatial_editor_plugin.cpp msgid "View Plane Transform." -msgstr "" +msgstr "Pokaż transformację płaszczyzny." #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Scaling: " -msgstr "Skala:" +msgstr "Skalowanie: " #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Translating: " -msgstr "Tłumaczenia:" +msgstr "Przesuwanie: " #: editor/plugins/spatial_editor_plugin.cpp msgid "Rotating %s degrees." msgstr "Obracanie o %s stopni." #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Keying is disabled (no key inserted)." msgstr "Kluczowanie jest wyłączone (nie wstawiono klucza)." #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Animation Key Inserted." msgstr "Wstawiono klucz animacji." @@ -5962,15 +5877,13 @@ msgstr "Wysokość" #: editor/plugins/spatial_editor_plugin.cpp msgid "Yaw" -msgstr "" +msgstr "Odchylenie" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Objects Drawn" msgstr "Narysowane obiekty" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Material Changes" msgstr "Zmiany materiału" @@ -5979,9 +5892,8 @@ msgid "Shader Changes" msgstr "Zmiany Shadera" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Surface Changes" -msgstr "Odśwież Zmiany" +msgstr "Zmiany powierzchni" #: editor/plugins/spatial_editor_plugin.cpp msgid "Draw Calls" @@ -6052,9 +5964,8 @@ msgid "This operation requires a single selected node." msgstr "Ta operacja wymaga pojedynczego wybranego węzła." #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Lock View Rotation" -msgstr "Wyświetlaj informacje" +msgstr "Zablokuj obrót widoku" #: editor/plugins/spatial_editor_plugin.cpp msgid "Display Normal" @@ -6079,7 +5990,7 @@ msgstr "Wyświetlaj środowisko" #: editor/plugins/spatial_editor_plugin.cpp #, fuzzy msgid "View Gizmos" -msgstr "Wyświetlaj uchwyty" +msgstr "Pokaż uchwyty" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Information" @@ -6094,18 +6005,16 @@ msgid "Half Resolution" msgstr "Połowa rozdzielczości" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Audio Listener" -msgstr "Nasłuchiwacz dźwięku" +msgstr "Słuchacz dźwięku" #: editor/plugins/spatial_editor_plugin.cpp msgid "Doppler Enable" msgstr "Efekt Dopplera" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Cinematic Preview" -msgstr "Tworzenie podglądu Mesh" +msgstr "Podgląd kinowy" #: editor/plugins/spatial_editor_plugin.cpp msgid "Freelook Left" @@ -6136,9 +6045,8 @@ msgid "Freelook Speed Modifier" msgstr "Zmiennik prędkości \"Wolnego widoku\"" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "View Rotation Locked" -msgstr "Wyświetlaj informacje" +msgstr "Obroty widoku zablokowane" #: editor/plugins/spatial_editor_plugin.cpp msgid "XForm Dialog" @@ -6171,9 +6079,8 @@ msgid "Scale Mode (R)" msgstr "Tryb skalowania (R)" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Local Coords" -msgstr "Local Coords" +msgstr "Lokalne koordynaty" #: editor/plugins/spatial_editor_plugin.cpp msgid "Local Space Mode (%s)" @@ -6228,24 +6135,20 @@ msgid "Align Selection With View" msgstr "Dopasuj zaznaczenie do widoku" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Tool Select" -msgstr "Wybierz narzędzie" +msgstr "Narzędzie wyboru" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Tool Move" -msgstr "Przenieś" +msgstr "Narzędzie poruszania" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Tool Rotate" -msgstr "Narzędzie Obracanie" +msgstr "Narzędzie obracania" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Tool Scale" -msgstr "Narzędzia Skala" +msgstr "Narzędzie skalowania" #: editor/plugins/spatial_editor_plugin.cpp msgid "Toggle Freelook" @@ -6257,7 +6160,7 @@ msgstr "Przekształcanie" #: editor/plugins/spatial_editor_plugin.cpp msgid "Snap object to floor" -msgstr "" +msgstr "Przyciągnij obiekt do podłogi" #: editor/plugins/spatial_editor_plugin.cpp msgid "Transform Dialog..." @@ -6288,9 +6191,8 @@ msgid "4 Viewports" msgstr "4 widoki" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Gizmos" -msgstr "Wyświetlaj uchwyty" +msgstr "Uchwyty" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Origin" @@ -6368,51 +6270,45 @@ msgid "Post" msgstr "Po" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Sprite is empty!" -msgstr "Ścieżka zapisu jest pusta!" +msgstr "Sprite jest pusty!" #: editor/plugins/sprite_editor_plugin.cpp msgid "Can't convert a sprite using animation frames to mesh." msgstr "" +"Nie można przekonwertować sprite'a używającego klatek animacji na siatkę." #: editor/plugins/sprite_editor_plugin.cpp msgid "Invalid geometry, can't replace by mesh." -msgstr "" +msgstr "Nieprawidłowa geometria, nie można zastąpić przez siatkę." #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Sprite" -msgstr "SpriteFrames" +msgstr "Sprite" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Convert to 2D Mesh" -msgstr "Konwersja do %s" +msgstr "Konwertuj do siatki 2D" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Create 2D Mesh" -msgstr "Utwórz siatkę zarysu" +msgstr "Utwórz siatkę 2D" #: editor/plugins/sprite_editor_plugin.cpp msgid "Simplification: " -msgstr "" +msgstr "Uproszczenie: " #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Grow (Pixels): " -msgstr "Przyciąganie (piksele):" +msgstr "Wzrost (piksele): " #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Update Preview" -msgstr "Podgląd" +msgstr "Odśwież podgląd" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Settings:" -msgstr "Ustawienia" +msgstr "Ustawienia:" #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "ERROR: Couldn't load frame resource!" @@ -6516,10 +6412,9 @@ msgstr "Krok:" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Sep.:" -msgstr "" +msgstr "Sep.:" #: editor/plugins/texture_region_editor_plugin.cpp -#, fuzzy msgid "TextureRegion" msgstr "Obszar tekstury" @@ -6548,9 +6443,8 @@ msgid "Edit theme..." msgstr "Edytuj motyw interfejsu..." #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Theme editing menu." -msgstr "Menu zmiany wyglądu programu." +msgstr "Menu edycji motywu." #: editor/plugins/theme_editor_plugin.cpp msgid "Add Class Items" @@ -6585,23 +6479,20 @@ msgid "Item" msgstr "Element" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Check Item" -msgstr "Sprawdź element" +msgstr "Element wyboru" #: editor/plugins/theme_editor_plugin.cpp msgid "Checked Item" -msgstr "Zaznaczony element" +msgstr "Zaznaczony element wyboru" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Radio Item" -msgstr "Dodaj element" +msgstr "Element opcji" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Checked Radio Item" -msgstr "Zaznaczony element" +msgstr "Zaznaczony element opcji" #: editor/plugins/theme_editor_plugin.cpp msgid "Has" @@ -6612,17 +6503,14 @@ msgid "Many" msgstr "Wiele" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Has,Many,Options" -msgstr "Ma,Wiele,Różnych,Opcji!" +msgstr "Ma,Wiele,Opcji" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Tab 1" msgstr "Zakładka 1" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Tab 2" msgstr "Zakładka 2" @@ -6631,9 +6519,8 @@ msgid "Tab 3" msgstr "Zakładka 3" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Data Type:" -msgstr "Rodzaj Daty:" +msgstr "Typ danych:" #: editor/plugins/theme_editor_plugin.cpp msgid "Icon" @@ -6660,14 +6547,12 @@ msgid "Erase Selection" msgstr "Usuń zaznaczenie" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Fix Invalid Tiles" -msgstr "Niewłaściwa nazwa." +msgstr "Napraw niewłaściwe kafelki" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Cut Selection" -msgstr "Wyśrodkowywanie na zaznaczeniu" +msgstr "Wytnij zaznaczenie" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Paint TileMap" @@ -6679,7 +6564,7 @@ msgstr "Rysuj Linię" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Rectangle Paint" -msgstr "" +msgstr "Malowanie prostokątne" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Bucket Fill" @@ -6690,9 +6575,8 @@ msgid "Erase TileMap" msgstr "Wyczyść TileMap" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Find Tile" -msgstr "Znajdź tile" +msgstr "Znajdź kafelek" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Transpose" @@ -6708,49 +6592,43 @@ msgstr "Odbij Y" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Paint Tile" -msgstr "Maluj Tile" +msgstr "Maluj kafelek" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Pick Tile" -msgstr "Wybierz tile" +msgstr "Wybierz kafelek" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Copy Selection" -msgstr "Usuń zaznaczone" +msgstr "Kopiuj zaznaczenie" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate left" -msgstr "Tryb Rotacji" +msgstr "Obróć w lewo" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate right" -msgstr "Przesuń w prawo" +msgstr "Obróć w prawo" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip horizontally" -msgstr "" +msgstr "Odbij poziomo" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip vertically" -msgstr "" +msgstr "Odbij pionowo" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Clear transform" -msgstr "Przekształcanie" +msgstr "Wyczyść przekształcenie" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Add Texture(s) to TileSet" -msgstr "Dodaj węzeł(y) z drzewa" +msgstr "Dodaj teksturę do TileSetu" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Remove current Texture from TileSet" -msgstr "Usuń punkt krzywej" +msgstr "Usuń aktualną teksturę z TileSetu" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Create from Scene" @@ -6765,18 +6643,20 @@ msgid "" "Select sub-tile to use as icon, this will be also used on invalid autotile " "bindings." msgstr "" +"Wybierz pod-kafelek do użycia jako ikona. Zostanie on użyty również do " +"niewłaściwych ustawień autokafelków." #: editor/plugins/tile_set_editor_plugin.cpp msgid "Display tile's names (hold Alt Key)" -msgstr "" +msgstr "Pokaż nazwy kafelków (przytrzymaj Alt)" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Remove selected texture and ALL TILES which use it?" -msgstr "" +msgstr "Usunąć wybraną teksturę i WSZYSTKIE KAFELKI, które jej używają?" #: editor/plugins/tile_set_editor_plugin.cpp msgid "You haven't selected a texture to remove." -msgstr "" +msgstr "Nie wybrano tekstury do usunięcia." #: editor/plugins/tile_set_editor_plugin.cpp msgid "Create from scene?" @@ -6788,13 +6668,15 @@ msgstr "Połącz ze sceny?" #: editor/plugins/tile_set_editor_plugin.cpp msgid "%s file(s) were not added because was already on the list." -msgstr "" +msgstr "%s plik(ów) nie zostało dodane, bo był(y) już na liście." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" "Drag handles to edit Rect.\n" "Click on another Tile to edit it." msgstr "" +"Przeciągnij uchwyty, by edytować prostokąt.\n" +"Kliknij na inny kafelek, by go edytować." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -6802,13 +6684,17 @@ msgid "" "RMB: set bit off.\n" "Click on another Tile to edit it." msgstr "" +"LPM: włącz bit.\n" +"PPM: wyłącz bit.\n" +"Kliknij inny kafelek, by go edytować." #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "" "Select current edited sub-tile.\n" "Click on another Tile to edit it." -msgstr "Wybierz aktualnie edytowany sub-tile." +msgstr "" +"Wybierz aktualnie edytowany pod-kafelek.\n" +"Kliknij inny kafelek, by go edytować." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -6816,42 +6702,41 @@ msgid "" "bindings.\n" "Click on another Tile to edit it." msgstr "" +"Wybierz pod-kafelek do użycia jako ikona. Zostanie on również użyty do " +"niewłaściwych ustawień autokafelków.\n" +"Kliknij inny kafelek, by go edytować." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" "Select sub-tile to change its priority.\n" "Click on another Tile to edit it." msgstr "" +"Wybierz pod-kafelek, by zmienić jego priorytet.\n" +"Kliknij inny kafelek, by go edytować." #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "This property can't be changed." -msgstr "Ta operacja nie może zostać wykonana bez sceny." +msgstr "Ta właściwość nie może zostać zmieniona." #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Tile Set" -msgstr "TileSet..." +msgstr "Zbiór kafelków" #: editor/plugins/visual_shader_editor_plugin.cpp -#, fuzzy msgid "Vertex" -msgstr "Wierzchołki" +msgstr "Wierzchołek" #: editor/plugins/visual_shader_editor_plugin.cpp -#, fuzzy msgid "Fragment" -msgstr "Argumenty:" +msgstr "Fragmenty" #: editor/plugins/visual_shader_editor_plugin.cpp -#, fuzzy msgid "Light" -msgstr "Prawa" +msgstr "Światło" #: editor/plugins/visual_shader_editor_plugin.cpp -#, fuzzy msgid "VisualShader" -msgstr "Shader" +msgstr "Shader wizualny" #: editor/project_export.cpp msgid "Runnable" @@ -6871,12 +6756,11 @@ msgstr "Brakuje szablonów eksportu dla tej platformy lub są uszkodzone:" #: editor/project_export.cpp msgid "Release" -msgstr "" +msgstr "Wydanie" #: editor/project_export.cpp -#, fuzzy msgid "Exporting All" -msgstr "Exportowanie do %s" +msgstr "Eksportowanie wszystkiego" #: editor/project_export.cpp msgid "Presets" @@ -6887,9 +6771,8 @@ msgid "Add..." msgstr "Dodaj..." #: editor/project_export.cpp -#, fuzzy msgid "Export Path:" -msgstr "Szablon eksportu:" +msgstr "Ścieżka eksportu:" #: editor/project_export.cpp msgid "Resources" @@ -6954,14 +6837,12 @@ msgid "Export PCK/Zip" msgstr "Eksport PCK/Zip" #: editor/project_export.cpp -#, fuzzy msgid "Export mode?" -msgstr "Tryb eksportu:" +msgstr "Tryb eksportu?" #: editor/project_export.cpp -#, fuzzy msgid "Export All" -msgstr "Eksport" +msgstr "Eksportuj wszystko" #: editor/project_export.cpp msgid "Export templates for this platform are missing:" @@ -6976,32 +6857,29 @@ msgid "The path does not exist." msgstr "Ścieżka nie istnieje." #: editor/project_manager.cpp -#, fuzzy msgid "Invalid '.zip' project file, does not contain a 'project.godot' file." -msgstr "Proszę wybrać folder nie zawierający pliku 'project.godot'." +msgstr "" +"Niewłaściwy projekt pliku \".zip\", nie zawiera pliku \"project.godot\"." #: editor/project_manager.cpp -#, fuzzy msgid "Please choose an empty folder." -msgstr "Proszę wybrać plik 'project.godot'." +msgstr "Proszę wybrać pusty folder." #: editor/project_manager.cpp -#, fuzzy msgid "Please choose a 'project.godot' or '.zip' file." -msgstr "Proszę wybrać plik 'project.godot'." +msgstr "Proszę wybrać plik \"project.godot\" lub \".zip\"." #: editor/project_manager.cpp msgid "Directory already contains a Godot project." -msgstr "" +msgstr "Folder już zawiera projekt Godota." #: editor/project_manager.cpp msgid "Imported Project" msgstr "Zaimportowano projekt" #: editor/project_manager.cpp -#, fuzzy msgid "Invalid Project Name." -msgstr "Nazwa projektu:" +msgstr "Nieprawidłowa nazwa projektu." #: editor/project_manager.cpp msgid "Couldn't create folder." @@ -7020,11 +6898,12 @@ msgid "Invalid project path (changed anything?)." msgstr "Niepoprawna ścieżka projektu (zmienić cokolwiek?)." #: editor/project_manager.cpp -#, fuzzy msgid "" "Couldn't load project.godot in project path (error %d). It may be missing or " "corrupted." -msgstr "Nie można było edytować engine.cfg w ścieżce projektu." +msgstr "" +"Nie udało się wczytać project.godot w ścieżce projektu (błąd %d). Może go " +"brakować lub być uszkodzony." #: editor/project_manager.cpp msgid "Couldn't edit project.godot in project path." @@ -7083,9 +6962,8 @@ msgid "Project Path:" msgstr "Ścieżka do projektu:" #: editor/project_manager.cpp -#, fuzzy msgid "Project Installation Path:" -msgstr "Ścieżka do projektu:" +msgstr "Ścieżka instalacji projektu:" #: editor/project_manager.cpp msgid "Browse" @@ -7205,13 +7083,12 @@ msgid "Mouse Button" msgstr "Przycisk myszy" #: editor/project_settings_editor.cpp -#, fuzzy msgid "" "Invalid action name. it cannot be empty nor contain '/', ':', '=', '\\' or " "'\"'" msgstr "" -"Niepoprawna nazwa akcji. Nazwa nie może być pusta ani zawierać znaki takie " -"jak: '/', ':', '=', '\\' lub '\"'" +"Niepoprawna nazwa akcji. Nie może być pusta ani zawierać '/', ':', '=', '\\' " +"lub '\"'" #: editor/project_settings_editor.cpp msgid "Action '%s' already exists!" @@ -7222,18 +7099,16 @@ msgid "Rename Input Action Event" msgstr "Zmień nazwę zdarzenia akcji wejścia" #: editor/project_settings_editor.cpp -#, fuzzy msgid "Change Action deadzone" -msgstr "Zmień nazwę animacji:" +msgstr "Zmień martwą strefę akcji" #: editor/project_settings_editor.cpp msgid "Add Input Action Event" msgstr "Dodaj zdarzenie akcji wejścia" #: editor/project_settings_editor.cpp -#, fuzzy msgid "All Devices" -msgstr "Urządzenie" +msgstr "Wszystkie urządzenia" #: editor/project_settings_editor.cpp msgid "Device" @@ -7280,24 +7155,20 @@ msgid "Wheel Down Button" msgstr "Kółko myszy w dół" #: editor/project_settings_editor.cpp -#, fuzzy msgid "Wheel Left Button" -msgstr "Kółko myszy w górę" +msgstr "Kółko w lewo" #: editor/project_settings_editor.cpp -#, fuzzy msgid "Wheel Right Button" -msgstr "Prawy guzik" +msgstr "Kółko w prawo" #: editor/project_settings_editor.cpp -#, fuzzy msgid "X Button 1" -msgstr "Przycisk 6" +msgstr "Przycisk X 1" #: editor/project_settings_editor.cpp -#, fuzzy msgid "X Button 2" -msgstr "Przycisk 6" +msgstr "Przycisk X 2" #: editor/project_settings_editor.cpp msgid "Joypad Axis Index:" @@ -7368,13 +7239,12 @@ msgid "Delete Item" msgstr "Usuń element" #: editor/project_settings_editor.cpp -#, fuzzy msgid "" "Invalid action name. It cannot be empty nor contain '/', ':', '=', '\\' or " "'\"'." msgstr "" -"Niepoprawna nazwa akcji. Nazwa nie może być pusta ani zawierać znaki takie " -"jak: '/', ':', '=', '\\' lub '\"'" +"Niepoprawna nazwa akcji. Nie może być pusta ani zawierać '/', ':', '=', '\\' " +"lub '\"'." #: editor/project_settings_editor.cpp msgid "Already existing" @@ -7394,7 +7264,7 @@ msgstr "Ustawienia zapisane pomyślnie." #: editor/project_settings_editor.cpp msgid "Override for Feature" -msgstr "" +msgstr "Nadpisanie dla cechy" #: editor/project_settings_editor.cpp msgid "Add Translation" @@ -7410,7 +7280,7 @@ msgstr "Dodaj zmapowaną ścieżkę" #: editor/project_settings_editor.cpp msgid "Resource Remap Add Remap" -msgstr "" +msgstr "Dodaj mapowanie zasobu" #: editor/project_settings_editor.cpp msgid "Change Resource Remap Language" @@ -7446,7 +7316,7 @@ msgstr "Nadpisz dla..." #: editor/project_settings_editor.cpp editor/settings_config_dialog.cpp msgid "Editor must be restarted for changes to take effect" -msgstr "" +msgstr "Edytor musi zostać zrestartowany, by zmiany miały efekt" #: editor/project_settings_editor.cpp msgid "Input Map" @@ -7462,7 +7332,7 @@ msgstr "Akcja" #: editor/project_settings_editor.cpp msgid "Deadzone" -msgstr "" +msgstr "Martwa strefa" #: editor/project_settings_editor.cpp msgid "Device:" @@ -7569,7 +7439,6 @@ msgid "Pick a Node" msgstr "Wybierz węzeł" #: editor/property_editor.cpp -#, fuzzy msgid "Bit %d, val %d." msgstr "Bit %d, wartość %d." @@ -7601,44 +7470,39 @@ msgstr "Zmień nazwę" #: editor/rename_dialog.cpp msgid "Prefix" -msgstr "" +msgstr "Przedrostek" #: editor/rename_dialog.cpp msgid "Suffix" -msgstr "" +msgstr "Przyrostek" #: editor/rename_dialog.cpp -#, fuzzy msgid "Advanced options" -msgstr "Opcje przyciągania" +msgstr "Opcje zaawansowane" #: editor/rename_dialog.cpp msgid "Substitute" -msgstr "" +msgstr "Substytut" #: editor/rename_dialog.cpp -#, fuzzy msgid "Node name" -msgstr "Nazwa węzła:" +msgstr "Nazwa węzła" #: editor/rename_dialog.cpp msgid "Node's parent name, if available" -msgstr "" +msgstr "Nazwa rodzica węzła, jeśli dostępna" #: editor/rename_dialog.cpp -#, fuzzy msgid "Node type" -msgstr "Znajdź typ węzła" +msgstr "Typ węzła" #: editor/rename_dialog.cpp -#, fuzzy msgid "Current scene name" -msgstr "Aktualna scena" +msgstr "Nazwa aktualnej sceny" #: editor/rename_dialog.cpp -#, fuzzy msgid "Root node name" -msgstr "Nazwa węzła:" +msgstr "Nazwa korzenia" #: editor/rename_dialog.cpp msgid "" @@ -7652,35 +7516,35 @@ msgstr "" #: editor/rename_dialog.cpp msgid "If set the counter restarts for each group of child nodes" -msgstr "" +msgstr "Gdy ustawione, licznik restartuje dla każdej grupy węzłów potomnych" #: editor/rename_dialog.cpp msgid "Initial value for the counter" -msgstr "" +msgstr "Początkowa wartość dla licznika" #: editor/rename_dialog.cpp -#, fuzzy msgid "Step" -msgstr "Krok:" +msgstr "Krok" #: editor/rename_dialog.cpp msgid "Amount by which counter is incremented for each node" -msgstr "" +msgstr "Liczba, o którą licznik jest zwiększany dla każdego węzła" #: editor/rename_dialog.cpp msgid "Padding" -msgstr "" +msgstr "Wyrównanie" #: editor/rename_dialog.cpp msgid "" "Minimum number of digits for the counter.\n" "Missing digits are padded with leading zeros." msgstr "" +"Minimalna liczba cyfr dla licznika.\n" +"Brakujące cyfry są wyrównywane zerami poprzedzającymi." #: editor/rename_dialog.cpp -#, fuzzy msgid "Regular Expressions" -msgstr "Zmień wyrażenie" +msgstr "Wyrażenia regularne" #: editor/rename_dialog.cpp #, fuzzy @@ -7693,30 +7557,27 @@ msgstr "Bez zmian" #: editor/rename_dialog.cpp msgid "CamelCase to under_scored" -msgstr "" +msgstr "CamelCase na under_scored" #: editor/rename_dialog.cpp msgid "under_scored to CamelCase" -msgstr "" +msgstr "under_scored na CamelCase" #: editor/rename_dialog.cpp msgid "Case" -msgstr "" +msgstr "Notacja" #: editor/rename_dialog.cpp -#, fuzzy msgid "To Lowercase" -msgstr "Małe Litery" +msgstr "Na małe litery" #: editor/rename_dialog.cpp -#, fuzzy msgid "To Uppercase" -msgstr "Wielkie Litery" +msgstr "Na wielkie litery" #: editor/rename_dialog.cpp -#, fuzzy msgid "Reset" -msgstr "Wyzeruj przybliżenie" +msgstr "Resetuj" #: editor/rename_dialog.cpp msgid "Error" @@ -7774,9 +7635,8 @@ msgstr "" "Nie można utworzyć sceny '%s' ponieważ obecna scena jest jednym z jej wezłów." #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Instance Scene(s)" -msgstr "Instancja Scen(y)" +msgstr "Dodaj instancję sceny" #: editor/scene_tree_dock.cpp msgid "Instance Child Scene" @@ -7791,12 +7651,10 @@ msgid "This operation can't be done on the tree root." msgstr "Nie można wykonać tej operacji na głównym węźle drzewa." #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Move Node In Parent" -msgstr "Przenieś węzeł w nadrzędny" +msgstr "Przenieś węzeł w nadrzędnym" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Move Nodes In Parent" msgstr "Przenieś węzły w nadrzędnym" @@ -7825,6 +7683,8 @@ msgid "" "Disabling \"editable_instance\" will cause all properties of the node to be " "reverted to their default." msgstr "" +"Wyłączenie \"edytowalnej instancji\" sprawi, że wszystkie właściwości węzła " +"zostaną przywrócone do domyślnych." #: editor/scene_tree_dock.cpp msgid "Editable Children" @@ -7835,34 +7695,28 @@ msgid "Load As Placeholder" msgstr "Wczytaj jako zastępczy" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Make Local" -msgstr "Uczyń lokalnym" +msgstr "Zrób lokalne" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Create Root Node:" -msgstr "Utwórz węzeł" +msgstr "Utwórz korzeń:" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "2D Scene" -msgstr "Scena" +msgstr "Scena 2D" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "3D Scene" -msgstr "Scena" +msgstr "Scena 3D" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "User Interface" -msgstr "Wyczyść dziedziczenie" +msgstr "Interfejs użytkownika" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Custom Node" -msgstr "Wytnij Węzły" +msgstr "Inny węzeł" #: editor/scene_tree_dock.cpp msgid "Can't operate on nodes from a foreign scene!" @@ -7905,9 +7759,8 @@ msgid "Clear Inheritance" msgstr "Wyczyść dziedziczenie" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Open documentation" -msgstr "Otwórz dokumentację online" +msgstr "Otwórz dokumentację" #: editor/scene_tree_dock.cpp msgid "Delete Node(s)" @@ -7922,14 +7775,12 @@ msgid "Change Type" msgstr "Zmień typ" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Extend Script" -msgstr "Otwórz skrypt" +msgstr "Rozszerz skrypt" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Make Scene Root" -msgstr "To ma sens!" +msgstr "Zmień na korzeń sceny" #: editor/scene_tree_dock.cpp msgid "Merge From Scene" @@ -7956,7 +7807,7 @@ msgid "" "Instance a scene file as a Node. Creates an inherited scene if no root node " "exists." msgstr "" -"Stwórz instancję sceny jako węzeł. Tworzy dziedziczącą scenę jeśli węzeł " +"Dodaj instancję sceny jako węzeł. Tworzy dziedziczącą scenę jeśli węzeł " "główny nie istnieje." #: editor/scene_tree_dock.cpp @@ -7980,7 +7831,6 @@ msgid "Clear Inheritance? (No Undo!)" msgstr "Wyczyścić dziedziczenie? (Nie można cofnąć!)" #: editor/scene_tree_editor.cpp -#, fuzzy msgid "Toggle Visible" msgstr "Przełącz widoczność" @@ -7989,12 +7839,11 @@ msgid "Node configuration warning:" msgstr "Ostrzeżenie konfiguracji węzła:" #: editor/scene_tree_editor.cpp -#, fuzzy msgid "" "Node has connection(s) and group(s).\n" "Click to show signals dock." msgstr "" -"Węzeł posiada połączenia i grupy\n" +"Węzeł posiada połączenie(a) i grupę(y).\n" "Kliknij, aby wyświetlić panel sygnałów." #: editor/scene_tree_editor.cpp @@ -8014,27 +7863,24 @@ msgstr "" "Kliknij, aby wyświetlić panel grup." #: editor/scene_tree_editor.cpp editor/script_create_dialog.cpp -#, fuzzy msgid "Open Script" msgstr "Otwórz skrypt" #: editor/scene_tree_editor.cpp -#, fuzzy msgid "" "Node is locked.\n" "Click to unlock it." msgstr "" "Węzeł jest zablokowany.\n" -"Kliknij by odblokować" +"Kliknij, by go odblokować." #: editor/scene_tree_editor.cpp -#, fuzzy msgid "" "Children are not selectable.\n" "Click to make selectable." msgstr "" -"Dziecko nie jest możliwe do zaznaczenia.\n" -"Kliknij by móc zaznaczyć" +"Dzieci nie są możliwe do zaznaczenia.\n" +"Kliknij, by móc zaznaczyć." #: editor/scene_tree_editor.cpp msgid "Toggle Visibility" @@ -8045,6 +7891,8 @@ msgid "" "AnimationPlayer is pinned.\n" "Click to unpin." msgstr "" +"AnimationPlayer jest przypięty.\n" +"Kliknij, by odpiąć." #: editor/scene_tree_editor.cpp msgid "Invalid node name, the following characters are not allowed:" @@ -8083,18 +7931,16 @@ msgid "N/A" msgstr "N/A" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Open Script/Choose Location" -msgstr "Otwórz edytor skryptów" +msgstr "Otwórz skrypt/Wybierz lokację" #: editor/script_create_dialog.cpp msgid "Path is empty" msgstr "Ścieżka jest pusta" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Filename is empty" -msgstr "Ścieżka zapisu jest pusta!" +msgstr "Nazwa pliku jest pusta" #: editor/script_create_dialog.cpp msgid "Path is not local" @@ -8185,9 +8031,8 @@ msgid "Bytes:" msgstr "Bajty:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Stack Trace" -msgstr "Ramki stosu" +msgstr "Ślad stosu" #: editor/script_editor_debugger.cpp msgid "Pick one or more items from the list to display the graph." @@ -8275,7 +8120,7 @@ msgstr "Typ klikniętej kontrolki:" #: editor/script_editor_debugger.cpp msgid "Live Edit Root:" -msgstr "" +msgstr "Korzeń edycji:" #: editor/script_editor_debugger.cpp msgid "Set From Tree" @@ -8295,7 +8140,7 @@ msgstr "Zmień promień światła" #: editor/spatial_editor_gizmos.cpp msgid "Change AudioStreamPlayer3D Emission Angle" -msgstr "" +msgstr "Zmień kąt emisji węzła AudioStreamPlayer3D" #: editor/spatial_editor_gizmos.cpp msgid "Change Camera FOV" @@ -8307,11 +8152,11 @@ msgstr "Zmień rozmiar kamery" #: editor/spatial_editor_gizmos.cpp msgid "Change Notifier AABB" -msgstr "" +msgstr "Zmień AABB powiadamiacza" #: editor/spatial_editor_gizmos.cpp msgid "Change Particles AABB" -msgstr "" +msgstr "Zmień AABB cząsteczek" #: editor/spatial_editor_gizmos.cpp msgid "Change Probe Extents" @@ -8334,38 +8179,32 @@ msgid "Change Capsule Shape Height" msgstr "Zmień wysokość kształtu kapsuły" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Change Cylinder Shape Radius" -msgstr "Zmień średnicę Capsule Shape" +msgstr "Zmień promień kształtu cylindra" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Change Cylinder Shape Height" -msgstr "Zmień wysokość kształtu kapsuły" +msgstr "Zmień wysokość kształtu cylindra" #: editor/spatial_editor_gizmos.cpp msgid "Change Ray Shape Length" msgstr "Zmień długość Ray Shape" #: modules/csg/csg_gizmos.cpp -#, fuzzy msgid "Change Cylinder Radius" -msgstr "Zmień promień światła" +msgstr "Zmień promień cylindra" #: modules/csg/csg_gizmos.cpp -#, fuzzy msgid "Change Cylinder Height" -msgstr "Zmień wysokość kształtu kapsuły" +msgstr "Zmień wysokość cylindra" #: modules/csg/csg_gizmos.cpp -#, fuzzy msgid "Change Torus Inner Radius" -msgstr "Zmień promień Sphere Shape" +msgstr "Zmień wewnętrzny promień torusa" #: modules/csg/csg_gizmos.cpp -#, fuzzy msgid "Change Torus Outer Radius" -msgstr "Zmień promień światła" +msgstr "Zmień zewnętrzny promień torusa" #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "Select the dynamic library for this entry" @@ -8376,9 +8215,8 @@ msgid "Select dependencies of the library for this entry" msgstr "Zaznacz zależności biblioteki dla tego pola" #: modules/gdnative/gdnative_library_editor_plugin.cpp -#, fuzzy msgid "Remove current entry" -msgstr "Usuń punkt krzywej" +msgstr "Usuń aktualny wpis" #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "Double click to create a new entry" @@ -8455,21 +8293,19 @@ msgstr "Niepoprawna instancja słownika (niepoprawne podklasy)" #: modules/gdscript/gdscript_functions.cpp msgid "Object can't provide a length." -msgstr "" +msgstr "Obiekt nie może podać długości." #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Next Plane" -msgstr "Następna zakładka" +msgstr "Następna płaszczyzna" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Previous Plane" -msgstr "Poprzednia zakładka" +msgstr "Poprzednia płaszczyzna" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Plane:" -msgstr "" +msgstr "Płaszczyzna:" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Next Floor" @@ -8488,9 +8324,8 @@ msgid "GridMap Delete Selection" msgstr "GridMap Usuń zaznaczenie" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "GridMap Fill Selection" -msgstr "GridMap Usuń zaznaczenie" +msgstr "GridMap Wypełnij zaznaczenie" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "GridMap Duplicate Selection" @@ -8545,44 +8380,39 @@ msgstr "Kursor Obróć Z" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Cursor Back Rotate X" -msgstr "" +msgstr "Kursor Obróć w tył X" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Cursor Back Rotate Y" -msgstr "" +msgstr "Kursor Obróć w tył Y" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Cursor Back Rotate Z" -msgstr "" +msgstr "Kursor Obróć w tył Z" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Cursor Clear Rotation" -msgstr "" +msgstr "Kursor Wyczyść obrót" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Create Area" -msgstr "Tworzenie obszaru" +msgstr "Utwórz obszar" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Create Exterior Connector" -msgstr "Utwórz nowy projekt" +msgstr "Utwórz łącznik zewnętrzny" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Erase Area" msgstr "Usuń obszar" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Clear Selection" -msgstr "Wyczyść zaznaczenie" +msgstr "Wyczyść zaznaczone" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Fill Selection" -msgstr "Wszystkie zaznaczenia" +msgstr "Wypełnij zaznaczone" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "GridMap Settings" @@ -8893,9 +8723,8 @@ msgid "Change Input Value" msgstr "Zmień wartość wejściową" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Can't copy the function node." -msgstr "Nie można skopiować funkcji węzła." +msgstr "Nie można skopiować węzła funkcji." #: modules/visual_script/visual_script_editor.cpp msgid "Clipboard is empty!" @@ -8970,9 +8799,8 @@ msgid "Paste Nodes" msgstr "Wklej węzły" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Edit Member" -msgstr "Członkowie" +msgstr "Edytuj członka" #: modules/visual_script/visual_script_flow_control.cpp msgid "Input type not iterable: " @@ -8987,9 +8815,8 @@ msgid "Iterator became invalid: " msgstr "Iterator stał się nieprawidłowy: " #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Invalid index property name." -msgstr "Nieprawidłowa nazwa klasy bazowej" +msgstr "Nieprawidłowa nazwa właściwości indeksowej." #: modules/visual_script/visual_script_func_nodes.cpp msgid "Base object is not a Node!" @@ -9033,17 +8860,16 @@ msgstr "" "całkowitą (seq out), lub tekstową (error)." #: modules/visual_script/visual_script_property_selector.cpp -#, fuzzy msgid "Search VisualScript" -msgstr "Usuń węzeł VisualScript" +msgstr "Przeszukaj VisualScript" #: modules/visual_script/visual_script_property_selector.cpp msgid "Get %s" -msgstr "" +msgstr "Przyjmij %s" #: modules/visual_script/visual_script_property_selector.cpp msgid "Set %s" -msgstr "" +msgstr "Ustaw %s" #: platform/javascript/export/export.cpp msgid "Run in Browser" @@ -9096,16 +8922,15 @@ msgstr "" "przy czym pozostałe zostaną zignorowane." #: scene/2d/collision_object_2d.cpp -#, fuzzy msgid "" "This node has no shape, so it can't collide or interact with other objects.\n" "Consider adding a CollisionShape2D or CollisionPolygon2D as a child to " "define its shape." msgstr "" -"Ten węzeł nie posiada podwezła, który definiował by jego kształt, więc nie " -"może wchodzić w interakcje.\n" -"Powinieneś dodać węzeł \"CollisionShape2D\" lub \"CollisionPolygon2D\" jako " -"podwęzeł aby zdefiniować kształt." +"Ten węzeł nie posiada kształtu, więc nie może kolidować, czy wchodzić w " +"interakcje z innymi obiektami.\n" +"Rozważ dodanie węzła CollisionShape2D lub CollisionPolygon2D jako podrzędny, " +"aby zdefiniować kształt." #: scene/2d/collision_polygon_2d.cpp msgid "" @@ -9144,6 +8969,8 @@ msgid "" "CPUParticles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"Animacja CPUParticles2D wymaga użycia CanvasItemMaterial z włączonym " +"\"Particles Animation\"." #: scene/2d/light_2d.cpp msgid "" @@ -9199,6 +9026,8 @@ msgid "" "Particles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"Animacja Particles2D wymaga użycia CanvasItemMaterial z włączonym " +"\"Particles Animation\"." #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." @@ -9221,16 +9050,20 @@ msgstr "Żeby zadziałało, pole Path musi wskazywać na istniejący węzeł Nod #: scene/2d/skeleton_2d.cpp msgid "This Bone2D chain should end at a Skeleton2D node." -msgstr "" +msgstr "Ten łańcuch kości 2D powinien się kończyć na węźle Skeleton2D." #: scene/2d/skeleton_2d.cpp msgid "A Bone2D only works with a Skeleton2D or another Bone2D as parent node." msgstr "" +"Węzeł Bone2D działa tylko z węzłem Skeleton2D lub innym Bone2D jako " +"nadrzędnym węzłem." #: scene/2d/skeleton_2d.cpp msgid "" "This bone lacks a proper REST pose. Go to the Skeleton2D node and set one." msgstr "" +"Tej kości brakuje odpowiedniej pozy spoczynkowej. Pójdź do węzła Skeleton2D " +"i ustaw ją." #: scene/2d/visibility_notifier_2d.cpp msgid "" @@ -9245,9 +9078,8 @@ msgid "ARVRCamera must have an ARVROrigin node as its parent" msgstr "ARVRCamera musi dziedziczyć po węźle ARVROrigin" #: scene/3d/arvr_nodes.cpp -#, fuzzy msgid "ARVRController must have an ARVROrigin node as its parent" -msgstr "ARVRController musi posiadać węzeł ARVROrigin jako rodzica" +msgstr "ARVRController musi posiadać węzeł ARVROrigin jako nadrzędny" #: scene/3d/arvr_nodes.cpp msgid "" @@ -9258,15 +9090,16 @@ msgstr "" "przypisany do żadnego rzeczywistego kontrolera" #: scene/3d/arvr_nodes.cpp -#, fuzzy msgid "ARVRAnchor must have an ARVROrigin node as its parent" -msgstr "ARVRAnchor musi posiadać węzeł ARVROrigin jako rodzica" +msgstr "ARVRAnchor musi posiadać węzeł ARVROrigin jako nadrzędny" #: scene/3d/arvr_nodes.cpp msgid "" "The anchor id must not be 0 or this anchor will not be bound to an actual " "anchor" msgstr "" +"ID kotwicy nie może być 0, bo inaczej ta kotwica nie będzie przypisana do " +"rzeczywistej kotwicy" #: scene/3d/arvr_nodes.cpp msgid "ARVROrigin requires an ARVRCamera child node" @@ -9298,16 +9131,15 @@ msgid "Lighting Meshes: " msgstr "Oświetlanie siatek: " #: scene/3d/collision_object.cpp -#, fuzzy msgid "" "This node has no shape, so it can't collide or interact with other objects.\n" "Consider adding a CollisionShape or CollisionPolygon as a child to define " "its shape." msgstr "" -"Ten węzeł nie posiada podwezła, który definiowałby jego kształt, więc nie " -"może wchodzić w interakcje z przestrzenią.\n" -"Powinieneś dodać węzeł \"CollisionShape2D\" lub \"CollisionPolygon2D\" jako " -"jego podwęzeł aby zdefiniować jego kształt." +"Ten węzeł nie posiada kształtu, więc nie może kolidować, czy wchodzić w " +"interakcje z innymi obiektami.\n" +"Rozważ dodanie węzła CollisionShape lub CollisionPolygon jako podrzędny, aby " +"zdefiniować kształt." #: scene/3d/collision_polygon.cpp msgid "" @@ -9342,14 +9174,17 @@ msgstr "" "Utwórz zasób typu CollisionShape w odpowiednim polu obiektu!" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." -msgstr "" +#, fuzzy +msgid "Nothing is visible because no mesh has been assigned." +msgstr "Nic nie jest widoczne, bo nie została przypisana żadna siatka." #: scene/3d/cpu_particles.cpp msgid "" "CPUParticles animation requires the usage of a SpatialMaterial with " "\"Billboard Particles\" enabled." msgstr "" +"Animacja CPUParticles wymaga użycia SpatialMaterial z włączonym \"Billboard " +"Particles\"." #: scene/3d/gi_probe.cpp msgid "Plotting Meshes" @@ -9373,26 +9208,28 @@ msgstr "" msgid "" "Nothing is visible because meshes have not been assigned to draw passes." msgstr "" +"Nic nie jest widoczne, bo siatki nie zostały przypisane do kolejki rysowania." #: scene/3d/particles.cpp msgid "" "Particles animation requires the usage of a SpatialMaterial with \"Billboard " "Particles\" enabled." msgstr "" +"Animacja Particles wymaga użycia SpatialMaterial z włączonym \"Billboard " +"Particles\"." #: scene/3d/path.cpp -#, fuzzy msgid "PathFollow only works when set as a child of a Path node." -msgstr "PathFollow2D zadziała tylko wtedy, gdy będzie dzieckiem węzeł Path2D." +msgstr "PathFollow działa tylko, gdy jest węzłem podrzędnym Path." #: scene/3d/path.cpp -#, fuzzy msgid "OrientedPathFollow only works when set as a child of a Path node." -msgstr "PathFollow2D zadziała tylko wtedy, gdy będzie dzieckiem węzeł Path2D." +msgstr "OrientedPathFollow działa tylko, gdy jest węzłem podrzędnym Path." #: scene/3d/path.cpp msgid "OrientedPathFollow requires up vectors enabled in its parent Path." msgstr "" +"OrientedPathFollow wymaga włączonych wektorów w górę w jego nadrzędnym Path." #: scene/3d/physics_body.cpp #, fuzzy @@ -9411,7 +9248,7 @@ msgstr "Pole Path musi wskazywać na węzeł Spatial." #: scene/3d/scenario_fx.cpp msgid "WorldEnvironment needs an Environment resource." -msgstr "" +msgstr "WorldEnvironment wymaga zasobu Environment." #: scene/3d/scenario_fx.cpp msgid "" @@ -9425,20 +9262,21 @@ 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 "" +"Ten WorldEnvironment jest ignorowany. Dodaj Camera (dla scen 3D) lub ustaw " +"Background Mode tego środowiska na Canvas (dla scen 2D)." #: scene/3d/soft_body.cpp msgid "This body will be ignored until you set a mesh" -msgstr "" +msgstr "To ciało będzie ignorowane, dopóki nie ustawisz siatki" #: scene/3d/soft_body.cpp -#, fuzzy msgid "" "Size changes to SoftBody will be overridden by the physics engine when " "running.\n" "Change the size in children collision shapes instead." msgstr "" -"Zmiany rozmiaru w RigidBody (w trybach character i rigid) zostaną nadpisane " -"przez silnik fizyki podczas działania.\n" +"Zmiany rozmiaru dla SoftBody zostaną nadpisane przez silnik fizyki podczas " +"działania.\n" "Zamiast tego, zmień rozmiary kształtów kolizji w węzłach podrzędnych." #: scene/3d/sprite_3d.cpp @@ -9459,44 +9297,41 @@ msgstr "" #: scene/animation/animation_blend_tree.cpp msgid "On BlendTree node '%s', animation not found: '%s'" -msgstr "" +msgstr "W węźle BlendTree '%s', animacja nie znaleziona: '%s'" #: scene/animation/animation_blend_tree.cpp -#, fuzzy msgid "Animation not found: '%s'" -msgstr "Narzędzia do animacji" +msgstr "Animacja nie znaleziona: '%s'" #: scene/animation/animation_tree.cpp msgid "In node '%s', invalid animation: '%s'." -msgstr "" +msgstr "W węźle '%s', nieprawidłowa animacja: '%s'." #: scene/animation/animation_tree.cpp -#, fuzzy msgid "Invalid animation: '%s'." -msgstr "BŁĄD: błędna nazwa animacji!" +msgstr "Nieprawidłowa animacja: '%s'." #: scene/animation/animation_tree.cpp -#, fuzzy msgid "Nothing connected to input '%s' of node '%s'." -msgstr "Rozłącz '%s' z '%s'" +msgstr "Nic nie podłączono do wejścia '%s' węzła '%s'." #: scene/animation/animation_tree.cpp msgid "A root AnimationNode for the graph is not set." -msgstr "" +msgstr "Korzeń dla grafu AnimationNode nie jest ustawiony." #: scene/animation/animation_tree.cpp -#, fuzzy msgid "Path to an AnimationPlayer node containing animations is not set." -msgstr "Zaznacz węzeł AnimationPlayer w drzewie sceny aby edytować animacje." +msgstr "" +"Ścieżka do węzła AnimationPlayer zawierającego animacje nie jest ustawiona." #: scene/animation/animation_tree.cpp msgid "Path set for AnimationPlayer does not lead to an AnimationPlayer node." msgstr "" +"Ścieżka do węzła AnimationPlayer nie prowadzi do węzła AnimationPlayer." #: scene/animation/animation_tree.cpp -#, fuzzy msgid "AnimationPlayer root is not a valid node." -msgstr "Drzewo animacji jest wadliwe." +msgstr "Korzeń AnimationPlayer nie jest poprawnym węzłem." #: scene/gui/color_picker.cpp msgid "Raw Mode" @@ -9544,13 +9379,12 @@ msgid "(Other)" msgstr "Inne" #: scene/main/scene_tree.cpp -#, fuzzy msgid "" "Default Environment as specified in Project Settings (Rendering -> " "Environment -> Default Environment) could not be loaded." msgstr "" -"Domyślne Środowisko określone w Ustawieniach Projektu (Renderowanie -> " -"Viewport -> Domyślne Środowisko) nie mogło zostać załadowane." +"Domyślne środowisko określone w Ustawieniach Projektu (Renderowanie -> " +"Environment -> Default Environment) nie mogło zostać załadowane." #: scene/main/viewport.cpp msgid "" @@ -9581,31 +9415,31 @@ msgid "Invalid font size." msgstr "Niepoprawny rozmiar fonta." #: scene/resources/visual_shader.cpp -#, fuzzy msgid "Input" -msgstr "Dodaj Wejście" +msgstr "Wejście" #: scene/resources/visual_shader.cpp -#, fuzzy msgid "None" -msgstr "<żaden>" +msgstr "Brak" #: scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Invalid source for shader." -msgstr "Wadliwe źródło!" +msgstr "Niewłaściwe źródło dla shadera." #: servers/visual/shader_language.cpp msgid "Assignment to function." -msgstr "" +msgstr "Przypisanie do funkcji." #: servers/visual/shader_language.cpp msgid "Assignment to uniform." -msgstr "" +msgstr "Przypisanie do uniformu." #: servers/visual/shader_language.cpp msgid "Varyings can only be assigned in vertex function." -msgstr "" +msgstr "Varying może być przypisane tylko w funkcji wierzchołków." + +#~ msgid "Zoom:" +#~ msgstr "Powiększenie:" #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "Na pewno chcesz usunąć wszystkie połączenia z \"" @@ -10286,9 +10120,6 @@ msgstr "" #~ msgid "Source Font:" #~ msgstr "Źródło fontu:" -#~ msgid "Source Font Size:" -#~ msgstr "Wielkość oryginalna fontu:" - #~ msgid "Dest Resource:" #~ msgstr "Zasób docelowy:" diff --git a/editor/translations/pr.po b/editor/translations/pr.po index 065cbdfc59..482ea49196 100644 --- a/editor/translations/pr.po +++ b/editor/translations/pr.po @@ -553,7 +553,7 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" +msgid "Font Size:" msgstr "" #: editor/code_editor.cpp @@ -1688,6 +1688,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2086,7 +2092,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -9025,7 +9031,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp diff --git a/editor/translations/pt_BR.po b/editor/translations/pt_BR.po index e7fcb8b27d..eb6a625e3e 100644 --- a/editor/translations/pt_BR.po +++ b/editor/translations/pt_BR.po @@ -37,12 +37,14 @@ # LucasSouza6 <lucasosouza66@gmail.com>, 2018. # Pedro Pacheco <pedroxixipa@hotmail.com>, 2018. # Bruno Henrique <nimbusdroid@gmail.com>, 2018. +# Luciano Scilletta <lucianoscilletta@gmail.com>, 2018. +# Julio Yagami <juliohenrique31501234@hotmail.com>, 2018. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: 2016-05-30\n" -"PO-Revision-Date: 2018-11-26 16:10+0000\n" -"Last-Translator: Bruno Henrique <nimbusdroid@gmail.com>\n" +"PO-Revision-Date: 2018-12-04 22:15+0000\n" +"Last-Translator: Julio Yagami <juliohenrique31501234@hotmail.com>\n" "Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/" "godot-engine/godot/pt_BR/>\n" "Language: pt_BR\n" @@ -50,7 +52,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 3.3-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -433,12 +435,10 @@ msgid "Delete Selection" msgstr "Deletar Seleção" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Next Step" msgstr "Ir ao Próximo Passo" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Previous Step" msgstr "Ir ao Passo Anterior" @@ -579,8 +579,9 @@ msgid "Warnings:" msgstr "Avisos:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Ampliação:" +#, fuzzy +msgid "Font Size:" +msgstr "Tamanho da Fonte de Origem:" #: editor/code_editor.cpp msgid "Line:" @@ -693,9 +694,8 @@ msgid "Edit Connection: " msgstr "Editar Conexão: " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "Tem certeza que quer remover todas conexões desse sinal?" +msgstr "Tem certeza que quer remover todas as conexões do sinal \"%s\"?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -1344,7 +1344,6 @@ msgid "Copy Path" msgstr "Copiar Caminho" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp -#, fuzzy msgid "Open in File Manager" msgstr "Mostrar no Gerenciador de Arquivos" @@ -1495,9 +1494,8 @@ msgid "Methods" msgstr "Métodos" #: editor/editor_help.cpp -#, fuzzy msgid "Methods:" -msgstr "Métodos" +msgstr "Métodos:" #: editor/editor_help.cpp #, fuzzy @@ -1741,6 +1739,12 @@ msgstr "Essa operação não pode ser realizada sem uma raiz da cena." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1748,8 +1752,9 @@ msgstr "" "herança) não foram satisfeitas." #: editor/editor_node.cpp editor/scene_tree_dock.cpp +#, fuzzy msgid "Can't overwrite scene that is still open!" -msgstr "" +msgstr "Não é possível sobrescrever cena que ainda está aberta!" #: editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" @@ -2183,7 +2188,7 @@ msgid "Undo" msgstr "Desfazer" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Refazer" @@ -2636,18 +2641,26 @@ msgid "Assign.." msgstr "Atribuir.." #: editor/editor_properties.cpp +#, fuzzy msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." msgstr "" +"Não é possível criar uma ViewportTexture nos recursos salvos como um " +"arquivo.\n" +"Recursos precisam pertencer à cena." #: editor/editor_properties.cpp +#, fuzzy msgid "" "Can't create a ViewportTexture on this resource because it's not set as " "local to scene.\n" "Please switch on the 'local to scene' property on it (and all resources " "containing it up to a node)." msgstr "" +"Não é possível criar uma ViewportTexture nesse recurso porque não está " +"definido como uma cena local.\n" +"Por favor troque na 'local para cena' propriedade" #: editor/editor_properties.cpp editor/property_editor.cpp msgid "Pick a Viewport" @@ -9371,7 +9384,7 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" "Nada está visível porque as meshes não foram atribuídas a passes de desenho." @@ -9641,6 +9654,9 @@ msgstr "Atribuição à uniforme." msgid "Varyings can only be assigned in vertex function." msgstr "Variáveis só podem ser atribuídas na função de vértice." +#~ msgid "Zoom:" +#~ msgstr "Ampliação:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "Tem certeza que quer remover todas conexões do \"" @@ -10366,9 +10382,6 @@ msgstr "Variáveis só podem ser atribuídas na função de vértice." #~ msgid "Source Font:" #~ msgstr "Fonte Origem:" -#~ msgid "Source Font Size:" -#~ msgstr "Tamanho da Fonte de Origem:" - #~ msgid "Dest Resource:" #~ msgstr "Recurso Destino:" diff --git a/editor/translations/pt_PT.po b/editor/translations/pt_PT.po index 8ace02c1e0..1e0b10fce8 100644 --- a/editor/translations/pt_PT.po +++ b/editor/translations/pt_PT.po @@ -16,7 +16,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2018-11-21 19:08+0000\n" +"PO-Revision-Date: 2018-12-04 22:15+0000\n" "Last-Translator: João Lopes <linux-man@hotmail.com>\n" "Language-Team: Portuguese (Portugal) <https://hosted.weblate.org/projects/" "godot-engine/godot/pt_PT/>\n" @@ -24,7 +24,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 3.3-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -409,14 +409,12 @@ msgid "Delete Selection" msgstr "Apagar Seleção" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Next Step" -msgstr "Ir Próximo Passo" +msgstr "Ir para Próximo Passo" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Previous Step" -msgstr "Ir Passo Anterior" +msgstr "Ir para Passo Anterior" #: editor/animation_track_editor.cpp msgid "Optimize Animation" @@ -555,8 +553,9 @@ msgid "Warnings:" msgstr "Avisos:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Zoom:" +#, fuzzy +msgid "Font Size:" +msgstr "Vista de frente" #: editor/code_editor.cpp msgid "Line:" @@ -669,9 +668,8 @@ msgid "Edit Connection: " msgstr "Editar Conexão: " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "Deseja remover todas as conexões deste sinal?" +msgstr "Deseja remover todas as conexões do sinal \"%s\"?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -826,9 +824,8 @@ msgid "Error loading:" msgstr "Erro ao carregar:" #: editor/dependency_editor.cpp -#, fuzzy msgid "Load failed due to missing dependencies:" -msgstr "Cena falha ao carregar devido a dependências que estão em falta:" +msgstr "Falha no carregamento devido a dependências em falta:" #: editor/dependency_editor.cpp editor/editor_node.cpp msgid "Open Anyway" @@ -1314,22 +1311,19 @@ msgid "File Exists, Overwrite?" msgstr "O Ficheiro existe, sobrescrever?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Select This Folder" -msgstr "Selecionar esta pasta" +msgstr "Selecionar esta Pasta" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "Copy Path" msgstr "Copiar Caminho" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp -#, fuzzy msgid "Open in File Manager" msgstr "Abrir no Gestor de Ficheiros" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp #: editor/project_manager.cpp -#, fuzzy msgid "Show in File Manager" msgstr "Mostrar no Gestor de Ficheiros" @@ -1474,19 +1468,16 @@ msgid "Methods" msgstr "Métodos" #: editor/editor_help.cpp -#, fuzzy msgid "Methods:" -msgstr "Métodos" +msgstr "Métodos:" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties" -msgstr "Propriedades" +msgstr "Propriedades do Tema" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties:" -msgstr "Propriedades:" +msgstr "Propriedades do Tema:" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Signals:" @@ -1513,14 +1504,12 @@ msgid "Constants:" msgstr "Constantes:" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description" -msgstr "Descrição" +msgstr "Descrição da Classe" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description:" -msgstr "Descrição:" +msgstr "Descrição da Classe:" #: editor/editor_help.cpp msgid "Online Tutorials:" @@ -1537,14 +1526,12 @@ msgstr "" "um[/url][/color]." #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions" -msgstr "Descrição da Propriedade:" +msgstr "Descrições da Propriedade" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions:" -msgstr "Descrição da Propriedade:" +msgstr "Descrições da Propriedade:" #: editor/editor_help.cpp msgid "" @@ -1555,14 +1542,12 @@ msgstr "" "[color=$color][url=$url]contribuindo com uma[/url][/color]!" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions" -msgstr "Descrição do Método:" +msgstr "Descrições do Método" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions:" -msgstr "Descrição do Método:" +msgstr "Descrições do Método:" #: editor/editor_help.cpp msgid "" @@ -1578,49 +1563,40 @@ msgid "Search Help" msgstr "Procurar em Ajuda" #: editor/editor_help_search.cpp -#, fuzzy msgid "Display All" -msgstr "Vista normal" +msgstr "Mostrar Tudo" #: editor/editor_help_search.cpp -#, fuzzy msgid "Classes Only" -msgstr "Classes" +msgstr "Apenas Classes" #: editor/editor_help_search.cpp -#, fuzzy msgid "Methods Only" -msgstr "Métodos" +msgstr "Apenas Métodos" #: editor/editor_help_search.cpp -#, fuzzy msgid "Signals Only" -msgstr "Sinais" +msgstr "Apenas Sinais" #: editor/editor_help_search.cpp -#, fuzzy msgid "Constants Only" -msgstr "Constantes" +msgstr "Apenas Constantes" #: editor/editor_help_search.cpp -#, fuzzy msgid "Properties Only" -msgstr "Propriedades" +msgstr "Apenas Propriedades" #: editor/editor_help_search.cpp -#, fuzzy msgid "Theme Properties Only" -msgstr "Propriedades" +msgstr "Apenas Propriedades do Tema" #: editor/editor_help_search.cpp -#, fuzzy msgid "Member Type" -msgstr "Membros" +msgstr "Tipo do Membro" #: editor/editor_help_search.cpp -#, fuzzy msgid "Class" -msgstr "Classe:" +msgstr "Classe" #: editor/editor_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" @@ -1719,6 +1695,12 @@ msgstr "Esta operação não pode ser feita sem uma raiz da árvore." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1727,7 +1709,7 @@ msgstr "" #: editor/editor_node.cpp editor/scene_tree_dock.cpp msgid "Can't overwrite scene that is still open!" -msgstr "" +msgstr "Não se consegue sobrescrever cena ainda aberta!" #: editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" @@ -1986,13 +1968,12 @@ msgid "Unable to load addon script from path: '%s'." msgstr "Incapaz de carregar Script addon do Caminho: '%s'." #: editor/editor_node.cpp -#, fuzzy msgid "" "Unable to load addon script from path: '%s' There seems to be an error in " "the code, please check the syntax." msgstr "" -"Incapaz de carregar Script addon do Caminho: '%s' Script não está no modo " -"ferramenta." +"Incapaz de carregar Script addon do caminho: '%s' Parece haver um erro no " +"código, reveja a sintaxe." #: editor/editor_node.cpp msgid "" @@ -2046,7 +2027,6 @@ msgstr "Padrão" #: editor/editor_node.cpp editor/editor_properties.cpp #: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp -#, fuzzy msgid "Show in FileSystem" msgstr "Mostrar no Sistema de Ficheiros" @@ -2131,7 +2111,6 @@ msgid "Save Scene" msgstr "Guardar Cena" #: editor/editor_node.cpp -#, fuzzy msgid "Save All Scenes" msgstr "Guardar todas as Cenas" @@ -2161,7 +2140,7 @@ msgid "Undo" msgstr "Desfazer" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Refazer" @@ -2227,8 +2206,8 @@ msgid "" "On Android, deploy will use the USB cable for faster performance. This " "option speeds up testing for games with a large footprint." msgstr "" -"Quando esta opção está ativa, exportação ou distribuição criará um " -"executável mínimo.\n" +"Quando esta opção é ativada, exportação ou distribuição criará um executável " +"mínimo.\n" "O Sistema de Ficheiros será fornecido ao Projeto pelo Editor sobre a rede.\n" "Em Android, a distribuição irá usar a ligação USB para melhor performance. " "Esta opção acelera o teste de jogos pesados." @@ -2617,6 +2596,8 @@ msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." msgstr "" +"Não se consegue criar Textura Viewport em recursos guardados como ficheiro.\n" +"O recurso tem de pertencer a uma cena." #: editor/editor_properties.cpp msgid "" @@ -2625,6 +2606,10 @@ msgid "" "Please switch on the 'local to scene' property on it (and all resources " "containing it up to a node)." msgstr "" +"Não se consegue criar Textura Viewport neste recurso porque não está " +"definido na cena como local.\n" +"Ative a sua propriedade 'local to scene' (e em todos os recursos que o " +"contêm até a um Nó)." #: editor/editor_properties.cpp editor/property_editor.cpp msgid "Pick a Viewport" @@ -2941,9 +2926,8 @@ msgstr "" "leitura!" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Favorites" -msgstr "Favoritos:" +msgstr "Favoritos" #: editor/filesystem_dock.cpp msgid "Cannot navigate to '%s' as it has not been found in the file system!" @@ -3028,14 +3012,12 @@ msgid "Instance" msgstr "Instância" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Add to favorites" -msgstr "Favoritos:" +msgstr "Adicionar aos Favoritos" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Remove from favorites" -msgstr "Remover do Grupo" +msgstr "Remover dos Favoritos" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." @@ -3066,14 +3048,12 @@ msgid "New Resource..." msgstr "Novo Recurso..." #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Expand All" -msgstr "Expandir tudo" +msgstr "Expandir Tudo" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Collapse All" -msgstr "Colapsar tudo" +msgstr "Colapsar Tudo" #: editor/filesystem_dock.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp @@ -3095,9 +3075,8 @@ msgid "Re-Scan Filesystem" msgstr "Carregar novamente o Sistema de Ficheiros" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Toggle split mode" -msgstr "Alternar modo" +msgstr "Alternar modo de divisão" #: editor/filesystem_dock.cpp msgid "Search files" @@ -3132,24 +3111,20 @@ msgid "Create Script" msgstr "Criar Script" #: editor/find_in_files.cpp -#, fuzzy msgid "Find in Files" -msgstr "Localizar em ficheiros" +msgstr "Localizar em Ficheiros" #: editor/find_in_files.cpp -#, fuzzy msgid "Find:" -msgstr "Localizar: " +msgstr "Localizar:" #: editor/find_in_files.cpp -#, fuzzy msgid "Folder:" -msgstr "Pasta: " +msgstr "Pasta:" #: editor/find_in_files.cpp -#, fuzzy msgid "Filters:" -msgstr "Filtro: " +msgstr "Filtros:" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp @@ -3299,11 +3274,11 @@ msgstr "A guardar..." #: editor/import_dock.cpp msgid "Set as Default for '%s'" -msgstr "Definir como padrão para '%s'" +msgstr "Definir como Padrão para '%s'" #: editor/import_dock.cpp msgid "Clear Default for '%s'" -msgstr "Limpar padrão para '%s'" +msgstr "Limpar Padrão para '%s'" #: editor/import_dock.cpp msgid " Files" @@ -3326,14 +3301,12 @@ msgid "Failed to load resource." msgstr "Falha ao carregar recurso." #: editor/inspector_dock.cpp -#, fuzzy msgid "Expand All Properties" -msgstr "Expandir tudo" +msgstr "Expandir Todas as Propriedades" #: editor/inspector_dock.cpp -#, fuzzy msgid "Collapse All Properties" -msgstr "Colapsar todas as Propriedades" +msgstr "Colapsar Todas as Propriedades" #: editor/inspector_dock.cpp editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/script_editor_plugin.cpp @@ -4201,7 +4174,7 @@ msgid "" "No meshes to bake. Make sure they contain an UV2 channel and that the 'Bake " "Light' flag is on." msgstr "" -"Não há Meshes para cozinhar. Assegure-se que contêm um canal UV2 e que a " +"Não há Meshes para consolidar. Assegure-se que contêm um canal UV2 e que a " "referência 'Bake Light' flag está on." #: editor/plugins/baked_lightmap_editor_plugin.cpp @@ -4210,7 +4183,7 @@ msgstr "Falha ao criar imagens lightmap, assegure-se que o caminho é gravável. #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "Bake Lightmaps" -msgstr "Cozinhar Lightmaps" +msgstr "Consolidar Lightmaps" #: editor/plugins/camera_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp editor/rename_dialog.cpp @@ -4282,9 +4255,8 @@ msgid "Resize CanvasItem" msgstr "Redimensionar CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale CanvasItem" -msgstr "Rodar CanvasItem" +msgstr "Escalar CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Move CanvasItem" @@ -4348,9 +4320,8 @@ msgid "Rotate Mode" msgstr "Modo rodar" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale Mode" -msgstr "Modo escalar (R)" +msgstr "Modo Escalar" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -4449,9 +4420,8 @@ msgid "Restores the object's children's ability to be selected." msgstr "Restaura a capacidade de selecionar os Objetos-filho." #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Skeleton Options" -msgstr "Esqueleto" +msgstr "Opções do Esqueleto" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Bones" @@ -4505,7 +4475,7 @@ msgstr "Mostrar Vista" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" -msgstr "" +msgstr "Mostrar Grupo e Bloquear Ícones" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" @@ -4665,7 +4635,7 @@ msgstr "Pressione Shift para editar tangentes individualmente" #: editor/plugins/gi_probe_editor_plugin.cpp msgid "Bake GI Probe" -msgstr "Cozinhar a sonda GI" +msgstr "Consolidar Sonda GI" #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" @@ -4946,9 +4916,8 @@ msgid "Create Navigation Polygon" msgstr "Criar Polígono de navegação" #: editor/plugins/particles_2d_editor_plugin.cpp -#, fuzzy msgid "Generating Visibility Rect" -msgstr "Gerar Visibilidade do Rect" +msgstr "A Gerar Visibilidade Rect" #: editor/plugins/particles_2d_editor_plugin.cpp msgid "Can only set point into a ParticlesMaterial process material" @@ -5426,7 +5395,6 @@ msgid "Error writing TextFile:" msgstr "Erro ao escrever TextFile:" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error: could not load file." msgstr "Erro ao carregar ficheiro." @@ -5527,9 +5495,8 @@ msgid "Copy Script Path" msgstr "Copiar Caminho do Script" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "History Previous" -msgstr "Histórico anterior" +msgstr "Histórico Anterior" #: editor/plugins/script_editor_plugin.cpp msgid "History Next" @@ -5599,9 +5566,8 @@ msgid "Keep Debugger Open" msgstr "Manter depurador aberto" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Debug with External Editor" -msgstr "Depurar com Editor externo" +msgstr "Depurar com Editor Externo" #: editor/plugins/script_editor_plugin.cpp msgid "Open Godot online documentation" @@ -5644,9 +5610,8 @@ msgid "Debugger" msgstr "Depurador" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Search Results" -msgstr "Resultados da pesquisa" +msgstr "Resultados da Pesquisa" #: editor/plugins/script_text_editor.cpp msgid "Line" @@ -5657,9 +5622,8 @@ msgid "(ignore)" msgstr "(ignorar)" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function" -msgstr "Ir para Função..." +msgstr "Ir para Função" #: editor/plugins/script_text_editor.cpp msgid "Only resources from filesystem can be dropped." @@ -5748,14 +5712,12 @@ msgid "Trim Trailing Whitespace" msgstr "Apagar espaços nos limites" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Spaces" -msgstr "Converter Indentação em espaços" +msgstr "Converter Indentação em Espaços" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Tabs" -msgstr "Converter Indentação em tabulação" +msgstr "Converter Indentação em Tabulação" #: editor/plugins/script_text_editor.cpp msgid "Auto Indent" @@ -5771,33 +5733,28 @@ msgid "Remove All Breakpoints" msgstr "Remover todos os Breakpoints" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Next Breakpoint" -msgstr "Ir para próximo Breakpoint" +msgstr "Ir para Próximo Breakpoint" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Previous Breakpoint" -msgstr "Ir para Breakpoint anterior" +msgstr "Ir para Breakpoint Anterior" #: editor/plugins/script_text_editor.cpp msgid "Find Previous" msgstr "Localizar Anterior" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Find in Files..." -msgstr "Localizar em ficheiros..." +msgstr "Localizar em Ficheiros..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function..." msgstr "Ir para Função..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Line..." -msgstr "Ir para linha..." +msgstr "Ir para Linha..." #: editor/plugins/script_text_editor.cpp msgid "Contextual Help" @@ -5888,13 +5845,12 @@ msgid "Animation Key Inserted." msgstr "Chave de Animação inserida." #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Pitch" -msgstr "Trocar" +msgstr "Inclinação" #: editor/plugins/spatial_editor_plugin.cpp msgid "Yaw" -msgstr "" +msgstr "Direção" #: editor/plugins/spatial_editor_plugin.cpp msgid "Objects Drawn" @@ -5982,7 +5938,7 @@ msgstr "Esta operação requer um único Nó selecionado." #: editor/plugins/spatial_editor_plugin.cpp msgid "Lock View Rotation" -msgstr "Trancar Rotação da Vista" +msgstr "Bloquear Rotação da Vista" #: editor/plugins/spatial_editor_plugin.cpp msgid "Display Normal" @@ -6061,9 +6017,8 @@ msgid "Freelook Speed Modifier" msgstr "Modificador de velocidade Freelook" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "View Rotation Locked" -msgstr "Trancar Rotação da Vista" +msgstr "Rotação da Vista Bloqueada" #: editor/plugins/spatial_editor_plugin.cpp msgid "XForm Dialog" @@ -6097,7 +6052,7 @@ msgstr "Modo escalar (R)" #: editor/plugins/spatial_editor_plugin.cpp msgid "Local Coords" -msgstr "Coordenadas locais" +msgstr "Coordenadas Locais" #: editor/plugins/spatial_editor_plugin.cpp msgid "Local Space Mode (%s)" @@ -6565,9 +6520,8 @@ msgid "Fix Invalid Tiles" msgstr "Reparar Tiles inválidos" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Cut Selection" -msgstr "Centrar seleção" +msgstr "Cortar Seleção" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Paint TileMap" @@ -6614,32 +6568,28 @@ msgid "Pick Tile" msgstr "Escolher Tile" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Copy Selection" -msgstr "Mover Seleção" +msgstr "Copiar Seleção" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate left" -msgstr "Modo rodar" +msgstr "Rodar p/ esquerda" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate right" -msgstr "Rodar Polígono" +msgstr "Rodar p/ direita" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip horizontally" -msgstr "" +msgstr "Inverter horizontalmente" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip vertically" -msgstr "" +msgstr "Inverter verticalmente" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Clear transform" -msgstr "Transformar" +msgstr "Limpar Transformação" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Add Texture(s) to TileSet" @@ -6670,9 +6620,8 @@ msgid "Display tile's names (hold Alt Key)" msgstr "Exibir nome dos tiles (segure tecla Alt)" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Remove selected texture and ALL TILES which use it?" -msgstr "Remover Textura Selecionada e TODOS OS TILES que a usam?" +msgstr "Remover textura selecionada e TODOS OS TILES que a usam?" #: editor/plugins/tile_set_editor_plugin.cpp msgid "You haven't selected a texture to remove." @@ -6687,9 +6636,8 @@ msgid "Merge from scene?" msgstr "Fundir a partir da Cena?" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "%s file(s) were not added because was already on the list." -msgstr " ficheiro(s) não foi adicionado por já estar na lista." +msgstr "%s ficheiro(s) não foi/foram adicionado(s) por já estar(em) na lista." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -6778,12 +6726,11 @@ msgstr "" #: editor/project_export.cpp msgid "Release" -msgstr "" +msgstr "Libertar" #: editor/project_export.cpp -#, fuzzy msgid "Exporting All" -msgstr "Exportar" +msgstr "A Exportar Tudo" #: editor/project_export.cpp msgid "Presets" @@ -6794,9 +6741,8 @@ msgid "Add..." msgstr "Adicionar..." #: editor/project_export.cpp -#, fuzzy msgid "Export Path:" -msgstr "Exportar Projeto" +msgstr "Caminho da Exportação:" #: editor/project_export.cpp msgid "Resources" @@ -6861,14 +6807,12 @@ msgid "Export PCK/Zip" msgstr "Exportar PCK/Zip" #: editor/project_export.cpp -#, fuzzy msgid "Export mode?" -msgstr "Modo exportação:" +msgstr "Modo Exportação?" #: editor/project_export.cpp -#, fuzzy msgid "Export All" -msgstr "Exportar" +msgstr "Exportar Tudo" #: editor/project_export.cpp msgid "Export templates for this platform are missing:" @@ -7515,7 +7459,7 @@ msgstr "Nome do Nó" #: editor/rename_dialog.cpp msgid "Node's parent name, if available" -msgstr "Nome do pai do Nó, se disponível" +msgstr "Nome do parente do Nó, se disponível" #: editor/rename_dialog.cpp msgid "Node type" @@ -7554,7 +7498,6 @@ msgid "Step" msgstr "Passo" #: editor/rename_dialog.cpp -#, fuzzy msgid "Amount by which counter is incremented for each node" msgstr "Valor pelo qual cada contador é incrementado para cada nó" @@ -7563,7 +7506,6 @@ msgid "Padding" msgstr "Preenchimento" #: editor/rename_dialog.cpp -#, fuzzy msgid "" "Minimum number of digits for the counter.\n" "Missing digits are padded with leading zeros." @@ -7617,7 +7559,7 @@ msgstr "Recolocar Nó" #: editor/reparent_dialog.cpp msgid "Reparent Location (Select new Parent):" -msgstr "Recolocar localização (selecionar novo parente):" +msgstr "Recolocar localização (selecionar novo Parente):" #: editor/reparent_dialog.cpp msgid "Keep Global Transform" @@ -7681,11 +7623,11 @@ msgstr "Esta operação não pode ser feita na raiz da árvore." #: editor/scene_tree_dock.cpp msgid "Move Node In Parent" -msgstr "Mover Nó no parente" +msgstr "Mover Nó no Parente" #: editor/scene_tree_dock.cpp msgid "Move Nodes In Parent" -msgstr "Mover Nós no parente" +msgstr "Mover Nós no Parente" #: editor/scene_tree_dock.cpp msgid "Duplicate Node(s)" @@ -7712,6 +7654,8 @@ msgid "" "Disabling \"editable_instance\" will cause all properties of the node to be " "reverted to their default." msgstr "" +"Desativar \"editable_instance\" irá reverter todas as propriedades do Nó " +"para os seus valores padrão." #: editor/scene_tree_dock.cpp msgid "Editable Children" @@ -7786,9 +7730,8 @@ msgid "Clear Inheritance" msgstr "Limpar herança" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Open documentation" -msgstr "Abrir documentação online do Godot" +msgstr "Abrir documentação" #: editor/scene_tree_dock.cpp msgid "Delete Node(s)" @@ -7803,9 +7746,8 @@ msgid "Change Type" msgstr "Mudar tipo" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Extend Script" -msgstr "Abrir Script" +msgstr "Estender Script" #: editor/scene_tree_dock.cpp msgid "Make Scene Root" @@ -7968,9 +7910,8 @@ msgid "Path is empty" msgstr "Caminho está vazio" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Filename is empty" -msgstr "Sprite está vazia!" +msgstr "Nome do ficheiro vazio" #: editor/script_create_dialog.cpp msgid "Path is not local" @@ -8061,9 +8002,8 @@ msgid "Bytes:" msgstr "Bytes:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Stack Trace" -msgstr "Empilhar Frames" +msgstr "Rastreamento de Pilha" #: editor/script_editor_debugger.cpp msgid "Pick one or more items from the list to display the graph." @@ -8513,7 +8453,7 @@ msgstr "Fim do stack trace de exceção interna" #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Bake NavMesh" -msgstr "" +msgstr "Consolidar NavMesh" #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Clear the navigation mesh." @@ -8621,7 +8561,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 Padrão da Variável" #: modules/visual_script/visual_script_editor.cpp msgid "Set Variable Type" @@ -8897,12 +8837,11 @@ msgstr "Procurar VisualScript" #: modules/visual_script/visual_script_property_selector.cpp msgid "Get %s" -msgstr "" +msgstr "Obter %s" #: modules/visual_script/visual_script_property_selector.cpp -#, fuzzy msgid "Set %s" -msgstr "Definir " +msgstr "Definir %s" #: platform/javascript/export/export.cpp msgid "Run in Browser" @@ -8934,7 +8873,7 @@ msgstr "Impossível ler Ficheiro de imagem do ecrã de inicialização:" #: platform/javascript/export/export.cpp msgid "Using default boot splash image." -msgstr "A usar imagem de inicialização por defeito." +msgstr "A usar imagem padrão de inicialização." #: scene/2d/animated_sprite.cpp msgid "" @@ -9001,6 +8940,8 @@ msgid "" "CPUParticles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"Animação CPUParticles2D requer o uso de um CanvasItemMaterial com " +"\"Particles Animation\" ativada." #: scene/2d/light_2d.cpp msgid "" @@ -9057,6 +8998,8 @@ msgid "" "Particles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"Animação Particles2D requer o uso de um CanvasItemMaterial com \"Particles " +"Animation\" ativada." #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." @@ -9085,7 +9028,7 @@ msgstr "Esta corrente de Bone2D deve terminar em um nó Skeleton2D." #: scene/2d/skeleton_2d.cpp msgid "A Bone2D only works with a Skeleton2D or another Bone2D as parent node." -msgstr "Um Bone2D só funciona com um nó pai Skeleton2D ou Bone2D." +msgstr "Um Bone2D só funciona com um nó parente Skeleton2D ou Bone2D." #: scene/2d/skeleton_2d.cpp msgid "" @@ -9201,15 +9144,16 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." -msgstr "" -"Nada é visível porque não foram atribuídas Meshes aos passos de desenho." +msgid "Nothing is visible because no mesh has been assigned." +msgstr "Nada é visível porque nenhuma Malha foi atribuída." #: scene/3d/cpu_particles.cpp msgid "" "CPUParticles animation requires the usage of a SpatialMaterial with " "\"Billboard Particles\" enabled." msgstr "" +"Animação CPUParticles requer o uso de um SpatialMaterial com \"Billboard " +"Particles\" ativada." #: scene/3d/gi_probe.cpp msgid "Plotting Meshes" @@ -9240,22 +9184,21 @@ msgid "" "Particles animation requires the usage of a SpatialMaterial with \"Billboard " "Particles\" enabled." msgstr "" +"Animação Particles requer o uso de um SpatialMaterial com \"Billboard " +"Particles\" ativada." #: scene/3d/path.cpp -#, fuzzy msgid "PathFollow only works when set as a child of a Path node." -msgstr "" -"PathFollow2D apenas funciona quando definido como filho de um Nó Path2D." +msgstr "PathFollow apenas funciona quando definido como filho de um Nó Path." #: scene/3d/path.cpp -#, fuzzy msgid "OrientedPathFollow only works when set as a child of a Path node." msgstr "" -"PathFollow2D apenas funciona quando definido como filho de um Nó Path2D." +"OrientedPathFollow apenas funciona quando definido como filho de um Nó Path." #: scene/3d/path.cpp msgid "OrientedPathFollow requires up vectors enabled in its parent Path." -msgstr "" +msgstr "OrientedPathFollow requer vetores cima ativados no Caminho do parente." #: scene/3d/physics_body.cpp msgid "" @@ -9297,7 +9240,6 @@ msgid "This body will be ignored until you set a mesh" msgstr "Este corpo será ignorado até se definir uma Malha" #: scene/3d/soft_body.cpp -#, fuzzy msgid "" "Size changes to SoftBody will be overridden by the physics engine when " "running.\n" @@ -9305,7 +9247,7 @@ msgid "" msgstr "" "Mudanças no tamanho do SoftBody serão reescritas pelo motor de física na " "execução.\n" -"Mude antes o tamanho das formas de colisão filhas." +"Em vez disso, mude o tamanho das formas de colisão filhas." #: scene/3d/sprite_3d.cpp msgid "" @@ -9389,7 +9331,7 @@ msgstr "" #: scene/gui/range.cpp msgid "If exp_edit is true min_value must be > 0." -msgstr "" +msgstr "Se exp_edit é verdadeiro min_value tem de ser > 0." #: scene/gui/scroll_container.cpp msgid "" @@ -9410,7 +9352,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 Padrão especificado em Configuração do Projeto (Rendering -> " "Environment -> Default Environment) não pode ser carregado." #: scene/main/viewport.cpp @@ -9465,6 +9407,9 @@ msgstr "Atribuição a uniforme." msgid "Varyings can only be assigned in vertex function." msgstr "Variações só podem ser atribuídas na função vértice." +#~ msgid "Zoom:" +#~ msgstr "Zoom:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "Está seguro que quer remover todas as conexões de \"" diff --git a/editor/translations/ro.po b/editor/translations/ro.po index 9359389f36..752c69bfab 100644 --- a/editor/translations/ro.po +++ b/editor/translations/ro.po @@ -559,8 +559,8 @@ msgstr "" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "Zoom-ați În" +msgid "Font Size:" +msgstr "Dimensiunea Conturului:" #: editor/code_editor.cpp msgid "Line:" @@ -1729,6 +1729,12 @@ msgstr "Aceasta operațiune nu se poate face fără o rădăcină de copac." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2174,7 +2180,7 @@ msgid "Undo" msgstr "Revenire" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Reîntoarcere" @@ -9215,7 +9221,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9444,6 +9450,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Zoom-ați În" + #~ msgid "Class List:" #~ msgstr "Listă de Clase:" diff --git a/editor/translations/ru.po b/editor/translations/ru.po index 957af1f5e7..b7d0bf0a21 100644 --- a/editor/translations/ru.po +++ b/editor/translations/ru.po @@ -28,12 +28,13 @@ # V. <Unit68189@gmail.com>, 2018. # Victor Butorin <mrwebsterchannel@gmail.com>, 2018. # Александр <ol-vin@mail.ru>, 2018. +# Анатолий Горбунов <afgorbunov@gmail.com>, 2018. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2018-11-26 16:10+0000\n" -"Last-Translator: Александр <ol-vin@mail.ru>\n" +"PO-Revision-Date: 2018-12-04 22:15+0000\n" +"Last-Translator: Анатолий Горбунов <afgorbunov@gmail.com>\n" "Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/" "godot/ru/>\n" "Language: ru\n" @@ -42,7 +43,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 3.3-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -424,12 +425,10 @@ msgid "Delete Selection" msgstr "Удалить выделенное" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Next Step" msgstr "Перейти к следующему шагу" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Previous Step" msgstr "Перейти к предыдущему шагу" @@ -570,8 +569,9 @@ msgid "Warnings:" msgstr "Предупреждения:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Приближение:" +#, fuzzy +msgid "Font Size:" +msgstr "Исходный размер шрифта:" #: editor/code_editor.cpp msgid "Line:" @@ -684,9 +684,8 @@ msgid "Edit Connection: " msgstr "Редактировать Подключение: " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "Вы уверены, что хотите удалить все подключения от сигнала?" +msgstr "Вы уверены, что хотите удалить все подключения из сигнала \"%s\"?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -840,7 +839,6 @@ msgid "Error loading:" msgstr "Ошибка при загрузке:" #: editor/dependency_editor.cpp -#, fuzzy msgid "Load failed due to missing dependencies:" msgstr "Не удалось загрузить сцену из-за отсутствия зависимостей:" @@ -1328,7 +1326,6 @@ msgid "File Exists, Overwrite?" msgstr "Файл существует, перезаписать?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Select This Folder" msgstr "Выбрать эту папку" @@ -1337,13 +1334,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/filesystem_dock.cpp #: editor/project_manager.cpp -#, fuzzy msgid "Show in File Manager" msgstr "Просмотреть в проводнике" @@ -1488,19 +1483,16 @@ msgid "Methods" msgstr "Методы" #: editor/editor_help.cpp -#, fuzzy msgid "Methods:" -msgstr "Методы" +msgstr "Методы:" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties" -msgstr "Свойства" +msgstr "Свойства темы" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties:" -msgstr "Свойства:" +msgstr "Свойства темы:" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Signals:" @@ -1527,14 +1519,12 @@ msgid "Constants:" msgstr "Константы:" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description" -msgstr "Описание" +msgstr "Описание класса" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description:" -msgstr "Описание:" +msgstr "Описание класса:" #: editor/editor_help.cpp msgid "Online Tutorials:" @@ -1551,12 +1541,10 @@ msgstr "" "$url2]запросить[/url][/color]." #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions" msgstr "Описание свойств:" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions:" msgstr "Описание свойств:" @@ -1569,12 +1557,10 @@ msgstr "" "$color][url=$url]помогите нам[/url][/color]!" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions" -msgstr "Описание методов:" +msgstr "Описание методов" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions:" msgstr "Описание методов:" @@ -1592,49 +1578,40 @@ msgid "Search Help" 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_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" @@ -1733,6 +1710,12 @@ msgstr "Эта операция не может быть выполнена бе #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1741,7 +1724,7 @@ 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!" @@ -1996,13 +1979,12 @@ msgid "Unable to load addon script from path: '%s'." msgstr "Не удалось загрузить скрипт из источника: '%s'." #: editor/editor_node.cpp -#, fuzzy 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 "" @@ -2142,7 +2124,6 @@ msgid "Save Scene" msgstr "Сохранить сцену" #: editor/editor_node.cpp -#, fuzzy msgid "Save All Scenes" msgstr "Сохранить все сцены" @@ -2172,7 +2153,7 @@ msgid "Undo" msgstr "Отменить" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Повторить" @@ -2629,6 +2610,8 @@ msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." msgstr "" +"Невозможно создать ViewportTexture для ресурсов, сохраненных в виде файла.\n" +"Ресурс должен принадлежать сцене." #: editor/editor_properties.cpp msgid "" @@ -2637,6 +2620,10 @@ msgid "" "Please switch on the 'local to scene' property on it (and all resources " "containing it up to a node)." msgstr "" +"Невозможно создать ViewportTexture для этого ресурса, потому что он не " +"установлен как локальный для сцены.\n" +"Включите свойство «Локально для сцены» (и все ресурсы, содержащие его вверх " +"от узла)." #: editor/editor_properties.cpp editor/property_editor.cpp msgid "Pick a Viewport" @@ -2952,9 +2939,8 @@ msgstr "" "типов файлов!" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Favorites" -msgstr "Избранное:" +msgstr "Избранное" #: editor/filesystem_dock.cpp msgid "Cannot navigate to '%s' as it has not been found in the file system!" @@ -3040,14 +3026,12 @@ msgid "Instance" msgstr "Добавить экземпляр" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Add to favorites" -msgstr "Избранное:" +msgstr "Добавить в избранное" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Remove from favorites" -msgstr "Удалить из группы" +msgstr "Удалить из избранного" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." @@ -3083,7 +3067,6 @@ msgid "Expand All" msgstr "Развернуть все" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Collapse All" msgstr "Свернуть все" @@ -3107,9 +3090,8 @@ msgid "Re-Scan Filesystem" msgstr "Пересканировать файловую систему" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Toggle split mode" -msgstr "Переключить режим отображения" +msgstr "Переключить режим разделения" #: editor/filesystem_dock.cpp msgid "Search files" @@ -3144,24 +3126,22 @@ msgid "Create Script" msgstr "Создать скрипт" #: editor/find_in_files.cpp -#, fuzzy msgid "Find in Files" msgstr "Найти в файлах" #: editor/find_in_files.cpp #, fuzzy msgid "Find:" -msgstr "Найти: " +msgstr "Найти:" #: editor/find_in_files.cpp #, fuzzy msgid "Folder:" -msgstr "Папка: " +msgstr "Папка:" #: editor/find_in_files.cpp -#, fuzzy msgid "Filters:" -msgstr "Фильтры" +msgstr "Фильтры:" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp @@ -3338,12 +3318,10 @@ msgid "Failed to load resource." msgstr "Не удалось загрузить ресурс." #: editor/inspector_dock.cpp -#, fuzzy msgid "Expand All Properties" msgstr "Развернуть все свойства" #: editor/inspector_dock.cpp -#, fuzzy msgid "Collapse All Properties" msgstr "Свернуть все свойства" @@ -4296,7 +4274,6 @@ msgid "Resize CanvasItem" msgstr "Изменить размер CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale CanvasItem" msgstr "Вращать CanvasItem" @@ -4363,9 +4340,8 @@ msgid "Rotate Mode" msgstr "Режим поворота" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale Mode" -msgstr "Режим масштабирования (R)" +msgstr "Режим масштабирования" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -4464,9 +4440,8 @@ msgid "Restores the object's children's ability to be selected." msgstr "Восстанавливает возможность выбора потомков объекта." #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Skeleton Options" -msgstr "Скелет" +msgstr "Опции скелета" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Bones" @@ -4520,7 +4495,7 @@ msgstr "Показать окно просмотра" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" -msgstr "" +msgstr "Показать группу и заблокировать иконки" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" @@ -4961,7 +4936,6 @@ msgid "Create Navigation Polygon" msgstr "Создать Navigation Polygon" #: editor/plugins/particles_2d_editor_plugin.cpp -#, fuzzy msgid "Generating Visibility Rect" msgstr "Создать область видимости" @@ -5442,9 +5416,8 @@ msgid "Error writing TextFile:" msgstr "Ошибка при записи:" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error: could not load file." -msgstr "Не удалось загрузить файл." +msgstr "Ошибка: Не удалось загрузить файл." #: editor/plugins/script_editor_plugin.cpp msgid "Error could not load file." @@ -5615,7 +5588,6 @@ msgid "Keep Debugger Open" msgstr "Оставить отладчик открытым" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Debug with External Editor" msgstr "Отладка с помощью внешнего редактора" @@ -5660,7 +5632,6 @@ msgid "Debugger" msgstr "Отладчик" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Search Results" msgstr "Результаты поиска" @@ -5673,9 +5644,8 @@ msgid "(ignore)" 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." @@ -5764,12 +5734,10 @@ msgid "Trim Trailing Whitespace" msgstr "Удаление пробелов в конце строк" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Spaces" msgstr "Преобразовать отступ в пробелы" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Tabs" msgstr "Преобразовать отступ в табуляцию" @@ -5787,12 +5755,10 @@ msgid "Remove All Breakpoints" msgstr "Удалить все точки остановок" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Next Breakpoint" msgstr "Перейти к следующей точке остановки" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Previous Breakpoint" msgstr "Перейти к предыдущей точке остановки" @@ -5801,17 +5767,14 @@ msgid "Find Previous" msgstr "Найти предыдущее" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Find in Files..." msgstr "Найти в файлах..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function..." msgstr "Перейти к функции..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Line..." msgstr "Перейти к строке..." @@ -6309,7 +6272,6 @@ msgstr "" "Не удается преобразовать спрайт использующий анимационные кадры в сетку." #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Invalid geometry, can't replace by mesh." msgstr "Недопустимая геометрия, не удается заменить сетки." @@ -6582,9 +6544,8 @@ msgid "Fix Invalid Tiles" msgstr "Исправить недопустимые плитки" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Cut Selection" -msgstr "Центрировать выбранное" +msgstr "Вырезать выделенное" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Paint TileMap" @@ -6631,27 +6592,24 @@ msgid "Pick Tile" msgstr "Выбрать тайл" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Copy Selection" -msgstr "Передвинуть выделенное" +msgstr "Копировать выделенное" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate left" -msgstr "Режим поворота" +msgstr "Повернуть влево" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate right" -msgstr "Двигать вправо" +msgstr "Повернуть вправо" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip horizontally" -msgstr "" +msgstr "Отразить по горизонтали" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip vertically" -msgstr "" +msgstr "Отразить по вертикали" #: editor/plugins/tile_map_editor_plugin.cpp #, fuzzy @@ -9272,7 +9230,7 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "Ничего не видно, потому что полисетки не были назначены на отрисовку." #: scene/3d/cpu_particles.cpp @@ -9546,6 +9504,9 @@ msgstr "Назначить форму" msgid "Varyings can only be assigned in vertex function." msgstr "Переменные могут быть назначены только в функции вершин." +#~ msgid "Zoom:" +#~ msgstr "Приближение:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "Вы уверены, что хотите удалить все подключения от \"" @@ -10261,9 +10222,6 @@ msgstr "Переменные могут быть назначены только #~ msgid "Source Font:" #~ msgstr "Исходный шрифт:" -#~ msgid "Source Font Size:" -#~ msgstr "Исходный размер шрифта:" - #~ msgid "Dest Resource:" #~ msgstr "Ресурс назначения:" diff --git a/editor/translations/si.po b/editor/translations/si.po index 726eb15d37..cad4ac4e20 100644 --- a/editor/translations/si.po +++ b/editor/translations/si.po @@ -536,7 +536,7 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" +msgid "Font Size:" msgstr "" #: editor/code_editor.cpp @@ -1651,6 +1651,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2047,7 +2053,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8849,7 +8855,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp diff --git a/editor/translations/sk.po b/editor/translations/sk.po index d2bd63b02a..bb1597a3b9 100644 --- a/editor/translations/sk.po +++ b/editor/translations/sk.po @@ -543,7 +543,7 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" +msgid "Font Size:" msgstr "" #: editor/code_editor.cpp @@ -1686,6 +1686,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2086,7 +2092,7 @@ msgid "Undo" msgstr "Späť" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -9016,7 +9022,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp diff --git a/editor/translations/sl.po b/editor/translations/sl.po index 19a658939b..ca2e63448e 100644 --- a/editor/translations/sl.po +++ b/editor/translations/sl.po @@ -561,9 +561,8 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -#, fuzzy -msgid "Zoom:" -msgstr "Približaj" +msgid "Font Size:" +msgstr "" #: editor/code_editor.cpp msgid "Line:" @@ -1725,6 +1724,12 @@ msgstr "Te operacije ne moremo storiti brez osnovnega drevesa." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2162,7 +2167,7 @@ msgid "Undo" msgstr "Razveljavi" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Ponovi" @@ -9210,7 +9215,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9443,6 +9448,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Približaj" + #~ msgid "Class List:" #~ msgstr "Seznam Razredov:" diff --git a/editor/translations/sr_Cyrl.po b/editor/translations/sr_Cyrl.po index 9dec0b6def..1f8bbe8cfd 100644 --- a/editor/translations/sr_Cyrl.po +++ b/editor/translations/sr_Cyrl.po @@ -564,8 +564,8 @@ msgstr "" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "Увеличај" +msgid "Font Size:" +msgstr "Поглед испред" #: editor/code_editor.cpp msgid "Line:" @@ -1735,6 +1735,12 @@ msgid "This operation can't be done without a tree root." msgstr "Ова операција се не може обавити без корена дрвета." #: 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 "" + +#: editor/editor_node.cpp #, fuzzy msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " @@ -2174,7 +2180,7 @@ msgid "Undo" msgstr "Опозови" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Поново уради" @@ -9292,7 +9298,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9523,6 +9529,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Увеличај" + #~ msgid "Class List:" #~ msgstr "Листа класа:" diff --git a/editor/translations/sr_Latn.po b/editor/translations/sr_Latn.po index 864685e72a..9781b261b7 100644 --- a/editor/translations/sr_Latn.po +++ b/editor/translations/sr_Latn.po @@ -543,7 +543,7 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" +msgid "Font Size:" msgstr "" #: editor/code_editor.cpp @@ -1660,6 +1660,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2056,7 +2062,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8876,7 +8882,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp diff --git a/editor/translations/sv.po b/editor/translations/sv.po index 0493e3eec8..7ddf0a981d 100644 --- a/editor/translations/sv.po +++ b/editor/translations/sv.po @@ -582,8 +582,8 @@ msgstr "Varning" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "Zooma In" +msgid "Font Size:" +msgstr "Vy framifrån" #: editor/code_editor.cpp msgid "Line:" @@ -1894,6 +1894,12 @@ msgid "This operation can't be done without a tree root." msgstr "Åtgärden kan inte göras utan en trädrot." #: 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 "" + +#: editor/editor_node.cpp #, fuzzy msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " @@ -2389,7 +2395,7 @@ msgid "Undo" msgstr "Ångra" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp #, fuzzy msgid "Redo" msgstr "Ångra" @@ -9715,7 +9721,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9956,6 +9962,10 @@ msgid "Varyings can only be assigned in vertex function." msgstr "" #, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Zooma In" + +#, fuzzy #~ msgid "Class List:" #~ msgstr "Klasslista:" diff --git a/editor/translations/ta.po b/editor/translations/ta.po index de4e62702b..b6a30c7fe7 100644 --- a/editor/translations/ta.po +++ b/editor/translations/ta.po @@ -541,7 +541,7 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" +msgid "Font Size:" msgstr "" #: editor/code_editor.cpp @@ -1657,6 +1657,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2053,7 +2059,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8863,7 +8869,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp diff --git a/editor/translations/th.po b/editor/translations/th.po index 021f57822e..a8661d6968 100644 --- a/editor/translations/th.po +++ b/editor/translations/th.po @@ -569,8 +569,8 @@ msgstr "คำเตือน" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "ซูม (%):" +msgid "Font Size:" +msgstr "ขนาดฟอนต์ต้นฉบับ:" #: editor/code_editor.cpp msgid "Line:" @@ -1724,6 +1724,12 @@ msgstr "ทำไม่ได้ถ้าไม่มีฉาก" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "บันทึกฉากไม่ได้ อาจจะมีการอ้างอิงไม่สมบูรณ์ (อินสแตนซ์หรือการสืบทอด)" @@ -2145,7 +2151,7 @@ msgid "Undo" msgstr "เลิกทำ" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "ทำซ้ำ" @@ -9258,7 +9264,7 @@ msgstr "ต้องมีรูปทรงเพื่อให้ CollisionSh #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "ไม่มีการแสดงผลเนื่องจากไม่ได้กำหนด mesh ใน draw pass" #: scene/3d/cpu_particles.cpp @@ -9508,6 +9514,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "ซูม (%):" + #~ msgid "Class List:" #~ msgstr "รายชื่อคลาส:" @@ -10210,9 +10220,6 @@ msgstr "" #~ msgid "Source Font:" #~ msgstr "ฟอนต์ต้นฉบับ:" -#~ msgid "Source Font Size:" -#~ msgstr "ขนาดฟอนต์ต้นฉบับ:" - #~ msgid "Dest Resource:" #~ msgstr "นำเข้ามาเป็นรีซอร์ส:" diff --git a/editor/translations/tr.po b/editor/translations/tr.po index 64c03e3f0b..a57b573cf9 100644 --- a/editor/translations/tr.po +++ b/editor/translations/tr.po @@ -582,8 +582,8 @@ msgstr "Uyarılar" #: editor/code_editor.cpp #, fuzzy -msgid "Zoom:" -msgstr "Yaklaş (%):" +msgid "Font Size:" +msgstr "Kaynak Yazı Türü Boyutu:" #: editor/code_editor.cpp msgid "Line:" @@ -1745,6 +1745,12 @@ msgstr "Bu işlem bir kök sahne olmadan yapılamaz." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2184,7 +2190,7 @@ msgid "Undo" msgstr "Geri" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Geri" @@ -9375,7 +9381,7 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" "Hiçbirşey görünebilir değil çünkü örüntüler çizim geçişlerine atanmış değil." @@ -9646,6 +9652,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Yaklaş (%):" + #~ msgid "Class List:" #~ msgstr "Sınıf Listesi:" @@ -10346,9 +10356,6 @@ msgstr "" #~ msgid "Source Font:" #~ msgstr "Yazı Türü Kaynağı:" -#~ msgid "Source Font Size:" -#~ msgstr "Kaynak Yazı Türü Boyutu:" - #~ msgid "Dest Resource:" #~ msgstr "Varış Kaynağı:" diff --git a/editor/translations/uk.po b/editor/translations/uk.po index 6d61acce23..befdfbd46d 100644 --- a/editor/translations/uk.po +++ b/editor/translations/uk.po @@ -9,11 +9,12 @@ # Максим Якимчук <xpinovo@gmail.com>, 2018. # Марс Ямбар <mjambarmeta@gmail.com>, 2017-2018. # Олександр Пилипчук <pilipchukap@rambler.ru>, 2018. +# Kirill Omelchenko <kirill.omelchenko@gmail.com>, 2018. msgid "" msgstr "" "Project-Id-Version: Ukrainian (Godot Engine)\n" -"PO-Revision-Date: 2018-08-24 19:45+0000\n" -"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n" +"PO-Revision-Date: 2018-12-04 22:15+0000\n" +"Last-Translator: Максим Якимчук <xpinovo@gmail.com>\n" "Language-Team: Ukrainian <https://hosted.weblate.org/projects/godot-engine/" "godot/uk/>\n" "Language: uk\n" @@ -21,7 +22,7 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 3.2-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -42,8 +43,7 @@ msgstr "Некоректні вхідні дані %i (не передано) у #: core/math/expression.cpp msgid "self can't be used because instance is null (not passed)" msgstr "" -"не можна використовувати self, оскільки екземпляр може бути порожнім (не " -"передано)" +"не можна використовувати self, оскільки екземпляр є порожнім (не передано)" #: core/math/expression.cpp msgid "Invalid operands to operator %s, %s and %s." @@ -407,14 +407,12 @@ msgid "Delete Selection" msgstr "Вилучити позначене" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Next Step" -msgstr "Перейти до наступного кроку" +msgstr "До наступного кроку" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Previous Step" -msgstr "Повернутися до попереднього кроку" +msgstr "До попереднього кроку" #: editor/animation_track_editor.cpp msgid "Optimize Animation" @@ -553,8 +551,9 @@ msgid "Warnings:" msgstr "Попередження:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "Масштаб:" +#, fuzzy +msgid "Font Size:" +msgstr "Вигляд спереду" #: editor/code_editor.cpp msgid "Line:" @@ -667,9 +666,8 @@ msgid "Edit Connection: " msgstr "Редагувати з’єднання: " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "Ви справді хочете вилучити усі з'єднання з цього сигналу?" +msgstr "Ви справді хочете вилучити усі з'єднання з сигналу «%s»?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -824,9 +822,8 @@ msgid "Error loading:" msgstr "Помилка завантаження:" #: editor/dependency_editor.cpp -#, fuzzy msgid "Load failed due to missing dependencies:" -msgstr "Не вдалося завантажити у зв'язку з відсутніми залежностями сцени:" +msgstr "Не вдалося завантажити через нестачу залежностей:" #: editor/dependency_editor.cpp editor/editor_node.cpp msgid "Open Anyway" @@ -1310,24 +1307,21 @@ msgid "File Exists, Overwrite?" msgstr "Файл існує, перезаписати його?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Select This Folder" -msgstr "Обрати цю теку" +msgstr "Вибрати цю теку" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp 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/filesystem_dock.cpp #: editor/project_manager.cpp -#, fuzzy msgid "Show in File Manager" -msgstr "Показати в файловому менеджері" +msgstr "Показати у менеджері файлів" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "New Folder..." @@ -1470,19 +1464,16 @@ msgid "Methods" msgstr "Методи" #: editor/editor_help.cpp -#, fuzzy msgid "Methods:" -msgstr "Методи" +msgstr "Методи:" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties" -msgstr "Властивості" +msgstr "Властивості теми" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties:" -msgstr "Властивості:" +msgstr "Властивості теми:" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Signals:" @@ -1509,18 +1500,16 @@ msgid "Constants:" msgstr "Константи:" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description" -msgstr "Опис" +msgstr "Опис класу" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description:" -msgstr "Опис:" +msgstr "Опис класу:" #: editor/editor_help.cpp msgid "Online Tutorials:" -msgstr "Підручники у інтернеті:" +msgstr "Підручники в інтернеті:" #: editor/editor_help.cpp msgid "" @@ -1533,14 +1522,12 @@ msgstr "" "щодо їхнього створення[/url][/color]." #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions" -msgstr "Опис властивостей:" +msgstr "Описи властивостей" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions:" -msgstr "Опис властивостей:" +msgstr "Описи властивостей:" #: editor/editor_help.cpp msgid "" @@ -1551,14 +1538,12 @@ msgstr "" "[url=$url]створіть його[/url][/color]!" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions" -msgstr "Опис методів:" +msgstr "Описи методів" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions:" -msgstr "Опис методів:" +msgstr "Описи методів:" #: editor/editor_help.cpp msgid "" @@ -1574,49 +1559,40 @@ msgid "Search Help" 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_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" @@ -1715,6 +1691,12 @@ msgstr "Ця операція не може бути виконана без к #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1723,7 +1705,7 @@ 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!" @@ -1982,13 +1964,12 @@ msgid "Unable to load addon script from path: '%s'." msgstr "Неможливо завантажити доповнення скрипт зі шляху: '%s'." #: editor/editor_node.cpp -#, fuzzy 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 "" @@ -2043,9 +2024,8 @@ 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 msgid "Play This Scene" @@ -2128,7 +2108,6 @@ msgid "Save Scene" msgstr "Зберегти сцену" #: editor/editor_node.cpp -#, fuzzy msgid "Save All Scenes" msgstr "Зберегти всі сцени" @@ -2158,7 +2137,7 @@ msgid "Undo" msgstr "Скасувати" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "Повернути" @@ -2615,6 +2594,9 @@ msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." msgstr "" +"Неможливо створити ViewportTexture на основі ресурсів, які збережено як " +"файл.\n" +"Ресурс має належати до сцени." #: editor/editor_properties.cpp msgid "" @@ -2623,6 +2605,10 @@ msgid "" "Please switch on the 'local to scene' property on it (and all resources " "containing it up to a node)." msgstr "" +"Неможливо створити ViewportTexture на основі цього ресурсу, оскільки його не " +"встановлено як локальний щодо сцени.\n" +"Будь ласка, увімкніть властивість «Локальний щодо сцени» для нього (і усіх " +"ресурсів, що його містять, аж до вузла)." #: editor/editor_properties.cpp editor/property_editor.cpp msgid "Pick a Viewport" @@ -2939,9 +2925,8 @@ msgstr "" "тип кешу!" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Favorites" -msgstr "Вибране:" +msgstr "Вибране" #: editor/filesystem_dock.cpp msgid "Cannot navigate to '%s' as it has not been found in the file system!" @@ -3027,14 +3012,12 @@ msgid "Instance" msgstr "Екземпляр" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Add to favorites" -msgstr "Вибране:" +msgstr "Додати до вибраного" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Remove from favorites" -msgstr "Вилучити з групи" +msgstr "Вилучити з вибраного" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." @@ -3065,12 +3048,10 @@ msgid "New Resource..." msgstr "Створити ресурс…" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Expand All" msgstr "Розгорнути все" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Collapse All" msgstr "Згорнути все" @@ -3094,9 +3075,8 @@ msgid "Re-Scan Filesystem" msgstr "Пересканування файлової системи" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Toggle split mode" -msgstr "Режим Перемикання" +msgstr "Перемкнути режим поділу" #: editor/filesystem_dock.cpp msgid "Search files" @@ -3128,27 +3108,23 @@ msgstr "Перезаписати" #: editor/filesystem_dock.cpp editor/plugins/script_editor_plugin.cpp msgid "Create Script" -msgstr "Створити сценарій" +msgstr "Створити скрипт" #: editor/find_in_files.cpp -#, fuzzy msgid "Find in Files" msgstr "Знайти у файлах" #: editor/find_in_files.cpp -#, fuzzy msgid "Find:" -msgstr "Знайти: " +msgstr "Знайти:" #: editor/find_in_files.cpp -#, fuzzy msgid "Folder:" -msgstr "Тека: " +msgstr "Тека:" #: editor/find_in_files.cpp -#, fuzzy msgid "Filters:" -msgstr "Фільтр: " +msgstr "Фільтри:" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp @@ -3325,12 +3301,10 @@ msgid "Failed to load resource." msgstr "Не вдалося завантажити ресурс." #: editor/inspector_dock.cpp -#, fuzzy msgid "Expand All Properties" msgstr "Розгорнути всі властивості" #: editor/inspector_dock.cpp -#, fuzzy msgid "Collapse All Properties" msgstr "Згорнути всі властивості" @@ -4289,9 +4263,8 @@ msgid "Resize CanvasItem" msgstr "Змінити розмір CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale CanvasItem" -msgstr "Обертати CanvasItem" +msgstr "Масштабувати CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Move CanvasItem" @@ -4356,9 +4329,8 @@ msgid "Rotate Mode" msgstr "Режим повороту" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale Mode" -msgstr "Режим масштабування (R)" +msgstr "Режим масштабування" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -4457,9 +4429,8 @@ msgid "Restores the object's children's ability to be selected." msgstr "Відновлює можливість вибору нащадків об'єкта." #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Skeleton Options" -msgstr "Каркас" +msgstr "Параметри каркаса" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Bones" @@ -4513,7 +4484,7 @@ msgstr "Показати панель перегляду" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" -msgstr "" +msgstr "Показати піктограми групування та блокування" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" @@ -4955,9 +4926,8 @@ msgid "Create Navigation Polygon" msgstr "Створення навігаційного полігону" #: editor/plugins/particles_2d_editor_plugin.cpp -#, fuzzy msgid "Generating Visibility Rect" -msgstr "Створити область видимості" +msgstr "Створення області видимості" #: editor/plugins/particles_2d_editor_plugin.cpp msgid "Can only set point into a ParticlesMaterial process material" @@ -5436,7 +5406,6 @@ msgid "Error writing TextFile:" msgstr "Помилка під час спроби записати TextFile:" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error: could not load file." msgstr "Помилка: не вдалося завантажити файл." @@ -5510,11 +5479,11 @@ msgstr "Перемістити вниз" #: editor/plugins/script_editor_plugin.cpp msgid "Next script" -msgstr "Наступний сценарій" +msgstr "Наступний скрипт" #: editor/plugins/script_editor_plugin.cpp msgid "Previous script" -msgstr "Попередній сценарій" +msgstr "Попередній скрипт" #: editor/plugins/script_editor_plugin.cpp msgid "File" @@ -5530,16 +5499,15 @@ msgstr "Зберегти все" #: editor/plugins/script_editor_plugin.cpp msgid "Soft Reload Script" -msgstr "М'яко перезавантажити сценарії" +msgstr "М'яко перезавантажити скрипт" #: editor/plugins/script_editor_plugin.cpp msgid "Copy Script Path" msgstr "Копіювати шлях до скрипту" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "History Previous" -msgstr "Попередній файл" +msgstr "Попередній у журналі" #: editor/plugins/script_editor_plugin.cpp msgid "History Next" @@ -5580,7 +5548,7 @@ msgstr "Запустити" #: editor/plugins/script_editor_plugin.cpp msgid "Toggle Scripts Panel" -msgstr "Перемкнути панель сценаріїв" +msgstr "Перемкнути панель скриптів" #: editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp @@ -5609,7 +5577,6 @@ msgid "Keep Debugger Open" msgstr "Залишити зневаджувач відкритим" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Debug with External Editor" msgstr "Зневадження за допомогою зовнішнього редактора" @@ -5654,7 +5621,6 @@ msgid "Debugger" msgstr "Зневаджувач" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Search Results" msgstr "Результати пошуку" @@ -5667,9 +5633,8 @@ msgid "(ignore)" 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." @@ -5758,12 +5723,10 @@ msgid "Trim Trailing Whitespace" msgstr "Обрізати кінцевий пробіл" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Spaces" msgstr "Перетворити відступ на пропуски" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Tabs" msgstr "Перетворити відступ на табуляції" @@ -5781,12 +5744,10 @@ msgid "Remove All Breakpoints" msgstr "Вилучити всі точки зупинки" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Next Breakpoint" msgstr "Перейти до наступної точки зупинки" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Previous Breakpoint" msgstr "Перейти до попередньої точки зупинки" @@ -5795,17 +5756,14 @@ msgid "Find Previous" msgstr "Знайти попереднє" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Find in Files..." msgstr "Знайти у файлах…" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function..." msgstr "Перейти до функції..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Line..." msgstr "Перейти до рядка..." @@ -5898,13 +5856,12 @@ msgid "Animation Key Inserted." msgstr "Вставлено ключ анімації." #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Pitch" -msgstr "Перемикач" +msgstr "Хилитання" #: editor/plugins/spatial_editor_plugin.cpp msgid "Yaw" -msgstr "" +msgstr "Відхилення" #: editor/plugins/spatial_editor_plugin.cpp msgid "Objects Drawn" @@ -6071,9 +6028,8 @@ msgid "Freelook Speed Modifier" msgstr "Коефіцієнт швидкості огляду" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "View Rotation Locked" -msgstr "Зафіксувати обертання перегляду" +msgstr "Обертання перегляду заблоковано" #: editor/plugins/spatial_editor_plugin.cpp msgid "XForm Dialog" @@ -6577,9 +6533,8 @@ msgid "Fix Invalid Tiles" msgstr "Виправити некоректні плитки" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Cut Selection" -msgstr "Центрувати на вибраному" +msgstr "Вирізати позначене" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Paint TileMap" @@ -6626,32 +6581,28 @@ msgid "Pick Tile" msgstr "Вибрати плитку" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Copy Selection" -msgstr "Пересунути позначене" +msgstr "Копіювати позначене" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate left" -msgstr "Режим повороту" +msgstr "Обертати ліворуч" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate right" -msgstr "Повернути полігон" +msgstr "Обертати праворуч" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip horizontally" -msgstr "" +msgstr "Відзеркалити горизонтально" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip vertically" -msgstr "" +msgstr "Віддзеркалити вертикально" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Clear transform" -msgstr "Перетворення" +msgstr "Зняти перетворення" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Add Texture(s) to TileSet" @@ -6682,7 +6633,6 @@ msgid "Display tile's names (hold Alt Key)" msgstr "Показувати назви плиток (якщо утримують клавішу Alt)" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Remove selected texture and ALL TILES which use it?" msgstr "Вилучити позначену текстуру і усі плитки, у яких її використано?" @@ -6699,9 +6649,8 @@ msgid "Merge from scene?" msgstr "Об'єднати зі сцени?" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "%s file(s) were not added because was already on the list." -msgstr " файлів не додано, оскільки вони вже були у списку." +msgstr "%s файлів не додано, оскільки вони вже були у списку." #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -6790,12 +6739,11 @@ msgstr "" #: editor/project_export.cpp msgid "Release" -msgstr "" +msgstr "Випуск" #: editor/project_export.cpp -#, fuzzy msgid "Exporting All" -msgstr "Експортування" +msgstr "Експортування усього" #: editor/project_export.cpp msgid "Presets" @@ -6806,9 +6754,8 @@ msgid "Add..." msgstr "Додати..." #: editor/project_export.cpp -#, fuzzy msgid "Export Path:" -msgstr "Експортувати проект" +msgstr "Шлях експорту:" #: editor/project_export.cpp msgid "Resources" @@ -6873,14 +6820,12 @@ msgid "Export PCK/Zip" msgstr "Експортувати PCK/Zip" #: editor/project_export.cpp -#, fuzzy msgid "Export mode?" -msgstr "Режим експортування:" +msgstr "Режим експортування?" #: editor/project_export.cpp -#, fuzzy msgid "Export All" -msgstr "Експортування" +msgstr "Експортувати усе" #: editor/project_export.cpp msgid "Export templates for this platform are missing:" @@ -7569,7 +7514,6 @@ msgid "Step" msgstr "Крок" #: editor/rename_dialog.cpp -#, fuzzy msgid "Amount by which counter is incremented for each node" msgstr "Величина, на яку збільшується значення лічильника для кожного вузла" @@ -7578,7 +7522,6 @@ msgid "Padding" msgstr "Фаска" #: editor/rename_dialog.cpp -#, fuzzy msgid "" "Minimum number of digits for the counter.\n" "Missing digits are padded with leading zeros." @@ -7727,6 +7670,8 @@ msgid "" "Disabling \"editable_instance\" will cause all properties of the node to be " "reverted to their default." msgstr "" +"Вимикання «editable_instance» призведе до повернення типових значень для " +"усіх властивостей вузла." #: editor/scene_tree_dock.cpp msgid "Editable Children" @@ -7801,9 +7746,8 @@ msgid "Clear Inheritance" msgstr "Усунути успадкування" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Open documentation" -msgstr "Відкрити онлайнову документацію Godot" +msgstr "Відкрити документацію" #: editor/scene_tree_dock.cpp msgid "Delete Node(s)" @@ -7818,9 +7762,8 @@ msgid "Change Type" msgstr "Змінити тип" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Extend Script" -msgstr "Відкрити сценарій" +msgstr "Розширити скрипт" #: editor/scene_tree_dock.cpp msgid "Make Scene Root" @@ -7908,7 +7851,7 @@ msgstr "" #: editor/scene_tree_editor.cpp editor/script_create_dialog.cpp msgid "Open Script" -msgstr "Відкрити сценарій" +msgstr "Відкрити скрипт" #: editor/scene_tree_editor.cpp msgid "" @@ -7983,9 +7926,8 @@ msgid "Path is empty" msgstr "Порожній шлях" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Filename is empty" -msgstr "Спрайт порожній!" +msgstr "Назва файла є порожньою" #: editor/script_create_dialog.cpp msgid "Path is not local" @@ -8076,9 +8018,8 @@ msgid "Bytes:" msgstr "Байтів:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Stack Trace" -msgstr "Стосувати кадри" +msgstr "Трасування стека" #: editor/script_editor_debugger.cpp msgid "Pick one or more items from the list to display the graph." @@ -8528,7 +8469,7 @@ msgstr "Кінець трасування стека для внутрішньо #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Bake NavMesh" -msgstr "" +msgstr "Запекти NavMesh" #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Clear the navigation mesh." @@ -8912,12 +8853,11 @@ msgstr "Шукати VisualScript" #: modules/visual_script/visual_script_property_selector.cpp msgid "Get %s" -msgstr "" +msgstr "Отримати %s" #: modules/visual_script/visual_script_property_selector.cpp -#, fuzzy msgid "Set %s" -msgstr "Встановити " +msgstr "Встановити %s" #: platform/javascript/export/export.cpp msgid "Run in Browser" @@ -9015,6 +8955,8 @@ msgid "" "CPUParticles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." msgstr "" +"Анімація CPUParticles2D потребує використання CanvasItemMaterial із " +"увімкненим параметром «Анімація часток»." #: scene/2d/light_2d.cpp msgid "" @@ -9072,6 +9014,8 @@ 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." @@ -9217,15 +9161,16 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." -msgstr "" -"Нічого не видно, оскільки сітки не було пов'язано із проходами малювання." +msgid "Nothing is visible because no mesh has been assigned." +msgstr "Нічого не видно, оскільки не призначено сітки." #: scene/3d/cpu_particles.cpp msgid "" "CPUParticles animation requires the usage of a SpatialMaterial with " "\"Billboard Particles\" enabled." msgstr "" +"Анімація CPUParticles потребує використання SpatialMaterial із увімкненим " +"параметром «Частки дошки»." #: scene/3d/gi_probe.cpp msgid "Plotting Meshes" @@ -9234,8 +9179,8 @@ msgstr "Побудова сітки" #: scene/3d/navigation_mesh.cpp msgid "A NavigationMesh resource must be set or created for this node to work." msgstr "" -"Ресурс Навігаційна сітка повинен бути встановлений або створений для роботи " -"цього вузла." +"Для роботи цього вузла слід встановити або створити ресурс «Навігаційна " +"сітка»." #: scene/3d/navigation_mesh.cpp msgid "" @@ -9256,20 +9201,21 @@ msgid "" "Particles animation requires the usage of a SpatialMaterial with \"Billboard " "Particles\" enabled." msgstr "" +"Анімація часток потребує використання SpatialMaterial із увімкненим " +"параметром «Частки дошки»." #: scene/3d/path.cpp -#, fuzzy msgid "PathFollow only works when set as a child of a Path node." -msgstr "PathFollow2D працюватиме лише як дочірній елемент вузла Path2D." +msgstr "PathFollow працюватиме лише як дочірній елемент вузла Path." #: scene/3d/path.cpp -#, fuzzy msgid "OrientedPathFollow only works when set as a child of a Path node." -msgstr "PathFollow2D працюватиме лише як дочірній елемент вузла Path2D." +msgstr "OrientedPathFollow працюватиме лише як дочірній елемент вузла Path." #: scene/3d/path.cpp msgid "OrientedPathFollow requires up vectors enabled in its parent Path." msgstr "" +"OrientedPathFollow потребує вмикання векторів у його батьківському Path." #: scene/3d/physics_body.cpp msgid "" @@ -9312,7 +9258,6 @@ msgid "This body will be ignored until you set a mesh" msgstr "Це тіло буде проігноровано, аж доки ви не встановите сітку" #: scene/3d/soft_body.cpp -#, fuzzy msgid "" "Size changes to SoftBody will be overridden by the physics engine when " "running.\n" @@ -9402,7 +9347,7 @@ msgstr "" #: scene/gui/range.cpp msgid "If exp_edit is true min_value must be > 0." -msgstr "" +msgstr "Якщо exp_edit має значення true, min_value має бути > 0." #: scene/gui/scroll_container.cpp msgid "" @@ -9479,6 +9424,9 @@ msgstr "Призначення однорідного." msgid "Varyings can only be assigned in vertex function." msgstr "Змінні величини можна пов'язувати лише із функцією вузлів." +#~ msgid "Zoom:" +#~ msgstr "Масштаб:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "Ви справді хочете вилучити усі з'єднання з сигналу \"" diff --git a/editor/translations/ur_PK.po b/editor/translations/ur_PK.po index eb509e1a82..688f386b3c 100644 --- a/editor/translations/ur_PK.po +++ b/editor/translations/ur_PK.po @@ -540,7 +540,7 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -msgid "Zoom:" +msgid "Font Size:" msgstr "" #: editor/code_editor.cpp @@ -1673,6 +1673,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2071,7 +2077,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -8955,7 +8961,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp diff --git a/editor/translations/vi.po b/editor/translations/vi.po index 950964a00c..f6e694d4e5 100644 --- a/editor/translations/vi.po +++ b/editor/translations/vi.po @@ -557,9 +557,8 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -#, fuzzy -msgid "Zoom:" -msgstr "Phóng to" +msgid "Font Size:" +msgstr "" #: editor/code_editor.cpp msgid "Line:" @@ -1705,6 +1704,12 @@ msgstr "" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2110,7 +2115,7 @@ msgid "Undo" msgstr "" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "" @@ -9012,7 +9017,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9239,6 +9244,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "Phóng to" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "Bạn có chắc muốn xóa bỏ tất cả kết nối từ \"" diff --git a/editor/translations/zh_CN.po b/editor/translations/zh_CN.po index 169c31c1c3..512589d2df 100644 --- a/editor/translations/zh_CN.po +++ b/editor/translations/zh_CN.po @@ -13,7 +13,7 @@ # Geequlim <geequlim@gmail.com>, 2016-2018. # jie Shi <meishijiemeimeimei@gmail.com>, 2018. # Jingtian Pan <panjingtian@126.com>, 2018. -# lalalaring <783482203@qq.com>, 2017. +# lalalaring <783482203@qq.com>, 2017, 2018. # Luo Jun <vipsbpig@gmail.com>, 2016-2017, 2018. # oberon-tonya <360119124@qq.com>, 2016. # plumsky <x-wolf@163.com>, 2018. @@ -34,12 +34,14 @@ # 刘庆文 <liuqingwen@163.com>, 2018. # Haowen Liu <liu.haowen.andy@gmail.com>, 2018. # tangdou1 <1093505442@qq.com>, 2018. +# yzt <834950797@qq.com>, 2018. +# DKLost <514dklost@gmail.com>, 2018. msgid "" msgstr "" "Project-Id-Version: Chinese (Simplified) (Godot Engine)\n" "POT-Creation-Date: 2018-01-20 12:15+0200\n" -"PO-Revision-Date: 2018-11-26 16:10+0000\n" -"Last-Translator: Luo Jun <vipsbpig@gmail.com>\n" +"PO-Revision-Date: 2018-12-04 05:19+0000\n" +"Last-Translator: tangdou1 <1093505442@qq.com>\n" "Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/" "godot-engine/godot/zh_Hans/>\n" "Language: zh_CN\n" @@ -47,7 +49,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 3.3-dev\n" +"X-Generator: Weblate 3.4-dev\n" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -228,7 +230,7 @@ msgstr "触发器" #: editor/animation_track_editor.cpp msgid "Capture" -msgstr "捕获" +msgstr "截图" #: editor/animation_track_editor.cpp msgid "Nearest" @@ -425,14 +427,12 @@ msgid "Delete Selection" msgstr "删除已选中项" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Next Step" msgstr "前往下一步" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Go to Previous Step" -msgstr "前往上一步" +msgstr "返回上一步" #: editor/animation_track_editor.cpp msgid "Optimize Animation" @@ -571,8 +571,9 @@ msgid "Warnings:" msgstr "警告:" #: editor/code_editor.cpp -msgid "Zoom:" -msgstr "缩放:" +#, fuzzy +msgid "Font Size:" +msgstr "源字体大小:" #: editor/code_editor.cpp msgid "Line:" @@ -683,9 +684,8 @@ msgid "Edit Connection: " msgstr "编辑广播订阅: " #: editor/connections_dialog.cpp -#, fuzzy msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "你确定要从该广播信号中移除所有连接吗?" +msgstr "你确定要从信号 “%s” 中移除所有连接吗?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" @@ -833,9 +833,8 @@ msgid "Error loading:" msgstr "加载出错:" #: editor/dependency_editor.cpp -#, fuzzy msgid "Load failed due to missing dependencies:" -msgstr "加载场景失败,找不到以下依赖项目:" +msgstr "由于缺少依赖项, 加载失败:" #: editor/dependency_editor.cpp editor/editor_node.cpp msgid "Open Anyway" @@ -1313,24 +1312,21 @@ msgid "File Exists, Overwrite?" msgstr "文件已存在,确定要覆盖它吗?" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Select This Folder" -msgstr "选择当前目录" +msgstr "选择此文件夹" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp 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/filesystem_dock.cpp #: editor/project_manager.cpp -#, fuzzy msgid "Show in File Manager" -msgstr "在资源管理器中打开" +msgstr "在文件管理器中显示" #: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp msgid "New Folder..." @@ -1354,7 +1350,7 @@ msgstr "打开单个文件" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Open File(s)" -msgstr "打开文件" +msgstr "打开一个或多个文件" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Open a Directory" @@ -1473,19 +1469,16 @@ msgid "Methods" msgstr "方法" #: editor/editor_help.cpp -#, fuzzy msgid "Methods:" -msgstr "方法" +msgstr "方法:" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties" -msgstr "属性" +msgstr "主题属性" #: editor/editor_help.cpp -#, fuzzy msgid "Theme Properties:" -msgstr "属性:" +msgstr "Theme Properties:" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Signals:" @@ -1512,14 +1505,12 @@ msgid "Constants:" msgstr "常量:" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description" -msgstr "描述" +msgstr "类说明" #: editor/editor_help.cpp -#, fuzzy msgid "Class Description:" -msgstr "描述:" +msgstr "类说明:" #: editor/editor_help.cpp msgid "Online Tutorials:" @@ -1535,14 +1526,12 @@ msgstr "" "url][/color]的方式帮助我们完善文档。" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions" -msgstr "属性描述:" +msgstr "属性说明" #: editor/editor_help.cpp -#, fuzzy msgid "Property Descriptions:" -msgstr "属性描述:" +msgstr "属性说明:" #: editor/editor_help.cpp msgid "" @@ -1553,14 +1542,12 @@ msgstr "" "[/color]!" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions" -msgstr "方法描述:" +msgstr "方法说明" #: editor/editor_help.cpp -#, fuzzy msgid "Method Descriptions:" -msgstr "方法描述:" +msgstr "方法说明:" #: editor/editor_help.cpp msgid "" @@ -1576,49 +1563,40 @@ msgid "Search Help" 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_inspector.cpp editor/project_settings_editor.cpp msgid "Property:" @@ -1717,13 +1695,19 @@ msgstr "此操作必须在打开一个场景后才能执行。" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." 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!" @@ -1967,11 +1951,10 @@ msgid "Unable to load addon script from path: '%s'." msgstr "无法从路径中加载插件脚本: \"%s\"。" #: editor/editor_node.cpp -#, fuzzy msgid "" "Unable to load addon script from path: '%s' There seems to be an error in " "the code, please check the syntax." -msgstr "无法从路径加载插件脚本: \"%s\" 脚本不在工具模式下。" +msgstr "无法从路径加载插件脚本: ‘%s’ 脚本看上去似乎有代码错误,请检查其语法。" #: editor/editor_node.cpp msgid "" @@ -2020,9 +2003,8 @@ 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 msgid "Play This Scene" @@ -2050,7 +2032,7 @@ msgstr "%d 个文件未展示" #: editor/editor_node.cpp msgid "Dock Position" -msgstr "停靠区位置" +msgstr "面板位置" #: editor/editor_node.cpp msgid "Distraction Free Mode" @@ -2105,7 +2087,6 @@ msgid "Save Scene" msgstr "保存场景" #: editor/editor_node.cpp -#, fuzzy msgid "Save All Scenes" msgstr "保存所有场景" @@ -2135,7 +2116,7 @@ msgid "Undo" msgstr "撤销" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "重做" @@ -2161,7 +2142,7 @@ msgstr "导出" #: editor/editor_node.cpp msgid "Tools" -msgstr "工具(tools)" +msgstr "工具" #: editor/editor_node.cpp msgid "Open Project Data Folder" @@ -2582,6 +2563,8 @@ msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." msgstr "" +"无法在保存为文件的资源上创建视图纹理。\n" +"资源需要属于场景。" #: editor/editor_properties.cpp msgid "" @@ -2590,6 +2573,8 @@ msgid "" "Please switch on the 'local to scene' property on it (and all resources " "containing it up to a node)." msgstr "" +"无法在此资源上创建视图纹理, 因为它未设置为本地到场景。\n" +"请打开上面的 `本地到场景` 属性 (以及包含它的所有资源到节点)。" #: editor/editor_properties.cpp editor/property_editor.cpp msgid "Pick a Viewport" @@ -2771,7 +2756,7 @@ msgstr "导入:" msgid "" "No download links found for this version. Direct download is only available " "for official releases." -msgstr "当前版本没有下载链接。仅有官方正式版提供直链下载。" +msgstr "没有找到这个版本的下载链接。直接下载只适用于正式版本。" #: editor/export_template_manager.cpp #: editor/plugins/asset_library_editor_plugin.cpp @@ -2900,9 +2885,8 @@ msgid "Can't open file_type_cache.cch for writing, not saving file type cache!" msgstr "无法以可写方式打开file_type_cache.cch!" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Favorites" -msgstr "收藏:" +msgstr "收藏夹" #: editor/filesystem_dock.cpp msgid "Cannot navigate to '%s' as it has not been found in the file system!" @@ -2985,14 +2969,12 @@ msgid "Instance" msgstr "创建实例节点" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Add to favorites" -msgstr "收藏:" +msgstr "添加到收藏夹" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Remove from favorites" -msgstr "从分组中移除" +msgstr "从收藏夹中删除" #: editor/filesystem_dock.cpp msgid "Edit Dependencies..." @@ -3023,14 +3005,12 @@ msgid "New Resource..." msgstr "新建资源…" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Expand All" -msgstr "展开所有" +msgstr "全部展开" #: editor/filesystem_dock.cpp editor/script_editor_debugger.cpp -#, fuzzy msgid "Collapse All" -msgstr "收起所有" +msgstr "全部折叠" #: editor/filesystem_dock.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp @@ -3052,9 +3032,8 @@ msgid "Re-Scan Filesystem" msgstr "重新扫描文件系统" #: editor/filesystem_dock.cpp -#, fuzzy msgid "Toggle split mode" -msgstr "切换模式" +msgstr "切换拆分模式" #: editor/filesystem_dock.cpp msgid "Search files" @@ -3089,24 +3068,20 @@ msgid "Create Script" msgstr "创建脚本" #: editor/find_in_files.cpp -#, fuzzy msgid "Find in Files" msgstr "在文件中查找" #: editor/find_in_files.cpp -#, fuzzy msgid "Find:" -msgstr "查找: " +msgstr "查找:" #: editor/find_in_files.cpp -#, fuzzy msgid "Folder:" -msgstr "文件夹: " +msgstr "文件夹:" #: editor/find_in_files.cpp -#, fuzzy msgid "Filters:" -msgstr "筛选" +msgstr "筛选:" #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp #: editor/plugins/script_text_editor.cpp @@ -3207,7 +3182,7 @@ 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" @@ -3283,14 +3258,12 @@ msgid "Failed to load resource." msgstr "加载资源失败。" #: editor/inspector_dock.cpp -#, fuzzy msgid "Expand All Properties" msgstr "展开所有属性" #: editor/inspector_dock.cpp -#, fuzzy msgid "Collapse All Properties" -msgstr "收起所有属性" +msgstr "折叠所有属性" #: editor/inspector_dock.cpp editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/script_editor_plugin.cpp @@ -4228,9 +4201,8 @@ msgid "Resize CanvasItem" msgstr "调整 CanvasItem 尺寸" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale CanvasItem" -msgstr "旋转 CanvasItem" +msgstr "缩放包含项" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Move CanvasItem" @@ -4293,9 +4265,8 @@ msgid "Rotate Mode" msgstr "旋转模式" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Scale Mode" -msgstr "缩放模式(R)" +msgstr "缩放模式" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -4392,9 +4363,8 @@ msgid "Restores the object's children's ability to be selected." msgstr "恢复节点的子孙能够被选中。" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Skeleton Options" -msgstr "骨架" +msgstr "骨架选项" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Bones" @@ -4448,7 +4418,7 @@ msgstr "显示视图窗口" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show Group And Lock Icons" -msgstr "" +msgstr "显示组和锁定图标" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" @@ -4889,7 +4859,6 @@ msgid "Create Navigation Polygon" msgstr "创建导航多边形" #: editor/plugins/particles_2d_editor_plugin.cpp -#, fuzzy msgid "Generating Visibility Rect" msgstr "生成可视化区域" @@ -5208,7 +5177,7 @@ msgstr "移动点" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Ctrl: Rotate" -msgstr "Ctrl:旋转" +msgstr "Ctrl:旋转" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Shift: Move All" @@ -5369,9 +5338,8 @@ msgid "Error writing TextFile:" msgstr "写入文本文件时出错:" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Error: could not load file." -msgstr "错误,无法加载文件。" +msgstr "错误:无法加载文件。" #: editor/plugins/script_editor_plugin.cpp msgid "Error could not load file." @@ -5470,7 +5438,6 @@ msgid "Copy Script Path" msgstr "拷贝脚本路径" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "History Previous" msgstr "后退" @@ -5542,7 +5509,6 @@ msgid "Keep Debugger Open" msgstr "保持调试器打开" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Debug with External Editor" msgstr "使用外部编辑器进行调试" @@ -5587,7 +5553,6 @@ msgid "Debugger" msgstr "调试器" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Search Results" msgstr "搜索结果" @@ -5600,9 +5565,8 @@ msgid "(ignore)" 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." @@ -5691,14 +5655,12 @@ msgid "Trim Trailing Whitespace" msgstr "修剪行后空白" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Spaces" msgstr "将缩进转为空格" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Convert Indent to Tabs" -msgstr "将缩进转为Tab" +msgstr "将缩进转为Tabs" #: editor/plugins/script_text_editor.cpp msgid "Auto Indent" @@ -5714,12 +5676,10 @@ msgid "Remove All Breakpoints" msgstr "移除所有断点" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Next Breakpoint" msgstr "前往下一个断点" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Previous Breakpoint" msgstr "前往上一个断点" @@ -5728,19 +5688,16 @@ msgid "Find Previous" msgstr "查找上一项" #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Find in Files..." msgstr "在文件中查找..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Function..." -msgstr "前往函数..." +msgstr "转到函数..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Go to Line..." -msgstr "前往行..." +msgstr "转到行..." #: editor/plugins/script_text_editor.cpp msgid "Contextual Help" @@ -5836,7 +5793,7 @@ msgstr "音调" #: editor/plugins/spatial_editor_plugin.cpp msgid "Yaw" -msgstr "" +msgstr "偏航" #: editor/plugins/spatial_editor_plugin.cpp msgid "Objects Drawn" @@ -6003,7 +5960,6 @@ msgid "Freelook Speed Modifier" msgstr "自由视图速度调整" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "View Rotation Locked" msgstr "锁定视角旋转" @@ -6507,9 +6463,8 @@ msgid "Fix Invalid Tiles" msgstr "修复无效的瓦片" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Cut Selection" -msgstr "居中显示选中节点" +msgstr "切割选择" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Paint TileMap" @@ -6556,32 +6511,28 @@ msgid "Pick Tile" msgstr "选择砖块(Tile)" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Copy Selection" -msgstr "移动选中项" +msgstr "复制选择" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate left" -msgstr "旋转模式" +msgstr "向左旋转" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Rotate right" -msgstr "向右移动" +msgstr "向右旋转" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip horizontally" -msgstr "" +msgstr "水平翻转" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Flip vertically" -msgstr "" +msgstr "垂直翻转" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Clear transform" -msgstr "变换" +msgstr "清除变换" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Add Texture(s) to TileSet" @@ -6611,7 +6562,6 @@ msgid "Display tile's names (hold Alt Key)" msgstr "显示瓦片的名字(按住 Alt 键)" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Remove selected texture and ALL TILES which use it?" msgstr "确定移除选中的纹理以及【所有】使用它的【瓦片集】吗?" @@ -6628,9 +6578,8 @@ msgid "Merge from scene?" msgstr "确定要合并场景?" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "%s file(s) were not added because was already on the list." -msgstr " 文件没有被添加,因为已添加在列表中。" +msgstr "%s 文件没有被添加,因为已添加在列表中。" #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -6716,14 +6665,12 @@ msgid "Export templates for this platform are missing/corrupted:" msgstr "没有此平台的导出模板:" #: editor/project_export.cpp -#, fuzzy msgid "Release" -msgstr "刚好释放" +msgstr "发行" #: editor/project_export.cpp -#, fuzzy msgid "Exporting All" -msgstr "正在导出 %s" +msgstr "全部导出" #: editor/project_export.cpp msgid "Presets" @@ -6734,9 +6681,8 @@ msgid "Add..." msgstr "添加..." #: editor/project_export.cpp -#, fuzzy msgid "Export Path:" -msgstr "导出预设:" +msgstr "导出路径:" #: editor/project_export.cpp msgid "Resources" @@ -6797,14 +6743,12 @@ msgid "Export PCK/Zip" msgstr "导出 PCK/ZIP" #: editor/project_export.cpp -#, fuzzy msgid "Export mode?" -msgstr "导出模式:" +msgstr "导出模式?" #: editor/project_export.cpp -#, fuzzy msgid "Export All" -msgstr "导出" +msgstr "全部导出" #: editor/project_export.cpp msgid "Export templates for this platform are missing:" @@ -7482,7 +7426,6 @@ msgid "Step" msgstr "步长" #: editor/rename_dialog.cpp -#, fuzzy msgid "Amount by which counter is incremented for each node" msgstr "由计数器增量得到的每个节点的总量" @@ -7491,7 +7434,6 @@ msgid "Padding" msgstr "内边距" #: editor/rename_dialog.cpp -#, fuzzy msgid "" "Minimum number of digits for the counter.\n" "Missing digits are padded with leading zeros." @@ -7637,7 +7579,7 @@ msgstr "将新场景另存为..." msgid "" "Disabling \"editable_instance\" will cause all properties of the node to be " "reverted to their default." -msgstr "" +msgstr "禁用“可编辑实例”将导致节点的所有属性恢复为其默认值。" #: editor/scene_tree_dock.cpp msgid "Editable Children" @@ -7710,9 +7652,8 @@ msgid "Clear Inheritance" msgstr "清除继承" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Open documentation" -msgstr "打开Godot在线文档" +msgstr "打开Godot文档" #: editor/scene_tree_dock.cpp msgid "Delete Node(s)" @@ -7727,7 +7668,6 @@ msgid "Change Type" msgstr "更改类型" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Extend Script" msgstr "打开脚本" @@ -7890,9 +7830,8 @@ msgid "Path is empty" msgstr "文件路径为空" #: editor/script_create_dialog.cpp -#, fuzzy msgid "Filename is empty" -msgstr "Sprite 是空的!" +msgstr "文件名为空" #: editor/script_create_dialog.cpp msgid "Path is not local" @@ -7983,9 +7922,8 @@ msgid "Bytes:" msgstr "字节:" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Stack Trace" -msgstr "堆栈帧(Stack Frames)" +msgstr "栈追踪" #: editor/script_editor_debugger.cpp msgid "Pick one or more items from the list to display the graph." @@ -8433,7 +8371,7 @@ msgstr "内部异常堆栈追朔结束" #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Bake NavMesh" -msgstr "" +msgstr "烘焙导航网" #: modules/recast/navigation_mesh_editor_plugin.cpp msgid "Clear the navigation mesh." @@ -8806,12 +8744,11 @@ msgstr "搜索可视化脚本节点" #: modules/visual_script/visual_script_property_selector.cpp msgid "Get %s" -msgstr "" +msgstr "得到 %s" #: modules/visual_script/visual_script_property_selector.cpp -#, fuzzy msgid "Set %s" -msgstr "设值 " +msgstr "设值 %s" #: platform/javascript/export/export.cpp msgid "Run in Browser" @@ -8903,7 +8840,7 @@ msgstr "形状资源必须是通过CollisionShape2D节点的shape属性创建的 msgid "" "CPUParticles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." -msgstr "" +msgstr "CPUParticles2D动画需要使用启用了“粒子动画”的CanvasItemMaterial。" #: scene/2d/light_2d.cpp msgid "" @@ -8951,7 +8888,7 @@ msgstr "粒子材质没有指定,该行为无效。" msgid "" "Particles2D animation requires the usage of a CanvasItemMaterial with " "\"Particles Animation\" enabled." -msgstr "" +msgstr "Particles2D 动画需要使用启用了“粒子动画”的CanvasItemMaterial。" #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." @@ -9084,14 +9021,14 @@ msgstr "" #: scene/3d/cpu_particles.cpp #, fuzzy -msgid "Nothing is visible because no mesh has not been assigned." -msgstr "粒子不可见,因为没有网格(meshe)指定到绘制通道(draw passes)。" +msgid "Nothing is visible because no mesh has been assigned." +msgstr "无物可见,因为没有未被分配的网格(mesh)。" #: scene/3d/cpu_particles.cpp msgid "" "CPUParticles animation requires the usage of a SpatialMaterial with " "\"Billboard Particles\" enabled." -msgstr "" +msgstr "CPUParticles动画需要使用启动了“Billboard Particles”的SpatialMaterial。" #: scene/3d/gi_probe.cpp msgid "Plotting Meshes" @@ -9117,21 +9054,20 @@ msgstr "粒子不可见,因为没有网格(meshe)指定到绘制通道(draw pa msgid "" "Particles animation requires the usage of a SpatialMaterial with \"Billboard " "Particles\" enabled." -msgstr "" +msgstr "粒子动画需要使用启用了“Billboard Particles”的SpatialMaterial。" #: scene/3d/path.cpp -#, fuzzy msgid "PathFollow only works when set as a child of a Path node." -msgstr "PathFollow2D类型的节点只有作为Path2D的子节点节才能正常工作。" +msgstr "PathFollow类型的节点只有作为Path类型节点的子节点才能正常工作。" #: scene/3d/path.cpp -#, fuzzy msgid "OrientedPathFollow only works when set as a child of a Path node." -msgstr "PathFollow2D类型的节点只有作为Path2D的子节点节才能正常工作。" +msgstr "" +"OrientedPathFollow 类型的节点只有作为Path类型节点的子节点才能正常工作。" #: scene/3d/path.cpp msgid "OrientedPathFollow requires up vectors enabled in its parent Path." -msgstr "" +msgstr "OrientedPathFollow 需要再其父路径中启用up vectors。" #: scene/3d/physics_body.cpp msgid "" @@ -9169,7 +9105,6 @@ msgid "This body will be ignored until you set a mesh" msgstr "这个物体将被忽略,除非设置一个网格" #: scene/3d/soft_body.cpp -#, fuzzy msgid "" "Size changes to SoftBody will be overridden by the physics engine when " "running.\n" @@ -9257,7 +9192,7 @@ msgstr "" #: scene/gui/range.cpp msgid "If exp_edit is true min_value must be > 0." -msgstr "" +msgstr "如果exp_edit为true, 则min_value必须为>0。" #: scene/gui/scroll_container.cpp msgid "" @@ -9329,6 +9264,9 @@ msgstr "对uniform的赋值。" msgid "Varyings can only be assigned in vertex function." msgstr "变量只能在顶点函数中指定。" +#~ msgid "Zoom:" +#~ msgstr "缩放:" + #~ msgid "Are you sure you want to remove all connections from the \"" #~ msgstr "您确定要移除所有广播连接从 \"" @@ -10045,9 +9983,6 @@ msgstr "变量只能在顶点函数中指定。" #~ msgid "Source Font:" #~ msgstr "源字体文件:" -#~ msgid "Source Font Size:" -#~ msgstr "源字体大小:" - #~ msgid "Dest Resource:" #~ msgstr "目标资源:" diff --git a/editor/translations/zh_HK.po b/editor/translations/zh_HK.po index 41ac16cd12..f70a7a2b2f 100644 --- a/editor/translations/zh_HK.po +++ b/editor/translations/zh_HK.po @@ -580,9 +580,8 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -#, fuzzy -msgid "Zoom:" -msgstr "放大" +msgid "Font Size:" +msgstr "" #: editor/code_editor.cpp #, fuzzy @@ -1788,6 +1787,12 @@ msgstr "不能執行這個動作,因為沒有tree root." #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2215,7 +2220,7 @@ msgid "Undo" msgstr "復原" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "重製" @@ -9354,7 +9359,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9583,6 +9588,10 @@ msgid "Varyings can only be assigned in vertex function." msgstr "" #, fuzzy +#~ msgid "Zoom:" +#~ msgstr "放大" + +#, fuzzy #~ msgid "Public Methods" #~ msgstr "選擇模式" diff --git a/editor/translations/zh_TW.po b/editor/translations/zh_TW.po index fe162ba39e..d902a58b73 100644 --- a/editor/translations/zh_TW.po +++ b/editor/translations/zh_TW.po @@ -561,9 +561,8 @@ msgid "Warnings:" msgstr "" #: editor/code_editor.cpp -#, fuzzy -msgid "Zoom:" -msgstr "放大" +msgid "Font Size:" +msgstr "" #: editor/code_editor.cpp msgid "Line:" @@ -1743,6 +1742,12 @@ msgstr "此操作無法復原, 確定要還原嗎?" #: 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 "" + +#: editor/editor_node.cpp +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -2151,7 +2156,7 @@ msgid "Undo" msgstr "復原" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp -#: scene/gui/line_edit.cpp +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Redo" msgstr "取消「復原」" @@ -9200,7 +9205,7 @@ msgid "" msgstr "" #: scene/3d/cpu_particles.cpp -msgid "Nothing is visible because no mesh has not been assigned." +msgid "Nothing is visible because no mesh has been assigned." msgstr "" #: scene/3d/cpu_particles.cpp @@ -9430,6 +9435,10 @@ msgstr "" msgid "Varyings can only be assigned in vertex function." msgstr "" +#, fuzzy +#~ msgid "Zoom:" +#~ msgstr "放大" + #~ msgid "Class List:" #~ msgstr "Class 列表:" |