diff options
Diffstat (limited to 'tools')
127 files changed, 34735 insertions, 8042 deletions
diff --git a/tools/collada/collada.cpp b/tools/collada/collada.cpp index 11a0e1726b..268d42a613 100644 --- a/tools/collada/collada.cpp +++ b/tools/collada/collada.cpp @@ -681,9 +681,6 @@ void Collada::_parse_effect_material(XMLParser& parser,Effect &effect,String &id } else { String uri = effect.params[surface]; - int channel=0; - //if (parser.has_attribute("texcoord")) - if (what=="diffuse") { effect.diffuse.texture=uri; @@ -759,9 +756,6 @@ void Collada::_parse_effect_material(XMLParser& parser,Effect &effect,String &id } else { String uri = effect.params[surface]; - int channel=0; - //if (parser.has_attribute("texcoord")) - if (parser.has_attribute("bumptype") && parser.get_attribute_value("bumptype")!="NORMALMAP") { WARN_PRINT("'bump' texture type is not NORMALMAP, only NORMALMAP is supported.") } @@ -2636,7 +2630,6 @@ void Collada::_find_morph_nodes(VisualScene *p_vscene,Node *p_node) { base=sk.base; } else if (state.morph_controller_data_map.has(base)) { - MorphControllerData &sk = state.morph_controller_data_map[base]; state.morph_ownership_map[base]=nj->id; break; } else { diff --git a/tools/doc/doc_data.cpp b/tools/doc/doc_data.cpp index e3689cf13d..398267937b 100644 --- a/tools/doc/doc_data.cpp +++ b/tools/doc/doc_data.cpp @@ -36,21 +36,6 @@ #include "io/compression.h" #include "scene/resources/theme.h" -struct _ConstantComparator { - - inline bool operator()(const DocData::ConstantDoc &a, const DocData::ConstantDoc &b) const { - String left_a = a.name.find("_") == -1 ? a.name : a.name.substr(0, a.name.find("_")); - String left_b = b.name.find("_") == -1 ? b.name : b.name.substr(0, b.name.find("_")); - if (left_a == left_b) // If they have the same prefix - if (a.value == b.value) - return a.name < b.name; // Sort by name if the values are the same - else - return a.value < b.value; // Sort by value otherwise - else - return left_a < left_b; // Sort by name if the prefixes aren't the same - } -}; - void DocData::merge_from(const DocData& p_data) { for( Map<String,ClassDoc>::Element *E=class_list.front();E;E=E->next()) { @@ -455,6 +440,12 @@ void DocData::generate(bool p_basic_types) { } + { + //so it can be documented that it does not exist + class_list["Variant"]=ClassDoc(); + class_list["Variant"].name="Variant"; + } + if (!p_basic_types) return; @@ -949,11 +940,11 @@ Error DocData::save(const String& p_path) { _write_string(f,0,header); _write_string(f,1,"<brief_description>"); if (c.brief_description!="") - _write_string(f,1,c.brief_description.xml_escape()); + _write_string(f,2,c.brief_description.xml_escape()); _write_string(f,1,"</brief_description>"); _write_string(f,1,"<description>"); if (c.description!="") - _write_string(f,1,c.description.xml_escape()); + _write_string(f,2,c.description.xml_escape()); _write_string(f,1,"</description>"); _write_string(f,1,"<methods>"); @@ -989,7 +980,7 @@ Error DocData::save(const String& p_path) { _write_string(f,3,"<description>"); if (m.description!="") - _write_string(f,3,m.description.xml_escape()); + _write_string(f,4,m.description.xml_escape()); _write_string(f,3,"</description>"); _write_string(f,2,"</method>"); @@ -1035,7 +1026,7 @@ Error DocData::save(const String& p_path) { _write_string(f,3,"<description>"); if (m.description!="") - _write_string(f,3,m.description.xml_escape()); + _write_string(f,4,m.description.xml_escape()); _write_string(f,3,"</description>"); _write_string(f,2,"</signal>"); @@ -1046,7 +1037,6 @@ Error DocData::save(const String& p_path) { _write_string(f,1,"<constants>"); - c.constants.sort_custom<_ConstantComparator>(); for(int i=0;i<c.constants.size();i++) { diff --git a/tools/editor/animation_editor.cpp b/tools/editor/animation_editor.cpp index dd3c3fee32..9eb6b4013f 100644 --- a/tools/editor/animation_editor.cpp +++ b/tools/editor/animation_editor.cpp @@ -85,7 +85,6 @@ private: int points = 48; if (mode==MODE_MULTIPLE) { - int max_draw = 16; Color mcolor=color; mcolor.a*=0.3; @@ -694,11 +693,103 @@ void AnimationKeyEditor::_menu_add_track(int p_type) { } } +void AnimationKeyEditor::_anim_duplicate_keys(bool transpose) { + //duplicait! + if (selection.size() && animation.is_valid() && selected_track>=0 && selected_track<animation->get_track_count()) { + + int top_track=0x7FFFFFFF; + float top_time = 1e10; + for(Map<SelectedKey,KeyInfo>::Element *E=selection.back();E;E=E->prev()) { + + const SelectedKey &sk = E->key(); + + float t = animation->track_get_key_time(sk.track,sk.key); + if (t<top_time) + top_time=t; + if (sk.track<top_track) + top_track=sk.track; + + } + ERR_FAIL_COND( top_track == 0x7FFFFFFF || top_time==1e10 ); + + // + + int start_track = transpose ? selected_track : top_track; + + undo_redo->create_action(TTR("Anim Duplicate Keys")); + + List<Pair<int,float> > new_selection_values; + + for(Map<SelectedKey,KeyInfo>::Element *E=selection.back();E;E=E->prev()) { + + const SelectedKey &sk = E->key(); + + float t = animation->track_get_key_time(sk.track,sk.key); + + float dst_time = t+(timeline_pos - top_time); + int dst_track = sk.track + (start_track - top_track); + + if (dst_track < 0 || dst_track>= animation->get_track_count()) + continue; + + if (animation->track_get_type(dst_track) != animation->track_get_type(sk.track)) + continue; + + int existing_idx = animation->track_find_key(dst_track,dst_time,true); + + undo_redo->add_do_method(animation.ptr(),"track_insert_key",dst_track,dst_time,animation->track_get_key_value(E->key().track,E->key().key),animation->track_get_key_transition(E->key().track,E->key().key)); + undo_redo->add_undo_method(animation.ptr(),"track_remove_key_at_pos",dst_track,dst_time); + + Pair<int,float> p; + p.first=dst_track; + p.second=dst_time; + new_selection_values.push_back( p ); + + if (existing_idx!=-1) { + + undo_redo->add_undo_method(animation.ptr(),"track_insert_key",dst_track,dst_time,animation->track_get_key_value(dst_track,existing_idx),animation->track_get_key_transition(dst_track,existing_idx)); + + } + + } + + undo_redo->commit_action(); + + //reselect duplicated + + Map<SelectedKey,KeyInfo> new_selection; + for (List<Pair<int,float> >::Element *E=new_selection_values.front();E;E=E->next()) { + + int track=E->get().first; + float time = E->get().second; + + int existing_idx = animation->track_find_key(track,time,true); + + if (existing_idx==-1) + continue; + SelectedKey sk2; + sk2.track=track; + sk2.key=existing_idx; + + KeyInfo ki; + ki.pos=time; + + new_selection[sk2]=ki; + + } + + + selection=new_selection; + track_editor->update(); + _edit_if_single_selection(); + + } +} + void AnimationKeyEditor::_menu_track(int p_type) { ERR_FAIL_COND(!animation.is_valid()); - last_menu_track_opt=p_type; switch(p_type) { @@ -766,108 +857,7 @@ void AnimationKeyEditor::_menu_track(int p_type) { case TRACK_MENU_DUPLICATE: case TRACK_MENU_DUPLICATE_TRANSPOSE: { - - //duplicait! - if (selection.size() && animation.is_valid() && selected_track>=0 && selected_track<animation->get_track_count()) { - - - int top_track=0x7FFFFFFF; - float top_time = 1e10; - for(Map<SelectedKey,KeyInfo>::Element *E=selection.back();E;E=E->prev()) { - - const SelectedKey &sk = E->key(); - - float t = animation->track_get_key_time(sk.track,sk.key); - if (t<top_time) - top_time=t; - if (sk.track<top_track) - top_track=sk.track; - - - } - ERR_FAIL_COND( top_track == 0x7FFFFFFF || top_time==1e10 ); - - // - - int start_track = p_type==TRACK_MENU_DUPLICATE_TRANSPOSE ? selected_track : top_track; - - - undo_redo->create_action(TTR("Anim Duplicate Keys")); - - List<Pair<int,float> > new_selection_values; - - for(Map<SelectedKey,KeyInfo>::Element *E=selection.back();E;E=E->prev()) { - - const SelectedKey &sk = E->key(); - - float t = animation->track_get_key_time(sk.track,sk.key); - - float dst_time = t+(timeline_pos - top_time); - int dst_track = sk.track + (start_track - top_track); - - if (dst_track < 0 || dst_track>= animation->get_track_count()) - continue; - - if (animation->track_get_type(dst_track) != animation->track_get_type(sk.track)) - continue; - - int existing_idx = animation->track_find_key(dst_track,dst_time,true); - - undo_redo->add_do_method(animation.ptr(),"track_insert_key",dst_track,dst_time,animation->track_get_key_value(E->key().track,E->key().key),animation->track_get_key_transition(E->key().track,E->key().key)); - undo_redo->add_undo_method(animation.ptr(),"track_remove_key_at_pos",dst_track,dst_time); - - Pair<int,float> p; - p.first=dst_track; - p.second=dst_time; - new_selection_values.push_back( p ); - - if (existing_idx!=-1) { - - undo_redo->add_undo_method(animation.ptr(),"track_insert_key",dst_track,dst_time,animation->track_get_key_value(dst_track,existing_idx),animation->track_get_key_transition(dst_track,existing_idx)); - - } - - - - } - - undo_redo->commit_action(); - - //reselect duplicated - - Map<SelectedKey,KeyInfo> new_selection; - for (List<Pair<int,float> >::Element *E=new_selection_values.front();E;E=E->next()) { - - - int track=E->get().first; - float time = E->get().second; - - int existing_idx = animation->track_find_key(track,time,true); - - if (existing_idx==-1) - continue; - SelectedKey sk2; - sk2.track=track; - sk2.key=existing_idx; - - KeyInfo ki; - ki.pos=time; - - - new_selection[sk2]=ki; - - - } - - - selection=new_selection; - track_editor->update(); - _edit_if_single_selection(); - - - } - - + _anim_duplicate_keys(p_type==TRACK_MENU_DUPLICATE_TRANSPOSE); } break; case TRACK_MENU_SET_ALL_TRANS_LINEAR: case TRACK_MENU_SET_ALL_TRANS_CONSTANT: @@ -1356,7 +1346,6 @@ void AnimationKeyEditor::_track_editor_draw() { } } - Color sep_color=color; color.a*=0.5; for(int i=0;i<fit;i++) { @@ -1620,9 +1609,7 @@ void AnimationKeyEditor::_track_menu_selected(int p_idx) { undo_redo->add_do_method(animation.ptr(),"track_set_interpolation_type",interp_editing,p_idx); undo_redo->add_undo_method(animation.ptr(),"track_set_interpolation_type",interp_editing,animation->track_get_interpolation_type(interp_editing)); undo_redo->commit_action(); - } - - if (cont_editing!=-1) { + } else if (cont_editing!=-1) { ERR_FAIL_INDEX(cont_editing,animation->get_track_count()); @@ -1630,6 +1617,16 @@ void AnimationKeyEditor::_track_menu_selected(int p_idx) { undo_redo->add_do_method(animation.ptr(),"value_track_set_update_mode",cont_editing,p_idx); undo_redo->add_undo_method(animation.ptr(),"value_track_set_update_mode",cont_editing,animation->value_track_get_update_mode(cont_editing)); undo_redo->commit_action(); + } else { + switch (p_idx) { + + case RIGHT_MENU_DUPLICATE: + _anim_duplicate_keys(); break; + case RIGHT_MENU_DUPLICATE_TRANSPOSE: + _anim_duplicate_keys(true); break; + case RIGHT_MENU_REMOVE: + _anim_delete_keys(); break; + } } } @@ -1791,6 +1788,25 @@ bool AnimationKeyEditor::_edit_if_single_selection() { } +void AnimationKeyEditor::_anim_delete_keys() { + if (selection.size()) { + undo_redo->create_action(TTR("Anim Delete Keys")); + + for(Map<SelectedKey,KeyInfo>::Element *E=selection.back();E;E=E->prev()) { + + undo_redo->add_do_method(animation.ptr(),"track_remove_key",E->key().track,E->key().key); + undo_redo->add_undo_method(animation.ptr(),"track_insert_key",E->key().track,E->get().pos,animation->track_get_key_value(E->key().track,E->key().key),animation->track_get_key_transition(E->key().track,E->key().key)); + + } + undo_redo->add_do_method(this,"_clear_selection_for_anim",animation); + undo_redo->add_undo_method(this,"_clear_selection_for_anim",animation); + undo_redo->commit_action(); + //selection.clear(); + accept_event(); + _edit_if_single_selection(); + } +} + void AnimationKeyEditor::_track_editor_input_event(const InputEvent& p_input) { Control *te=track_editor; @@ -1806,8 +1822,6 @@ void AnimationKeyEditor::_track_editor_input_event(const InputEvent& p_input) { Ref<Font> font = te->get_font("font","Tree"); int sep = get_constant("vseparation","Tree"); int hsep = get_constant("hseparation","Tree"); - Color color = get_color("font_color","Tree"); - Color sepcolor = get_color("guide_color","Tree"); Ref<Texture> remove_icon = get_icon("Remove","EditorIcons"); Ref<Texture> move_up_icon = get_icon("MoveUp","EditorIcons"); Ref<Texture> move_down_icon = get_icon("MoveDown","EditorIcons"); @@ -1863,22 +1877,7 @@ void AnimationKeyEditor::_track_editor_input_event(const InputEvent& p_input) { } else if (p_input.key.scancode==KEY_DELETE && p_input.key.pressed && click.click==ClickOver::CLICK_NONE) { - if (selection.size()) { - undo_redo->create_action(TTR("Anim Delete Keys")); - - for(Map<SelectedKey,KeyInfo>::Element *E=selection.back();E;E=E->prev()) { - - undo_redo->add_do_method(animation.ptr(),"track_remove_key",E->key().track,E->key().key); - undo_redo->add_undo_method(animation.ptr(),"track_insert_key",E->key().track,E->get().pos,animation->track_get_key_value(E->key().track,E->key().key),animation->track_get_key_transition(E->key().track,E->key().key)); - - } - undo_redo->add_do_method(this,"_clear_selection_for_anim",animation); - undo_redo->add_undo_method(this,"_clear_selection_for_anim",animation); - undo_redo->commit_action(); - //selection.clear(); - accept_event(); - _edit_if_single_selection(); - } + _anim_delete_keys(); } else if (animation.is_valid() && animation->get_track_count()>0) { if (p_input.is_pressed() && (p_input.is_action("ui_up") || p_input.is_action("ui_page_up"))) { @@ -1938,6 +1937,116 @@ void AnimationKeyEditor::_track_editor_input_event(const InputEvent& p_input) { v_scroll->set_val( v_scroll->get_val() + v_scroll->get_page() / 8 ); } + if (mb.button_index==BUTTON_RIGHT && mb.pressed) { + + Point2 mpos = Point2(mb.x,mb.y)-ofs; + + if (selection.size() == 0) { + // Auto-select on right-click if nothing is selected + // Note: This code is pretty much duplicated from the left click code, + // both codes could be moved into a function to avoid the duplicated code. + Point2 mpos = Point2(mb.x,mb.y)-ofs; + + if (mpos.y < h ) { + return; + } + + mpos.y -= h; + + int idx = mpos.y / h; + idx+=v_scroll->get_val(); + if (idx <0 || idx>=animation->get_track_count()) + break; + + if (mpos.x < name_limit) { + } else if (mpos.x < settings_limit) { + float pos = mpos.x - name_limit; + pos/=_get_zoom_scale(); + pos+=h_scroll->get_val(); + float w_time = (type_icon[0]->get_width() / _get_zoom_scale())/2.0; + + int kidx = animation->track_find_key(idx,pos); + int kidx_n = kidx+1; + int key=-1; + + if (kidx>=0 && kidx<animation->track_get_key_count(idx)) { + + float kpos = animation->track_get_key_time(idx,kidx); + if (ABS(pos-kpos)<=w_time) { + + key=kidx; + } + } + + if (key==-1 && kidx_n>=0 && kidx_n<animation->track_get_key_count(idx)) { + + float kpos = animation->track_get_key_time(idx,kidx_n); + if (ABS(pos-kpos)<=w_time) { + + key=kidx_n; + } + } + + if (key==-1) { + + click.click=ClickOver::CLICK_SELECT_KEYS; + click.at=Point2(mb.x,mb.y); + click.to=click.at; + click.shift=mb.mod.shift; + selected_track=idx; + track_editor->update(); + //drag select region + return; + + } + + + + SelectedKey sk; + sk.track=idx; + sk.key=key; + KeyInfo ki; + ki.pos= animation->track_get_key_time(idx,key); + click.shift=mb.mod.shift; + click.selk=sk; + + + if (!mb.mod.shift && !selection.has(sk)) + _clear_selection(); + + selection.insert(sk,ki); + + click.click=ClickOver::CLICK_MOVE_KEYS; + click.at=Point2(mb.x,mb.y); + click.to=click.at; + update(); + selected_track=idx; + track_editor->update(); + + if (_edit_if_single_selection() && mb.mod.command) { + edit_button->set_pressed(true); + key_editor_tab->show(); + } + } + } + + if (selection.size()) { + // User has right clicked and we have a selection, show a popup menu with options + track_menu->clear(); + track_menu->set_size(Point2(1,1)); + track_menu->add_item(TTR("Duplicate Selection"), RIGHT_MENU_DUPLICATE); + track_menu->add_item(TTR("Duplicate Transposed"), RIGHT_MENU_DUPLICATE_TRANSPOSE); + track_menu->add_item(TTR("Remove Selection"), RIGHT_MENU_REMOVE); + + track_menu->set_pos(te->get_global_pos()+mpos); + + interp_editing=-1; + cont_editing=-1; + + track_menu->popup(); + } + } + if (mb.button_index==BUTTON_LEFT && !(mb.button_mask&~BUTTON_MASK_LEFT)) { @@ -2922,7 +3031,6 @@ void AnimationKeyEditor::_notification(int p_what) { edit_button->connect("pressed",this,"_toggle_edit_curves"); loop->set_icon(get_icon("Loop","EditorIcons")); - loop_interpolation->set_icon(get_icon("LoopInterpolation","EditorIcons")); curve_edit->connect("transition_changed",this,"_curve_transition_changed"); //edit_button->add_color_override("font_color",get_color("font_color","Tree")); @@ -3008,12 +3116,10 @@ void AnimationKeyEditor::_update_menu() { updating=true; - bool empty= !animation.is_valid(); if (animation.is_valid()) { length->set_val(animation->get_length()); loop->set_pressed(animation->has_loop()); - loop_interpolation->set_pressed(animation->has_loop_interpolation()); step->set_val(animation->get_step()); } @@ -3469,21 +3575,6 @@ void AnimationKeyEditor::_animation_loop_changed() { } -void AnimationKeyEditor::_animation_loop_interpolation_changed() { - - if (updating) - return; - - if (!animation.is_null()) { - - undo_redo->create_action(TTR("Change Anim Loop Interpolation")); - undo_redo->add_do_method(animation.ptr(),"set_loop_interpolation",loop_interpolation->is_pressed()); - undo_redo->add_undo_method(animation.ptr(),"set_loop_interpolation",!loop_interpolation->is_pressed()); - undo_redo->commit_action(); - } - -} - void AnimationKeyEditor::_create_value_item(int p_type) { @@ -3769,7 +3860,6 @@ void AnimationKeyEditor::_bind_methods() { ObjectTypeDB::bind_method(_MD("_animation_loop_changed"),&AnimationKeyEditor::_animation_loop_changed); - ObjectTypeDB::bind_method(_MD("_animation_loop_interpolation_changed"),&AnimationKeyEditor::_animation_loop_interpolation_changed); ObjectTypeDB::bind_method(_MD("_animation_len_changed"),&AnimationKeyEditor::_animation_len_changed); ObjectTypeDB::bind_method(_MD("_create_value_item"),&AnimationKeyEditor::_create_value_item); ObjectTypeDB::bind_method(_MD("_pane_drag"),&AnimationKeyEditor::_pane_drag); @@ -3880,12 +3970,6 @@ AnimationKeyEditor::AnimationKeyEditor() { hb->add_child(loop); loop->set_tooltip(TTR("Enable/Disable looping in animation.")); - loop_interpolation = memnew( ToolButton ); - loop_interpolation->set_toggle_mode(true); - loop_interpolation->connect("pressed",this,"_animation_loop_interpolation_changed"); - hb->add_child(loop_interpolation); - loop_interpolation->set_tooltip(TTR("Enable/Disable interpolation when looping animation.")); - hb->add_child( memnew( VSeparator ) ); menu_add_track = memnew( MenuButton ); diff --git a/tools/editor/animation_editor.h b/tools/editor/animation_editor.h index c8de1d87c1..131100a205 100644 --- a/tools/editor/animation_editor.h +++ b/tools/editor/animation_editor.h @@ -99,6 +99,12 @@ class AnimationKeyEditor : public VBoxContainer { CURVE_SET_CONSTANT }; + enum { + RIGHT_MENU_DUPLICATE, + RIGHT_MENU_DUPLICATE_TRANSPOSE, + RIGHT_MENU_REMOVE + }; + struct MouseOver { enum Over { @@ -173,7 +179,6 @@ class AnimationKeyEditor : public VBoxContainer { //MenuButton *menu; SpinBox *length; Button *loop; - Button *loop_interpolation; bool keying; ToolButton *edit_button; ToolButton *move_up_button; @@ -239,7 +244,6 @@ class AnimationKeyEditor : public VBoxContainer { void _animation_len_changed(float p_len); void _animation_loop_changed(); - void _animation_loop_interpolation_changed(); void _step_changed(float p_len); struct InsertData { @@ -315,6 +319,9 @@ class AnimationKeyEditor : public VBoxContainer { void _add_call_track(const NodePath& p_base); + void _anim_duplicate_keys(bool transpose = false); + void _anim_delete_keys(); + void _root_removed(); protected: diff --git a/tools/editor/asset_library_editor_plugin.cpp b/tools/editor/asset_library_editor_plugin.cpp index a2448921d7..4f685badfb 100644 --- a/tools/editor/asset_library_editor_plugin.cpp +++ b/tools/editor/asset_library_editor_plugin.cpp @@ -444,6 +444,13 @@ void EditorAssetLibraryItemDownload::_close() { void EditorAssetLibraryItemDownload::_install() { String file = download->get_download_file(); + + if (external_install) { + emit_signal("install_asset",file,title->get_text()); + return; + } + + asset_installer->open(file,1); } @@ -465,6 +472,8 @@ void EditorAssetLibraryItemDownload::_bind_methods() { ObjectTypeDB::bind_method("_close",&EditorAssetLibraryItemDownload::_close); ObjectTypeDB::bind_method("_make_request",&EditorAssetLibraryItemDownload::_make_request); + ADD_SIGNAL(MethodInfo("install_asset",PropertyInfo(Variant::STRING,"zip_path"),PropertyInfo(Variant::STRING,"name"))); + } EditorAssetLibraryItemDownload::EditorAssetLibraryItemDownload() { @@ -530,6 +539,8 @@ EditorAssetLibraryItemDownload::EditorAssetLibraryItemDownload() { prev_status=-1; + external_install=false; + } @@ -600,7 +611,8 @@ void EditorAssetLibrary::_install_asset() { EditorAssetLibraryItemDownload *d = downloads_hb->get_child(i)->cast_to<EditorAssetLibraryItemDownload>(); if (d && d->get_asset_id() == description->get_asset_id()) { - EditorNode::get_singleton()->show_warning("Download for this asset is already in progress!"); + if (EditorNode::get_singleton() != NULL) + EditorNode::get_singleton()->show_warning("Download for this asset is already in progress!"); return; } } @@ -610,6 +622,11 @@ void EditorAssetLibrary::_install_asset() { downloads_hb->add_child(download); download->configure(description->get_title(),description->get_asset_id(),description->get_preview_icon(),description->get_download_url(),description->get_sha256()); + if (templates_only) { + download->set_external_install(true); + download->connect("install_asset",this,"_install_external_asset"); + } + } const char* EditorAssetLibrary::sort_key[SORT_MAX]={ @@ -1258,6 +1275,11 @@ void EditorAssetLibrary::_manage_plugins() { +void EditorAssetLibrary::_install_external_asset(String p_zip_path,String p_title) { + + emit_signal("install_asset",p_zip_path,p_title); +} + void EditorAssetLibrary::_bind_methods() { ObjectTypeDB::bind_method("_http_request_completed",&EditorAssetLibrary::_http_request_completed); @@ -1273,6 +1295,11 @@ void EditorAssetLibrary::_bind_methods() { ObjectTypeDB::bind_method("_repository_changed",&EditorAssetLibrary::_repository_changed); ObjectTypeDB::bind_method("_support_toggled",&EditorAssetLibrary::_support_toggled); ObjectTypeDB::bind_method("_rerun_search",&EditorAssetLibrary::_rerun_search); + ObjectTypeDB::bind_method("_install_external_asset",&EditorAssetLibrary::_install_external_asset); + + + + ADD_SIGNAL(MethodInfo("install_asset",PropertyInfo(Variant::STRING,"zip_path"),PropertyInfo(Variant::STRING,"name"))); } @@ -1366,7 +1393,7 @@ EditorAssetLibrary::EditorAssetLibrary(bool p_templates_only) { repository = memnew( OptionButton ); repository->add_item("Godot"); - repository->set_item_metadata(0, "http://godotengine.org/asset-library/api"); + repository->set_item_metadata(0, "https://godotengine.org/asset-library/api"); repository->add_item("Localhost"); // TODO: Maybe remove? repository->set_item_metadata(1, "http://127.0.0.1/asset-library/api"); repository->connect("item_selected",this,"_repository_changed"); diff --git a/tools/editor/asset_library_editor_plugin.h b/tools/editor/asset_library_editor_plugin.h index 89663aa00b..fe40255af9 100644 --- a/tools/editor/asset_library_editor_plugin.h +++ b/tools/editor/asset_library_editor_plugin.h @@ -155,6 +155,8 @@ class EditorAssetLibraryItemDownload : public PanelContainer { int asset_id; + bool external_install; + EditorAssetInstaller *asset_installer; void _close(); @@ -168,6 +170,7 @@ protected: static void _bind_methods(); public: + void set_external_install(bool p_enable) { external_install=p_enable; } int get_asset_id() { return asset_id; } void configure(const String& p_title,int p_asset_id,const Ref<Texture>& p_preview, const String& p_download_url, const String& p_sha256_hash); EditorAssetLibraryItemDownload(); @@ -301,6 +304,8 @@ class EditorAssetLibrary : public PanelContainer { void _repository_changed(int p_repository_id); void _support_toggled(int p_support); + void _install_external_asset(String p_zip_path,String p_title); + friend class EditorAssetLibraryItemDescription; friend class EditorAssetLibraryItem; protected: diff --git a/tools/editor/code_editor.cpp b/tools/editor/code_editor.cpp index 644478923c..71ae171dfe 100644 --- a/tools/editor/code_editor.cpp +++ b/tools/editor/code_editor.cpp @@ -32,6 +32,7 @@ #include "scene/gui/separator.h" #include "scene/resources/dynamic_font.h" #include "os/keyboard.h" +#include "tools/editor/editor_scale.h" void GotoLineDialog::popup_find_line(TextEdit *p_edit) { @@ -984,36 +985,47 @@ void CodeTextEditor::_text_editor_input_event(const InputEvent& p_event) { if (mb.pressed && mb.mod.command) { if (mb.button_index==BUTTON_WHEEL_UP) { - - font_resize_val+=1; - - if (font_resize_timer->get_time_left()==0) - font_resize_timer->start(); - + _zoom_in(); } else if (mb.button_index==BUTTON_WHEEL_DOWN) { - - font_resize_val-=1; - - if (font_resize_timer->get_time_left()==0) - font_resize_timer->start(); + _zoom_out(); } } } else if (p_event.type==InputEvent::KEY) { - const InputEventKey& k=p_event.key; + if (p_event.key.pressed) { + if (ED_IS_SHORTCUT("script_editor/zoom_in", p_event)) { + _zoom_in(); + } + if (ED_IS_SHORTCUT("script_editor/zoom_out", p_event)) { + _zoom_out(); + } + if (ED_IS_SHORTCUT("script_editor/reset_zoom", p_event)) { + _reset_zoom(); + } + } + } +} - if (k.pressed && k.mod.command) { +void CodeTextEditor::_zoom_in() { + font_resize_val+=1; - if (k.scancode==KEY_0) { // reset source font size to default + if (font_resize_timer->get_time_left()==0) + font_resize_timer->start(); +} - Ref<DynamicFont> font = text_editor->get_font("font"); +void CodeTextEditor::_zoom_out() { + font_resize_val-=1; - if (font.is_valid()) { - EditorSettings::get_singleton()->set("global/source_font_size",14); - font->set_size(14); - } - } - } + if (font_resize_timer->get_time_left()==0) + font_resize_timer->start(); +} + +void CodeTextEditor::_reset_zoom() { + Ref<DynamicFont> font = text_editor->get_font("font"); // reset source font size to default + + if (font.is_valid()) { + EditorSettings::get_singleton()->set("global/source_font_size",14); + font->set_size(14); } } @@ -1149,6 +1161,10 @@ void CodeTextEditor::_bind_methods() { CodeTextEditor::CodeTextEditor() { + ED_SHORTCUT("script_editor/zoom_in", TTR("Zoom In"), KEY_MASK_CMD|KEY_EQUAL); + ED_SHORTCUT("script_editor/zoom_out", TTR("Zoom Out"), KEY_MASK_CMD|KEY_MINUS); + ED_SHORTCUT("script_editor/reset_zoom", TTR("Reset Zoom"), KEY_MASK_CMD|KEY_0); + find_replace_bar = memnew( FindReplaceBar ); add_child(find_replace_bar); find_replace_bar->set_h_size_flags(SIZE_EXPAND_FILL); @@ -1198,6 +1214,10 @@ CodeTextEditor::CodeTextEditor() { line_col = memnew( Label ); status_bar->add_child(line_col); line_col->set_valign(Label::VALIGN_CENTER); + line_col->set_autowrap(true); + line_col->set_v_size_flags(SIZE_FILL); + line_col->set_custom_minimum_size(Size2(100,1)*EDSCALE); + status_bar->add_child( memnew( Label ) ); //to keep the height if the other labels are not visible text_editor->connect("input_event", this,"_text_editor_input_event"); diff --git a/tools/editor/code_editor.h b/tools/editor/code_editor.h index bdfd295ded..7983c46f7a 100644 --- a/tools/editor/code_editor.h +++ b/tools/editor/code_editor.h @@ -214,6 +214,9 @@ class CodeTextEditor : public VBoxContainer { void _font_resize_timeout(); void _text_editor_input_event(const InputEvent& p_event); + void _zoom_in(); + void _zoom_out(); + void _reset_zoom(); protected: diff --git a/tools/editor/connections_dialog.cpp b/tools/editor/connections_dialog.cpp index faaae4360b..bdc420c70f 100644 --- a/tools/editor/connections_dialog.cpp +++ b/tools/editor/connections_dialog.cpp @@ -309,6 +309,7 @@ ConnectDialog::ConnectDialog() { tree = memnew(SceneTreeEditor(false)); + tree->get_scene_tree()->connect("item_activated",this,"_ok"); vbc_left->add_margin_child(TTR("Connect To Node:"),tree,true); diff --git a/tools/editor/create_dialog.cpp b/tools/editor/create_dialog.cpp index 5275e1beeb..210b799f3d 100644 --- a/tools/editor/create_dialog.cpp +++ b/tools/editor/create_dialog.cpp @@ -42,12 +42,13 @@ void CreateDialog::popup(bool p_dontclear) { - popup_centered_ratio(0.6); + popup_centered_ratio(); if (p_dontclear) search_box->select_all(); else search_box->clear(); search_box->grab_focus(); + _update_search(); @@ -165,9 +166,10 @@ void CreateDialog::_update_search() { if (!ObjectTypeDB::can_instance(type)) continue; // cant create what can't be instanced - if (search_box->get_text()=="") + + if (search_box->get_text()=="") { add_type(type,types,root,&to_select); - else { + } else { bool found=false; String type=I->get(); @@ -186,7 +188,7 @@ void CreateDialog::_update_search() { add_type(I->get(),types,root,&to_select); } - if (EditorNode::get_editor_data().get_custom_types().has(type)) { + if (EditorNode::get_editor_data().get_custom_types().has(type) && ObjectTypeDB::is_type(type, base_type)) { //there are custom types based on this... cool. //print_line("there are custom types"); @@ -198,6 +200,7 @@ void CreateDialog::_update_search() { if (!show) continue; + if (!types.has(type)) add_type(type,types,root,&to_select); @@ -216,7 +219,7 @@ void CreateDialog::_update_search() { } - if (!to_select && (search_box->get_text()=="" || ct[i].name.findn(search_box->get_text())!=-1)) { + if (!to_select) { to_select=item; } @@ -246,7 +249,6 @@ void CreateDialog::_notification(int p_what) { if (p_what==NOTIFICATION_ENTER_TREE) { connect("confirmed",this,"_confirmed"); - _update_search(); } if (p_what==NOTIFICATION_EXIT_TREE) { diff --git a/tools/editor/dependency_editor.cpp b/tools/editor/dependency_editor.cpp index ad2eb57f00..049bcefc75 100644 --- a/tools/editor/dependency_editor.cpp +++ b/tools/editor/dependency_editor.cpp @@ -80,8 +80,6 @@ void DependencyEditor::_fix_and_find(EditorFileSystemDirectory *efsd, Map<String continue; String path = efsd->get_file_path(i); - Map<String,String> &ss = candidates[file]; - for(Map<String,String>::Element *E=candidates[file].front();E;E=E->next()) { @@ -420,7 +418,7 @@ void DependencyRemoveDialog::show(const Vector<String> &to_erase) { exist=false; owners->clear(); files.clear(); - TreeItem *root=owners->create_item(); + owners->create_item(); // root for(int i=0;i<to_erase.size();i++) { files[to_erase[i]]=NULL; } diff --git a/tools/editor/editor_asset_installer.cpp b/tools/editor/editor_asset_installer.cpp index ec36773d8d..b6051886c0 100644 --- a/tools/editor/editor_asset_installer.cpp +++ b/tools/editor/editor_asset_installer.cpp @@ -317,9 +317,11 @@ void EditorAssetInstaller::ok_pressed() { } msg+=failed_files[i]; } - EditorNode::get_singleton()->show_warning(msg); + if (EditorNode::get_singleton() != NULL) + EditorNode::get_singleton()->show_warning(msg); } else { - EditorNode::get_singleton()->show_warning("Package Installed Successfully!","Success!"); + if (EditorNode::get_singleton() != NULL) + EditorNode::get_singleton()->show_warning("Package Installed Successfully!","Success!"); } diff --git a/tools/editor/editor_autoload_settings.cpp b/tools/editor/editor_autoload_settings.cpp new file mode 100644 index 0000000000..97062b1480 --- /dev/null +++ b/tools/editor/editor_autoload_settings.cpp @@ -0,0 +1,616 @@ +/*************************************************************************/ +/* editor_autoload_settings.cpp */ +/*************************************************************************/ +/* This file is part of: */ +/* GODOT ENGINE */ +/* http://www.godotengine.org */ +/*************************************************************************/ +/* Copyright (c) 2007-2016 Juan Linietsky, Ariel Manzur. */ +/* */ +/* Permission is hereby granted, free of charge, to any person obtaining */ +/* a copy of this software and associated documentation files (the */ +/* "Software"), to deal in the Software without restriction, including */ +/* without limitation the rights to use, copy, modify, merge, publish, */ +/* distribute, sublicense, and/or sell copies of the Software, and to */ +/* permit persons to whom the Software is furnished to do so, subject to */ +/* the following conditions: */ +/* */ +/* The above copyright notice and this permission notice shall be */ +/* included in all copies or substantial portions of the Software. */ +/* */ +/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ +/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ +/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ +/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ +/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ +/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ +/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ +/*************************************************************************/ + +#include "editor_autoload_settings.h" + +#include "globals.h" +#include "global_constants.h" + +#include "editor_node.h" + +#define PREVIEW_LIST_MAX_SIZE 10 + +void EditorAutoloadSettings::_notification(int p_what) { + + if (p_what == NOTIFICATION_ENTER_TREE) { + + List<String> afn; + ResourceLoader::get_recognized_extensions_for_type("Script", &afn); + ResourceLoader::get_recognized_extensions_for_type("PackedScene", &afn); + + EditorFileDialog *file_dialog = autoload_add_path->get_file_dialog(); + + for (List<String>::Element *E = afn.front(); E; E = E->next()) { + + file_dialog->add_filter("*." + E->get()); + } + } +} + +bool EditorAutoloadSettings::_autoload_name_is_valid(const String& p_name, String* r_error) { + + if (!p_name.is_valid_identifier()) { + if (r_error) + *r_error = TTR("Invalid name.") + "\n" + TTR("Valid characters:")+" a-z, A-Z, 0-9 or _"; + + return false; + } + + if (ObjectTypeDB::type_exists(p_name)) { + if (r_error) + *r_error = TTR("Invalid name. Must not collide with an existing engine class name."); + + return false; + } + + for (int i = 0; i < Variant::VARIANT_MAX; i++) { + if (Variant::get_type_name( Variant::Type(i) ) == p_name) { + if (r_error) + *r_error = TTR("Invalid name. Must not collide with an existing buit-in type name."); + + return false; + } + } + + for (int i = 0; i < GlobalConstants::get_global_constant_count(); i++) { + if (GlobalConstants::get_global_constant_name(i) == p_name) { + if (r_error) + *r_error = TTR("Invalid name. Must not collide with an existing global constant name."); + + return false; + } + } + + return true; +} + +void EditorAutoloadSettings::_autoload_add() { + + String name = autoload_add_name->get_text(); + + String error; + if (!_autoload_name_is_valid(name, &error)) { + EditorNode::get_singleton()->show_warning(error); + return; + } + + String path = autoload_add_path->get_line_edit()->get_text(); + if (!FileAccess::exists(path)) { + EditorNode::get_singleton()->show_warning(TTR("Invalid Path.") + "\n" + TTR("File does not exist.")); + return; + } + + if (!path.begins_with("res://")) { + EditorNode::get_singleton()->show_warning(TTR("Invalid Path.") + "\n"+ TTR("Not in resource path.")); + return; + } + + name = "autoload/" + name; + + UndoRedo* undo_redo = EditorNode::get_singleton()->get_undo_redo(); + + undo_redo->create_action(TTR("Add AutoLoad")); + undo_redo->add_do_property(Globals::get_singleton(), name, "*" + path); + undo_redo->add_do_method(Globals::get_singleton(), "set_persisting", name, true); + + if (Globals::get_singleton()->has(name)) { + undo_redo->add_undo_property(Globals::get_singleton(), name, Globals::get_singleton()->get(name)); + } else { + undo_redo->add_undo_property(Globals::get_singleton(), name, Variant()); + } + + undo_redo->add_do_method(this, "update_autoload"); + undo_redo->add_undo_method(this, "update_autoload"); + + undo_redo->add_do_method(this, "emit_signal", autoload_changed); + undo_redo->add_undo_method(this, "emit_signal", autoload_changed); + + undo_redo->commit_action(); + + autoload_add_path->get_line_edit()->set_text(""); + autoload_add_name->set_text(""); +} + +void EditorAutoloadSettings::_autoload_selected() { + + TreeItem *ti = tree->get_selected(); + + if (!ti) + return; + + selected_autoload = "autoload/" + ti->get_text(0); +} + +void EditorAutoloadSettings::_autoload_edited() { + + if (updating_autoload) + return; + + TreeItem *ti = tree->get_edited(); + int column = tree->get_edited_column(); + + UndoRedo *undo_redo = EditorNode::get_undo_redo(); + + if (column == 0) { + String name = ti->get_text(0); + String old_name = selected_autoload.get_slice("/", 1); + + if (name == old_name) + return; + + String error; + if (!_autoload_name_is_valid(name, &error)) { + ti->set_text(0, old_name); + EditorNode::get_singleton()->show_warning(error); + return; + } + + if (Globals::get_singleton()->has("autoload/" + name)) { + ti->set_text(0, old_name); + EditorNode::get_singleton()->show_warning(vformat(TTR("Autoload '%s' already exists!"), name)); + return; + } + + updating_autoload = true; + + name = "autoload/" + name; + + bool persisting = Globals::get_singleton()->get(selected_autoload); + int order = Globals::get_singleton()->get(selected_autoload); + String path = Globals::get_singleton()->get(selected_autoload); + + undo_redo->create_action(TTR("Rename Autoload")); + + undo_redo->add_do_property(Globals::get_singleton(), name, path); + undo_redo->add_do_method(Globals::get_singleton(), "set_persisting", name, persisting); + undo_redo->add_do_method(Globals::get_singleton(), "set_order", name, order); + undo_redo->add_do_method(Globals::get_singleton(), "clear", selected_autoload); + + undo_redo->add_undo_property(Globals::get_singleton(), selected_autoload, path); + undo_redo->add_undo_method(Globals::get_singleton(), "set_persisting", selected_autoload, persisting); + undo_redo->add_undo_method(Globals::get_singleton(), "set_order", selected_autoload, order); + undo_redo->add_undo_method(Globals::get_singleton(), "clear", name); + + undo_redo->add_do_method(this, "update_autoload"); + undo_redo->add_undo_method(this, "update_autoload"); + + undo_redo->add_do_method(this, "emit_signal", autoload_changed); + undo_redo->add_undo_method(this, "emit_signal", autoload_changed); + + undo_redo->commit_action(); + + selected_autoload = name; + } else if (column == 2) { + updating_autoload = true; + + bool checked = ti->is_checked(2); + String base = "autoload/" + ti->get_text(0); + + int order = Globals::get_singleton()->get_order(base); + String path = Globals::get_singleton()->get(base); + + if (path.begins_with("*")) + path = path.substr(1, path.length()); + + if (checked) + path = "*" + path; + + undo_redo->create_action(TTR("Toggle AutoLoad Globals")); + + undo_redo->add_do_property(Globals::get_singleton(), base, path); + undo_redo->add_undo_property(Globals::get_singleton(), base, Globals::get_singleton()->get(base)); + + undo_redo->add_do_method(Globals::get_singleton(),"set_order", base, order); + undo_redo->add_undo_method(Globals::get_singleton(),"set_order", base, order); + + undo_redo->add_do_method(this, "update_autoload"); + undo_redo->add_undo_method(this, "update_autoload"); + + undo_redo->add_do_method(this, "emit_signal", autoload_changed); + undo_redo->add_undo_method(this, "emit_signal", autoload_changed); + + undo_redo->commit_action(); + } + + updating_autoload = false; +} + +void EditorAutoloadSettings::_autoload_button_pressed(Object *p_item, int p_column, int p_button) { + + TreeItem *ti = p_item->cast_to<TreeItem>(); + + String name = "autoload/" + ti->get_text(0); + + UndoRedo *undo_redo = EditorNode::get_undo_redo(); + + switch (p_button) { + + case BUTTON_MOVE_UP: + case BUTTON_MOVE_DOWN: { + + TreeItem *swap = NULL; + + if (p_button == BUTTON_MOVE_UP) { + swap = ti->get_prev(); + } else { + swap = ti->get_next(); + } + + if (!swap) + return; + + String swap_name = "autoload/" + swap->get_text(0); + + int order = Globals::get_singleton()->get_order(name); + int swap_order = Globals::get_singleton()->get_order(swap_name); + + undo_redo->create_action(TTR("Move Autoload")); + + undo_redo->add_do_method(Globals::get_singleton(), "set_order", name, swap_order); + undo_redo->add_undo_method(Globals::get_singleton(), "set_order", name, order); + + undo_redo->add_do_method(Globals::get_singleton(), "set_order", swap_name, order); + undo_redo->add_undo_method(Globals::get_singleton(), "set_order", swap_name, swap_order); + + undo_redo->add_do_method(this, "update_autoload"); + undo_redo->add_undo_method(this, "update_autoload"); + + undo_redo->add_do_method(this, "emit_signal", autoload_changed); + undo_redo->add_undo_method(this, "emit_signal", autoload_changed); + + undo_redo->commit_action(); + } break; + case BUTTON_DELETE: { + + int order = Globals::get_singleton()->get_order(name); + + undo_redo->create_action(TTR("Remove Autoload")); + + undo_redo->add_do_property(Globals::get_singleton(), name, Variant()); + + undo_redo->add_undo_property(Globals::get_singleton(), name, Globals::get_singleton()->get(name)); + undo_redo->add_undo_method(Globals::get_singleton(), "set_persisting", name, true); + undo_redo->add_undo_method(Globals::get_singleton(), "set_order", order); + + undo_redo->add_do_method(this, "update_autoload"); + undo_redo->add_undo_method(this, "update_autoload"); + + undo_redo->add_do_method(this, "emit_signal", autoload_changed); + undo_redo->add_undo_method(this, "emit_signal", autoload_changed); + + undo_redo->commit_action(); + } break; + } +} + +void EditorAutoloadSettings::_autoload_file_callback(const String& p_path) { + + autoload_add_name->set_text(p_path.get_file().basename()); +} + +void EditorAutoloadSettings::update_autoload() { + + if (updating_autoload) + return; + + updating_autoload = true; + + autoload_cache.clear(); + + tree->clear(); + TreeItem *root = tree->create_item(); + + List<PropertyInfo> props; + Globals::get_singleton()->get_property_list(&props); + + for (List<PropertyInfo>::Element *E = props.front(); E; E = E->next()) { + + const PropertyInfo &pi = E->get(); + + if (!pi.name.begins_with("autoload/")) + continue; + + String name = pi.name.get_slice("/", 1); + String path = Globals::get_singleton()->get(pi.name); + + if (name.empty()) + continue; + + AutoLoadInfo info; + info.name = pi.name; + info.order = Globals::get_singleton()->get_order(pi.name); + + autoload_cache.push_back(info); + + bool global = false; + + if (path.begins_with("*")) { + global = true; + path = path.substr(1, path.length()); + } + + TreeItem *item = tree->create_item(root); + item->set_text(0, name); + item->set_editable(0, true); + + item->set_text(1, path); + item->set_selectable(1, false); + + item->set_cell_mode(2, TreeItem::CELL_MODE_CHECK); + item->set_editable(2, true); + item->set_text(2, TTR("Enable")); + item->set_checked(2, global); + + item->add_button(3, get_icon("MoveUp","EditorIcons"), BUTTON_MOVE_UP); + item->add_button(3, get_icon("MoveDown","EditorIcons"), BUTTON_MOVE_DOWN); + item->add_button(3, get_icon("Del","EditorIcons"), BUTTON_DELETE); + item->set_selectable(3, false); + } + + updating_autoload = false; +} + +Variant EditorAutoloadSettings::get_drag_data_fw(const Point2& p_point, Control *p_control) { + + if (autoload_cache.size() <= 1) + return false; + + StringArray autoloads; + + TreeItem *next = tree->get_next_selected(NULL); + + while (next) { + autoloads.push_back(next->get_text(0)); + next = tree->get_next_selected(next); + } + + if (autoloads.size() == 0 || autoloads.size() == autoload_cache.size()) + return Variant(); + + VBoxContainer *preview = memnew( VBoxContainer ); + + int max_size = MIN(PREVIEW_LIST_MAX_SIZE, autoloads.size()); + + for (int i = 0; i < max_size; i++) { + Label *label = memnew( Label(autoloads[i]) ); + label->set_self_opacity(Math::lerp(1, 0, float(i)/PREVIEW_LIST_MAX_SIZE)); + + preview->add_child(label); + } + + tree->set_drop_mode_flags(Tree::DROP_MODE_INBETWEEN); + tree->set_drag_preview(preview); + + Dictionary drop_data; + drop_data["type"] = "autoload"; + drop_data["autoloads"] = autoloads; + + return drop_data; +} + +bool EditorAutoloadSettings::can_drop_data_fw(const Point2& p_point, const Variant& p_data, Control *p_control) const { + if (updating_autoload) + return false; + + Dictionary drop_data = p_data; + + if (!drop_data.has("type")) + return false; + + if (drop_data.has("type")) { + TreeItem *ti = tree->get_item_at_pos(p_point); + + if (!ti) + return false; + + int section = tree->get_drop_section_at_pos(p_point); + + if (section < -1) + return false; + + return true; + } + + return false; +} + +void EditorAutoloadSettings::drop_data_fw(const Point2& p_point, const Variant& p_data, Control *p_control) { + + TreeItem *ti = tree->get_item_at_pos(p_point); + + if (!ti) + return; + + int section = tree->get_drop_section_at_pos(p_point); + + if (section < -1) + return; + + String name; + bool move_to_back = false; + + if (section < 0) { + name = ti->get_text(0); + } else if (ti->get_next()) { + name = ti->get_next()->get_text(0); + } else { + name = ti->get_text(0); + move_to_back = true; + } + + int order = Globals::get_singleton()->get_order("autoload/" + name); + + AutoLoadInfo aux; + List<AutoLoadInfo>::Element *E = NULL; + + if (!move_to_back) { + aux.order = order; + E = autoload_cache.find(aux); + } + + Dictionary drop_data = p_data; + StringArray autoloads = drop_data["autoloads"]; + + Vector<int> orders; + orders.resize(autoload_cache.size()); + + for (int i = 0; i < autoloads.size(); i++) { + aux.order = Globals::get_singleton()->get_order("autoload/" + autoloads[i]); + + List<AutoLoadInfo>::Element *I = autoload_cache.find(aux); + + if (move_to_back) { + autoload_cache.move_to_back(I); + } else if (E != I) { + autoload_cache.move_before(I, E); + } else if (E->next()) { + E = E->next(); + } else { + break; + } + } + + int i = 0; + + for (List<AutoLoadInfo>::Element *E = autoload_cache.front(); E; E = E->next()) { + orders[i++] = E->get().order; + } + + orders.sort(); + + UndoRedo *undo_redo = EditorNode::get_undo_redo(); + + undo_redo->create_action(TTR("Rearrange Autoloads")); + + i = 0; + + for (List<AutoLoadInfo>::Element *E = autoload_cache.front(); E; E = E->next()) { + undo_redo->add_do_method(Globals::get_singleton(), "set_order", E->get().name, orders[i++]); + undo_redo->add_undo_method(Globals::get_singleton(), "set_order", E->get().name, E->get().order); + } + + orders.clear(); + + undo_redo->add_do_method(this, "update_autoload"); + undo_redo->add_undo_method(this, "update_autoload"); + + undo_redo->add_do_method(this, "emit_signal", autoload_changed); + undo_redo->add_undo_method(this, "emit_signal", autoload_changed); + + undo_redo->commit_action(); +} + +void EditorAutoloadSettings::_bind_methods() { + + ObjectTypeDB::bind_method("_autoload_add", &EditorAutoloadSettings::_autoload_add); + ObjectTypeDB::bind_method("_autoload_selected", &EditorAutoloadSettings::_autoload_selected); + ObjectTypeDB::bind_method("_autoload_edited", &EditorAutoloadSettings::_autoload_edited); + ObjectTypeDB::bind_method("_autoload_button_pressed", &EditorAutoloadSettings::_autoload_button_pressed); + ObjectTypeDB::bind_method("_autoload_file_callback", &EditorAutoloadSettings::_autoload_file_callback); + + ObjectTypeDB::bind_method("get_drag_data_fw", &EditorAutoloadSettings::get_drag_data_fw); + ObjectTypeDB::bind_method("can_drop_data_fw", &EditorAutoloadSettings::can_drop_data_fw); + ObjectTypeDB::bind_method("drop_data_fw", &EditorAutoloadSettings::drop_data_fw); + + ObjectTypeDB::bind_method("update_autoload", &EditorAutoloadSettings::update_autoload); + + ADD_SIGNAL(MethodInfo("autoload_changed")); +} + +EditorAutoloadSettings::EditorAutoloadSettings() { + + autoload_changed = "autoload_changed"; + + updating_autoload = false; + selected_autoload = ""; + + HBoxContainer *hbc = memnew( HBoxContainer ); + add_child(hbc); + + VBoxContainer *vbc_path = memnew( VBoxContainer ); + vbc_path->set_h_size_flags(SIZE_EXPAND_FILL); + + autoload_add_path = memnew( EditorLineEditFileChooser ); + autoload_add_path->set_h_size_flags(SIZE_EXPAND_FILL); + + autoload_add_path->get_file_dialog()->set_mode(EditorFileDialog::MODE_OPEN_FILE); + autoload_add_path->get_file_dialog()->connect("file_selected", this, "_autoload_file_callback"); + + vbc_path->add_margin_child(TTR("Path:"), autoload_add_path); + hbc->add_child(vbc_path); + + VBoxContainer *vbc_name = memnew( VBoxContainer ); + vbc_name->set_h_size_flags(SIZE_EXPAND_FILL); + + HBoxContainer *hbc_name = memnew( HBoxContainer ); + + autoload_add_name = memnew( LineEdit ); + autoload_add_name->set_h_size_flags(SIZE_EXPAND_FILL); + hbc_name->add_child(autoload_add_name); + + Button *add_autoload = memnew( Button ); + add_autoload->set_text(TTR("Add")); + hbc_name->add_child(add_autoload); + add_autoload->connect("pressed", this, "_autoload_add"); + + vbc_name->add_margin_child(TTR("Node Name:"), hbc_name); + hbc->add_child(vbc_name); + + tree = memnew( Tree ); + tree->set_hide_root(true); + tree->set_select_mode(Tree::SELECT_MULTI); + tree->set_single_select_cell_editing_only_when_already_selected(true); + + tree->set_drag_forwarding(this); + + tree->set_columns(4); + tree->set_column_titles_visible(true); + + tree->set_column_title(0,TTR("Name")); + tree->set_column_expand(0,true); + tree->set_column_min_width(0,100); + + tree->set_column_title(1,TTR("Path")); + tree->set_column_expand(1,true); + tree->set_column_min_width(1,100); + + tree->set_column_title(2,TTR("Singleton")); + tree->set_column_expand(2,false); + tree->set_column_min_width(2,80); + + tree->set_column_expand(3,false); + tree->set_column_min_width(3,80); + + tree->connect("cell_selected", this, "_autoload_selected"); + tree->connect("item_edited", this, "_autoload_edited"); + tree->connect("button_pressed", this, "_autoload_button_pressed"); + + add_margin_child(TTR("List:"), tree, true); +} + diff --git a/tools/editor/import_settings.h b/tools/editor/editor_autoload_settings.h index 5a383a1a1a..b61c44b9c2 100644 --- a/tools/editor/import_settings.h +++ b/tools/editor/editor_autoload_settings.h @@ -1,5 +1,5 @@ /*************************************************************************/ -/* import_settings.h */ +/* editor_autoload_settings.h */ /*************************************************************************/ /* This file is part of: */ /* GODOT ENGINE */ @@ -26,57 +26,69 @@ /* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ /* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ /*************************************************************************/ -#ifndef IMPORT_SETTINGS_H -#define IMPORT_SETTINGS_H -#include "object.h" -#include "scene/gui/dialogs.h" +#ifndef EDITOR_AUTOLOAD_SETTINGS_H +#define EDITOR_AUTOLOAD_SETTINGS_H + #include "scene/gui/tree.h" -#include "scene/gui/label.h" -#include "scene/gui/option_button.h" -#include "scene/gui/line_edit.h" -#include "scene/gui/file_dialog.h" -#include "scene/gui/progress_bar.h" -#include "scene/gui/slider.h" -#include "scene/gui/spin_box.h" -#include "scene/resources/mesh.h" -#include "editor_import_export.h" -#include "editor_file_system.h" -#include "editor_dir_dialog.h" -class EditorNode; - - -class ImportSettingsDialog : public ConfirmationDialog { - - OBJ_TYPE(ImportSettingsDialog,ConfirmationDialog); - - TreeItem *edited; - EditorNode *editor; + +#include "editor_file_dialog.h" + +class EditorAutoloadSettings : public VBoxContainer { + + OBJ_TYPE( EditorAutoloadSettings, VBoxContainer ); + + enum { + BUTTON_MOVE_UP, + BUTTON_MOVE_DOWN, + BUTTON_DELETE + }; + + String autoload_changed; + + struct AutoLoadInfo { + String name; + int order; + + bool operator==(const AutoLoadInfo& p_info) { + return order == p_info.order; + } + }; + + List<AutoLoadInfo> autoload_cache; + + bool updating_autoload; + int number_of_autoloads; + String selected_autoload; + Tree *tree; - bool updating; + EditorLineEditFileChooser *autoload_add_path; + LineEdit *autoload_add_name; - void _button_pressed(Object *p_button, int p_col, int p_id); - void _item_pressed(int p_idx); - bool _generate_fs(TreeItem *p_parent,EditorFileSystemDirectory *p_dir); + bool _autoload_name_is_valid(const String& p_string, String *r_error = NULL); - String texformat; + void _autoload_add(); + void _autoload_selected(); + void _autoload_edited(); + void _autoload_button_pressed(Object *p_item, int p_column, int p_button); + void _autoload_file_callback(const String& p_path); - void _item_edited(); - virtual void ok_pressed(); + Variant get_drag_data_fw(const Point2& p_point, Control *p_from); + bool can_drop_data_fw(const Point2& p_point, const Variant& p_data, Control *p_from) const; + void drop_data_fw(const Point2& p_point, const Variant& p_data, Control *p_from); protected: - void _notification(int p_what); static void _bind_methods(); -public: - void update_tree(); +public: + void update_autoload(); - void popup_import_settings(); - ImportSettingsDialog(EditorNode *p_editor); + EditorAutoloadSettings(); }; -#endif // IMPORT_SETTINGS_H +#endif + diff --git a/tools/editor/editor_data.cpp b/tools/editor/editor_data.cpp index 4c4fecdd83..8d3fd6c9c2 100644 --- a/tools/editor/editor_data.cpp +++ b/tools/editor/editor_data.cpp @@ -326,6 +326,13 @@ Dictionary EditorData::get_editor_states() const { } +Dictionary EditorData::get_scene_editor_states(int p_idx) const +{ + ERR_FAIL_INDEX_V(p_idx,edited_scene.size(),Dictionary()); + EditedScene es = edited_scene[p_idx]; + return es.editor_states; +} + void EditorData::set_editor_states(const Dictionary& p_states) { List<Variant> keys; @@ -565,6 +572,8 @@ bool EditorData::check_and_update_scene(int p_idx) { bool must_reload = _find_updated_instances(edited_scene[p_idx].root,edited_scene[p_idx].root,checked_scenes); + print_line("MUST RELOAD? "+itos(must_reload)); + if (must_reload) { Ref<PackedScene> pscene; pscene.instance(); @@ -611,11 +620,14 @@ void EditorData::set_edited_scene(int p_idx){ current_edited_scene=p_idx; //swap } -Node* EditorData::get_edited_scene_root(){ - - ERR_FAIL_INDEX_V(current_edited_scene,edited_scene.size(),NULL); - - return edited_scene[current_edited_scene].root; +Node* EditorData::get_edited_scene_root(int p_idx){ + if (p_idx < 0) { + ERR_FAIL_INDEX_V(current_edited_scene,edited_scene.size(),NULL); + return edited_scene[current_edited_scene].root; + } else { + ERR_FAIL_INDEX_V(p_idx,edited_scene.size(),NULL); + return edited_scene[p_idx].root; + } } void EditorData::set_edited_scene_root(Node* p_root) { @@ -628,9 +640,14 @@ int EditorData::get_edited_scene_count() const { return edited_scene.size(); } -void EditorData::set_edited_scene_version(uint64_t version) { +void EditorData::set_edited_scene_version(uint64_t version, int scene_idx) { ERR_FAIL_INDEX(current_edited_scene,edited_scene.size()); - edited_scene[current_edited_scene].version=version; + if (scene_idx < 0) { + edited_scene[current_edited_scene].version=version; + } else { + ERR_FAIL_INDEX(scene_idx,edited_scene.size()); + edited_scene[scene_idx].version=version; + } } @@ -756,12 +773,19 @@ void EditorData::set_edited_scene_import_metadata(Ref<ResourceImportMetadata> p_ } -Ref<ResourceImportMetadata> EditorData::get_edited_scene_import_metadata() const{ +Ref<ResourceImportMetadata> EditorData::get_edited_scene_import_metadata(int idx) const{ ERR_FAIL_INDEX_V(current_edited_scene,edited_scene.size(),Ref<ResourceImportMetadata>()); - return edited_scene[current_edited_scene].medatata; + if(idx<0) { + return edited_scene[current_edited_scene].medatata; + } else { + ERR_FAIL_INDEX_V(idx,edited_scene.size(),Ref<ResourceImportMetadata>()); + return edited_scene[idx].medatata; + } } + + void EditorData::clear_edited_scenes() { for(int i=0;i<edited_scene.size();i++) { diff --git a/tools/editor/editor_data.h b/tools/editor/editor_data.h index 319155655d..a0b716f560 100644 --- a/tools/editor/editor_data.h +++ b/tools/editor/editor_data.h @@ -156,6 +156,7 @@ public: void paste_object_params(Object *p_object); Dictionary get_editor_states() const; + Dictionary get_scene_editor_states(int p_idx) const; void set_editor_states(const Dictionary& p_states); void get_editor_breakpoints(List<String> *p_breakpoints); void clear_editor_states(); @@ -184,15 +185,15 @@ public: void set_edited_scene(int p_idx); void set_edited_scene_root(Node* p_root); void set_edited_scene_import_metadata(Ref<ResourceImportMetadata> p_mdata); - Ref<ResourceImportMetadata> get_edited_scene_import_metadata() const; + Ref<ResourceImportMetadata> get_edited_scene_import_metadata(int p_idx = -1) const; int get_edited_scene() const; - Node* get_edited_scene_root(); + Node* get_edited_scene_root(int p_idx = -1); int get_edited_scene_count() const; String get_scene_title(int p_idx) const; String get_scene_path(int p_idx) const; String get_scene_type(int p_idx) const; Ref<Script> get_scene_root_script(int p_idx) const; - void set_edited_scene_version(uint64_t version); + void set_edited_scene_version(uint64_t version, int p_scene_idx = -1); uint64_t get_edited_scene_version() const; uint64_t get_scene_version(int p_idx) const; void clear_edited_scenes(); diff --git a/tools/editor/editor_dir_dialog.cpp b/tools/editor/editor_dir_dialog.cpp index a6e231cf18..f6ce7bf3f8 100644 --- a/tools/editor/editor_dir_dialog.cpp +++ b/tools/editor/editor_dir_dialog.cpp @@ -99,8 +99,14 @@ void EditorDirDialog::_notification(int p_what) { if (p_what==NOTIFICATION_ENTER_TREE) { reload(); - tree->connect("item_collapsed",this,"_item_collapsed",varray(),CONNECT_DEFERRED); - EditorFileSystem::get_singleton()->connect("filesystem_changed",this,"reload"); + + if (!tree->is_connected("item_collapsed",this,"_item_collapsed")) { + tree->connect("item_collapsed",this,"_item_collapsed",varray(),CONNECT_DEFERRED); + } + + if (!EditorFileSystem::get_singleton()->is_connected("filesystem_changed",this,"reload")) { + EditorFileSystem::get_singleton()->connect("filesystem_changed",this,"reload"); + } } @@ -185,10 +191,14 @@ void EditorDirDialog::ok_pressed() { void EditorDirDialog::_make_dir() { TreeItem *ti=tree->get_selected(); - if (!ti) + if (!ti) { + mkdirerr->set_text("Please select a base directory first"); + mkdirerr->popup_centered_minsize(); return; + } makedialog->popup_centered_minsize(Size2(250,80)); + makedirname->grab_focus(); } void EditorDirDialog::_make_dir_confirm() { @@ -198,9 +208,11 @@ void EditorDirDialog::_make_dir_confirm() { return; String dir = ti->get_metadata(0); + DirAccess *d = DirAccess::open(dir); ERR_FAIL_COND(!d); Error err = d->make_dir(makedirname->get_text()); + if (err!=OK) { mkdirerr->popup_centered_minsize(Size2(250,80)); } else { diff --git a/tools/editor/editor_file_dialog.cpp b/tools/editor/editor_file_dialog.cpp index e68a53659b..b8abd1d32c 100644 --- a/tools/editor/editor_file_dialog.cpp +++ b/tools/editor/editor_file_dialog.cpp @@ -144,11 +144,11 @@ void EditorFileDialog::_unhandled_input(const InputEvent& p_event) { dir->grab_focus(); handled=true; } - if (ED_IS_SHORTCUT("file_dialog/mode_favorite_up", p_event)) { + if (ED_IS_SHORTCUT("file_dialog/move_favorite_up", p_event)) { _favorite_move_up(); handled=true; } - if (ED_IS_SHORTCUT("file_dialog/mode_favorite_down", p_event)) { + if (ED_IS_SHORTCUT("file_dialog/move_favorite_down", p_event)) { _favorite_move_down(); handled=true; } @@ -1290,14 +1290,14 @@ EditorFileDialog::EditorFileDialog() { ED_SHORTCUT("file_dialog/go_back", TTR("Go Back"), KEY_MASK_ALT|KEY_LEFT); ED_SHORTCUT("file_dialog/go_forward", TTR("Go Forward"), KEY_MASK_ALT|KEY_RIGHT); ED_SHORTCUT("file_dialog/go_up", TTR("Go Up"), KEY_MASK_ALT|KEY_UP); - ED_SHORTCUT("file_dialog/refresh", TTR("Refresh"), KEY_MASK_CMD|KEY_F5); // ctrl + f5 else it launches the game as well.. + ED_SHORTCUT("file_dialog/refresh", TTR("Refresh"), KEY_F5); ED_SHORTCUT("file_dialog/toggle_hidden_files", TTR("Toggle Hidden Files"), KEY_MASK_CMD|KEY_H); ED_SHORTCUT("file_dialog/toggle_favorite", TTR("Toggle Favorite"), KEY_MASK_ALT|KEY_F); ED_SHORTCUT("file_dialog/toggle_mode", TTR("Toggle Mode"), KEY_MASK_ALT|KEY_V); ED_SHORTCUT("file_dialog/create_folder", TTR("Create Folder"), KEY_MASK_CMD|KEY_N); ED_SHORTCUT("file_dialog/focus_path", TTR("Focus Path"), KEY_MASK_CMD|KEY_D); - ED_SHORTCUT("file_dialog/mode_favorite_up", TTR("Mode Favorite Up"), KEY_MASK_CMD|KEY_UP); - ED_SHORTCUT("file_dialog/mode_favorite_down", TTR("Mode Favorite Down"), KEY_MASK_CMD|KEY_DOWN); + ED_SHORTCUT("file_dialog/move_favorite_up", TTR("Move Favorite Up"), KEY_MASK_CMD|KEY_UP); + ED_SHORTCUT("file_dialog/move_favorite_down", TTR("Move Favorite Down"), KEY_MASK_CMD|KEY_DOWN); HBoxContainer *pathhb = memnew( HBoxContainer ); diff --git a/tools/editor/editor_file_system.cpp b/tools/editor/editor_file_system.cpp index c5c92b5228..cb7cefea26 100644 --- a/tools/editor/editor_file_system.cpp +++ b/tools/editor/editor_file_system.cpp @@ -34,6 +34,7 @@ #include "editor_node.h" #include "io/resource_saver.h" #include "editor_settings.h" +#include "editor_resource_preview.h" EditorFileSystem *EditorFileSystem::singleton=NULL; @@ -621,31 +622,40 @@ void EditorFileSystem::_scan_new_dir(EditorFileSystemDirectory *p_dir,DirAccess int total = dirs.size()+files.size(); int idx=0; + for (List<String>::Element *E=dirs.front();E;E=E->next(),idx++) { if (da->change_dir(E->get())==OK) { - EditorFileSystemDirectory *efd = memnew( EditorFileSystemDirectory ); + String d = da->get_current_dir(); - efd->parent=p_dir; - efd->name=E->get(); + if (d==cd || !d.begins_with(cd)) { + da->change_dir(cd); //avoid recursion + } else { - _scan_new_dir(efd,da,p_progress.get_sub(idx,total)); - int idx=0; - for(int i=0;i<p_dir->subdirs.size();i++) { + EditorFileSystemDirectory *efd = memnew( EditorFileSystemDirectory ); - if (efd->name<p_dir->subdirs[i]->name) - break; - idx++; - } - if (idx==p_dir->subdirs.size()) { - p_dir->subdirs.push_back(efd); - } else { - p_dir->subdirs.insert(idx,efd); - } + efd->parent=p_dir; + efd->name=E->get(); + + _scan_new_dir(efd,da,p_progress.get_sub(idx,total)); + + int idx=0; + for(int i=0;i<p_dir->subdirs.size();i++) { + + if (efd->name<p_dir->subdirs[i]->name) + break; + idx++; + } + if (idx==p_dir->subdirs.size()) { + p_dir->subdirs.push_back(efd); + } else { + p_dir->subdirs.insert(idx,efd); + } - da->change_dir(".."); + da->change_dir(".."); + } } else { ERR_PRINTS(TTR("Cannot go into subdir:")+" "+E->get()); } @@ -821,12 +831,10 @@ void EditorFileSystem::_scan_fs_changes(EditorFileSystemDirectory *p_dir,const S } } + da->list_dir_end(); memdelete(da); - - - } for(int i=0;i<p_dir->files.size();i++) { @@ -841,6 +849,7 @@ void EditorFileSystem::_scan_fs_changes(EditorFileSystemDirectory *p_dir,const S continue; } + if (_check_meta_sources(p_dir->files[i]->meta)) { ItemAction ia; ia.action=ItemAction::ACTION_FILE_SOURCES_CHANGED; @@ -851,6 +860,8 @@ void EditorFileSystem::_scan_fs_changes(EditorFileSystemDirectory *p_dir,const S } else { p_dir->files[i]->meta.sources_changed=false; } + + EditorResourcePreview::get_singleton()->check_for_invalidation(p_dir->get_file_path(i)); } for(int i=0;i<p_dir->subdirs.size();i++) { @@ -1321,6 +1332,7 @@ void EditorFileSystem::update_file(const String& p_file) { fs->files[cpos]->modified_time=FileAccess::get_modified_time(p_file); fs->files[cpos]->meta=_get_meta(p_file); + EditorResourcePreview::get_singleton()->call_deferred("check_for_invalidation",p_file); call_deferred("emit_signal","filesystem_changed"); //update later } @@ -1334,6 +1346,8 @@ void EditorFileSystem::_bind_methods() { } + + EditorFileSystem::EditorFileSystem() { diff --git a/tools/editor/editor_file_system.h b/tools/editor/editor_file_system.h index b96e947569..fb768fb358 100644 --- a/tools/editor/editor_file_system.h +++ b/tools/editor/editor_file_system.h @@ -236,6 +236,7 @@ public: EditorFileSystemDirectory *get_path(const String& p_path); String get_file_type(const String& p_file) const; EditorFileSystemDirectory* find_file(const String& p_file,int* r_index) const; + EditorFileSystem(); ~EditorFileSystem(); }; diff --git a/tools/editor/editor_help.cpp b/tools/editor/editor_help.cpp index 0b60db5ee3..1fc157098c 100644 --- a/tools/editor/editor_help.cpp +++ b/tools/editor/editor_help.cpp @@ -332,7 +332,7 @@ EditorHelpSearch::EditorHelpSearch() { register_text_enter(search_box); set_hide_on_ok(false); search_options->connect("item_activated",this,"_confirmed"); - set_title(TTR("Search Classes")); + set_title(TTR("Search Help")); // search_options->set_hide_root(true); @@ -526,6 +526,7 @@ EditorHelpIndex::EditorHelpIndex() { class_list->connect("item_activated",this,"_tree_item_selected"); get_ok()->set_text(TTR("Open")); + set_title(TTR("Search Classes")); } diff --git a/tools/editor/editor_node.cpp b/tools/editor/editor_node.cpp index 0f8ddafb20..dee521beb3 100644 --- a/tools/editor/editor_node.cpp +++ b/tools/editor/editor_node.cpp @@ -168,6 +168,10 @@ void EditorNode::_update_title() { void EditorNode::_unhandled_input(const InputEvent& p_event) { + if (Node::get_viewport()->get_modal_stack_top()) + return; //ignore because of modal window + + if (p_event.type==InputEvent::KEY && p_event.key.pressed && !p_event.key.echo && !gui_base->get_viewport()->gui_has_modal_stack()) { @@ -182,6 +186,16 @@ void EditorNode::_unhandled_input(const InputEvent& p_event) { if (ED_IS_SHORTCUT("editor/distraction_free_mode", p_event)) { set_distraction_free_mode(!get_distraction_free_mode()); } + if (ED_IS_SHORTCUT("editor/next_tab", p_event)) { + int next_tab = editor_data.get_edited_scene() + 1; + next_tab %= editor_data.get_edited_scene_count(); + _scene_tab_changed(next_tab); + } + if (ED_IS_SHORTCUT("editor/prev_tab", p_event)) { + int next_tab = editor_data.get_edited_scene() - 1; + next_tab = next_tab >= 0 ? next_tab : editor_data.get_edited_scene_count() - 1; + _scene_tab_changed(next_tab); + } switch(p_event.key.scancode) { @@ -205,18 +219,7 @@ void EditorNode::_unhandled_input(const InputEvent& p_event) { case KEY_F6: _menu_option_confirm(RUN_PLAY_SCENE,true); break; //case KEY_F7: _menu_option_confirm(RUN_PAUSE,true); break; case KEY_F8: _menu_option_confirm(RUN_STOP,true); break;*/ - case KEY_TAB: - if (p_event.key.mod.command) { - int current_tab = editor_data.get_edited_scene(); - int tab_offset = 1; - if (p_event.key.mod.shift) - tab_offset = -1; - int next_tab = current_tab + tab_offset; - next_tab = next_tab >= 0 ? next_tab : editor_data.get_edited_scene_count() - 1; - next_tab %= editor_data.get_edited_scene_count(); - _scene_tab_changed(next_tab); - } - break; + } } @@ -505,8 +508,6 @@ void EditorNode::_rebuild_import_menu() for (int i = 0; i < editor_import_export->get_import_plugin_count(); i++) { p->add_item(editor_import_export->get_import_plugin(i)->get_visible_name(), IMPORT_PLUGIN_BASE + i); } - //p->add_separator(); - //p->add_item(TTR("Re-Import.."), SETTINGS_IMPORT); } void EditorNode::_node_renamed() { @@ -594,7 +595,6 @@ void EditorNode::save_resource(const Ref<Resource>& p_resource) { void EditorNode::save_resource_as(const Ref<Resource>& p_resource,const String& p_at_path) { file->set_mode(EditorFileDialog::MODE_SAVE_FILE); - bool relpaths = (p_resource->has_meta("__editor_relpaths__") && p_resource->get_meta("__editor_relpaths__").operator bool()); current_option=RESOURCE_SAVE_AS; List<String> extensions; @@ -704,7 +704,7 @@ void EditorNode::_get_scene_metadata(const String& p_file) { cf.instance(); Error err = cf->load(path); - if (err!=OK) + if (err!=OK || !cf->has_section("editor_states")) return; //must not exist List<String> esl; @@ -725,9 +725,9 @@ void EditorNode::_get_scene_metadata(const String& p_file) { } -void EditorNode::_set_scene_metadata(const String& p_file) { +void EditorNode::_set_scene_metadata(const String& p_file, int p_idx) { - Node *scene = editor_data.get_edited_scene_root(); + Node *scene = editor_data.get_edited_scene_root(p_idx); if (!scene) return; @@ -740,7 +740,14 @@ void EditorNode::_set_scene_metadata(const String& p_file) { Ref<ConfigFile> cf; cf.instance(); - Dictionary md = editor_data.get_editor_states(); + Dictionary md; + + if (p_idx<0 || editor_data.get_edited_scene()==p_idx) { + md = editor_data.get_editor_states(); + } else { + md = editor_data.get_scene_editor_states(p_idx); + } + List<Variant> keys; md.get_key_list(&keys); @@ -954,9 +961,9 @@ void EditorNode::_save_scene_with_preview(String p_file) { } -void EditorNode::_save_scene(String p_file) { +void EditorNode::_save_scene(String p_file, int idx) { - Node *scene = editor_data.get_edited_scene_root(); + Node *scene = editor_data.get_edited_scene_root(idx); if (!scene) { @@ -970,7 +977,7 @@ void EditorNode::_save_scene(String p_file) { editor_data.apply_changes_in_editors(); - _set_scene_metadata(p_file); + _set_scene_metadata(p_file,idx); Ref<PackedScene> sdata; @@ -1001,7 +1008,7 @@ void EditorNode::_save_scene(String p_file) { return; } - sdata->set_import_metadata(editor_data.get_edited_scene_import_metadata()); + sdata->set_import_metadata(editor_data.get_edited_scene_import_metadata(idx)); int flg=0; if (EditorSettings::get_singleton()->get("on_save/compress_binary_resources")) flg|=ResourceSaver::FLAG_COMPRESS; @@ -1017,7 +1024,10 @@ void EditorNode::_save_scene(String p_file) { if (err==OK) { scene->set_filename( Globals::get_singleton()->localize_path(p_file) ); //EditorFileSystem::get_singleton()->update_file(p_file,sdata->get_type()); - set_current_version(editor_data.get_undo_redo().get_version()); + if (idx < 0 || idx == editor_data.get_edited_scene()) + set_current_version(editor_data.get_undo_redo().get_version()); + else + editor_data.set_edited_scene_version(0,idx); _update_title(); _update_scene_tabs(); } else { @@ -1162,7 +1172,11 @@ void EditorNode::_dialog_action(String p_file) { load_scene(p_file); } break; + case SETTINGS_PICK_MAIN_SCENE: { + Globals::get_singleton()->set("application/main_scene",p_file); + //would be nice to show the project manager opened with the hilighted field.. + } break; case FILE_SAVE_OPTIMIZED: { @@ -1544,9 +1558,10 @@ void EditorNode::_property_editor_back() { void EditorNode::_imported(Node *p_node) { - Node *scene = editor_data.get_edited_scene_root(); -// add_edited_scene(p_node); /* + Node *scene = editor_data.get_edited_scene_root(); + add_edited_scene(p_node); + if (scene) { String path = scene->get_filename(); p_node->set_filename(path); @@ -1606,6 +1621,7 @@ void EditorNode::_edit_current() { object_menu->set_disabled(true); bool is_resource = current_obj->is_type("Resource"); + bool is_node = current_obj->is_type("Node"); resource_save_button->set_disabled(!is_resource); if (is_resource) { @@ -1622,7 +1638,7 @@ void EditorNode::_edit_current() { //top_pallete->set_current_tab(1); - } else if (current_obj->is_type("Node")) { + } else if (is_node) { Node * current_node = current_obj->cast_to<Node>(); ERR_FAIL_COND(!current_node); @@ -1718,10 +1734,14 @@ void EditorNode::_edit_current() { p->add_shortcut(ED_SHORTCUT("property_editor/copy_resource",TTR("Copy Resource")),RESOURCE_COPY); p->add_shortcut(ED_SHORTCUT("property_editor/unref_resource",TTR("Make Built-In")),RESOURCE_UNREF); } - p->add_separator(); - p->add_shortcut(ED_SHORTCUT("property_editor/make_subresources_unique",TTR("Make Sub-Resources Unique")),OBJECT_UNIQUE_RESOURCES); - p->add_separator(); - p->add_icon_shortcut(gui_base->get_icon("Help","EditorIcons"),ED_SHORTCUT("property_editor/open_help",TTR("Open in Help")),OBJECT_REQUEST_HELP); + + if (is_resource || is_node) { + p->add_separator(); + p->add_shortcut(ED_SHORTCUT("property_editor/make_subresources_unique",TTR("Make Sub-Resources Unique")),OBJECT_UNIQUE_RESOURCES); + p->add_separator(); + p->add_icon_shortcut(gui_base->get_icon("Help","EditorIcons"),ED_SHORTCUT("property_editor/open_help",TTR("Open in Help")),OBJECT_REQUEST_HELP); + } + List<MethodInfo> methods; current_obj->get_method_list(&methods); @@ -1800,7 +1820,6 @@ void EditorNode::_run(bool p_current,const String& p_custom) { String args; - if (p_current || (editor_data.get_edited_scene_root() && p_custom==editor_data.get_edited_scene_root()->get_filename())) { Node *scene = editor_data.get_edited_scene_root(); @@ -1823,12 +1842,7 @@ void EditorNode::_run(bool p_current,const String& p_custom) { } - bool autosave = EDITOR_DEF("run/auto_save_before_running",true); - - if (autosave) { - _menu_option(FILE_SAVE_SCENE); - } if (run_settings_dialog->get_run_mode()==RunSettingsDialog::RUN_LOCAL_SCENE) { @@ -1851,12 +1865,31 @@ void EditorNode::_run(bool p_current,const String& p_custom) { current_option=-1; //accept->get_cancel()->hide(); - accept->get_ok()->set_text(TTR("I see..")); - accept->set_text(TTR("No main scene has ever been defined.\nSelect one from \"Project Settings\" under the 'application' category.")); - accept->popup_centered_minsize(); + pick_main_scene->set_text(TTR("No main scene has ever been defined, select one?\nYou can change it later in later in \"Project Settings\" under the 'application' category.")); + pick_main_scene->popup_centered_minsize(); return; } + if (!FileAccess::exists(run_filename)) { + + current_option=-1; + //accept->get_cancel()->hide(); + pick_main_scene->set_text(vformat(TTR("Selected scene '%s' does not exist, select a valid one?\nYou can change it later in \"Project Settings\" under the 'application' category."), run_filename)); + pick_main_scene->popup_centered_minsize(); + return; + + } + + if (ResourceLoader::get_resource_type(run_filename)!="PackedScene") { + + current_option=-1; + //accept->get_cancel()->hide(); + pick_main_scene->set_text(vformat(TTR("Selected scene '%s' is not a scene file, select a valid one?\nYou can change it later in \"Project Settings\" under the 'application' category."), run_filename)); + pick_main_scene->popup_centered_minsize(); + return; + + } + } @@ -1882,7 +1915,7 @@ void EditorNode::_run(bool p_current,const String& p_custom) { _save_scene_with_preview(scene->get_filename()); } } - + _menu_option(FILE_SAVE_ALL_SCENES); editor_data.save_editor_external_data(); } @@ -2103,7 +2136,6 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { } file->set_mode(EditorFileDialog::MODE_SAVE_FILE); - bool relpaths = (scene->has_meta("__editor_relpaths__") && scene->get_meta("__editor_relpaths__").operator bool()); List<String> extensions; @@ -2129,7 +2161,7 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { String existing; if (extensions.size()) { String root_name(get_edited_scene()->get_name()); - existing=root_name+".tscn";//+extensions.front()->get().to_lower(); + existing=root_name+"."+extensions.front()->get().to_lower(); } file->set_current_path(existing); @@ -2139,6 +2171,19 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { } break; + case FILE_SAVE_ALL_SCENES: { + for (int i = 0; i < editor_data.get_edited_scene_count(); i++) { + Node *scene = editor_data.get_edited_scene_root(i); + if (scene && scene->get_filename()!="") { + // save in background if in the script editor + if (i != editor_data.get_edited_scene() || _get_current_main_editor() == EDITOR_SCRIPT) { + _save_scene(scene->get_filename(), i); + } else { + _save_scene_with_preview(scene->get_filename()); + } + }// else: ignore new scenes + } + } break; case FILE_SAVE_BEFORE_RUN: { if (!p_confirmed) { accept->get_ok()->set_text(TTR("Yes")); @@ -2184,8 +2229,6 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { } - bool relpaths = (scene->has_meta("__editor_relpaths__") && scene->get_meta("__editor_relpaths__").operator bool()); - file->set_mode(EditorFileDialog::MODE_SAVE_FILE); file->set_current_path(cpath); @@ -2194,8 +2237,8 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { } break; case FILE_SAVE_OPTIMIZED: { - Node *scene = editor_data.get_edited_scene_root(); #if 0 + Node *scene = editor_data.get_edited_scene_root(); if (!scene) { current_option=-1; @@ -2468,7 +2511,7 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { #endif case RESOURCE_NEW: { - create_dialog->popup_centered_ratio(); + create_dialog->popup(true); } break; case RESOURCE_LOAD: { @@ -2639,11 +2682,16 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { } break; case RUN_PLAY_NATIVE: { - _menu_option_confirm(RUN_STOP,true); - emit_signal("play_pressed"); - editor_run.run_native_notify(); - - + + bool autosave = EDITOR_DEF("run/auto_save_before_running",true); + if (autosave) { + _menu_option_confirm(FILE_SAVE_ALL_SCENES, false); + } + if (run_native->is_deploy_debug_remote_enabled()){ + _menu_option_confirm(RUN_STOP,true); + emit_signal("play_pressed"); + editor_run.run_native_notify(); + } } break; case RUN_SCENE_SETTINGS: { @@ -2756,10 +2804,6 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { settings_config_dialog->popup_edit_settings(); } break; - case SETTINGS_IMPORT: { - - import_settings->popup_import_settings(); - } break; case SETTINGS_OPTIMIZED_PRESETS: { //optimized_presets->popup_centered_ratio(); @@ -2770,6 +2814,30 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { file_templates->popup_centered_ratio(); } break; + case SETTINGS_PICK_MAIN_SCENE: { + + + //print_tree(); + file->set_mode(EditorFileDialog::MODE_OPEN_FILE); + //not for now? + List<String> extensions; + ResourceLoader::get_recognized_extensions_for_type("PackedScene",&extensions); + file->clear_filters(); + for(int i=0;i<extensions.size();i++) { + + file->add_filter("*."+extensions[i]+" ; "+extensions[i].to_upper()); + } + + + //file->set_current_path(current_path); + Node *scene = editor_data.get_edited_scene_root(); + if (scene) { + file->set_current_path(scene->get_filename()); + }; + file->set_title(TTR("Pick a Main Scene")); + file->popup_centered_ratio(); + + } break; case SETTINGS_ABOUT: { about->popup_centered(Size2(500,130)*EDSCALE); @@ -2783,10 +2851,12 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { List<Ref<Resource> > cached; ResourceCache::get_cached_resources(&cached); - + //this should probably be done in a thread.. for(List<Ref<Resource> >::Element *E=cached.front();E;E=E->next()) { - if (!E->get()->can_reload_from_file()) + if (!E->get()->editor_can_reload_from_file()) + continue; + if (!E->get()->get_path().is_resource_file() && !E->get()->get_path().is_abs_path()) continue; if (!FileAccess::exists(E->get()->get_path())) continue; @@ -2794,6 +2864,7 @@ void EditorNode::_menu_option_confirm(int p_option,bool p_confirmed) { if (mt!=E->get()->get_last_modified_time()) { E->get()->reload_from_file(); } + } @@ -3080,6 +3151,11 @@ void EditorNode::_remove_edited_scene() { new_index=1; } + + + if (editor_data.get_scene_path(old_index)!=String()) { + ScriptEditor::get_singleton()->close_builtin_scripts_from_scene(editor_data.get_scene_path(old_index)); + } _scene_tab_changed(new_index); editor_data.remove_scene(old_index); editor_data.get_undo_redo().clear_history(); @@ -3377,7 +3453,10 @@ Dictionary EditorNode::_get_main_scene_state() { return state; } -void EditorNode::_set_main_scene_state(Dictionary p_state) { +void EditorNode::_set_main_scene_state(Dictionary p_state,Node* p_for_scene) { + + if (get_edited_scene()!=p_for_scene && p_for_scene!=NULL) + return; //not for this scene //print_line("set current 7 "); changing_scene=false; @@ -3521,7 +3600,7 @@ void EditorNode::set_current_scene(int p_idx) { }*/ //_set_main_scene_state(state); - call_deferred("_set_main_scene_state",state); //do after everything else is done setting up + call_deferred("_set_main_scene_state",state,get_edited_scene()); //do after everything else is done setting up //print_line("set current 6 "); @@ -3541,7 +3620,7 @@ void EditorNode::fix_dependencies(const String& p_for_file) { dependency_fixer->edit(p_for_file); } -Error EditorNode::load_scene(const String& p_scene, bool p_ignore_broken_deps,bool p_set_inherited) { +Error EditorNode::load_scene(const String& p_scene, bool p_ignore_broken_deps,bool p_set_inherited,bool p_clear_errors) { if (!is_inside_tree()) { defer_load_scene = p_scene; @@ -3560,7 +3639,9 @@ Error EditorNode::load_scene(const String& p_scene, bool p_ignore_broken_deps,bo } - load_errors->clear(); + if (p_clear_errors) + load_errors->clear(); + String lpath = Globals::get_singleton()->localize_path(p_scene); if (!lpath.begins_with("res://")) { @@ -3997,15 +4078,17 @@ bool EditorNode::_find_editing_changed_scene(Node *p_from) { void EditorNode::add_io_error(const String& p_error) { - CharString err_ut = p_error.utf8(); - ERR_PRINT(err_ut.get_data()); + //CharString err_ut = p_error.utf8(); + //ERR_PRINT(!err_ut.get_data()); _load_error_notify(singleton,p_error); } void EditorNode::_load_error_notify(void* p_ud,const String& p_text) { + EditorNode*en=(EditorNode*)p_ud; - en->load_errors->set_text(en->load_errors->get_text()+p_text+"\n"); + en->load_errors->add_image(en->gui_base->get_icon("Error","EditorIcons")); + en->load_errors->add_text(p_text+"\n"); en->load_error_dialog->popup_centered_ratio(0.5); } @@ -5059,6 +5142,78 @@ void EditorNode::_file_access_close_error_notify(const String& p_str) { add_io_error("Unable to write to file '"+p_str+"', file in use, locked or lacking permissions."); } + +void EditorNode::reload_scene(const String& p_path) { + + + //first of all, reload textures as they might have changed on disk + + List<Ref<Resource> > cached; + ResourceCache::get_cached_resources(&cached); + List<Ref<Resource> > to_clear; //clear internal resources from previous scene from being used + for(List<Ref<Resource> >::Element *E=cached.front();E;E=E->next()) { + + if (E->get()->get_path().begins_with(p_path+"::")) //subresources of existing scene + to_clear.push_back(E->get()); + + if (!E->get()->cast_to<Texture>()) + continue; + if (!E->get()->get_path().is_resource_file() && !E->get()->get_path().is_abs_path()) + continue; + if (!FileAccess::exists(E->get()->get_path())) + continue; + uint64_t mt = FileAccess::get_modified_time(E->get()->get_path()); + if (mt!=E->get()->get_last_modified_time()) { + E->get()->reload_from_file(); + } + } + + //so reload reloads everything, clear subresources of previous scene + while(to_clear.front()) { + to_clear.front()->get()->set_path(""); + to_clear.pop_front(); + } + + int scene_idx=-1; + for(int i=0;i<editor_data.get_edited_scene_count();i++) { + + if (editor_data.get_scene_path(i)==p_path) { + scene_idx=i; + break; + } + } + + int current_tab = editor_data.get_edited_scene(); + + + if (scene_idx==-1) { + if (get_edited_scene()) { + //scene is not open, so at it might be instanced, just refresh, set tab to itself and it will reload + set_current_scene(current_tab); + editor_data.get_undo_redo().clear_history(); + } + return; + } + + + if (current_tab==scene_idx) { + editor_data.apply_changes_in_editors(); + _set_scene_metadata(p_path); + + } + //remove scene + _remove_scene(scene_idx); + //reload scene + load_scene(p_path); + //adjust index so tab is back a the previous position + editor_data.move_edited_scene_to_index(scene_idx); + get_undo_redo()->clear_history(); + //recover the tab + scene_tabs->set_current_tab(current_tab); + _scene_tab_changed(current_tab); +} + + void EditorNode::_bind_methods() { @@ -5502,7 +5657,10 @@ EditorNode::EditorNode() { ED_SHORTCUT("editor/fullscreen_mode",TTR("Fullscreen Mode"),KEY_MASK_SHIFT|KEY_F11); ED_SHORTCUT("editor/distraction_free_mode",TTR("Distraction Free Mode"),KEY_MASK_CMD|KEY_MASK_SHIFT|KEY_F11); - Separator *vs=NULL; + + ED_SHORTCUT("editor/next_tab", TTR("Next tab"), KEY_MASK_CMD+KEY_TAB); + ED_SHORTCUT("editor/prev_tab", TTR("Previous tab"), KEY_MASK_CMD+KEY_MASK_SHIFT+KEY_TAB); + file_menu->set_tooltip(TTR("Operations with scene files.")); p=file_menu->get_popup(); @@ -5512,6 +5670,7 @@ EditorNode::EditorNode() { p->add_separator(); p->add_shortcut(ED_SHORTCUT("editor/save_scene",TTR("Save Scene"),KEY_MASK_CMD+KEY_S),FILE_SAVE_SCENE); p->add_shortcut(ED_SHORTCUT("editor/save_scene_as",TTR("Save Scene As.."),KEY_MASK_SHIFT+KEY_MASK_CMD+KEY_S),FILE_SAVE_AS_SCENE); + p->add_shortcut(ED_SHORTCUT("editor/save_all_scenes",TTR("Save all Scenes"),KEY_MASK_ALT+KEY_MASK_SHIFT+KEY_MASK_CMD+KEY_S),FILE_SAVE_ALL_SCENES); p->add_separator(); p->add_shortcut(ED_SHORTCUT("editor/close_scene",TTR("Close Scene"),KEY_MASK_SHIFT+KEY_MASK_CTRL+KEY_W),FILE_CLOSE); p->add_separator(); @@ -5704,7 +5863,8 @@ EditorNode::EditorNode() { play_custom_scene_button->set_focus_mode(Control::FOCUS_NONE); play_custom_scene_button->set_icon(gui_base->get_icon("PlayCustom","EditorIcons")); play_custom_scene_button->connect("pressed", this,"_menu_option",make_binds(RUN_PLAY_CUSTOM_SCENE)); - play_custom_scene_button->set_tooltip(TTR("Play custom scene")+" ("+keycode_get_string(KEY_MASK_CMD|KEY_MASK_SHIFT|KEY_F5)+")."); + play_custom_scene_button->set_tooltip(TTR("Play custom scene")); + play_custom_scene_button->set_shortcut(ED_SHORTCUT("editor/play_custom_scene",TTR("Play Custom Scene"),KEY_MASK_CMD|KEY_MASK_SHIFT|KEY_F5)); debug_button = memnew( MenuButton ); debug_button->set_flat(true); @@ -6152,8 +6312,6 @@ EditorNode::EditorNode() { open_recent_confirmation->connect("confirmed",this,"_open_recent_scene_confirm"); - import_settings= memnew(ImportSettingsDialog(this)); - gui_base->add_child(import_settings); run_settings_dialog = memnew( RunSettingsDialog ); gui_base->add_child( run_settings_dialog ); @@ -6417,13 +6575,14 @@ EditorNode::EditorNode() { set_process_unhandled_input(true); _playing_edited=false; - load_errors = memnew( TextEdit ); - load_errors->set_readonly(true); +// Panel *errors = memnew( Panel ); + load_errors = memnew( RichTextLabel ); +// load_errors->set_readonly(true); load_error_dialog = memnew( AcceptDialog ); load_error_dialog->add_child(load_errors); load_error_dialog->set_title(TTR("Load Errors")); load_error_dialog->set_child_rect(load_errors); - add_child(load_error_dialog); + gui_base->add_child(load_error_dialog); //EditorImport::add_importer( Ref<EditorImporterCollada>( memnew(EditorImporterCollada ))); @@ -6448,7 +6607,10 @@ EditorNode::EditorNode() { Node::set_human_readable_collision_renaming(true); - + pick_main_scene = memnew( ConfirmationDialog ); + gui_base->add_child(pick_main_scene); + pick_main_scene->get_ok()->set_text("Select"); + pick_main_scene->connect("confirmed",this,"_menu_option",varray(SETTINGS_PICK_MAIN_SCENE)); // Ref<ImageTexture> it = gui_base->get_icon("logo","Icons"); // OS::get_singleton()->set_icon( it->get_data() ); diff --git a/tools/editor/editor_node.h b/tools/editor/editor_node.h index bea973a357..d18de1c531 100644 --- a/tools/editor/editor_node.h +++ b/tools/editor/editor_node.h @@ -74,7 +74,6 @@ #include "tools/editor/editor_sub_scene.h" #include "editor_import_export.h" #include "editor_reimport_dialog.h" -#include "import_settings.h" #include "tools/editor/editor_plugin.h" #include "tools/editor/editor_name_dialog.h" @@ -125,6 +124,7 @@ private: FILE_OPEN_SCENE, FILE_SAVE_SCENE, FILE_SAVE_AS_SCENE, + FILE_SAVE_ALL_SCENES, FILE_SAVE_BEFORE_RUN, FILE_SAVE_AND_RUN, FILE_IMPORT_SUBSCENE, @@ -177,7 +177,6 @@ private: RUN_RELOAD_SCRIPTS, SETTINGS_UPDATE_ALWAYS, SETTINGS_UPDATE_CHANGES, - SETTINGS_IMPORT, SETTINGS_EXPORT_PREFERENCES, SETTINGS_PREFERENCES, SETTINGS_OPTIMIZED_PRESETS, @@ -185,6 +184,7 @@ private: SETTINGS_LAYOUT_DELETE, SETTINGS_LAYOUT_DEFAULT, SETTINGS_LOAD_EXPORT_TEMPLATES, + SETTINGS_PICK_MAIN_SCENE, SETTINGS_HELP, SETTINGS_ABOUT, SOURCES_REIMPORT, @@ -261,7 +261,7 @@ private: TextureProgress *audio_vu; //MenuButton *fileserver_menu; - TextEdit *load_errors; + RichTextLabel *load_errors; AcceptDialog *load_error_dialog; //Control *scene_root_base; @@ -287,6 +287,7 @@ private: ConfirmationDialog *confirmation; ConfirmationDialog *import_confirmation; ConfirmationDialog *open_recent_confirmation; + ConfirmationDialog *pick_main_scene; AcceptDialog *accept; AcceptDialog *about; AcceptDialog *warning; @@ -336,7 +337,6 @@ private: Vector<EditorPlugin*> editor_table; EditorReImportDialog *reimport_dialog; - ImportSettingsDialog *import_settings; ProgressDialog *progress_dialog; BackgroundProgress *progress_hb; @@ -439,7 +439,7 @@ private: void _node_renamed(); void _editor_select(int p_which); - void _set_scene_metadata(const String &p_file); + void _set_scene_metadata(const String &p_file, int p_idx=-1); void _get_scene_metadata(const String& p_file); void _update_title(); void _update_scene_tabs(); @@ -449,7 +449,7 @@ private: void _rebuild_import_menu(); - void _save_scene(String p_file); + void _save_scene(String p_file, int idx = -1); void _instance_request(const String& p_path); @@ -553,7 +553,7 @@ private: void _scene_tab_script_edited(int p_tab); Dictionary _get_main_scene_state(); - void _set_main_scene_state(Dictionary p_state); + void _set_main_scene_state(Dictionary p_state,Node* p_for_scene); int _get_current_main_editor(); @@ -652,7 +652,7 @@ public: void fix_dependencies(const String& p_for_file); void clear_scene() { _cleanup_scene(); } - Error load_scene(const String& p_scene, bool p_ignore_broken_deps=false, bool p_set_inherited=false); + Error load_scene(const String& p_scene, bool p_ignore_broken_deps=false, bool p_set_inherited=false, bool p_clear_errors=true); Error load_resource(const String& p_scene); bool is_scene_open(const String& p_path); @@ -714,6 +714,8 @@ public: void update_keying(); + void reload_scene(const String& p_path); + bool is_exiting() const { return exiting; } ToolButton *get_pause_button() { return pause_button; } @@ -758,7 +760,7 @@ public: plugins_list = p_plugins_list; } - Vector<EditorPlugin*> get_plugins_list() { + Vector<EditorPlugin*>& get_plugins_list() { return plugins_list; } diff --git a/tools/editor/editor_path.cpp b/tools/editor/editor_path.cpp index 4cf98e832c..6b804b6a24 100644 --- a/tools/editor/editor_path.cpp +++ b/tools/editor/editor_path.cpp @@ -38,7 +38,6 @@ void EditorPath::_notification(int p_what) { RID ci=get_canvas_item(); Ref<Font> label_font = get_font("font","Label"); - Color label_color = get_color("font_color","Label"); Size2i size = get_size(); Ref<Texture> sn = get_icon("SmallNext","EditorIcons"); diff --git a/tools/editor/editor_plugin.cpp b/tools/editor/editor_plugin.cpp index 138e532ce8..01e6b613c0 100644 --- a/tools/editor/editor_plugin.cpp +++ b/tools/editor/editor_plugin.cpp @@ -27,6 +27,7 @@ /* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ /*************************************************************************/ #include "editor_plugin.h" +#include "scene/3d/camera.h" #include "plugins/canvas_item_editor_plugin.h" #include "plugins/spatial_editor_plugin.h" #include "tools/editor/editor_node.h" diff --git a/tools/editor/editor_resource_preview.cpp b/tools/editor/editor_resource_preview.cpp index 8975c0ec35..a02fe2a531 100644 --- a/tools/editor/editor_resource_preview.cpp +++ b/tools/editor/editor_resource_preview.cpp @@ -33,6 +33,7 @@ #include "io/resource_saver.h" #include "globals.h" #include "editor_scale.h" +#include "message_queue.h" Ref<Texture> EditorResourcePreviewGenerator::generate_from_path(const String& p_path) { @@ -66,25 +67,27 @@ void EditorResourcePreview::_preview_ready(const String& p_str,const Ref<Texture String path = p_str; uint32_t hash=0; + uint64_t modified_time=0; if (p_str.begins_with("ID:")) { hash=p_str.get_slicec(':',2).to_int(); path="ID:"+p_str.get_slicec(':',1); + } else { + modified_time = FileAccess::get_modified_time(path); } Item item; item.order=order++; item.preview=p_texture; item.last_hash=hash; + item.modified_time=modified_time; cache[path]=item; - Object *recv = ObjectDB::get_instance(id); - if (recv) { - recv->call_deferred(p_func,path,p_texture,p_ud); - } - preview_mutex->unlock(); + + MessageQueue::get_singleton()->push_call(id,p_func,path,p_texture,p_ud); + } Ref<Texture> EditorResourcePreview::_generate_preview(const QueueItem& p_item,const String& cache_base) { @@ -103,6 +106,7 @@ Ref<Texture> EditorResourcePreview::_generate_preview(const QueueItem& p_item,co Ref<Texture> generated; for(int i=0;i<preview_generators.size();i++) { + if (!preview_generators[i]->handles(type)) continue; if (p_item.resource.is_valid()) { @@ -153,99 +157,107 @@ void EditorResourcePreview::_thread() { QueueItem item = queue.front()->get(); queue.pop_front(); - preview_mutex->unlock(); - - Ref<Texture> texture; - - //print_line("pop from queue "+item.path); - - int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); - thumbnail_size*=EDSCALE; if (cache.has(item.path)) { //already has it because someone loaded it, just let it know it's ready if (item.resource.is_valid()) { item.path+=":"+itos(cache[item.path].last_hash); //keep last hash (see description of what this is in condition below) } - call_deferred("_preview_ready",item.path,cache[item.path].preview,item.id,item.function,item.userdata); - - } else if (item.resource.is_valid()){ - texture=_generate_preview(item,String()); - //adding hash to the end of path (should be ID:<objid>:<hash>) because of 5 argument limit to call_deferred - call_deferred("_preview_ready",item.path+":"+itos(item.resource->hash_edited_version()),texture,item.id,item.function,item.userdata); + _preview_ready(item.path,cache[item.path].preview,item.id,item.function,item.userdata); + preview_mutex->unlock(); } else { + preview_mutex->unlock(); - String temp_path=EditorSettings::get_singleton()->get_settings_path().plus_file("tmp"); - String cache_base = Globals::get_singleton()->globalize_path(item.path).md5_text(); - cache_base = temp_path.plus_file("resthumb-"+cache_base); + Ref<Texture> texture; - //does not have it, try to load a cached thumbnail + //print_line("pop from queue "+item.path); - String file = cache_base+".txt"; - //print_line("cachetxt at "+file); - FileAccess *f=FileAccess::open(file,FileAccess::READ); - if (!f) { + int thumbnail_size = EditorSettings::get_singleton()->get("file_dialog/thumbnail_size"); + thumbnail_size*=EDSCALE; - //print_line("generate because not cached"); - //generate - texture=_generate_preview(item,cache_base); + if (item.resource.is_valid()){ + + texture=_generate_preview(item,String()); + //adding hash to the end of path (should be ID:<objid>:<hash>) because of 5 argument limit to call_deferred + _preview_ready(item.path+":"+itos(item.resource->hash_edited_version()),texture,item.id,item.function,item.userdata); + } else { - uint64_t modtime = FileAccess::get_modified_time(item.path); - int tsize = f->get_line().to_int64(); - uint64_t last_modtime = f->get_line().to_int64(); - bool cache_valid = true; + String temp_path=EditorSettings::get_singleton()->get_settings_path().plus_file("tmp"); + String cache_base = Globals::get_singleton()->globalize_path(item.path).md5_text(); + cache_base = temp_path.plus_file("resthumb-"+cache_base); - if (tsize!=thumbnail_size) { - cache_valid=false; - memdelete(f); - } else if (last_modtime!=modtime) { + //does not have it, try to load a cached thumbnail - String last_md5 = f->get_line(); - String md5 = FileAccess::get_md5(item.path); - memdelete(f); + String file = cache_base+".txt"; + //print_line("cachetxt at "+file); + FileAccess *f=FileAccess::open(file,FileAccess::READ); + if (!f) { - if (last_md5!=md5) { + //print_line("generate because not cached"); + //generate + texture=_generate_preview(item,cache_base); + } else { + + uint64_t modtime = FileAccess::get_modified_time(item.path); + int tsize = f->get_line().to_int64(); + uint64_t last_modtime = f->get_line().to_int64(); + + bool cache_valid = true; + + if (tsize!=thumbnail_size) { cache_valid=false; - } else { - //update modified time + memdelete(f); + } else if (last_modtime!=modtime) { + + String last_md5 = f->get_line(); + String md5 = FileAccess::get_md5(item.path); + memdelete(f); + + if (last_md5!=md5) { - f=FileAccess::open(file,FileAccess::WRITE); - f->store_line(itos(modtime)); - f->store_line(md5); + cache_valid=false; + } else { + //update modified time + + f=FileAccess::open(file,FileAccess::WRITE); + f->store_line(itos(modtime)); + f->store_line(md5); + memdelete(f); + } + } else { memdelete(f); } - } else { - memdelete(f); - } - if (cache_valid) { + if (cache_valid) { - texture = ResourceLoader::load(cache_base+".png","ImageTexture",true); - if (!texture.is_valid()) { - //well fuck - cache_valid=false; + texture = ResourceLoader::load(cache_base+".png","ImageTexture",true); + if (!texture.is_valid()) { + //well fuck + cache_valid=false; + } } - } - if (!cache_valid) { + if (!cache_valid) { - texture=_generate_preview(item,cache_base); - } + texture=_generate_preview(item,cache_base); + } - } + } - //print_line("notify of preview ready"); - call_deferred("_preview_ready",item.path,texture,item.id,item.function,item.userdata); + //print_line("notify of preview ready"); + _preview_ready(item.path,texture,item.id,item.function,item.userdata); + } } + } else { preview_mutex->unlock(); } @@ -263,6 +275,8 @@ void EditorResourcePreview::queue_edited_resource_preview(const Ref<Resource>& p preview_mutex->lock(); String path_id = "ID:"+itos(p_res->get_instance_ID()); + + if (cache.has(path_id) && cache[path_id].last_hash==p_res->hash_edited_version()) { cache[path_id].order=order++; @@ -272,6 +286,8 @@ void EditorResourcePreview::queue_edited_resource_preview(const Ref<Resource>& p } + cache.erase(path_id); //erase if exists, since it will be regen + //print_line("send to thread "+p_path); QueueItem item; item.function=p_receiver_func; @@ -322,6 +338,34 @@ EditorResourcePreview* EditorResourcePreview::get_singleton() { void EditorResourcePreview::_bind_methods() { ObjectTypeDB::bind_method("_preview_ready",&EditorResourcePreview::_preview_ready); + ObjectTypeDB::bind_method(_MD("check_for_invalidation","path"),&EditorResourcePreview::check_for_invalidation); + + + ADD_SIGNAL(MethodInfo("preview_invalidated",PropertyInfo(Variant::STRING,"path"))); +} + +void EditorResourcePreview::check_for_invalidation(const String& p_path) { + + preview_mutex->lock(); + + bool call_invalidated=false; + if (cache.has(p_path)) { + + uint64_t modified_time = FileAccess::get_modified_time(p_path); + if (modified_time!=cache[p_path].modified_time) { + cache.erase(p_path); + call_invalidated=true; + } + } + + preview_mutex->unlock(); + + if (call_invalidated) {//do outside mutex + call_deferred("emit_signal","preview_invalidated",p_path); + } + + + } EditorResourcePreview::EditorResourcePreview() { diff --git a/tools/editor/editor_resource_preview.h b/tools/editor/editor_resource_preview.h index 63dc5c3dd3..51a00965eb 100644 --- a/tools/editor/editor_resource_preview.h +++ b/tools/editor/editor_resource_preview.h @@ -93,6 +93,7 @@ class EditorResourcePreview : public Node { Ref<Texture> preview; int order; uint32_t last_hash; + uint64_t modified_time; }; int order; @@ -106,6 +107,8 @@ class EditorResourcePreview : public Node { void _thread(); Vector<Ref<EditorResourcePreviewGenerator> > preview_generators; + + protected: static void _bind_methods(); @@ -118,6 +121,7 @@ public: void queue_edited_resource_preview(const Ref<Resource>& p_path, Object* p_receiver, const StringName& p_receiver_func, const Variant& p_userdata); void add_preview_generator(const Ref<EditorResourcePreviewGenerator>& p_generator); + void check_for_invalidation(const String& p_path); EditorResourcePreview(); ~EditorResourcePreview(); diff --git a/tools/editor/editor_run_native.cpp b/tools/editor/editor_run_native.cpp index 234dd03087..edbcc71284 100644 --- a/tools/editor/editor_run_native.cpp +++ b/tools/editor/editor_run_native.cpp @@ -101,10 +101,8 @@ void EditorRunNative::_run_native(int p_idx,const String& p_platform) { Ref<EditorExportPlatform> eep = EditorImportExport::get_singleton()->get_export_platform(p_platform); ERR_FAIL_COND(eep.is_null()); - if (deploy_debug_remote) { - emit_signal("native_run"); + emit_signal("native_run"); - } int flags=0; if (deploy_debug_remote) flags|=EditorExportPlatform::EXPORT_REMOTE_DEBUG; diff --git a/tools/editor/editor_settings.cpp b/tools/editor/editor_settings.cpp index 457aecba4a..c150e62754 100644 --- a/tools/editor/editor_settings.cpp +++ b/tools/editor/editor_settings.cpp @@ -104,12 +104,17 @@ bool EditorSettings::_get(const StringName& p_name,Variant &r_ret) const { for (const Map<String,Ref<ShortCut> >::Element *E=shortcuts.front();E;E=E->next()) { Ref<ShortCut> sc=E->get(); - if (!sc->has_meta("original")) - continue; //this came from settings but is not any longer used - InputEvent original = sc->get_meta("original"); - if (sc->is_shortcut(original) || (original.type==InputEvent::NONE && sc->get_shortcut().type==InputEvent::NONE)) - continue; //not changed from default, don't save + if (optimize_save) { + if (!sc->has_meta("original")) { + continue; //this came from settings but is not any longer used + } + + InputEvent original = sc->get_meta("original"); + if (sc->is_shortcut(original) || (original.type==InputEvent::NONE && sc->get_shortcut().type==InputEvent::NONE)) + continue; //not changed from default, don't save + } + arr.push_back(E->key()); arr.push_back(sc->get_shortcut()); } @@ -161,7 +166,7 @@ void EditorSettings::_get_property_list(List<PropertyInfo> *p_list) const { for(Set<_EVCSort>::Element *E=vclist.front();E;E=E->next()) { int pinfo = 0; - if (E->get().save) { + if (E->get().save || !optimize_save) { pinfo|=PROPERTY_USAGE_STORAGE; } @@ -423,7 +428,7 @@ void EditorSettings::setup_network() { if (ip=="127.0.0.1") continue; - if (lip!="") + if (lip=="") lip=ip; if (ip==current) lip=current; //so it saves @@ -549,6 +554,7 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { set("text_editor/create_signal_callbacks",true); set("text_editor/autosave_interval_secs",0); + set("text_editor/block_caret", false); set("text_editor/caret_blink", false); set("text_editor/caret_blink_speed", 0.65); hints["text_editor/caret_blink_speed"]=PropertyInfo(Variant::REAL,"text_editor/caret_blink_speed",PROPERTY_HINT_RANGE,"0.1, 10, 0.1"); @@ -677,7 +683,10 @@ void EditorSettings::_load_default_text_editor_theme() { set("text_editor/completion_background_color", Color::html("2C2A32")); set("text_editor/completion_selected_color", Color::html("434244")); set("text_editor/completion_existing_color", Color::html("21dfdfdf")); + set("text_editor/completion_scroll_color", Color::html("ffffff")); + set("text_editor/completion_font_color", Color::html("aaaaaa")); set("text_editor/caret_color",Color::html("aaaaaa")); + set("text_editor/caret_background_color", Color::html("000000")); set("text_editor/line_number_color",Color::html("66aaaaaa")); set("text_editor/text_color",Color::html("aaaaaa")); set("text_editor/text_selected_color",Color::html("000000")); @@ -912,7 +921,10 @@ bool EditorSettings::_save_text_editor_theme(String p_file) { cf->set_value(theme_section, "completion_background_color", ((Color)get("text_editor/completion_background_color")).to_html()); cf->set_value(theme_section, "completion_selected_color", ((Color)get("text_editor/completion_selected_color")).to_html()); cf->set_value(theme_section, "completion_existing_color", ((Color)get("text_editor/completion_existing_color")).to_html()); + cf->set_value(theme_section, "completion_scroll_color", ((Color)get("text_editor/completion_scroll_color")).to_html()); + cf->set_value(theme_section, "completion_font_color", ((Color)get("text_editor/completion_font_color")).to_html()); cf->set_value(theme_section, "caret_color", ((Color)get("text_editor/caret_color")).to_html()); + cf->set_value(theme_section, "caret_background_color", ((Color)get("text_editor/caret_background_color")).to_html()); cf->set_value(theme_section, "line_number_color", ((Color)get("text_editor/line_number_color")).to_html()); cf->set_value(theme_section, "text_color", ((Color)get("text_editor/text_color")).to_html()); cf->set_value(theme_section, "text_selected_color", ((Color)get("text_editor/text_selected_color")).to_html()); @@ -976,6 +988,10 @@ void EditorSettings::get_shortcut_list(List<String> *r_shortcuts) { } } +void EditorSettings::set_optimize_save(bool p_optimize) { + + optimize_save=p_optimize; +} void EditorSettings::_bind_methods() { @@ -998,6 +1014,7 @@ EditorSettings::EditorSettings() { //singleton=this; last_order=0; + optimize_save=true; save_changed_setting=true; EditorTranslationList *etl=_editor_translations; diff --git a/tools/editor/editor_settings.h b/tools/editor/editor_settings.h index d975a7ef86..937956a366 100644 --- a/tools/editor/editor_settings.h +++ b/tools/editor/editor_settings.h @@ -88,6 +88,7 @@ private: bool save_changed_setting; + bool optimize_save; //do not save stuff that came from config but was not set from engine void _load_defaults(Ref<ConfigFile> p_extra_config = NULL); void _load_default_text_editor_theme(); @@ -155,6 +156,8 @@ public: Ref<ShortCut> get_shortcut(const String&p_name) const; void get_shortcut_list(List<String> *r_shortcuts); + void set_optimize_save(bool p_optimize); + EditorSettings(); ~EditorSettings(); diff --git a/tools/editor/groups_editor.cpp b/tools/editor/groups_editor.cpp index 898e1e115e..5b7bc1da78 100644 --- a/tools/editor/groups_editor.cpp +++ b/tools/editor/groups_editor.cpp @@ -31,7 +31,7 @@ #include "scene/gui/box_container.h" #include "scene/gui/label.h" #include "editor_node.h" - +#include "scene/resources/packed_scene.h" void GroupsEditor::_add_group(const String& p_group) { if (!node) @@ -107,9 +107,35 @@ void GroupsEditor::update_tree() { if (!gi.persistent) continue; + Node *n = node; + bool can_be_deleted=true; + + while(n) { + + Ref<SceneState> ss = (n==EditorNode::get_singleton()->get_edited_scene()) ? n->get_scene_inherited_state() : n->get_scene_instance_state(); + + if (ss.is_valid()) { + + int path = ss->find_node_by_path(n->get_path_to(node)); + if (path!=-1) { + if (ss->is_node_in_group(path,gi.name)) { + can_be_deleted=false; + } + } + } + + n=n->get_owner(); + } + + TreeItem *item=tree->create_item(root); item->set_text(0, gi.name); - item->add_button(0, get_icon("Remove", "EditorIcons"), 0); + if (can_be_deleted) { + item->add_button(0, get_icon("Remove", "EditorIcons"), 0); + } else { + item->set_selectable(0,false); + } + } } diff --git a/tools/editor/icons/2x/icon_gizmo_directional_light.png b/tools/editor/icons/2x/icon_gizmo_directional_light.png Binary files differindex 5f812845df..0d02788040 100644 --- a/tools/editor/icons/2x/icon_gizmo_directional_light.png +++ b/tools/editor/icons/2x/icon_gizmo_directional_light.png diff --git a/tools/editor/icons/2x/icon_gizmo_light.png b/tools/editor/icons/2x/icon_gizmo_light.png Binary files differindex 3b1b15f4b6..2ba9689107 100644 --- a/tools/editor/icons/2x/icon_gizmo_light.png +++ b/tools/editor/icons/2x/icon_gizmo_light.png diff --git a/tools/editor/icons/2x/icon_gizmo_listener.png b/tools/editor/icons/2x/icon_gizmo_listener.png Binary files differindex 9fbf16c015..bc2908824d 100644 --- a/tools/editor/icons/2x/icon_gizmo_listener.png +++ b/tools/editor/icons/2x/icon_gizmo_listener.png diff --git a/tools/editor/icons/2x/icon_gizmo_spatial_sample_player.png b/tools/editor/icons/2x/icon_gizmo_spatial_sample_player.png Binary files differindex f67beb14c5..78a88c55c1 100644 --- a/tools/editor/icons/2x/icon_gizmo_spatial_sample_player.png +++ b/tools/editor/icons/2x/icon_gizmo_spatial_sample_player.png diff --git a/tools/editor/icons/2x/icon_gizmo_spatial_stream_player.png b/tools/editor/icons/2x/icon_gizmo_spatial_stream_player.png Binary files differindex feed191fc1..631f03e874 100644 --- a/tools/editor/icons/2x/icon_gizmo_spatial_stream_player.png +++ b/tools/editor/icons/2x/icon_gizmo_spatial_stream_player.png diff --git a/tools/editor/icons/2x/icon_zoom_less.png b/tools/editor/icons/2x/icon_zoom_less.png Binary files differnew file mode 100644 index 0000000000..d483db55ce --- /dev/null +++ b/tools/editor/icons/2x/icon_zoom_less.png diff --git a/tools/editor/icons/2x/icon_zoom_more.png b/tools/editor/icons/2x/icon_zoom_more.png Binary files differnew file mode 100644 index 0000000000..8f9ef77849 --- /dev/null +++ b/tools/editor/icons/2x/icon_zoom_more.png diff --git a/tools/editor/icons/2x/icon_zoom_reset.png b/tools/editor/icons/2x/icon_zoom_reset.png Binary files differnew file mode 100644 index 0000000000..092215b3e2 --- /dev/null +++ b/tools/editor/icons/2x/icon_zoom_reset.png diff --git a/tools/editor/icons/icon_gizmo_directional_light.png b/tools/editor/icons/icon_gizmo_directional_light.png Binary files differindex a716930687..bdeb120b43 100644 --- a/tools/editor/icons/icon_gizmo_directional_light.png +++ b/tools/editor/icons/icon_gizmo_directional_light.png diff --git a/tools/editor/icons/icon_gizmo_light.png b/tools/editor/icons/icon_gizmo_light.png Binary files differindex 396ae8615d..be9903f8c2 100644 --- a/tools/editor/icons/icon_gizmo_light.png +++ b/tools/editor/icons/icon_gizmo_light.png diff --git a/tools/editor/icons/icon_gizmo_listener.png b/tools/editor/icons/icon_gizmo_listener.png Binary files differindex 218736e491..47e978be61 100644 --- a/tools/editor/icons/icon_gizmo_listener.png +++ b/tools/editor/icons/icon_gizmo_listener.png diff --git a/tools/editor/icons/icon_gizmo_spatial_sample_player.png b/tools/editor/icons/icon_gizmo_spatial_sample_player.png Binary files differindex 71e4f13f1c..0119dbc433 100644 --- a/tools/editor/icons/icon_gizmo_spatial_sample_player.png +++ b/tools/editor/icons/icon_gizmo_spatial_sample_player.png diff --git a/tools/editor/icons/icon_gizmo_spatial_stream_player.png b/tools/editor/icons/icon_gizmo_spatial_stream_player.png Binary files differindex 04144aec26..6a4f85d550 100644 --- a/tools/editor/icons/icon_gizmo_spatial_stream_player.png +++ b/tools/editor/icons/icon_gizmo_spatial_stream_player.png diff --git a/tools/editor/icons/icon_loop_interpolation.png b/tools/editor/icons/icon_loop_interpolation.png Binary files differdeleted file mode 100644 index 488b33316e..0000000000 --- a/tools/editor/icons/icon_loop_interpolation.png +++ /dev/null diff --git a/tools/editor/icons/icon_zoom_less.png b/tools/editor/icons/icon_zoom_less.png Binary files differnew file mode 100644 index 0000000000..fd8ef9075e --- /dev/null +++ b/tools/editor/icons/icon_zoom_less.png diff --git a/tools/editor/icons/icon_zoom_more.png b/tools/editor/icons/icon_zoom_more.png Binary files differnew file mode 100644 index 0000000000..8e818db1ee --- /dev/null +++ b/tools/editor/icons/icon_zoom_more.png diff --git a/tools/editor/icons/icon_zoom_reset.png b/tools/editor/icons/icon_zoom_reset.png Binary files differnew file mode 100644 index 0000000000..fa8a9d197e --- /dev/null +++ b/tools/editor/icons/icon_zoom_reset.png diff --git a/tools/editor/icons/source/icon_gizmo_directional_light.svg b/tools/editor/icons/source/icon_gizmo_directional_light.svg index 0682c270ac..65202877a0 100644 --- a/tools/editor/icons/source/icon_gizmo_directional_light.svg +++ b/tools/editor/icons/source/icon_gizmo_directional_light.svg @@ -9,15 +9,15 @@ xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="32" - height="32" - viewBox="0 0 32 32" + width="128" + height="128" + viewBox="0 0 128 128" id="svg2" version="1.1" inkscape:version="0.91 r13725" - inkscape:export-filename="/home/djrm/Projects/godot/tools/editor/icons/icon_dependency_changed_hl.png" - inkscape:export-xdpi="45" - inkscape:export-ydpi="45" + inkscape:export-filename="/home/djrm/Projects/godot/tools/editor/icons/icon_gizmo_directional_light.png" + inkscape:export-xdpi="360" + inkscape:export-ydpi="360" sodipodi:docname="icon_gizmo_directional_light.svg"> <defs id="defs4" /> @@ -28,9 +28,9 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="11.313708" - inkscape:cx="13.90442" - inkscape:cy="22.349302" + inkscape:zoom="4" + inkscape:cx="69.526732" + inkscape:cy="53.07939" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="true" @@ -68,106 +68,65 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" - transform="translate(0,-1020.3622)"> + transform="translate(0,-924.3622)"> <circle style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="path4156" - cx="16" - cy="1036.3622" - r="7.0000172" /> - <rect + cx="64" + cy="988.36218" + r="24.000017" /> + <path style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + d="m 64,4 a 8.0000172,8.0000172 0 0 0 -8,8 l 0,12 a 7.9999828,7.9999828 0 0 0 8,8 7.9999828,7.9999828 0 0 0 8,-8 L 72,12 A 8.0000172,8.0000172 0 0 0 64,4 Z" + transform="translate(0,924.3622)" id="rect4169" - width="4" - height="5.0000172" - x="14" - y="1021.3622" - rx="0" - ry="0" - inkscape:transform-center-y="-12.500009" /> - <rect - inkscape:transform-center-y="-8.8388501" - ry="0" - rx="0" - y="706.505" - x="742.13245" - height="5.0000172" - width="4" - id="rect4171" + inkscape:connector-curvature="0" + inkscape:transform-center-y="-46" /> + <path + inkscape:connector-curvature="0" + id="path4148" + d="m 124,988.3622 a 8.0000172,8.0000172 0 0 0 -8,-8 l -12,0 a 7.9999828,7.9999828 0 0 0 -8,8 7.9999828,7.9999828 0 0 0 8,8 l 12,0 a 8.0000172,8.0000172 0 0 0 8,-8 z" style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,0,0)" - inkscape:transform-center-x="-8.8388459" /> - <rect - inkscape:transform-center-x="-12.500018" - transform="matrix(0,1,-1,0,0,0)" + inkscape:transform-center-x="-46" /> + <path style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - id="rect4173" - width="4" - height="5.0000172" - x="1034.3622" - y="-31.000027" - rx="0" - ry="0" - inkscape:transform-center-y="-1.754751e-05" /> - <rect - inkscape:transform-center-y="8.8388073" - ry="0" - rx="0" - y="-759.13245" - x="719.505" - height="5.0000172" - width="4" - id="rect4175" + d="m 64,1048.3622 a 8.0000172,8.0000172 0 0 0 8,-8 l 0,-12 a 7.9999828,7.9999828 0 0 0 -8,-8 7.9999828,7.9999828 0 0 0 -8,8 l 0,12 a 8.0000172,8.0000172 0 0 0 8,8 z" + id="path4150" + inkscape:connector-curvature="0" + inkscape:transform-center-y="46" /> + <path + inkscape:connector-curvature="0" + id="path4152" + d="m 4,988.3622 a 8.0000172,8.0000172 0 0 0 8,8 l 12,0 a 7.9999828,7.9999828 0 0 0 8,-8 7.9999828,7.9999828 0 0 0 -8,-8 l -12,0 a 8.0000172,8.0000172 0 0 0 -8,8 z" style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)" - inkscape:transform-center-x="-8.8388458" /> - <rect - inkscape:transform-center-x="-2.6589615e-05" - transform="scale(-1,-1)" + inkscape:transform-center-x="46" /> + <path + inkscape:transform-center-y="-32.526909" + inkscape:connector-curvature="0" + id="path4154" + d="m 106.42641,945.93579 a 8.0000172,8.0000172 0 0 0 -11.313712,0 l -8.485281,8.48528 a 7.9999828,7.9999828 0 0 0 0,11.31371 7.9999828,7.9999828 0 0 0 11.313708,0 l 8.485285,-8.48528 a 8.0000172,8.0000172 0 0 0 0,-11.31371 z" style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - id="rect4177" - width="4" - height="5.0000172" - x="-18.000027" - y="-1051.3622" - rx="0" - ry="0" - inkscape:transform-center-y="12.499974" /> - <rect - inkscape:transform-center-y="8.8388074" - ry="0" - rx="0" - y="-736.505" - x="-746.13245" - height="5.0000172" - width="4" - id="rect4179" + inkscape:transform-center-x="-32.526906" /> + <path + inkscape:transform-center-x="-32.526906" style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - transform="matrix(-0.70710678,-0.70710678,0.70710678,-0.70710678,0,0)" - inkscape:transform-center-x="8.8388116" /> - <rect - inkscape:transform-center-x="12.499964" - transform="matrix(0,-1,1,0,0,0)" + d="m 106.42641,1030.7886 a 8.0000172,8.0000172 0 0 0 0,-11.3137 l -8.485285,-8.4853 a 7.9999828,7.9999828 0 0 0 -11.313708,0 7.9999828,7.9999828 0 0 0 0,11.3137 l 8.485281,8.4853 a 8.0000172,8.0000172 0 0 0 11.313712,0 z" + id="path4157" + inkscape:connector-curvature="0" + inkscape:transform-center-y="32.526894" /> + <path + inkscape:transform-center-y="32.526893" + inkscape:connector-curvature="0" + id="path4159" + d="m 21.573593,1030.7886 a 8.0000172,8.0000172 0 0 0 11.313709,0 l 8.485281,-8.4853 a 7.9999828,7.9999828 0 0 0 0,-11.3137 7.9999828,7.9999828 0 0 0 -11.313708,0 l -8.485282,8.4853 a 8.0000172,8.0000172 0 0 0 0,11.3137 z" style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - id="rect4181" - width="4" - height="5.0000172" - x="-1038.3622" - y="1.0000273" - rx="0" - ry="0" - inkscape:transform-center-y="-1.7409218e-05" /> - <rect - inkscape:transform-center-y="-8.83885" - ry="0" - rx="0" - y="729.13245" - x="-723.505" - height="5.0000172" - width="4" - id="rect4183" + inkscape:transform-center-x="32.526905" /> + <path + inkscape:transform-center-x="32.526905" style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - transform="matrix(0.70710678,-0.70710678,0.70710678,0.70710678,0,0)" - inkscape:transform-center-x="8.8388113" /> + d="m 21.573593,945.93579 a 8.0000172,8.0000172 0 0 0 0,11.31371 l 8.485282,8.48528 a 7.9999828,7.9999828 0 0 0 11.313708,0 7.9999828,7.9999828 0 0 0 0,-11.31371 l -8.485281,-8.48528 a 8.0000172,8.0000172 0 0 0 -11.313709,0 z" + id="path4161" + inkscape:connector-curvature="0" + inkscape:transform-center-y="-32.526908" /> </g> </svg> diff --git a/tools/editor/icons/source/icon_gizmo_light.svg b/tools/editor/icons/source/icon_gizmo_light.svg index c9ce60273a..c42d6e1f76 100644 --- a/tools/editor/icons/source/icon_gizmo_light.svg +++ b/tools/editor/icons/source/icon_gizmo_light.svg @@ -9,9 +9,9 @@ xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="32" - height="32" - viewBox="0 0 32 32" + width="128" + height="128" + viewBox="0 0 128 128" id="svg2" version="1.1" inkscape:version="0.91 r13725" @@ -28,9 +28,9 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="15.999999" - inkscape:cx="18.311796" - inkscape:cy="18.635805" + inkscape:zoom="3.9999998" + inkscape:cx="47.738891" + inkscape:cy="58.814006" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="true" @@ -68,23 +68,23 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" - transform="translate(0,-1020.3622)"> + transform="translate(0,-924.3622)"> <path style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - d="M 16 1 A 10.000017 10.000017 0 0 0 6 11 A 10.000017 10.000017 0 0 0 16 21 A 10.000017 10.000017 0 0 0 26 11 A 10.000017 10.000017 0 0 0 16 1 z M 16 4 A 7 7 0 0 1 23 11 A 7 7 0 0 1 16 18 A 7 7 0 0 1 9 11 A 7 7 0 0 1 16 4 z " - transform="translate(0,1020.3622)" - id="path4162" /> + d="m 64,930.3622 a 40.000068,40.000068 0 0 0 -40,40 40.000068,40.000068 0 0 0 40,40 40.000068,40.000068 0 0 0 40,-40 40.000068,40.000068 0 0 0 -40,-40 z m 0,12 a 28,28 0 0 1 28,28 28,28 0 0 1 -28,28 28,28 0 0 1 -28,-28 28,28 0 0 1 28,-28 z" + id="path4162" + inkscape:connector-curvature="0" /> <path style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" - d="M 12 19 L 12 24 A 2 2 0 0 0 14 26 L 18 26 A 2 2 0 0 0 20 24 L 20 19 L 12 19 z " - transform="translate(0,1020.3622)" - id="rect4164" /> + d="m 48,1002.3622 0,20 a 8,8 0 0 0 8,8 l 16,0 a 8,8 0 0 0 8,-8 l 0,-20 -32,0 z" + id="rect4164" + inkscape:connector-curvature="0" /> <rect style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="rect4168" - width="4" - height="2.0000174" - x="14" - y="1048.3622" /> + width="16" + height="8.0000696" + x="56" + y="1038.3622" /> </g> </svg> diff --git a/tools/editor/icons/source/icon_gizmo_listener.svg b/tools/editor/icons/source/icon_gizmo_listener.svg index a53b08af44..3667cbc69b 100644 --- a/tools/editor/icons/source/icon_gizmo_listener.svg +++ b/tools/editor/icons/source/icon_gizmo_listener.svg @@ -9,9 +9,9 @@ xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="32" - height="32" - viewBox="0 0 32 32" + width="128" + height="128" + viewBox="0 0 128 128" id="svg2" version="1.1" inkscape:version="0.91 r13725" @@ -28,9 +28,9 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="15.999999" - inkscape:cx="4.4071843" - inkscape:cy="17.118049" + inkscape:zoom="3.9999998" + inkscape:cx="53.348444" + inkscape:cy="75.110194" inkscape:document-units="px" inkscape:current-layer="g4175" showgrid="true" @@ -60,7 +60,7 @@ <dc:format>image/svg+xml</dc:format> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title /> + <dc:title></dc:title> </cc:Work> </rdf:RDF> </metadata> @@ -68,33 +68,33 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" - transform="translate(0,-1020.3622)"> + transform="translate(0,-924.3622)"> <g id="g4175" transform="matrix(2,0,0,2,-16,-1040.3622)"> <path inkscape:connector-curvature="0" id="path4274" - d="m 21.928203,1032.3622 -1.738281,1.0039 a 6,6 0 0 1 0.810547,2.9961 6,6 0 0 1 -0.808594,2.998 l 1.736328,1.002 a 8,8 0 0 0 0,-8 z" + d="m 63.712867,990.36221 -6.953133,4.0152 a 24.000031,23.999015 0 0 1 3.242193,11.98399 24.000031,23.999015 0 0 1 -3.234381,11.9917 l 6.945321,4.0076 a 32.000041,31.998687 0 0 0 0,-31.99849 z" style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> <rect - y="1043.3622" - x="11" - height="2" - width="1" + y="1034.3602" + x="19.999998" + height="7.9996719" + width="4.0000052" id="rect4147" style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> <path id="path4149" - d="m 14,1031.3622 a 5,5 0 0 0 -5,5 l 2,0 a 3,3 0 0 1 3,-3 3,3 0 0 1 3,3 l 2,0 a 5,5 0 0 0 -5,-5 z" + d="m 32.000015,986.3622 a 20.000026,19.999179 0 0 0 -20.000026,19.9992 l 8.00001,0 a 12.000015,11.999507 0 0 1 12.000016,-11.99959 12.000015,11.999507 0 0 1 12.000015,11.99959 l 8.00001,0 A 20.000026,19.999179 0 0 0 32.000015,986.3622 Z" style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" inkscape:connector-curvature="0" /> <path sodipodi:nodetypes="csc" inkscape:connector-curvature="0" id="path4155" - d="m 18,1036.3622 c 0,4 -3,4 -3,5 0,3 -2,3 -3,3" - style="fill:none;fill-rule:evenodd;stroke:#f7f5cf;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + d="m 48.000035,1006.3614 c 0,15.9993 -12.000015,15.9993 -12.000015,19.9993 0,11.9992 -8.00001,11.9992 -12.000016,11.9992" + style="fill:none;fill-rule:evenodd;stroke:#f7f5cf;stroke-width:7.99984121;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> </g> </g> </svg> diff --git a/tools/editor/icons/source/icon_gizmo_spatial_sample_player.svg b/tools/editor/icons/source/icon_gizmo_spatial_sample_player.svg index 68375f9487..a734095268 100644 --- a/tools/editor/icons/source/icon_gizmo_spatial_sample_player.svg +++ b/tools/editor/icons/source/icon_gizmo_spatial_sample_player.svg @@ -9,9 +9,9 @@ xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="32" - height="32" - viewBox="0 0 32 32" + width="128" + height="128" + viewBox="0 0 128 128" id="svg2" version="1.1" inkscape:version="0.91 r13725" @@ -28,9 +28,9 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="15.999999" - inkscape:cx="18.414591" - inkscape:cy="16.81826" + inkscape:zoom="2" + inkscape:cx="7.8244495" + inkscape:cy="69.465609" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="true" @@ -71,26 +71,50 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" - transform="translate(0,-1020.3622)"> + transform="translate(0,-924.3622)"> <path - style="fill:#f7f5cf;fill-opacity:1;fill-rule:evenodd;stroke:#f7f5cf;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="m 16,1024.3622 0,24 -8,-8 -4,0 0,-8 4,0 z" + style="fill:#f7f5cf;fill-opacity:1;fill-rule:evenodd;stroke:#f7f5cf;stroke-width:8;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="m 64.000015,940.3622 0,96.0012 -31.999993,-32.0004 -15.999996,0 0,-32.00043 15.999996,0 z" id="path4143" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc" /> <rect style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.99607843" id="rect4145" - width="3" - height="8.0000172" - x="20" - y="1032.3622" /> + width="11.999997" + height="32.000439" + x="80.000008" + y="972.36255" /> <rect - y="1026.3622" - x="26" - height="19.999949" - width="3" + y="948.36224" + x="104" + height="80.000717" + width="11.999997" id="rect4147" style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.99607843" /> + <circle + style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="path4137" + cx="86" + cy="972.36218" + r="6" /> + <circle + r="6" + cy="1002.3622" + cx="86" + id="circle4139" + style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <circle + style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="circle4141" + cx="110" + cy="1028.3622" + r="6" /> + <circle + r="6" + cy="948.36218" + cx="110" + id="circle4143" + style="opacity:1;fill:#f7f5cf;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> </g> </svg> diff --git a/tools/editor/icons/source/icon_gizmo_spatial_stream_player.svg b/tools/editor/icons/source/icon_gizmo_spatial_stream_player.svg index 5acff1ec76..c333641249 100644 --- a/tools/editor/icons/source/icon_gizmo_spatial_stream_player.svg +++ b/tools/editor/icons/source/icon_gizmo_spatial_stream_player.svg @@ -9,9 +9,9 @@ xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="32" - height="32" - viewBox="0 0 32 32" + width="128" + height="128" + viewBox="0 0 128 128" id="svg2" version="1.1" inkscape:version="0.91 r13725" @@ -28,9 +28,9 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="15.999999" - inkscape:cx="18.768034" - inkscape:cy="16.106066" + inkscape:zoom="5.6568542" + inkscape:cx="102.18566" + inkscape:cy="68.674719" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="true" @@ -71,11 +71,11 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" - transform="translate(0,-1020.3622)"> + transform="translate(0,-924.3622)"> <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f7f5cf;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" - d="M 23.941406 2.0019531 A 2.0002 2.0002 0 0 0 23.451172 2.0761719 L 9.4511719 6.0761719 A 2.0002 2.0002 0 0 0 8 8 L 8 20.029297 A 4.5000086 4.5000086 0 0 0 7.5 20 A 4.5000086 4.5000086 0 0 0 3 24.5 A 4.5000086 4.5000086 0 0 0 7.5 29 A 4.5000086 4.5000086 0 0 0 11.96875 25 L 12 25 L 12 24.5 L 12 9.5097656 L 22 6.6523438 L 22 16.03125 A 4.5 4.5 0 0 0 21.5 16 A 4.5 4.5 0 0 0 17 20.5 A 4.5 4.5 0 0 0 21.5 25 A 4.5 4.5 0 0 0 25.96875 21 L 26 21 L 26 20.5 L 26 4 A 2.0002 2.0002 0 0 0 23.941406 2.0019531 z " - transform="translate(0,1020.3622)" - id="path4187" /> + d="m 99.765624,934.3602 a 8.0008,8.001126 0 0 0 -1.960936,0.296 l -56,16.0004 A 8.0008,8.001126 0 0 0 36,958.353 l 0,48.1192 a 18.000034,18.000768 0 0 0 -2,-0.116 18.000034,18.000768 0 0 0 -18,18.0008 18.000034,18.000768 0 0 0 18,18.0008 18.000034,18.000768 0 0 0 17.875,-16.0008 l 0.125,0 0,-2 0,-59.9632 40,-11.4304 0,37.5172 a 18,18.000734 0 0 0 -2,-0.124 18,18.000734 0 0 0 -18,18.0008 18,18.000734 0 0 0 18,18.0004 18,18.000734 0 0 0 17.875,-16.0004 l 0.125,0 0,-2 0,-66.0028 a 8.0008,8.001126 0 0 0 -8.234376,-7.9924 z" + id="path4187" + inkscape:connector-curvature="0" /> </g> </svg> diff --git a/tools/editor/icons/source/icon_zoom_more.svg b/tools/editor/icons/source/icon_zoom_more.svg new file mode 100644 index 0000000000..87acdfb021 --- /dev/null +++ b/tools/editor/icons/source/icon_zoom_more.svg @@ -0,0 +1,104 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="16" + height="16" + viewBox="0 0 16 16" + id="svg2" + version="1.1" + inkscape:version="0.91 r13725" + inkscape:export-filename="/home/djrm/Projects/godot/tools/editor/icons/icon_zoom.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90" + sodipodi:docname="icon_zoom_more.svg"> + <defs + id="defs4" /> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="22.627417" + inkscape:cx="3.7772222" + inkscape:cy="13.690414" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + units="px" + inkscape:snap-bbox="true" + inkscape:bbox-paths="true" + inkscape:bbox-nodes="true" + inkscape:snap-bbox-edge-midpoints="true" + inkscape:snap-bbox-midpoints="false" + inkscape:snap-object-midpoints="true" + inkscape:snap-center="true" + inkscape:window-width="1920" + inkscape:window-height="1018" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1"> + <inkscape:grid + type="xygrid" + id="grid3336" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-1036.3622)"> + <g + id="layer1-6" + inkscape:label="Capa 1" + transform="translate(-201.5751,205.0256)"> + <g + inkscape:label="Layer 1" + id="layer1-0-4" + transform="matrix(48.459085,0,0,53.967813,-126.63031,-55835.691)"> + <g + transform="translate(0.51853114,-0.01988754)" + id="g4182-8"> + <rect + style="fill:#e0e0e0;fill-opacity:0.99607843" + id="rect4167" + width="0.042994563" + height="0.26204652" + x="6.3978949" + y="1050.0524" + rx="0" + ry="0" /> + <rect + ry="0" + rx="0" + y="1050.165" + x="6.2806396" + height="0.040943757" + width="0.28011176" + id="rect4169-6" + style="fill:#e0e0e0;fill-opacity:0.99607843" /> + </g> + </g> + </g> + </g> +</svg> diff --git a/tools/editor/import_settings.cpp b/tools/editor/import_settings.cpp deleted file mode 100644 index dfaeca03db..0000000000 --- a/tools/editor/import_settings.cpp +++ /dev/null @@ -1,301 +0,0 @@ -/*************************************************************************/ -/* import_settings.cpp */ -/*************************************************************************/ -/* This file is part of: */ -/* GODOT ENGINE */ -/* http://www.godotengine.org */ -/*************************************************************************/ -/* Copyright (c) 2007-2016 Juan Linietsky, Ariel Manzur. */ -/* */ -/* Permission is hereby granted, free of charge, to any person obtaining */ -/* a copy of this software and associated documentation files (the */ -/* "Software"), to deal in the Software without restriction, including */ -/* without limitation the rights to use, copy, modify, merge, publish, */ -/* distribute, sublicense, and/or sell copies of the Software, and to */ -/* permit persons to whom the Software is furnished to do so, subject to */ -/* the following conditions: */ -/* */ -/* The above copyright notice and this permission notice shall be */ -/* included in all copies or substantial portions of the Software. */ -/* */ -/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ -/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ -/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ -/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ -/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ -/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ -/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -/*************************************************************************/ -#include "import_settings.h" -#include "os/os.h" -#include "editor_node.h" - -void ImportSettingsDialog::_item_pressed(int p_idx) { - - if (!edited) - return; - - String p=edited->get_metadata(0); -#if 0 - if (EditorImportDB::get_singleton()->is_image(p)) { - - uint32_t flags = EditorImportDB::get_singleton()->get_image_flags(p); - bool pressed = !popup->is_item_checked(p_idx); - if (pressed) - flags|=(1<<p_idx); - else - flags&=~(1<<p_idx); - - - EditorImportDB::get_singleton()->set_image_flags(p,flags); - edited->set_text(2,_str_from_flags(flags)); - } -#endif -} - -void ImportSettingsDialog::_item_edited() { - - if (updating) - return; - TreeItem *it=tree->get_selected(); - int ec=tree->get_edited_column(); - - String p=it->get_metadata(0); -#if 0 - if (EditorImportDB::get_singleton()->is_image(p)) { - - if (ec==1) { - - - EditorImportDB::get_singleton()->set_image_format(p,EditorImport::ImageFormat(int(it->get_range(1)))); - - } else if (ec==2) { - - - int flags = EditorImportDB::get_singleton()->get_image_flags(p); - for(int i=0;i<popup->get_item_count();i++) { - - popup->set_item_checked(i,flags&(1<<i)); - } - - Rect2 r = tree->get_custom_popup_rect(); - popup->set_size(Size2(r.size.width,1)); - popup->set_pos(/*tree->get_global_pos()+*/r.pos+Point2(0,r.size.height)); - popup->popup(); - } - - edited=it; - - } -#endif - - -} - - -void ImportSettingsDialog::_button_pressed(Object *p_button, int p_col, int p_id) { - - TreeItem *ti=p_button->cast_to<TreeItem>(); - if (!ti) - return; - String path = ti->get_metadata(0); - print_line("PATH: "+path); - Ref<ResourceImportMetadata> rimd = ResourceLoader::load_import_metadata(path); - ERR_FAIL_COND(rimd.is_null()); - Ref<EditorImportPlugin> rimp = EditorImportExport::get_singleton()->get_import_plugin_by_name(rimd->get_editor()); - ERR_FAIL_COND(!rimp.is_valid()); - rimp->import_dialog(path); - hide(); -} - -bool ImportSettingsDialog::_generate_fs(TreeItem *p_parent,EditorFileSystemDirectory *p_dir) { - - bool valid=false; - - - for(int i=0;i<p_dir->get_subdir_count();i++) { - - EditorFileSystemDirectory *sd=p_dir->get_subdir(i); - TreeItem *ti = tree->create_item(p_parent); - ti->set_text(0,sd->get_name()+"/"); - ti->set_icon(0,get_icon("Folder","EditorIcons")); - - if (!_generate_fs(ti,sd)) { - memdelete(ti); - } else { - valid=true; - } - } - - - for(int i=0;i<p_dir->get_file_count();i++) { - - String path=p_dir->get_file_path(i); - if (!p_dir->get_file_meta(i)) - continue; - - valid=true; - - String f = p_dir->get_file(i); - TreeItem *ti = tree->create_item(p_parent); - String type = p_dir->get_file_type(i); - Ref<Texture> t; - if (has_icon(type,"EditorIcons")) - t = get_icon(type,"EditorIcons"); - else - t = get_icon("Object","EditorIcons"); - - - ti->set_icon(0,t); - ti->set_text(0,f); -// ti->add_button(0,get_icon("Reload","EditorIcons")); - ti->set_metadata(0,p_dir->get_file_path(i)); - String tt = p_dir->get_file_path(i); - - if (p_dir->is_missing_sources(i)) { - ti->set_icon(1,get_icon("ImportFail","EditorIcons")); - Vector<String> missing = p_dir->get_missing_sources(i); - for(int j=0;j<missing.size();j++) { - tt+="\nmissing: "+missing[j]; - } - - } else - ti->set_icon(1,get_icon("ImportCheck","EditorIcons")); - - ti->set_tooltip(0,tt); - ti->set_tooltip(1,tt); - - } - -#if 0 - if (!EditorImportDB::get_singleton()->is_image(path) && !EditorImportDB::get_singleton()->is_scene(path)) - continue; - - String f = p_dir->get_file(i); - TreeItem *ti = tree->create_item(p_parent); - ti->set_text(0,f); - String type = p_dir->get_file_type(i); - Ref<Texture> icon = get_icon( (has_icon(type,"EditorIcons")?type:String("Object")),"EditorIcons"); - - - if (EditorImportDB::get_singleton()->is_image(path)) { - - - ti->set_tooltip(0,"Type: Image\nSource: "+EditorImportDB::get_singleton()->get_file_source(path)+"\nSource MD5: "+EditorImportDB::get_singleton()->get_file_md5(path)); - ti->set_cell_mode(1,TreeItem::CELL_MODE_RANGE); - ti->set_editable(1,true); - ti->set_range_config(1,0,3,1); - ti->set_range(1,EditorImportDB::get_singleton()->get_image_format(path)); - ti->set_text(1,texformat); - ti->set_cell_mode(2,TreeItem::CELL_MODE_CUSTOM); - ti->set_editable(2,true); - ti->set_metadata(0,path); - - String txt; - uint32_t flags=EditorImportDB::get_singleton()->get_image_flags(path); - txt=_str_from_flags(flags); - - ti->set_text(2,txt); - } - - ti->set_icon(0, icon); - valid=true; -#endif - - - return valid; -} - -void ImportSettingsDialog::update_tree() { - - updating=true; - tree->clear(); - edited=NULL; - - - TreeItem *root = tree->create_item(); - EditorFileSystemDirectory *fs = EditorFileSystem::get_singleton()->get_filesystem(); - - _generate_fs(root,fs); - updating=false; - - -} - -void ImportSettingsDialog::_notification(int p_what) { - - if (p_what==NOTIFICATION_ENTER_TREE) { - - EditorFileSystem::get_singleton()->connect("filesystem_changed",this,"update_tree"); - } -} - - -void ImportSettingsDialog::_bind_methods() { - - ObjectTypeDB::bind_method("update_tree",&ImportSettingsDialog::update_tree); - ObjectTypeDB::bind_method("_item_edited",&ImportSettingsDialog::_item_edited); - ObjectTypeDB::bind_method("_item_pressed",&ImportSettingsDialog::_item_pressed); - ObjectTypeDB::bind_method("_button_pressed",&ImportSettingsDialog::_button_pressed); - - -} - - -void ImportSettingsDialog::popup_import_settings() { - - update_tree(); - popup_centered_ratio(); -} - -void ImportSettingsDialog::ok_pressed() { - - - TreeItem *ti = tree->get_selected(); - if (!ti) - return; - - String path = ti->get_metadata(0); - print_line("PATH: "+path); - Ref<ResourceImportMetadata> rimd = ResourceLoader::load_import_metadata(path); - ERR_FAIL_COND(rimd.is_null()); - Ref<EditorImportPlugin> rimp = EditorImportExport::get_singleton()->get_import_plugin_by_name(rimd->get_editor()); - ERR_FAIL_COND(!rimp.is_valid()); - rimp->import_dialog(path); - hide(); - - -} - -ImportSettingsDialog::ImportSettingsDialog(EditorNode *p_editor) { - - editor=p_editor; - - get_ok()->set_text(TTR("Close")); - - tree = memnew( Tree ); - add_child(tree); - set_child_rect(tree); - set_title(TTR("Imported Resources")); - -// texformat="Keep,None,Disk,VRAM"; - - tree->set_hide_root(true); - tree->set_columns(2); - tree->set_column_expand(1,false); - tree->set_column_min_width(1,20); - - tree->connect("item_edited",this,"_item_edited"); - tree->connect("button_pressed",this,"_button_pressed"); - -// add_button("Re-Import","reimport"); - get_ok()->set_text(TTR("Re-Import")); - get_cancel()->set_text(TTR("Close")); - - updating=false; - edited=NULL; - set_hide_on_ok(false); - - -} - diff --git a/tools/editor/io_plugins/editor_atlas.cpp b/tools/editor/io_plugins/editor_atlas.cpp index f894e7e8b2..f69e383fb0 100644 --- a/tools/editor/io_plugins/editor_atlas.cpp +++ b/tools/editor/io_plugins/editor_atlas.cpp @@ -82,7 +82,6 @@ void EditorAtlas::fit(const Vector<Size2i>& p_rects,Vector<Point2i>& r_result, S //place them int ofs=0; - int limit_h=0; for(int j=0;j<wrects.size();j++) { @@ -106,8 +105,6 @@ void EditorAtlas::fit(const Vector<Size2i>& p_rects,Vector<Point2i>& r_result, S int end_h = from_y+wrects[j].s.height; int end_w = ofs+wrects[j].s.width; - if (ofs==0) - limit_h=end_h; for(int k=0;k<wrects[j].s.width;k++) { @@ -120,8 +117,7 @@ void EditorAtlas::fit(const Vector<Size2i>& p_rects,Vector<Point2i>& r_result, S if (end_w > max_w) max_w=end_w; - //if (ofs==0 || end_h>limit_h ) //while h limit not reched, keep stacking - ofs+=wrects[j].s.width; + ofs+=wrects[j].s.width; } diff --git a/tools/editor/io_plugins/editor_import_collada.cpp b/tools/editor/io_plugins/editor_import_collada.cpp index 363cba3678..1130e2be30 100644 --- a/tools/editor/io_plugins/editor_import_collada.cpp +++ b/tools/editor/io_plugins/editor_import_collada.cpp @@ -2278,12 +2278,6 @@ void ColladaImport::create_animation(int p_clip, bool p_make_tracks_in_all_bones NodeMap &nm = node_map[at.target]; String path = scene->get_path_to(nm.node); - Collada::Node *cn = collada.state.scene_map[at.target]; - //if (cn->ignore_anim) { - // print_line("warning, ignoring property animation on node: "+nm.path); - //continue; - //} - animation->add_track(Animation::TYPE_VALUE); int track = animation->get_track_count() -1; @@ -2381,7 +2375,6 @@ Node* EditorSceneImporterCollada::import_scene(const String& p_path, uint32_t p_ state.create_animations(p_flags&IMPORT_ANIMATION_FORCE_ALL_TRACKS_IN_ALL_CLIPS); AnimationPlayer *ap = memnew( AnimationPlayer ); - ap->set_name("animations"); for(int i=0;i<state.animations.size();i++) { String name; if (state.animations[i]->get_name()=="") diff --git a/tools/editor/io_plugins/editor_mesh_import_plugin.cpp b/tools/editor/io_plugins/editor_mesh_import_plugin.cpp index 095c56a373..2c3ed2afd6 100644 --- a/tools/editor/io_plugins/editor_mesh_import_plugin.cpp +++ b/tools/editor/io_plugins/editor_mesh_import_plugin.cpp @@ -520,7 +520,7 @@ Error EditorMeshImportPlugin::import(const String& p_path, const Ref<ResourceImp //new object/surface if (generate_normals || force_smooth) surf_tool->generate_normals(); - if (uvs.size() && (normals.size() || generate_normals)) + if (uvs.size() && (normals.size() || generate_normals) && generate_tangents) surf_tool->generate_tangents(); surf_tool->index(); diff --git a/tools/editor/io_plugins/editor_scene_import_plugin.cpp b/tools/editor/io_plugins/editor_scene_import_plugin.cpp index c7d92a9658..e24412d4ef 100644 --- a/tools/editor/io_plugins/editor_scene_import_plugin.cpp +++ b/tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -822,7 +822,7 @@ void EditorSceneImportDialog::_import(bool p_and_open) { return; } if (wip_open) - EditorNode::get_singleton()->load_scene(save_file); + EditorNode::get_singleton()->load_scene(save_file,false,false,false); } @@ -867,7 +867,7 @@ void EditorSceneImportDialog::_import_confirm() { } if (wip_open) - EditorNode::get_singleton()->load_scene(wip_save_file); + EditorNode::get_singleton()->load_scene(wip_save_file,false,false,false); wip_open=false; wip_save_file=""; @@ -2459,7 +2459,7 @@ void EditorSceneImportPlugin::_optimize_animations(Node *scene, float p_max_lin_ void EditorSceneImportPlugin::_find_resources_to_merge(Node *scene, Node *node, bool p_merge_material, Map<String, Ref<Material> > &materials, bool p_merge_anims, Map<String,Ref<Animation> >& merged_anims,Set<Ref<Mesh> > &tested_meshes) { - if (node->get_owner()!=scene) + if (node!=scene && node->get_owner()!=scene) return; String path = scene->get_path_to(node); @@ -2507,11 +2507,43 @@ void EditorSceneImportPlugin::_find_resources_to_merge(Node *scene, Node *node, for(int i=0;i<mesh->get_surface_count();i++) { Ref<Material> material = mesh->surface_get_material(i); - materials[mesh->get_name()+":surf:"+mesh->surface_get_name(i)]=material; + + if (material.is_valid()) { + + String sname = mesh->surface_get_name(i); + if (sname=="") + sname="surf_"+itos(i); + + sname=mesh->get_name()+":surf:"+sname; + materials[sname]=material; + } } tested_meshes.insert(mesh); } + + if (mesh.is_valid()) { + + for(int i=0;i<mesh->get_surface_count();i++) { + Ref<Material> material = mi->get_surface_material(i); + if (material.is_valid()) { + String sname = mesh->surface_get_name(i); + if (sname=="") + sname="surf_"+itos(i); + + sname=path+":inst_surf:"+sname; + materials[sname]=material; + } + } + + } + + Ref<Material> override = mi->get_material_override(); + + if (override.is_valid()) { + + materials[path+":override"]=override; + } } @@ -2525,11 +2557,13 @@ void EditorSceneImportPlugin::_find_resources_to_merge(Node *scene, Node *node, void EditorSceneImportPlugin::_merge_found_resources(Node *scene, Node *node, bool p_merge_material, const Map<String, Ref<Material> > &materials, bool p_merge_anims, const Map<String,Ref<Animation> >& merged_anims, Set<Ref<Mesh> > &tested_meshes) { - if (node->get_owner()!=scene) + if (node!=scene && node->get_owner()!=scene) return; String path = scene->get_path_to(node); + print_line("at path: "+path); + if (node->cast_to<AnimationPlayer>()) { AnimationPlayer *ap = node->cast_to<AnimationPlayer>(); @@ -2570,15 +2604,48 @@ void EditorSceneImportPlugin::_merge_found_resources(Node *scene, Node *node, bo if (mesh.is_valid() && mesh->get_name()!=String() && !tested_meshes.has(mesh)) { for(int i=0;i<mesh->get_surface_count();i++) { - String sname = mesh->get_name()+":surf:"+mesh->surface_get_name(i); + + String sname = mesh->surface_get_name(i); + if (sname=="") + sname="surf_"+itos(i); + + sname=mesh->get_name()+":surf:"+sname; + if (materials.has(sname)) { + mesh->surface_set_material(i,materials[sname]); } } tested_meshes.insert(mesh); } + + if (mesh.is_valid()) { + + for(int i=0;i<mesh->get_surface_count();i++) { + + String sname = mesh->surface_get_name(i); + if (sname=="") + sname="surf_"+itos(i); + + sname=path+":inst_surf:"+sname; + + + if (materials.has(sname)) { + + mi->set_surface_material(i,materials[sname]); + } + } + + } + + + String opath = path+":override"; + if (materials.has(opath)) { + mi->set_material_override(materials[opath]); + } + } @@ -2613,12 +2680,6 @@ Error EditorSceneImportPlugin::import2(Node *scene, const String& p_dest_path, c progress.step(TTR("Importing Scene.."),2); - bool reimport = bool(from->get_option("reimport")); - int this_time_action = from->get_option("import_this_time"); - int next_time_action = from->get_option("import_next_time"); - - int import_action = reimport?this_time_action:next_time_action; - from->set_source_md5(0,FileAccess::get_md5(src_path)); from->set_editor(get_name()); @@ -2627,8 +2688,6 @@ Error EditorSceneImportPlugin::import2(Node *scene, const String& p_dest_path, c Map<Ref<Mesh>,Ref<Shape> > collision_map; - Ref<ResourceImportMetadata> imd = memnew(ResourceImportMetadata); - Map< Ref<ImageTexture>,TextureRole > imagemap; scene=_fix_node(scene,scene,collision_map,scene_flags,imagemap); @@ -2643,6 +2702,7 @@ Error EditorSceneImportPlugin::import2(Node *scene, const String& p_dest_path, c if (scene_flags&(SCENE_FLAG_MERGE_KEEP_MATERIALS|SCENE_FLAG_MERGE_KEEP_EXTRA_ANIM_TRACKS) && FileAccess::exists(p_dest_path)) { //must merge! + print_line("MUST MERGE"); Ref<PackedScene> pscene = ResourceLoader::load(p_dest_path,"PackedScene",true); if (pscene.is_valid()) { @@ -2653,8 +2713,9 @@ Error EditorSceneImportPlugin::import2(Node *scene, const String& p_dest_path, c Set<Ref<Mesh> > tested_meshes; _find_resources_to_merge(instance,instance,scene_flags&SCENE_FLAG_MERGE_KEEP_MATERIALS,merged_materials,scene_flags&SCENE_FLAG_MERGE_KEEP_EXTRA_ANIM_TRACKS,merged_anims,tested_meshes); + tested_meshes.clear(); - _merge_found_resources(instance,instance,scene_flags&SCENE_FLAG_MERGE_KEEP_MATERIALS,merged_materials,scene_flags&SCENE_FLAG_MERGE_KEEP_EXTRA_ANIM_TRACKS,merged_anims,tested_meshes); + _merge_found_resources(scene,scene,scene_flags&SCENE_FLAG_MERGE_KEEP_MATERIALS,merged_materials,scene_flags&SCENE_FLAG_MERGE_KEEP_EXTRA_ANIM_TRACKS,merged_anims,tested_meshes); memdelete(instance); } @@ -2680,8 +2741,9 @@ Error EditorSceneImportPlugin::import2(Node *scene, const String& p_dest_path, c post_import_script = Ref<EditorScenePostImport>( memnew( EditorScenePostImport ) ); post_import_script->set_script(scr.get_ref_ptr()); if (!post_import_script->get_script_instance()) { - EditorNode::add_io_error(TTR("Invalid/broken script for post-import:")+" "+post_import_script_path); + EditorNode::add_io_error(TTR("Invalid/broken script for post-import (check console):")+" "+post_import_script_path); post_import_script.unref(); + return ERR_CANT_CREATE; } } } @@ -2741,7 +2803,7 @@ Error EditorSceneImportPlugin::import2(Node *scene, const String& p_dest_path, c target_path=target_path.basename()+".tex"; Ref<ResourceImportMetadata> imd = memnew( ResourceImportMetadata ); - print_line("flags: "+itos(image_flags)); + uint32_t flags = image_flags; if (E->get()==TEXTURE_ROLE_DIFFUSE && scene_flags&SCENE_FLAG_LINEARIZE_DIFFUSE_TEXTURES) flags|=EditorTextureImportPlugin::IMAGE_FLAG_CONVERT_TO_LINEAR; @@ -2789,15 +2851,16 @@ Error EditorSceneImportPlugin::import2(Node *scene, const String& p_dest_path, c Ref<PackedScene> packer = memnew( PackedScene ); packer->pack(scene); - packer->set_path(p_dest_path); + //packer->set_path(p_dest_path); do not take over, let the changed files reload themselves packer->set_import_metadata(from); print_line("SAVING TO: "+p_dest_path); - err = ResourceSaver::save(p_dest_path,packer,ResourceSaver::FLAG_REPLACE_SUBRESOURCE_PATHS); + err = ResourceSaver::save(p_dest_path,packer); //do not take over, let the changed files reload themselves //EditorFileSystem::get_singleton()->update_resource(packer); memdelete(scene); + /* scene->set_filename(p_dest_path); if (r_scene) { @@ -2817,6 +2880,7 @@ Error EditorSceneImportPlugin::import2(Node *scene, const String& p_dest_path, c */ + EditorNode::get_singleton()->reload_scene(p_dest_path); return err; diff --git a/tools/editor/io_plugins/editor_texture_import_plugin.cpp b/tools/editor/io_plugins/editor_texture_import_plugin.cpp index 16ea803da4..60642999f2 100644 --- a/tools/editor/io_plugins/editor_texture_import_plugin.cpp +++ b/tools/editor/io_plugins/editor_texture_import_plugin.cpp @@ -147,8 +147,6 @@ void EditorImportTextureOptions::_changed() { void EditorImportTextureOptions::_bind_methods() { - print_line("bind toptions"); - ObjectTypeDB::bind_method("_changed",&EditorImportTextureOptions::_changed); ObjectTypeDB::bind_method("_changedp",&EditorImportTextureOptions::_changedp); @@ -1192,8 +1190,6 @@ Error EditorTextureImportPlugin::import2(const String& p_path, const Ref<Resourc } ep.step(TTR("Converting Images"),sources.size()); - int base_index=0; - Map<uint64_t,int> source_md5; Map<int,List<int> > source_map; @@ -1760,7 +1756,6 @@ void EditorTextureImportPlugin::reimport_multiple_files(const Vector<String>& p_ Vector<String> valid; - bool warning=false; for(int i=0;i<p_list.size();i++) { Ref<ResourceImportMetadata> rimd = ResourceLoader::load_import_metadata(p_list[i]); @@ -1768,7 +1763,6 @@ void EditorTextureImportPlugin::reimport_multiple_files(const Vector<String>& p_ if (type=="texture" || type.begins_with("texture_")) { if ((rimd->has_option("atlas") && rimd->get_option("atlas")) || (rimd->has_option("large") && rimd->get_option("large"))) { - warning=true; continue; } diff --git a/tools/editor/io_plugins/editor_translation_import_plugin.cpp b/tools/editor/io_plugins/editor_translation_import_plugin.cpp index aa36fefdb7..9ee3e98486 100644 --- a/tools/editor/io_plugins/editor_translation_import_plugin.cpp +++ b/tools/editor/io_plugins/editor_translation_import_plugin.cpp @@ -425,7 +425,6 @@ Error EditorTranslationImportPlugin::import(const String& p_path, const Ref<Reso ERR_FAIL_COND_V( !f, ERR_INVALID_PARAMETER ); - bool first=false; bool skip_first = from->get_option("skip_first"); int index = from->get_option("index"); index+=1; @@ -439,7 +438,6 @@ Error EditorTranslationImportPlugin::import(const String& p_path, const Ref<Reso while(line.size()>1) { - if (!skip_first) { ERR_FAIL_INDEX_V(index,line.size(),ERR_INVALID_DATA ); translation->add_message(line[0].strip_edges(),line[index]); diff --git a/tools/editor/output_strings.cpp b/tools/editor/output_strings.cpp index f1b49d2326..a6126466c4 100644 --- a/tools/editor/output_strings.cpp +++ b/tools/editor/output_strings.cpp @@ -32,7 +32,6 @@ void OutputStrings::update_scrollbars() { - Size2 size = get_size(); Size2 hmin = h_scroll->get_combined_minimum_size(); Size2 vmin = v_scroll->get_combined_minimum_size(); diff --git a/tools/editor/plugins/animation_player_editor_plugin.cpp b/tools/editor/plugins/animation_player_editor_plugin.cpp index 10c7bf79a3..98ba25b482 100644 --- a/tools/editor/plugins/animation_player_editor_plugin.cpp +++ b/tools/editor/plugins/animation_player_editor_plugin.cpp @@ -407,7 +407,6 @@ void AnimationPlayerEditor::_animation_save(const Ref<Resource>& p_resource) { void AnimationPlayerEditor::_animation_save_as(const Ref<Resource>& p_resource) { file->set_mode(EditorFileDialog::MODE_SAVE_FILE); - bool relpaths = (p_resource->has_meta("__editor_relpaths__") && p_resource->get_meta("__editor_relpaths__").operator bool()); List<String> extensions; ResourceSaver::get_recognized_extensions(p_resource, &extensions); @@ -1404,6 +1403,7 @@ AnimationPlayerEditor::AnimationPlayerEditor(EditorNode *p_editor) { hb->add_child(animation); animation->set_h_size_flags(SIZE_EXPAND_FILL); animation->set_tooltip(TTR("Display list of animations in player.")); + animation->set_clip_text(true); autoplay = memnew( ToolButton ); hb->add_child(autoplay); diff --git a/tools/editor/plugins/animation_tree_editor_plugin.cpp b/tools/editor/plugins/animation_tree_editor_plugin.cpp index a381ec4678..24914e4bc5 100644 --- a/tools/editor/plugins/animation_tree_editor_plugin.cpp +++ b/tools/editor/plugins/animation_tree_editor_plugin.cpp @@ -90,7 +90,6 @@ Size2 AnimationTreeEditor::get_node_size(const StringName& p_node) const { Ref<StyleBox> style = get_stylebox("panel","PopupMenu"); Ref<Font> font = get_font("font","PopupMenu"); - Color font_color = get_color("font_color","PopupMenu"); Size2 size = style->get_minimum_size(); @@ -633,7 +632,6 @@ AnimationTreeEditor::ClickType AnimationTreeEditor::_locate_click(const Point2& Ref<StyleBox> style = get_stylebox("panel","PopupMenu"); Ref<Font> font = get_font("font","PopupMenu"); - Color font_color = get_color("font_color","PopupMenu"); float h = (font->get_height()+get_constant("vseparation","PopupMenu")); diff --git a/tools/editor/plugins/baked_light_baker.cpp b/tools/editor/plugins/baked_light_baker.cpp index 1962f81e87..6a88ba4cbe 100644 --- a/tools/editor/plugins/baked_light_baker.cpp +++ b/tools/editor/plugins/baked_light_baker.cpp @@ -645,7 +645,6 @@ void BakedLightBaker::_octree_insert(int p_octant,Triangle* p_triangle, int p_de leaf_list=child_idx; cell_count++; - int lz = lights.size(); for(int ci=0;ci<8;ci++) { child->light_accum[ci][0]=0; child->light_accum[ci][1]=0; @@ -1016,8 +1015,6 @@ float BakedLightBaker::_throw_ray(ThreadStack& thread_stack,bool p_bake_direct,c //ray_aabb.expand_to(p_end); - const BVH *bvhptr = bvh; - bstack[0]=bvh; stack[0]=TEST_AABB_BIT; @@ -1693,7 +1690,7 @@ void BakedLightBaker::throw_rays(ThreadStack& thread_stack,int p_amount) { Vector3 from = dl.pos; double r1 = double(rand())/RAND_MAX; - double r2 = double(rand())/RAND_MAX; + //double r2 = double(rand())/RAND_MAX; double r3 = double(rand())/RAND_MAX; float d=Math::tan(Math::deg2rad(dl.spot_angle)); @@ -1994,7 +1991,6 @@ void BakedLightBaker::update_octree_images(DVector<uint8_t> &p_octree,DVector<ui const double *normptr=norm_arr.ptr(); */ double norm = 1.0/double(total_rays); - int lz=lights.size(); mult/=multiplier; double saturation = baked_light->get_saturation(); @@ -2261,8 +2257,6 @@ void BakedLightBaker::_plot_pixel_to_lightmap(int x, int y, int width, int heigh continue; n/=len; - const BVH *bvhptr = bvh; - bstack[0]=bvh; stack[0]=TEST_RAY_BIT; @@ -2404,8 +2398,6 @@ Error BakedLightBaker::transfer_to_lightmaps() { float gamma = baked_light->get_gamma_adjust(); float mult = baked_light->get_energy_multiplier(); - - const double *normptr=norm_arr.ptr(); for(int i=0;i<triangles.size();i++) { if (i%200==0) { @@ -2538,7 +2530,6 @@ Error BakedLightBaker::transfer_to_lightmaps() { Vector<uint8_t> copy_data=bt.data; uint8_t *data=bt.data.ptr(); - uint8_t *src_data=copy_data.ptr(); const int max_radius=8; const int shadow_radius=2; const int max_dist=0x7FFFFFFF; diff --git a/tools/editor/plugins/canvas_item_editor_plugin.cpp b/tools/editor/plugins/canvas_item_editor_plugin.cpp index 0cbc867b47..f9499904db 100644 --- a/tools/editor/plugins/canvas_item_editor_plugin.cpp +++ b/tools/editor/plugins/canvas_item_editor_plugin.cpp @@ -1382,6 +1382,8 @@ void CanvasItemEditor::_viewport_input_event(const InputEvent& p_event) { se->undo_state=canvas_item->edit_get_state(); if (canvas_item->cast_to<Node2D>()) se->undo_pivot=canvas_item->cast_to<Node2D>()->edit_get_pivot(); + if (canvas_item->cast_to<Control>()) + se->undo_pivot=Vector2(); return; } @@ -1566,14 +1568,34 @@ void CanvasItemEditor::_viewport_input_event(const InputEvent& p_event) { if (drag==DRAG_ROTATE) { Vector2 center = canvas_item->get_global_transform_with_canvas().get_origin(); - if (Node2D *node = canvas_item->cast_to<Node2D>()) { - Matrix32 rot; - rot.elements[1] = (dfrom - center).normalized(); - rot.elements[0] = rot.elements[1].tangent(); - node->set_rot(snap_angle(rot.xform_inv(dto-center).angle() + node->get_rot(), node->get_rot())); - display_rotate_to = dto; - display_rotate_from = center; - viewport->update(); + { + Node2D *node = canvas_item->cast_to<Node2D>(); + + + if (node) { + Matrix32 rot; + rot.elements[1] = (dfrom - center).normalized(); + rot.elements[0] = rot.elements[1].tangent(); + node->set_rot(snap_angle(rot.xform_inv(dto-center).angle() + node->get_rot(), node->get_rot())); + display_rotate_to = dto; + display_rotate_from = center; + viewport->update(); + } + } + + { + Control *node = canvas_item->cast_to<Control>(); + + + if (node) { + Matrix32 rot; + rot.elements[1] = (dfrom - center).normalized(); + rot.elements[0] = rot.elements[1].tangent(); + node->set_rotation(snap_angle(rot.xform_inv(dto-center).angle() + node->get_rotation(), node->get_rotation())); + display_rotate_to = dto; + display_rotate_from = center; + viewport->update(); + } } continue; @@ -1918,8 +1940,6 @@ void CanvasItemEditor::_viewport_draw() { Map<Node*,Object*> &selection = editor_selection->get_selection(); - CanvasItem *single_item=NULL; - bool pivot_found=false; for(Map<Node*,Object*>::Element *E=selection.front();E;E=E->next()) { @@ -1939,15 +1959,6 @@ void CanvasItemEditor::_viewport_draw() { Matrix32 xform=transform * canvas_item->get_global_transform_with_canvas(); VisualServer::get_singleton()->canvas_item_add_set_transform(ci,xform); - Point2 ofs=Point2();//get_global_pos(); - Rect2 draw_rect=rect; - Color light_edit_color=Color(1.0,0.8,0.8); - Color dark_edit_color=Color(0.4,0.1,0.1); - Size2 handle_size=Size2(handle_len,handle_len); - - //select_sb->draw(ci,draw_rect.grow(2)); - //DRAW_EMPTY_RECT( draw_rect.grow(2), light_edit_color ); - //DRAW_EMPTY_RECT( draw_rect.grow(1), dark_edit_color ); Vector2 endpoints[4]={ @@ -3352,25 +3363,25 @@ CanvasItemEditor::CanvasItemEditor(EditorNode *p_editor) { PopupMenu *p; p = edit_menu->get_popup(); - p->add_check_item(TTR("Use Snap"),SNAP_USE); - p->add_check_item(TTR("Show Grid"),SNAP_SHOW_GRID); - p->add_check_item(TTR("Use Rotation Snap"),SNAP_USE_ROTATION); - p->add_check_item(TTR("Snap Relative"),SNAP_RELATIVE); - p->add_item(TTR("Configure Snap.."),SNAP_CONFIGURE); + p->add_check_shortcut(ED_SHORTCUT("canvas_item_editor/use_snap", TTR("Use Snap")), SNAP_USE); + p->add_check_shortcut(ED_SHORTCUT("canvas_item_editor/show_grid", TTR("Show Grid")), SNAP_SHOW_GRID); + p->add_check_shortcut(ED_SHORTCUT("canvas_item_editor/use_rotation_snap", TTR("Use Rotation Snap")), SNAP_USE_ROTATION); + p->add_check_shortcut(ED_SHORTCUT("canvas_item_editor/snap_relative", TTR("Snap Relative")), SNAP_RELATIVE); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/configure_snap", TTR("Configure Snap..")), SNAP_CONFIGURE); p->add_separator(); - p->add_check_item(TTR("Use Pixel Snap"),SNAP_USE_PIXEL); + p->add_check_shortcut(ED_SHORTCUT("canvas_item_editor/use_pixel_snap", TTR("Use Pixel Snap")), SNAP_USE_PIXEL); p->add_separator(); - p->add_item(TTR("Expand to Parent"),EXPAND_TO_PARENT,KEY_MASK_CMD|KEY_P); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/expand_to_parent", TTR("Expand to Parent"), KEY_MASK_CMD | KEY_P), EXPAND_TO_PARENT); p->add_separator(); p->add_submenu_item(TTR("Skeleton.."),"skeleton"); PopupMenu *p2 = memnew(PopupMenu); p->add_child(p2); p2->set_name("skeleton"); - p2->add_item(TTR("Make Bones"),SKELETON_MAKE_BONES,KEY_MASK_CMD|KEY_MASK_SHIFT|KEY_B); - p2->add_item(TTR("Clear Bones"),SKELETON_CLEAR_BONES); + p2->add_shortcut(ED_SHORTCUT("canvas_item_editor/skeleton_make_bones", TTR("Make Bones"), KEY_MASK_CMD | KEY_MASK_SHIFT | KEY_B ),SKELETON_MAKE_BONES); + p2->add_shortcut(ED_SHORTCUT("canvas_item_editor/skeleton_clear_bones", TTR("Clear Bones")), SKELETON_CLEAR_BONES); p2->add_separator(); - p2->add_item(TTR("Make IK Chain"),SKELETON_SET_IK_CHAIN); - p2->add_item(TTR("Clear IK Chain"),SKELETON_CLEAR_IK_CHAIN); + p2->add_shortcut(ED_SHORTCUT("canvas_item_editor/skeleton_set_ik_chain", TTR("Make IK Chain")), SKELETON_SET_IK_CHAIN); + p2->add_shortcut(ED_SHORTCUT("canvas_item_editor/skeleton_clear_ik_chain", TTR("Clear IK Chain")), SKELETON_CLEAR_IK_CHAIN); p2->connect("item_pressed", this,"_popup_callback"); @@ -3387,13 +3398,13 @@ CanvasItemEditor::CanvasItemEditor(EditorNode *p_editor) { p = view_menu->get_popup(); - p->add_item(TTR("Zoom In"),ZOOM_IN); - p->add_item(TTR("Zoom Out"),ZOOM_OUT); - p->add_item(TTR("Zoom Reset"),ZOOM_RESET); - p->add_item(TTR("Zoom Set.."),ZOOM_SET); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/zoom_in", TTR("Zoom In")), ZOOM_IN); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/zoom_out", TTR("Zoom Out")), ZOOM_OUT); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/zoom_reset", TTR("Zoom Reset")), ZOOM_RESET); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/zoom_set", TTR("Zoom Set..")), ZOOM_SET); p->add_separator(); - p->add_item(TTR("Center Selection"), VIEW_CENTER_TO_SELECTION, KEY_F); - p->add_item(TTR("Frame Selection"), VIEW_FRAME_TO_SELECTION, KEY_MASK_CMD|KEY_F); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/center_selection", TTR("Center Selection"), KEY_F), VIEW_CENTER_TO_SELECTION); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/frame_selection", TTR("Frame Selection"), KEY_MASK_SHIFT | KEY_F), VIEW_FRAME_TO_SELECTION); anchor_menu = memnew( MenuButton ); anchor_menu->set_text(TTR("Anchor")); @@ -3436,7 +3447,8 @@ CanvasItemEditor::CanvasItemEditor(EditorNode *p_editor) { key_insert_button = memnew( Button ); key_insert_button->set_focus_mode(FOCUS_NONE); key_insert_button->connect("pressed",this,"_popup_callback",varray(ANIM_INSERT_KEY)); - key_insert_button->set_tooltip(TTR("Insert Keys (Ins)")); + key_insert_button->set_tooltip(TTR("Insert Keys")); + key_insert_button->set_shortcut(ED_SHORTCUT("canvas_item_editor/anim_insert_key", TTR("Insert Key"), KEY_INSERT)); animation_hb->add_child(key_insert_button); @@ -3447,12 +3459,12 @@ CanvasItemEditor::CanvasItemEditor(EditorNode *p_editor) { p = animation_menu->get_popup(); - p->add_item(TTR("Insert Key"),ANIM_INSERT_KEY,KEY_INSERT); - p->add_item(TTR("Insert Key (Existing Tracks)"),ANIM_INSERT_KEY_EXISTING,KEY_MASK_CMD+KEY_INSERT); + p->add_shortcut(ED_GET_SHORTCUT("canvas_item_editor/anim_insert_key"), ANIM_INSERT_KEY); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/anim_insert_key_existing_tracks", TTR("Insert Key (Existing Tracks)"), KEY_MASK_CMD+KEY_INSERT), ANIM_INSERT_KEY_EXISTING); p->add_separator(); - p->add_item(TTR("Copy Pose"),ANIM_COPY_POSE); - p->add_item(TTR("Paste Pose"),ANIM_PASTE_POSE); - p->add_item(TTR("Clear Pose"),ANIM_CLEAR_POSE,KEY_MASK_SHIFT|KEY_K); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/anim_copy_pose", TTR("Copy Pose")), ANIM_COPY_POSE); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/anim_paste_pose", TTR("Paste Pose")), ANIM_PASTE_POSE); + p->add_shortcut(ED_SHORTCUT("canvas_item_editor/anim_clear_pose", TTR("Clear Pose"), KEY_MASK_SHIFT | KEY_K), ANIM_CLEAR_POSE); snap_dialog = memnew( SnapDialog ); snap_dialog->connect("confirmed",this,"_snap_changed"); diff --git a/tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp b/tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp index 5ed9f8ab5f..95364e8921 100644 --- a/tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +++ b/tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp @@ -349,8 +349,6 @@ void CollisionPolygon2DEditor::_canvas_draw() { Matrix32 xform = canvas_item_editor->get_canvas_transform() * node->get_global_transform(); Ref<Texture> handle= get_icon("EditorHandle","EditorIcons"); - int len = poly.size(); - for(int i=0;i<poly.size();i++) { diff --git a/tools/editor/plugins/collision_polygon_editor_plugin.cpp b/tools/editor/plugins/collision_polygon_editor_plugin.cpp index b18afe7838..0b06b3ba21 100644 --- a/tools/editor/plugins/collision_polygon_editor_plugin.cpp +++ b/tools/editor/plugins/collision_polygon_editor_plugin.cpp @@ -381,8 +381,6 @@ void CollisionPolygonEditor::_polygon_draw() { poly=node->get_polygon(); - - int len = poly.size(); float depth = node->get_depth()*0.5; imgeom->clear(); @@ -586,7 +584,7 @@ CollisionPolygonEditor::CollisionPolygonEditor(EditorNode *p_editor) { handle_material->set_parameter(FixedMaterial::PARAM_DIFFUSE,Color(1,1,1)); handle_material->set_fixed_flag(FixedMaterial::FLAG_USE_ALPHA, true); handle_material->set_fixed_flag(FixedMaterial::FLAG_USE_COLOR_ARRAY, false); - Ref<Texture> handle= SpatialEditor::get_singleton()->get_icon("Editor3DHandle","EditorIcons"); + Ref<Texture> handle=editor->get_gui_base()->get_icon("Editor3DHandle","EditorIcons"); handle_material->set_point_size(handle->get_width()); handle_material->set_texture(FixedMaterial::PARAM_DIFFUSE,handle); diff --git a/tools/editor/plugins/editor_preview_plugins.cpp b/tools/editor/plugins/editor_preview_plugins.cpp index a057e6c2a1..b1bce60484 100644 --- a/tools/editor/plugins/editor_preview_plugins.cpp +++ b/tools/editor/plugins/editor_preview_plugins.cpp @@ -36,6 +36,7 @@ #include "scene/resources/mesh.h" #include "scene/resources/bit_mask.h" #include "tools/editor/editor_scale.h" + bool EditorTexturePreviewPlugin::handles(const String& p_type) const { return (ObjectTypeDB::is_type(p_type,"ImageTexture") || ObjectTypeDB::is_type(p_type, "AtlasTexture")); @@ -442,7 +443,6 @@ Ref<Texture> EditorScriptPreviewPlugin::generate(const RES& p_from) { Color keyword_color = EditorSettings::get_singleton()->get("text_editor/keyword_color"); Color text_color = EditorSettings::get_singleton()->get("text_editor/text_color"); Color symbol_color = EditorSettings::get_singleton()->get("text_editor/symbol_color"); - Color comment_color = EditorSettings::get_singleton()->get("text_editor/comment_color"); for(int i=0;i<thumbnail_size;i++) { @@ -607,7 +607,7 @@ Ref<Texture> EditorSamplePreviewPlugin::generate(const RES& p_from) { -1, -1, -1, -1, 2, 4, 6, 8 }; - int16_t nibble,signed_nibble,diff,step; + int16_t nibble,diff,step; ima_adpcm.last_nibble++; const uint8_t *src_ptr=sdata; @@ -628,10 +628,6 @@ Ref<Texture> EditorSamplePreviewPlugin::generate(const RES& p_from) { if (ima_adpcm.step_index>88) ima_adpcm.step_index=88; - /* - signed_nibble = (nibble&7) * ((nibble&8)?-1:1); - diff = (2 * signed_nibble + 1) * step / 4; */ - diff = step >> 3 ; if (nibble & 1) diff += step >> 2 ; @@ -748,15 +744,13 @@ Ref<Texture> EditorSamplePreviewPlugin::generate(const RES& p_from) { for(int j=0;j<h;j++) { - int half,ofs; + int half; float v; if (j<(h/2)) { half=0; - ofs=0; v = (j/(float)(h/2)) * 2.0 - 1.0; } else { half=1; - ofs=h/2; if( (float)(h/2) != 0 ) { v = ((j-(h/2))/(float)(h/2)) * 2.0 - 1.0; } else { diff --git a/tools/editor/plugins/light_occluder_2d_editor_plugin.cpp b/tools/editor/plugins/light_occluder_2d_editor_plugin.cpp index 14e7b14fc3..56e58bc983 100644 --- a/tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +++ b/tools/editor/plugins/light_occluder_2d_editor_plugin.cpp @@ -364,8 +364,6 @@ void LightOccluder2DEditor::_canvas_draw() { Matrix32 xform = canvas_item_editor->get_canvas_transform() * node->get_global_transform(); Ref<Texture> handle= get_icon("EditorHandle","EditorIcons"); - int len = poly.size(); - for(int i=0;i<poly.size();i++) { diff --git a/tools/editor/plugins/navigation_polygon_editor_plugin.cpp b/tools/editor/plugins/navigation_polygon_editor_plugin.cpp index 5a8cd8791e..22546c72f3 100644 --- a/tools/editor/plugins/navigation_polygon_editor_plugin.cpp +++ b/tools/editor/plugins/navigation_polygon_editor_plugin.cpp @@ -427,8 +427,6 @@ void NavigationPolygonEditor::_canvas_draw() { poly = Variant(node->get_navigation_polygon()->get_outline(j)); } - int len = poly.size(); - for(int i=0;i<poly.size();i++) { diff --git a/tools/editor/plugins/particles_editor_plugin.cpp b/tools/editor/plugins/particles_editor_plugin.cpp index 93e2fb2f38..7e20cc3f54 100644 --- a/tools/editor/plugins/particles_editor_plugin.cpp +++ b/tools/editor/plugins/particles_editor_plugin.cpp @@ -283,7 +283,6 @@ void ParticlesEditor::_generate_emission_points() { ofs=(Vector3(1,1,1)-dir)*Vector3(Math::randf(),Math::randf(),Math::randf())*aabb.size; ofs+=aabb.pos; - Vector3 dirv = -dir; Vector3 ofsv = ofs + aabb.size * dir; //space it a little diff --git a/tools/editor/plugins/polygon_2d_editor_plugin.cpp b/tools/editor/plugins/polygon_2d_editor_plugin.cpp index d78508c429..19d1ccc06f 100644 --- a/tools/editor/plugins/polygon_2d_editor_plugin.cpp +++ b/tools/editor/plugins/polygon_2d_editor_plugin.cpp @@ -466,8 +466,6 @@ void Polygon2DEditor::_canvas_draw() { Matrix32 xform = canvas_item_editor->get_canvas_transform() * node->get_global_transform(); Ref<Texture> handle= get_icon("EditorHandle","EditorIcons"); - int len = poly.size(); - for(int i=0;i<poly.size();i++) { diff --git a/tools/editor/plugins/sample_editor_plugin.cpp b/tools/editor/plugins/sample_editor_plugin.cpp index b094184a29..7965fa54ae 100644 --- a/tools/editor/plugins/sample_editor_plugin.cpp +++ b/tools/editor/plugins/sample_editor_plugin.cpp @@ -151,7 +151,7 @@ void SampleEditor::generate_preview_texture(const Ref<Sample>& p_sample,Ref<Imag -1, -1, -1, -1, 2, 4, 6, 8 }; - int16_t nibble,signed_nibble,diff,step; + int16_t nibble,diff,step; ima_adpcm.last_nibble++; const uint8_t *src_ptr=sdata; @@ -172,10 +172,6 @@ void SampleEditor::generate_preview_texture(const Ref<Sample>& p_sample,Ref<Imag if (ima_adpcm.step_index>88) ima_adpcm.step_index=88; - /* - signed_nibble = (nibble&7) * ((nibble&8)?-1:1); - diff = (2 * signed_nibble + 1) * step / 4; */ - diff = step >> 3 ; if (nibble & 1) diff += step >> 2 ; @@ -285,15 +281,13 @@ void SampleEditor::generate_preview_texture(const Ref<Sample>& p_sample,Ref<Imag for(int j=0;j<h;j++) { - int half,ofs; + int half; float v; if (j<(h/2)) { half=0; - ofs=0; v = (j/(float)(h/2)) * 2.0 - 1.0; } else { half=1; - ofs=h/2; v = ((j-(h/2))/(float)(h/2)) * 2.0 - 1.0; } @@ -324,12 +318,13 @@ void SampleEditor::generate_preview_texture(const Ref<Sample>& p_sample,Ref<Imag void SampleEditor::_update_sample() { player->stop_all(); - if (sample->get_format()==Sample::FORMAT_IMA_ADPCM) - return; //bye or unsupported generate_preview_texture(sample,peakdisplay); info_label->set_text(TTR("Length:")+" "+String::num(sample->get_length()/(float)sample->get_mix_rate(),2)+"s"); + if (library->has_sample("default")) + library->remove_sample("default"); + library->add_sample("default",sample); } diff --git a/tools/editor/plugins/script_editor_plugin.cpp b/tools/editor/plugins/script_editor_plugin.cpp index 10e4fc8475..65741fd072 100644 --- a/tools/editor/plugins/script_editor_plugin.cpp +++ b/tools/editor/plugins/script_editor_plugin.cpp @@ -43,6 +43,28 @@ /*** SCRIPT EDITOR ****/ +static bool _can_open_in_editor(Script* p_script) { + + String path = p_script->get_path(); + + if (path.find("::")!=-1) { + //refuse handling this if it can't be edited + + bool valid=false; + for(int i=0;i<EditorNode::get_singleton()->get_editor_data().get_edited_scene_count();i++) { + if (path.begins_with(EditorNode::get_singleton()->get_editor_data().get_scene_path(i))) { + valid=true; + break; + } + } + + return valid; + } + + return true; +} + + class EditorScriptCodeCompletionCache : public ScriptCodeCompletionCache { @@ -290,9 +312,12 @@ void ScriptTextEditor::_load_theme_settings() { get_text_edit()->add_color_override("completion_background_color", EDITOR_DEF("text_editor/completion_background_color", Color(0,0,0,0))); get_text_edit()->add_color_override("completion_selected_color", EDITOR_DEF("text_editor/completion_selected_color", Color::html("434244"))); get_text_edit()->add_color_override("completion_existing_color", EDITOR_DEF("text_editor/completion_existing_color", Color::html("21dfdfdf"))); + get_text_edit()->add_color_override("completion_scroll_color", EDITOR_DEF("text_editor/completion_scroll_color", Color::html("ffffff"))); + get_text_edit()->add_color_override("completion_font_color", EDITOR_DEF("text_editor/completion_font_color", Color::html("aaaaaa"))); get_text_edit()->add_color_override("font_color",EDITOR_DEF("text_editor/text_color",Color(0,0,0))); get_text_edit()->add_color_override("line_number_color",EDITOR_DEF("text_editor/line_number_color",Color(0,0,0))); get_text_edit()->add_color_override("caret_color",EDITOR_DEF("text_editor/caret_color",Color(0,0,0))); + get_text_edit()->add_color_override("caret_background_color",EDITOR_DEF("text_editor/caret_background_color",Color(0,0,0))); get_text_edit()->add_color_override("font_selected_color",EDITOR_DEF("text_editor/text_selected_color",Color(1,1,1))); get_text_edit()->add_color_override("selection_color",EDITOR_DEF("text_editor/selection_color",Color(0.2,0.2,1))); get_text_edit()->add_color_override("brace_mismatch_color",EDITOR_DEF("text_editor/brace_mismatch_color",Color(1,0.2,0.2))); @@ -585,7 +610,6 @@ void ScriptTextEditor::_code_complete_script(const String& p_code, List<String>* Error err = script->get_language()->complete_code(p_code,script->get_path().get_base_dir(),base,r_options,hint); if (hint!="") { get_text_edit()->set_code_hint(hint); - print_line("hint: "+hint.replace(String::chr(0xFFFF),"|")); } } @@ -748,9 +772,9 @@ void ScriptEditor::_go_to_tab(int p_idx) { _update_script_colors(); } -void ScriptEditor::_close_current_tab() { +void ScriptEditor::_close_tab(int p_idx) { - int selected = tab_container->get_current_tab(); + int selected = p_idx; if (selected<0 || selected>=tab_container->get_child_count()) return; @@ -796,6 +820,11 @@ void ScriptEditor::_close_current_tab() { _update_script_names(); EditorNode::get_singleton()->save_layout(); +} + +void ScriptEditor::_close_current_tab() { + + _close_tab(tab_container->get_current_tab()); } @@ -848,6 +877,15 @@ void ScriptEditor::_reload_scripts(){ } + uint64_t last_date = script->get_last_modified_time(); + uint64_t date = FileAccess::get_modified_time(script->get_path()); + + //printf("last date: %lli vs date: %lli\n",last_date,date); + if (last_date==date) { + continue; + } + + Ref<Script> rel_script = ResourceLoader::load(script->get_path(),script->get_type(),true); ERR_CONTINUE(!rel_script.is_valid()); script->set_source_code( rel_script->get_source_code() ); @@ -975,6 +1013,18 @@ void ScriptEditor::swap_lines(TextEdit *tx, int line1, int line2) tx->cursor_set_line(line2); } +void ScriptEditor::_breakpoint_toggled(const int p_row) { + int selected = tab_container->get_current_tab(); + if (selected<0 || selected>=tab_container->get_child_count()) { + return; + } + + ScriptTextEditor *current = tab_container->get_child(selected)->cast_to<ScriptTextEditor>(); + if (current) { + get_debugger()->set_breakpoint(current->get_edited_script()->get_path(),p_row+1,current->get_text_edit()->is_line_set_as_breakpoint(p_row)); + } +} + void ScriptEditor::_file_dialog_action(String p_file) { switch (file_dialog_option) { @@ -1682,6 +1732,33 @@ void ScriptEditor::_notification(int p_what) { } + +void ScriptEditor::close_builtin_scripts_from_scene(const String& p_scene) { + + + + for(int i=0;i<tab_container->get_child_count();i++) { + + ScriptTextEditor *ste = tab_container->get_child(i)->cast_to<ScriptTextEditor>(); + + if (ste) { + + Ref<Script> script = ste->get_edited_script(); + if (!script.is_valid()) + continue; + + if (script->get_path().find("::")!=-1 && script->get_path().begins_with(p_scene)) { //is an internal script and belongs to scene being closed + _close_tab(i); + i--; + + } + } + + } + + +} + void ScriptEditor::edited_scene_changed() { _update_modified_scripts_for_external_editor(); @@ -2060,11 +2137,18 @@ void ScriptEditor::_update_script_names() { } + + void ScriptEditor::edit(const Ref<Script>& p_script) { if (p_script.is_null()) return; + // refuse to open built-in if scene is not loaded + + + + // see if already has it bool open_dominant = EditorSettings::get_singleton()->get("text_editor/open_dominant_script_on_scene_change"); @@ -2124,9 +2208,11 @@ void ScriptEditor::edit(const Ref<Script>& p_script) { ste->get_text_edit()->cursor_set_blink_enabled(EditorSettings::get_singleton()->get("text_editor/caret_blink")); ste->get_text_edit()->cursor_set_blink_speed(EditorSettings::get_singleton()->get("text_editor/caret_blink_speed")); ste->get_text_edit()->set_draw_breakpoint_gutter(EditorSettings::get_singleton()->get("text_editor/show_breakpoint_gutter")); + ste->get_text_edit()->cursor_set_block_mode(EditorSettings::get_singleton()->get("text_editor/block_caret")); ste->get_text_edit()->set_callhint_settings( EditorSettings::get_singleton()->get("text_editor/put_callhint_tooltip_below_current_line"), EditorSettings::get_singleton()->get("text_editor/callhint_tooltip_offset")); + ste->get_text_edit()->connect("breakpoint_toggled", this, "_breakpoint_toggled"); tab_container->add_child(ste); _go_to_tab(tab_container->get_tab_count()-1); @@ -2291,6 +2377,7 @@ void ScriptEditor::_editor_settings_changed() { ste->get_text_edit()->cursor_set_blink_enabled(EditorSettings::get_singleton()->get("text_editor/caret_blink")); ste->get_text_edit()->cursor_set_blink_speed(EditorSettings::get_singleton()->get("text_editor/caret_blink_speed")); ste->get_text_edit()->set_draw_breakpoint_gutter(EditorSettings::get_singleton()->get("text_editor/show_breakpoint_gutter")); + ste->get_text_edit()->cursor_set_block_mode(EditorSettings::get_singleton()->get("text_editor/block_caret")); } ScriptServer::set_reload_scripts_on_save(EDITOR_DEF("text_editor/auto_reload_and_parse_scripts_on_save",true)); @@ -2316,6 +2403,22 @@ void ScriptEditor::_script_split_dragged(float) { EditorNode::get_singleton()->save_layout(); } +void ScriptEditor::_unhandled_input(const InputEvent& p_event) { + if (p_event.key.pressed || !is_visible()) return; + if (ED_IS_SHORTCUT("script_editor/next_script", p_event)) { + int next_tab = script_list->get_current() + 1; + next_tab %= script_list->get_item_count(); + _go_to_tab(script_list->get_item_metadata(next_tab)); + _update_script_names(); + } + if (ED_IS_SHORTCUT("script_editor/prev_script", p_event)) { + int next_tab = script_list->get_current() - 1; + next_tab = next_tab >= 0 ? next_tab : script_list->get_item_count() - 1; + _go_to_tab(script_list->get_item_metadata(next_tab)); + _update_script_names(); + } +} + void ScriptEditor::set_window_layout(Ref<ConfigFile> p_layout) { if (!bool(EDITOR_DEF("text_editor/restore_scripts_on_load",true))) { @@ -2335,6 +2438,8 @@ void ScriptEditor::set_window_layout(Ref<ConfigFile> p_layout) { for(int i=0;i<scripts.size();i++) { String path = scripts[i]; + if (!FileAccess::exists(path)) + continue; Ref<Script> scr = ResourceLoader::load(path); if (scr.is_valid()) { edit(scr); @@ -2512,7 +2617,7 @@ void ScriptEditor::set_scene_root_script( Ref<Script> p_script ) { if (bool(EditorSettings::get_singleton()->get("external_editor/use_external_editor"))) return; - if (open_dominant && p_script.is_valid()) { + if (open_dominant && p_script.is_valid() && _can_open_in_editor(p_script.ptr())) { edit(p_script); } } @@ -2582,6 +2687,7 @@ void ScriptEditor::_bind_methods() { ObjectTypeDB::bind_method("_res_saved_callback",&ScriptEditor::_res_saved_callback); ObjectTypeDB::bind_method("_goto_script_line",&ScriptEditor::_goto_script_line); ObjectTypeDB::bind_method("_goto_script_line2",&ScriptEditor::_goto_script_line2); + ObjectTypeDB::bind_method("_breakpoint_toggled", &ScriptEditor::_breakpoint_toggled); ObjectTypeDB::bind_method("_breaked",&ScriptEditor::_breaked); ObjectTypeDB::bind_method("_show_debugger",&ScriptEditor::_show_debugger); ObjectTypeDB::bind_method("_get_debug_tooltip",&ScriptEditor::_get_debug_tooltip); @@ -2598,6 +2704,7 @@ void ScriptEditor::_bind_methods() { ObjectTypeDB::bind_method("_history_forward",&ScriptEditor::_history_forward); ObjectTypeDB::bind_method("_history_back",&ScriptEditor::_history_back); ObjectTypeDB::bind_method("_live_auto_reload_running_scripts",&ScriptEditor::_live_auto_reload_running_scripts); + ObjectTypeDB::bind_method("_unhandled_input",&ScriptEditor::_unhandled_input); } @@ -2631,6 +2738,10 @@ ScriptEditor::ScriptEditor(EditorNode *p_editor) { tab_container->set_h_size_flags(SIZE_EXPAND_FILL); + ED_SHORTCUT("script_editor/next_script", TTR("Next script"), KEY_MASK_CMD | KEY_MASK_SHIFT | KEY_GREATER); + ED_SHORTCUT("script_editor/prev_script", TTR("Previous script"), KEY_MASK_CMD | KEY_LESS); + set_process_unhandled_input(true); + file_menu = memnew( MenuButton ); menu_hb->add_child(file_menu); file_menu->set_text(TTR("File")); @@ -2895,6 +3006,16 @@ void ScriptEditorPlugin::edit(Object *p_object) { bool ScriptEditorPlugin::handles(Object *p_object) const { + if (p_object->cast_to<Script>()) { + + bool valid = _can_open_in_editor(p_object->cast_to<Script>()); + + if (!valid) { //user tried to open it by clicking + EditorNode::get_singleton()->show_warning(TTR("Built-in scripts can only be edited when the scene they belong to is loaded")); + } + return valid; + } + return p_object->is_type("Script"); } diff --git a/tools/editor/plugins/script_editor_plugin.h b/tools/editor/plugins/script_editor_plugin.h index 0636190a41..dfa72490a5 100644 --- a/tools/editor/plugins/script_editor_plugin.h +++ b/tools/editor/plugins/script_editor_plugin.h @@ -234,6 +234,8 @@ class ScriptEditor : public VBoxContainer { bool _test_script_times_on_disk(Ref<Script> p_for_script=Ref<Script>()); + void _close_tab(int p_idx); + void _close_current_tab(); bool grab_focus_block; @@ -279,6 +281,8 @@ class ScriptEditor : public VBoxContainer { void _script_split_dragged(float); + void _unhandled_input(const InputEvent& p_event); + void _history_forward(); void _history_back(); @@ -317,6 +321,7 @@ public: void get_breakpoints(List<String> *p_breakpoints); void swap_lines(TextEdit *tx, int line1, int line2); + void _breakpoint_toggled(const int p_row); void save_all_scripts(); @@ -329,6 +334,8 @@ public: virtual void edited_scene_changed(); + void close_builtin_scripts_from_scene(const String& p_scene); + ScriptEditorDebugger *get_debugger() { return debugger; } void set_live_auto_reload_running_scripts(bool p_enabled); diff --git a/tools/editor/plugins/shader_editor_plugin.cpp b/tools/editor/plugins/shader_editor_plugin.cpp index 76042c3028..b3317e8313 100644 --- a/tools/editor/plugins/shader_editor_plugin.cpp +++ b/tools/editor/plugins/shader_editor_plugin.cpp @@ -81,9 +81,12 @@ void ShaderTextEditor::_load_theme_settings() { get_text_edit()->add_color_override("completion_background_color", EDITOR_DEF("text_editor/completion_background_color", Color(0,0,0,0))); get_text_edit()->add_color_override("completion_selected_color", EDITOR_DEF("text_editor/completion_selected_color", Color::html("434244"))); get_text_edit()->add_color_override("completion_existing_color", EDITOR_DEF("text_editor/completion_existing_color", Color::html("21dfdfdf"))); + get_text_edit()->add_color_override("completion_scroll_color", EDITOR_DEF("text_editor/completion_scroll_color", Color::html("ffffff"))); + get_text_edit()->add_color_override("completion_font_color", EDITOR_DEF("text_editor/completion_font_color", Color::html("aaaaaa"))); get_text_edit()->add_color_override("font_color",EDITOR_DEF("text_editor/text_color",Color(0,0,0))); get_text_edit()->add_color_override("line_number_color",EDITOR_DEF("text_editor/line_number_color",Color(0,0,0))); get_text_edit()->add_color_override("caret_color",EDITOR_DEF("text_editor/caret_color",Color(0,0,0))); + get_text_edit()->add_color_override("caret_background_color",EDITOR_DEF("text_editor/caret_background_color",Color(0,0,0))); get_text_edit()->add_color_override("font_selected_color",EDITOR_DEF("text_editor/text_selected_color",Color(1,1,1))); get_text_edit()->add_color_override("selection_color",EDITOR_DEF("text_editor/selection_color",Color(0.2,0.2,1))); get_text_edit()->add_color_override("brace_mismatch_color",EDITOR_DEF("text_editor/brace_mismatch_color",Color(1,0.2,0.2))); @@ -118,9 +121,10 @@ void ShaderTextEditor::_load_theme_settings() { get_text_edit()->add_color_region("/*","*/",comment_color,false); get_text_edit()->add_color_region("//","",comment_color,false); - //colorize strings + + /*//colorize strings Color string_color = EDITOR_DEF("text_editor/string_color",Color::hex(0x6b6f00ff)); - /* + List<String> strings; shader->get_shader_mode()->get_string_delimiters(&strings); @@ -378,6 +382,7 @@ void ShaderEditor::_editor_settings_changed() { vertex_editor->get_text_edit()->cursor_set_blink_enabled(EditorSettings::get_singleton()->get("text_editor/caret_blink")); vertex_editor->get_text_edit()->cursor_set_blink_speed(EditorSettings::get_singleton()->get("text_editor/caret_blink_speed")); vertex_editor->get_text_edit()->add_constant_override("line_spacing", EditorSettings::get_singleton()->get("text_editor/line_spacing")); + vertex_editor->get_text_edit()->cursor_set_block_mode(EditorSettings::get_singleton()->get("text_editor/block_caret")); fragment_editor->get_text_edit()->set_auto_brace_completion(EditorSettings::get_singleton()->get("text_editor/auto_brace_complete")); fragment_editor->get_text_edit()->set_scroll_pass_end_of_file(EditorSettings::get_singleton()->get("text_editor/scroll_past_end_of_file")); @@ -389,6 +394,7 @@ void ShaderEditor::_editor_settings_changed() { fragment_editor->get_text_edit()->cursor_set_blink_enabled(EditorSettings::get_singleton()->get("text_editor/caret_blink")); fragment_editor->get_text_edit()->cursor_set_blink_speed(EditorSettings::get_singleton()->get("text_editor/caret_blink_speed")); fragment_editor->get_text_edit()->add_constant_override("line_spacing", EditorSettings::get_singleton()->get("text_editor/line_spacing")); + fragment_editor->get_text_edit()->cursor_set_block_mode(EditorSettings::get_singleton()->get("text_editor/block_caret")); light_editor->get_text_edit()->set_auto_brace_completion(EditorSettings::get_singleton()->get("text_editor/auto_brace_complete")); light_editor->get_text_edit()->set_scroll_pass_end_of_file(EditorSettings::get_singleton()->get("text_editor/scroll_past_end_of_file")); @@ -400,6 +406,7 @@ void ShaderEditor::_editor_settings_changed() { light_editor->get_text_edit()->cursor_set_blink_enabled(EditorSettings::get_singleton()->get("text_editor/caret_blink")); light_editor->get_text_edit()->cursor_set_blink_speed(EditorSettings::get_singleton()->get("text_editor/caret_blink_speed")); light_editor->get_text_edit()->add_constant_override("line_spacing", EditorSettings::get_singleton()->get("text_editor/line_spacing")); + light_editor->get_text_edit()->cursor_set_block_mode(EditorSettings::get_singleton()->get("text_editor/block_caret")); } void ShaderEditor::_bind_methods() { @@ -499,7 +506,7 @@ ShaderEditor::ShaderEditor() { edit_menu->set_pos(Point2(5,-1)); edit_menu->set_text(TTR("Edit")); edit_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/undo", TTR("Undo"), KEY_MASK_CMD|KEY_Z), EDIT_UNDO); - edit_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/redo", TTR("Redo"), KEY_MASK_CMD|KEY_MASK_SHIFT|KEY_Z), EDIT_REDO); + edit_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/redo", TTR("Redo"), KEY_MASK_CMD|KEY_Y), EDIT_REDO); edit_menu->get_popup()->add_separator(); edit_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/cut", TTR("Cut"), KEY_MASK_CMD|KEY_X), EDIT_CUT); edit_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/copy", TTR("Copy"), KEY_MASK_CMD|KEY_C), EDIT_COPY); @@ -519,7 +526,7 @@ ShaderEditor::ShaderEditor() { search_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/replace", TTR("Replace.."), KEY_MASK_CMD|KEY_R), SEARCH_REPLACE); search_menu->get_popup()->add_separator(); // search_menu->get_popup()->add_item("Locate Symbol..",SEARCH_LOCATE_SYMBOL,KEY_MASK_CMD|KEY_K); - search_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/goto_line", TTR("Goto Line.."), KEY_MASK_CMD|KEY_G), SEARCH_GOTO_LINE); + search_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/goto_line", TTR("Goto Line.."), KEY_MASK_CMD|KEY_L), SEARCH_GOTO_LINE); search_menu->get_popup()->connect("item_pressed", this,"_menu_option"); diff --git a/tools/editor/plugins/shader_graph_editor_plugin.cpp b/tools/editor/plugins/shader_graph_editor_plugin.cpp index d567c8e9b3..375220051c 100644 --- a/tools/editor/plugins/shader_graph_editor_plugin.cpp +++ b/tools/editor/plugins/shader_graph_editor_plugin.cpp @@ -176,7 +176,9 @@ void GraphColorRampEdit::_input_event(const InputEvent& p_event) { void GraphColorRampEdit::_notification(int p_what){ if (p_what==NOTIFICATION_ENTER_TREE) { - picker->connect("color_changed",this,"_color_changed"); + if (!picker->is_connected("color_changed",this,"_color_changed")) { + picker->connect("color_changed",this,"_color_changed"); + } } if (p_what==NOTIFICATION_DRAW) { @@ -184,9 +186,8 @@ void GraphColorRampEdit::_notification(int p_what){ Point prev; prev.offset=0; prev.color=Color(0,0,0); - int w = get_size().x; - int h = get_size().y; + int h = get_size().y; int total_w = get_size().width-get_size().height-3; for(int i=-1;i<points.size();i++) { diff --git a/tools/editor/plugins/spatial_editor_plugin.cpp b/tools/editor/plugins/spatial_editor_plugin.cpp index 8d72178f23..a70df78697 100644 --- a/tools/editor/plugins/spatial_editor_plugin.cpp +++ b/tools/editor/plugins/spatial_editor_plugin.cpp @@ -53,8 +53,6 @@ void SpatialEditorViewport::_update_camera() { if (orthogonal) { - Size2 size = get_size(); - Size2 vpsize = Point2(cursor.distance*size.get_aspect(), cursor.distance / size.get_aspect()); //camera->set_orthogonal(size.width*cursor.distance,get_znear(),get_zfar()); camera->set_orthogonal(2 * cursor.distance, 0.1, 8192); } @@ -79,21 +77,30 @@ void SpatialEditorViewport::_update_camera() { String SpatialEditorGizmo::get_handle_name(int p_idx) const { + if (get_script_instance() && get_script_instance()->has_method("get_handle_name")) + return get_script_instance()->call("get_handle_name", p_idx); + return ""; } Variant SpatialEditorGizmo::get_handle_value(int p_idx) const{ + if (get_script_instance() && get_script_instance()->has_method("get_handle_value")) + return get_script_instance()->call("get_handle_value", p_idx); + return Variant(); } void SpatialEditorGizmo::set_handle(int p_idx,Camera *p_camera, const Point2& p_point) { + if (get_script_instance() && get_script_instance()->has_method("set_handle")) + get_script_instance()->call("set_handle", p_idx, p_camera, p_point); } void SpatialEditorGizmo::commit_handle(int p_idx,const Variant& p_restore,bool p_cancel){ - + if (get_script_instance() && get_script_instance()->has_method("commit_handle")) + get_script_instance()->call("commit_handle", p_idx, p_restore, p_cancel); } bool SpatialEditorGizmo::intersect_frustum(const Camera *p_camera,const Vector<Plane> &p_frustum) { @@ -276,10 +283,6 @@ ObjectID SpatialEditorViewport::_select_ray(const Point2& p_pos, bool p_append,b r_includes_current=false; List<_RayResult> results; - Vector3 cn=_get_camera_normal(); - Plane cplane(pos,cn.normalized()); - - float min_d=1e20; for (int i=0;i<instances.size();i++) { @@ -649,21 +652,8 @@ bool SpatialEditorViewport::_gizmo_select(const Vector2& p_screenpos,bool p_hili Vector3 ray_pos=_get_ray_pos( Vector2( p_screenpos.x, p_screenpos.y ) ); Vector3 ray=_get_ray( Vector2( p_screenpos.x, p_screenpos.y ) ); - Vector3 cn=_get_camera_normal(); - Plane cplane(ray_pos,cn.normalized()); - Transform gt = spatial_editor->get_gizmo_transform(); float gs=gizmo_scale; - /* - if (orthogonal) { - gs= cursor.distance/surface->get_size().get_aspect(); - - } else { - gs = cplane.distance_to(gt.origin); - } - - gs*=GIZMO_SCALE_DEFAULT; -*/ if (spatial_editor->get_tool_mode()==SpatialEditor::TOOL_MODE_SELECT || spatial_editor->get_tool_mode()==SpatialEditor::TOOL_MODE_MOVE) { @@ -1268,16 +1258,6 @@ void SpatialEditorViewport::_sinput(const InputEvent &p_event) { if (_edit.gizmo.is_valid()) { - Plane plane=Plane(_edit.gizmo_initial_pos,_get_camera_normal()); - - - Vector3 ray_pos=_get_ray_pos( Vector2( m.x, m.y ) ); - Vector3 ray=_get_ray( Vector2( m.x, m.y ) ); - - //Vector3 intersection; - //if (!plane.intersects_ray(ray_pos,ray,&intersection)) - // break; - _edit.gizmo->set_handle(_edit.gizmo_handle,camera,Vector2(m.x,m.y)); Variant v = _edit.gizmo->get_handle_value(_edit.gizmo_handle); String n = _edit.gizmo->get_handle_name(_edit.gizmo_handle); @@ -1658,136 +1638,89 @@ void SpatialEditorViewport::_sinput(const InputEvent &p_event) { default: {} } } break; - case InputEvent::KEY: { - const InputEventKey &k = p_event.key; if (!k.pressed) break; - switch(k.scancode) { - - case KEY_S: { - - if (_edit.mode!=TRANSFORM_NONE) { - - _edit.snap=true; - } - } break; - case KEY_7: - case KEY_KP_7: { - bool emulate_numpad = EditorSettings::get_singleton()->get("3d_editor/emulate_numpad"); - if (!emulate_numpad && k.scancode==KEY_7) - return; - cursor.y_rot=0; - if (k.mod.shift) { - cursor.x_rot=-Math_PI/2.0; - set_message(TTR("Bottom View."),2); - name=TTR("Bottom"); - _update_name(); - - } else { - cursor.x_rot=Math_PI/2.0; - set_message(TTR("Top View."),2); - name=TTR("Top"); - _update_name(); - } - } break; - case KEY_1: - case KEY_KP_1: { - bool emulate_numpad = EditorSettings::get_singleton()->get("3d_editor/emulate_numpad"); - if (!emulate_numpad && k.scancode==KEY_1) - return; - cursor.x_rot=0; - if (k.mod.shift) { - cursor.y_rot=Math_PI; - set_message(TTR("Rear View."),2); - name=TTR("Rear"); - _update_name(); - - } else { - cursor.y_rot=0; - set_message(TTR("Front View."),2); - name=TTR("Front"); - _update_name(); - } - - } break; - case KEY_3: - case KEY_KP_3: { - bool emulate_numpad = EditorSettings::get_singleton()->get("3d_editor/emulate_numpad"); - if (!emulate_numpad && k.scancode==KEY_3) - return; - cursor.x_rot=0; - if (k.mod.shift) { - cursor.y_rot=Math_PI/2.0; - set_message(TTR("Left View."),2); - name=TTR("Left"); - _update_name(); - } else { - cursor.y_rot=-Math_PI/2.0; - set_message(TTR("Right View."),2); - name=TTR("Right"); - _update_name(); - } - - } break; - case KEY_5: - case KEY_KP_5: { - bool emulate_numpad = EditorSettings::get_singleton()->get("3d_editor/emulate_numpad"); - if (!emulate_numpad && k.scancode==KEY_5) - return; - - //orthogonal = !orthogonal; - _menu_option(orthogonal?VIEW_PERSPECTIVE:VIEW_ORTHOGONAL); - _update_name(); - - - } break; - case KEY_K: { - - if (!get_selected_count() || _edit.mode!=TRANSFORM_NONE) - break; - - if (!AnimationPlayerEditor::singleton->get_key_editor()->has_keying()) { - set_message(TTR("Keying is disabled (no key inserted).")); - break; - } - - List<Node*> &selection = editor_selection->get_selected_node_list(); - - for(List<Node*>::Element *E=selection.front();E;E=E->next()) { - - Spatial *sp = E->get()->cast_to<Spatial>(); - if (!sp) - continue; - - emit_signal("transform_key_request",sp,"",sp->get_transform()); - } - - - set_message(TTR("Animation Key Inserted.")); + if (ED_IS_SHORTCUT("spatial_editor/snap", p_event)) { + if (_edit.mode != TRANSFORM_NONE) { + _edit.snap=true; + } + } + if (ED_IS_SHORTCUT("spatial_editor/bottom_view", p_event)) { + cursor.y_rot = 0; + cursor.x_rot = -Math_PI/2.0; + set_message(TTR("Bottom View."),2); + name = TTR("Bottom"); + _update_name(); + } + if (ED_IS_SHORTCUT("spatial_editor/top_view", p_event)) { + cursor.y_rot = 0; + cursor.x_rot = Math_PI/2.0; + set_message(TTR("Top View."),2); + name = TTR("Top"); + _update_name(); + } + if (ED_IS_SHORTCUT("spatial_editor/rear_view", p_event)) { + cursor.x_rot = 0; + cursor.y_rot = Math_PI; + set_message(TTR("Rear View."),2); + name = TTR("Rear"); + _update_name(); + } + if (ED_IS_SHORTCUT("spatial_editor/front_view", p_event)) { + cursor.x_rot = 0; + cursor.y_rot=0; + set_message(TTR("Front View."),2); + name=TTR("Front"); + _update_name(); + } + if (ED_IS_SHORTCUT("spatial_editor/left_view", p_event)) { + cursor.x_rot=0; + cursor.y_rot = Math_PI/2.0; + set_message(TTR("Left View."),2); + name = TTR("Left"); + _update_name(); + } + if (ED_IS_SHORTCUT("spatial_editor/right_view", p_event)) { + cursor.x_rot=0; + cursor.y_rot = -Math_PI/2.0; + set_message(TTR("Right View."),2); + name = TTR("Right"); + _update_name(); + } + if (ED_IS_SHORTCUT("spatial_editor/switch_perspective_orthogonal", p_event)) { + _menu_option(orthogonal?VIEW_PERSPECTIVE:VIEW_ORTHOGONAL); + _update_name(); + } + if (ED_IS_SHORTCUT("spatial_editor/insert_anim_key", p_event)) { + if (!get_selected_count() || _edit.mode!=TRANSFORM_NONE) + break; + if (!AnimationPlayerEditor::singleton->get_key_editor()->has_keying()) { + set_message(TTR("Keying is disabled (no key inserted).")); + break; + } - } break; + List<Node*> &selection = editor_selection->get_selected_node_list(); - case KEY_F: { + for(List<Node*>::Element *E=selection.front();E;E=E->next()) { - if (k.pressed && k.mod.shift && k.mod.control) { - _menu_option(VIEW_ALIGN_SELECTION_WITH_VIEW); - } else if (k.pressed) { - _menu_option(VIEW_CENTER_TO_SELECTION); - } + Spatial *sp = E->get()->cast_to<Spatial>(); + if (!sp) + continue; - } break; + emit_signal("transform_key_request",sp,"",sp->get_transform()); + } - case KEY_SPACE: { - if (!k.pressed) - emit_signal("toggle_maximize_view", this); - } break; + set_message(TTR("Animation Key Inserted.")); } + if (k.scancode == KEY_SPACE) { + if (!k.pressed) emit_signal("toggle_maximize_view", this); + } } break; @@ -1855,16 +1788,6 @@ void SpatialEditorViewport::_notification(int p_what) { continue; - /* - ?? - if (!se->poly_instance.is_valid()) - continue; - if (!ObjectDB::get_instance( E->key() )) { - VisualServer::get_singleton()->free( se->poly_instance ); - se->poly_instance=RID(); - continue; - } - */ VisualInstance *vi=sp->cast_to<VisualInstance>(); @@ -1902,35 +1825,6 @@ void SpatialEditorViewport::_notification(int p_what) { surface->update(); } - //grid - Vector3 grid_cam_axis=_get_camera_normal(); - /* - for(int i=0;i<3;i++) { - - - Vector3 axis; - axis[i]=1; - - bool should_be_visible= grid_enabled && (grid_enable[i] || (Math::abs(grid_cam_axis.dot(axis))>0.99 && orthogonal)); - - if (should_be_visible!=grid_visible[i]) { - - VisualServer::get_singleton()->instance_geometry_set_flag(grid_instance[i],VS::INSTANCE_FLAG_VISIBLE,should_be_visible); - grid_visible[i]=should_be_visible; - } - } - - if (last_grid_snap!=spatial_editor->get_translate_snap()) { - - - last_grid_snap=spatial_editor->get_translate_snap() - Transform gridt; - gridt.basis.scale(Vector3(last_grid_snap,last_grid_snap,last_grid_snap)); - for(int i=0;i<3;i++) - VisualServer::get_singleton()->instance_set_transform(grid_instance[i],gridt); - - }*/ - } if (p_what==NOTIFICATION_ENTER_TREE) { @@ -2470,29 +2364,28 @@ SpatialEditorViewport::SpatialEditorViewport(SpatialEditor *p_spatial_editor, Ed surface->add_child(view_menu); view_menu->set_pos( Point2(4,4)); view_menu->set_self_opacity(0.5); - - view_menu->get_popup()->add_item(TTR("Top (Num7)"),VIEW_TOP); - view_menu->get_popup()->add_item(TTR("Bottom (Shift+Num7)"),VIEW_BOTTOM); - view_menu->get_popup()->add_item(TTR("Left (Num3)"),VIEW_LEFT); - view_menu->get_popup()->add_item(TTR("Right (Shift+Num3)"),VIEW_RIGHT); - view_menu->get_popup()->add_item(TTR("Front (Num1)"),VIEW_FRONT); - view_menu->get_popup()->add_item(TTR("Rear (Shift+Num1)"),VIEW_REAR); + view_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("spatial_editor/top_view"), VIEW_TOP); + view_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("spatial_editor/bottom_view"), VIEW_BOTTOM); + view_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("spatial_editor/left_view"), VIEW_LEFT); + view_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("spatial_editor/right_view"), VIEW_RIGHT); + view_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("spatial_editor/front_view"), VIEW_FRONT); + view_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("spatial_editor/rear_view"), VIEW_REAR); view_menu->get_popup()->add_separator(); - view_menu->get_popup()->add_check_item(TTR("Perspective (Num5)"),VIEW_PERSPECTIVE); - view_menu->get_popup()->add_check_item(TTR("Orthogonal (Num5)"),VIEW_ORTHOGONAL); + view_menu->get_popup()->add_check_item(TTR("Perspective") + " (" + ED_GET_SHORTCUT("spatial_editor/switch_perspective_orthogonal")->get_as_text() + ")", VIEW_PERSPECTIVE); + view_menu->get_popup()->add_check_item(TTR("Orthogonal") + " (" + ED_GET_SHORTCUT("spatial_editor/switch_perspective_orthogonal")->get_as_text() + ")", VIEW_ORTHOGONAL); view_menu->get_popup()->set_item_checked(view_menu->get_popup()->get_item_index(VIEW_PERSPECTIVE),true); view_menu->get_popup()->add_separator(); - view_menu->get_popup()->add_check_item(TTR("Environment"),VIEW_ENVIRONMENT); + view_menu->get_popup()->add_check_shortcut(ED_SHORTCUT("spatial_editor/view_environment", TTR("Environment")), VIEW_ENVIRONMENT); view_menu->get_popup()->set_item_checked( view_menu->get_popup()->get_item_index(VIEW_ENVIRONMENT),true); view_menu->get_popup()->add_separator(); - view_menu->get_popup()->add_check_item(TTR("Audio Listener"),VIEW_AUDIO_LISTENER); + view_menu->get_popup()->add_check_shortcut(ED_SHORTCUT("spatial_editor/view_audio_listener", TTR("Audio Listener")), VIEW_AUDIO_LISTENER); view_menu->get_popup()->add_separator(); - view_menu->get_popup()->add_check_item(TTR("Gizmos"),VIEW_GIZMOS); + view_menu->get_popup()->add_check_shortcut(ED_SHORTCUT("spatial_editor/view_gizmos", TTR("Gizmos")),VIEW_GIZMOS); view_menu->get_popup()->set_item_checked( view_menu->get_popup()->get_item_index(VIEW_GIZMOS),true); view_menu->get_popup()->add_separator(); - view_menu->get_popup()->add_item(TTR("Selection (F)"),VIEW_CENTER_TO_SELECTION); - view_menu->get_popup()->add_item(TTR("Align with view (Ctrl+Shift+F)"),VIEW_ALIGN_SELECTION_WITH_VIEW); + view_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("spatial_editor/focus_selection"), VIEW_CENTER_TO_SELECTION); + view_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("spatial_editor/align_selection_with_view"), VIEW_ALIGN_SELECTION_WITH_VIEW); view_menu->get_popup()->connect("item_pressed",this,"_menu_option"); preview_camera = memnew( Button ); @@ -2613,16 +2506,9 @@ Object *SpatialEditor::_get_editor_data(Object *p_what) { si->sbox_instance=VisualServer::get_singleton()->instance_create2(selection_box->get_rid(),sp->get_world()->get_scenario()); VS::get_singleton()->instance_geometry_set_cast_shadows_setting(si->sbox_instance, VS::SHADOW_CASTING_SETTING_OFF); - RID inst = sp->call("_get_visual_instance_rid"); - -// if (inst.is_valid()) -// si->aabb = VisualServer::get_singleton()->instance_get_base_aabb(inst); - - if (get_tree()->is_editor_hint()) editor->call("edit_node",sp); - return si; } @@ -3951,6 +3837,19 @@ SpatialEditor::SpatialEditor(EditorNode *p_editor) { hbc_menu->add_child(vs); + ED_SHORTCUT("spatial_editor/bottom_view", TTR("Bottom View"), KEY_MASK_ALT+KEY_KP_7); + ED_SHORTCUT("spatial_editor/top_view", TTR("Top View"), KEY_KP_7); + ED_SHORTCUT("spatial_editor/rear_view", TTR("Rear View"), KEY_MASK_ALT+KEY_KP_1); + ED_SHORTCUT("spatial_editor/front_view", TTR("Front View"), KEY_KP_1); + ED_SHORTCUT("spatial_editor/left_view", TTR("Left View"), KEY_MASK_ALT+KEY_KP_3); + ED_SHORTCUT("spatial_editor/right_view", TTR("Right View"), KEY_KP_3); + ED_SHORTCUT("spatial_editor/switch_perspective_orthogonal", TTR("Switch Perspective/Orthogonal view"), KEY_KP_5); + ED_SHORTCUT("spatial_editor/snap", TTR("Snap"), KEY_S); + ED_SHORTCUT("spatial_editor/insert_anim_key", TTR("Insert Animation Key"), KEY_K); + ED_SHORTCUT("spatial_editor/focus_selection", TTR("Focus Selection"), KEY_F); + ED_SHORTCUT("spatial_editor/align_selection_with_view", TTR("Align Selection With View"), KEY_MASK_ALT+KEY_MASK_CMD+KEY_F); + + PopupMenu *p; transform_menu = memnew( MenuButton ); @@ -3958,13 +3857,13 @@ SpatialEditor::SpatialEditor(EditorNode *p_editor) { hbc_menu->add_child( transform_menu ); p = transform_menu->get_popup(); - p->add_check_item(TTR("Use Snap"),MENU_TRANSFORM_USE_SNAP); - p->add_item(TTR("Configure Snap.."),MENU_TRANSFORM_CONFIGURE_SNAP); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/use_snap", TTR("Use Snap")), MENU_TRANSFORM_USE_SNAP); + p->add_shortcut(ED_SHORTCUT("spatial_editor/configure_snap", TTR("Configure Snap..")), MENU_TRANSFORM_CONFIGURE_SNAP); p->add_separator(); - p->add_check_item(TTR("Local Coords"),MENU_TRANSFORM_LOCAL_COORDS); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/local_coords", TTR("Local Coords")), MENU_TRANSFORM_LOCAL_COORDS); //p->set_item_checked(p->get_item_count()-1,true); p->add_separator(); - p->add_item(TTR("Transform Dialog.."),MENU_TRANSFORM_DIALOG); + p->add_shortcut(ED_SHORTCUT("spatial_editor/transform_dialog", TTR("Transform Dialog..")), MENU_TRANSFORM_DIALOG); p->connect("item_pressed", this,"_menu_item_pressed"); @@ -3975,27 +3874,27 @@ SpatialEditor::SpatialEditor(EditorNode *p_editor) { p = view_menu->get_popup(); - p->add_check_item(TTR("Use Default Light"),MENU_VIEW_USE_DEFAULT_LIGHT); - p->add_check_item(TTR("Use Default sRGB"),MENU_VIEW_USE_DEFAULT_SRGB); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/use_default_light", TTR("Use Default Light")), MENU_VIEW_USE_DEFAULT_LIGHT); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/use_default_srgb", TTR("Use Default sRGB")), MENU_VIEW_USE_DEFAULT_SRGB); p->add_separator(); - p->add_check_item(TTR("1 Viewport"),MENU_VIEW_USE_1_VIEWPORT,KEY_MASK_CMD+KEY_1); - p->add_check_item(TTR("2 Viewports"),MENU_VIEW_USE_2_VIEWPORTS,KEY_MASK_CMD+KEY_2); - p->add_check_item(TTR("2 Viewports (Alt)"),MENU_VIEW_USE_2_VIEWPORTS_ALT,KEY_MASK_SHIFT+KEY_MASK_CMD+KEY_2); - p->add_check_item(TTR("3 Viewports"),MENU_VIEW_USE_3_VIEWPORTS,KEY_MASK_CMD+KEY_3); - p->add_check_item(TTR("3 Viewports (Alt)"),MENU_VIEW_USE_3_VIEWPORTS_ALT,KEY_MASK_SHIFT+KEY_MASK_CMD+KEY_3); - p->add_check_item(TTR("4 Viewports"),MENU_VIEW_USE_4_VIEWPORTS,KEY_MASK_CMD+KEY_4); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/1_viewport", TTR("1 Viewport"), KEY_MASK_CMD+KEY_1), MENU_VIEW_USE_1_VIEWPORT); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/2_viewports", TTR("2 Viewports"), KEY_MASK_CMD+KEY_2), MENU_VIEW_USE_2_VIEWPORTS); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/2_viewports_alt", TTR("2 Viewports (Alt)"), KEY_MASK_ALT+KEY_MASK_CMD+KEY_2), MENU_VIEW_USE_2_VIEWPORTS_ALT); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/3_viewports", TTR("3 Viewports"),KEY_MASK_CMD+KEY_3), MENU_VIEW_USE_3_VIEWPORTS); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/3_viewports_alt", TTR("3 Viewports (Alt)"), KEY_MASK_ALT+KEY_MASK_CMD+KEY_3), MENU_VIEW_USE_3_VIEWPORTS_ALT); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/4_viewports", TTR("4 Viewports"), KEY_MASK_CMD+KEY_4), MENU_VIEW_USE_4_VIEWPORTS); p->add_separator(); - p->add_check_item(TTR("Display Normal"),MENU_VIEW_DISPLAY_NORMAL); - p->add_check_item(TTR("Display Wireframe"),MENU_VIEW_DISPLAY_WIREFRAME); - p->add_check_item(TTR("Display Overdraw"),MENU_VIEW_DISPLAY_OVERDRAW); - p->add_check_item(TTR("Display Shadeless"),MENU_VIEW_DISPLAY_SHADELESS); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/display_normal", TTR("Display Normal")), MENU_VIEW_DISPLAY_NORMAL); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/display_wireframe", TTR("Display Wireframe")), MENU_VIEW_DISPLAY_WIREFRAME); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/display_overdraw", TTR("Display Overdraw")), MENU_VIEW_DISPLAY_OVERDRAW); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/display_shadeless", TTR("Display Shadeless")), MENU_VIEW_DISPLAY_SHADELESS); p->add_separator(); - p->add_check_item(TTR("View Origin"),MENU_VIEW_ORIGIN); - p->add_check_item(TTR("View Grid"),MENU_VIEW_GRID); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/view_origin", TTR("View Origin")), MENU_VIEW_ORIGIN); + p->add_check_shortcut(ED_SHORTCUT("spatial_editor/view_grid", TTR("View Grid")), MENU_VIEW_GRID); p->add_separator(); - p->add_item(TTR("Settings"),MENU_VIEW_CAMERA_SETTINGS); + p->add_shortcut(ED_SHORTCUT("spatial_editor/settings", TTR("Settings")), MENU_VIEW_CAMERA_SETTINGS); p->set_item_checked( p->get_item_index(MENU_VIEW_USE_DEFAULT_LIGHT), true ); diff --git a/tools/editor/plugins/sprite_frames_editor_plugin.cpp b/tools/editor/plugins/sprite_frames_editor_plugin.cpp index 4f59287994..e29a0c8d52 100644 --- a/tools/editor/plugins/sprite_frames_editor_plugin.cpp +++ b/tools/editor/plugins/sprite_frames_editor_plugin.cpp @@ -31,7 +31,7 @@ #include "io/resource_loader.h" #include "globals.h" #include "tools/editor/editor_settings.h" - +#include "scene/3d/sprite_3d.h" @@ -355,6 +355,35 @@ void SpriteFramesEditor::_animation_select() { } + +static void _find_anim_sprites(Node* p_node,List<Node*> *r_nodes,Ref<SpriteFrames> p_sfames) { + + Node *edited = EditorNode::get_singleton()->get_edited_scene(); + if (!edited) + return; + if (p_node!=edited && p_node->get_owner()!=edited) + return; + + { + AnimatedSprite *as = p_node->cast_to<AnimatedSprite>(); + if (as && as->get_sprite_frames()==p_sfames) { + r_nodes->push_back(p_node); + } + } + + { + AnimatedSprite3D *as = p_node->cast_to<AnimatedSprite3D>(); + if (as && as->get_sprite_frames()==p_sfames) { + r_nodes->push_back(p_node); + } + } + + for(int i=0;i<p_node->get_child_count();i++) { + _find_anim_sprites(p_node->get_child(i),r_nodes,p_sfames); + } + +} + void SpriteFramesEditor::_animation_name_edited(){ if (updating) @@ -381,9 +410,24 @@ void SpriteFramesEditor::_animation_name_edited(){ name=new_name+" "+itos(counter); } + List<Node*> nodes; + _find_anim_sprites(EditorNode::get_singleton()->get_edited_scene(),&nodes,Ref<SpriteFrames>(frames)); + undo_redo->create_action(TTR("Rename Animation")); undo_redo->add_do_method(frames,"rename_animation",edited_anim,name); undo_redo->add_undo_method(frames,"rename_animation",name,edited_anim); + + for(List<Node*>::Element *E=nodes.front();E;E=E->next()) { + + String current = E->get()->call("get_animation"); + if (current!=edited_anim) + continue; + + undo_redo->add_do_method(E->get(),"set_animation",name); + undo_redo->add_undo_method(E->get(),"set_animation",edited_anim); + + } + undo_redo->add_do_method(this,"_update_library"); undo_redo->add_undo_method(this,"_update_library"); @@ -406,12 +450,28 @@ void SpriteFramesEditor::_animation_add(){ name=new_name+" "+itos(counter); } + List<Node*> nodes; + _find_anim_sprites(EditorNode::get_singleton()->get_edited_scene(),&nodes,Ref<SpriteFrames>(frames)); + + undo_redo->create_action(TTR("Add Animation")); undo_redo->add_do_method(frames,"add_animation",name); undo_redo->add_undo_method(frames,"remove_animation",name); undo_redo->add_do_method(this,"_update_library"); undo_redo->add_undo_method(this,"_update_library"); + + for(List<Node*>::Element *E=nodes.front();E;E=E->next()) { + + String current = E->get()->call("get_animation"); + if (frames->has_animation(current)) + continue; + + undo_redo->add_do_method(E->get(),"set_animation",name); + undo_redo->add_undo_method(E->get(),"set_animation",current); + + } + edited_anim=new_name; undo_redo->commit_action(); @@ -426,6 +486,7 @@ void SpriteFramesEditor::_animation_remove(){ if (!frames->has_animation(edited_anim)) return; + undo_redo->create_action(TTR("Remove Animation")); undo_redo->add_do_method(frames,"remove_animation",edited_anim); undo_redo->add_undo_method(frames,"add_animation",edited_anim); diff --git a/tools/editor/plugins/texture_region_editor_plugin.cpp b/tools/editor/plugins/texture_region_editor_plugin.cpp index 57db19b736..63d8e2e1cf 100644 --- a/tools/editor/plugins/texture_region_editor_plugin.cpp +++ b/tools/editor/plugins/texture_region_editor_plugin.cpp @@ -29,21 +29,30 @@ /* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ /*************************************************************************/ +#include "core/core_string_names.h" #include "texture_region_editor_plugin.h" #include "scene/gui/check_box.h" #include "os/input.h" #include "os/keyboard.h" +void draw_margin_line(Control *edit_draw, Vector2 from, Vector2 to){ + Vector2 line = (to-from).normalized() * 10; + while ((to - from).length_squared() > 200) { + edit_draw->draw_line(from, from + line,Color(0.97, 0.2, 0.2),2); + from += line*2; + } +} + void TextureRegionEditor::_region_draw() { Ref<Texture> base_tex = NULL; - if(node_type == "Sprite" && node_sprite) + if(node_sprite) base_tex = node_sprite->get_texture(); - else if(node_type == "Patch9Frame" && node_patch9) + else if(node_patch9) base_tex = node_patch9->get_texture(); - else if(node_type == "StyleBoxTexture" && obj_styleBox) + else if(obj_styleBox.is_valid()) base_tex = obj_styleBox->get_texture(); - else if(node_type == "AtlasTexture" && atlas_tex) + else if(atlas_tex.is_valid()) base_tex = atlas_tex->get_atlas(); if (base_tex.is_null()) return; @@ -57,29 +66,63 @@ void TextureRegionEditor::_region_draw() edit_draw->draw_texture(base_tex,Point2()); VS::get_singleton()->canvas_item_add_set_transform(edit_draw->get_canvas_item(),Matrix32()); - if (snap_show_grid) { + if (snap_mode == SNAP_GRID) { Size2 s = edit_draw->get_size(); int last_cell; if (snap_step.x!=0) { - for(int i=0;i<s.width;i++) { - int cell = Math::fast_ftoi(Math::floor((mtx.affine_inverse().xform(Vector2(i,0)).x-snap_offset.x)/snap_step.x)); - if (i==0) + if (snap_separation.x == 0) + for(int i=0;i<s.width;i++) { + int cell = Math::fast_ftoi(Math::floor((mtx.affine_inverse().xform(Vector2(i,0)).x-snap_offset.x)/snap_step.x)); + if (i==0) + last_cell=cell; + if (last_cell!=cell) + edit_draw->draw_line(Point2(i,0),Point2(i,s.height),Color(0.3,0.7,1,0.3)); last_cell=cell; - if (last_cell!=cell) - edit_draw->draw_line(Point2(i,0),Point2(i,s.height),Color(0.3,0.7,1,0.3)); - last_cell=cell; - } + } + else + for(int i=0;i<s.width;i++) { + int cell = Math::fast_ftoi(Math::floor((mtx.affine_inverse().xform(Vector2(i,0)).x-snap_offset.x)/(snap_step.x+snap_separation.x))); + if (i==0) + last_cell=cell; + if (last_cell!=cell) + edit_draw->draw_rect(Rect2(i-snap_separation.x*draw_zoom,0,snap_separation.x*draw_zoom,s.height),Color(0.3,0.7,1,0.3)); + last_cell=cell; + } } if (snap_step.y!=0) { - for(int i=0;i<s.height;i++) { - int cell = Math::fast_ftoi(Math::floor((mtx.affine_inverse().xform(Vector2(0,i)).y-snap_offset.y)/snap_step.y)); - if (i==0) + if (snap_separation.y == 0) + for(int i=0;i<s.height;i++) { + int cell = Math::fast_ftoi(Math::floor((mtx.affine_inverse().xform(Vector2(0,i)).y-snap_offset.y)/snap_step.y)); + if (i==0) + last_cell=cell; + if (last_cell!=cell) + edit_draw->draw_line(Point2(0,i),Point2(s.width,i),Color(0.3,0.7,1,0.3)); last_cell=cell; - if (last_cell!=cell) - edit_draw->draw_line(Point2(0,i),Point2(s.width,i),Color(0.3,0.7,1,0.3)); - last_cell=cell; + } + else + for(int i=0;i<s.height;i++) { + int cell = Math::fast_ftoi(Math::floor((mtx.affine_inverse().xform(Vector2(0,i)).y-snap_offset.y)/(snap_step.y+snap_separation.y))); + if (i==0) + last_cell=cell; + if (last_cell!=cell) + edit_draw->draw_rect(Rect2(0,i-snap_separation.y*draw_zoom,s.width,snap_separation.y*draw_zoom),Color(0.3,0.7,1,0.3)); + last_cell=cell; + } + } + } else if (snap_mode == SNAP_AUTOSLICE) { + for (List<Rect2>::Element *E = autoslice_cache.front();E;E=E->next()) { + Rect2 r = E->get(); + Vector2 endpoints[4]={ + mtx.basis_xform(r.pos), + mtx.basis_xform(r.pos+Vector2(r.size.x,0)), + mtx.basis_xform(r.pos+r.size), + mtx.basis_xform(r.pos+Vector2(0,r.size.y)) + }; + for(int i=0;i<4;i++) { + int next = (i+1)%4; + edit_draw->draw_line(endpoints[i]-draw_ofs, endpoints[next]-draw_ofs, Color(0.3,0.7,1,1) , 2); } } } @@ -96,8 +139,6 @@ void TextureRegionEditor::_region_draw() mtx.basis_xform(rect.pos+Vector2(0,rect.size.y)) }; Color color(0.9,0.5,0.5); - if(this->editing_region == REGION_PATCH_MARGIN) - color = Color(0.21, 0.79, 0.31); for(int i=0;i<4;i++) { int prev = (i+3)%4; @@ -108,12 +149,14 @@ void TextureRegionEditor::_region_draw() edit_draw->draw_line(endpoints[i]-draw_ofs, endpoints[next]-draw_ofs, color , 2); - edit_draw->draw_texture(select_handle,(endpoints[i]+ofs-(select_handle->get_size()/2)).floor()-draw_ofs); + if (snap_mode != SNAP_AUTOSLICE) + edit_draw->draw_texture(select_handle,(endpoints[i]+ofs-(select_handle->get_size()/2)).floor()-draw_ofs); ofs = (endpoints[next]-endpoints[i])/2; ofs += (endpoints[next]-endpoints[i]).tangent().normalized()*(select_handle->get_size().width/2); - edit_draw->draw_texture(select_handle,(endpoints[i]+ofs-(select_handle->get_size()/2)).floor()-draw_ofs); + if (snap_mode != SNAP_AUTOSLICE) + edit_draw->draw_texture(select_handle,(endpoints[i]+ofs-(select_handle->get_size()/2)).floor()-draw_ofs); scroll_rect.expand_to(endpoints[i]); } @@ -132,6 +175,31 @@ void TextureRegionEditor::_region_draw() vscroll->set_val(draw_ofs.y); vscroll->set_step(0.001); updating_scroll=false; + + float margins[4]; + if (node_patch9 || obj_styleBox.is_valid()) { + if (node_patch9) { + margins[0] = node_patch9->get_patch_margin(MARGIN_TOP); + margins[1] = node_patch9->get_patch_margin(MARGIN_BOTTOM); + margins[2] = node_patch9->get_patch_margin(MARGIN_LEFT); + margins[3] = node_patch9->get_patch_margin(MARGIN_RIGHT); + } else if (obj_styleBox.is_valid()) { + margins[0] = obj_styleBox->get_margin_size(MARGIN_TOP); + margins[1] = obj_styleBox->get_margin_size(MARGIN_BOTTOM); + margins[2] = obj_styleBox->get_margin_size(MARGIN_LEFT); + margins[3] = obj_styleBox->get_margin_size(MARGIN_RIGHT); + } + Vector2 pos[4] = { + mtx.basis_xform(Vector2(0,margins[0]))+Vector2(0,endpoints[0].y-draw_ofs.y), + -mtx.basis_xform(Vector2(0,margins[1]))+Vector2(0,endpoints[2].y-draw_ofs.y), + mtx.basis_xform(Vector2(margins[2],0))+Vector2(endpoints[0].x-draw_ofs.x,0), + -mtx.basis_xform(Vector2(margins[3],0))+Vector2(endpoints[2].x-draw_ofs.x,0)}; + + draw_margin_line(edit_draw,pos[0],pos[0]+Vector2(edit_draw->get_size().x,0)); + draw_margin_line(edit_draw,pos[1],pos[1]+Vector2(edit_draw->get_size().x,0)); + draw_margin_line(edit_draw,pos[2],pos[2]+Vector2(0,edit_draw->get_size().y)); + draw_margin_line(edit_draw,pos[3],pos[3]+Vector2(0,edit_draw->get_size().y)); + } } void TextureRegionEditor::_region_input(const InputEvent& p_input) @@ -153,84 +221,174 @@ void TextureRegionEditor::_region_input(const InputEvent& p_input) if (p_input.type==InputEvent::MOUSE_BUTTON) { - const InputEventMouseButton &mb=p_input.mouse_button; if (mb.button_index==BUTTON_LEFT) { - if (mb.pressed) { - - drag_from=mtx.affine_inverse().xform(Vector2(mb.x,mb.y)); - drag_from=snap_point(drag_from); - drag=true; - if(node_type == "Sprite" && node_sprite ) - rect_prev=node_sprite->get_region_rect(); - else if(node_type == "AtlasTexture" && atlas_tex) - rect_prev=atlas_tex->get_region(); - else if(node_type == "Patch9Frame" && node_patch9) - rect_prev=node_patch9->get_region_rect(); - else if(node_type == "StyleBoxTexture" && obj_styleBox) - rect_prev=obj_styleBox->get_region_rect(); - - drag_index=-1; - for(int i=0;i<8;i++) { - - Vector2 tuv=endpoints[i]; - if (tuv.distance_to(Vector2(mb.x,mb.y))<8) { - drag_index=i; - creating = false; + if (node_patch9 || obj_styleBox.is_valid()) { + edited_margin = -1; + float margins[4]; + if (node_patch9) { + margins[0] = node_patch9->get_patch_margin(MARGIN_TOP); + margins[1] = node_patch9->get_patch_margin(MARGIN_BOTTOM); + margins[2] = node_patch9->get_patch_margin(MARGIN_LEFT); + margins[3] = node_patch9->get_patch_margin(MARGIN_RIGHT); + } else if (obj_styleBox.is_valid()) { + margins[0] = obj_styleBox->get_margin_size(MARGIN_TOP); + margins[1] = obj_styleBox->get_margin_size(MARGIN_BOTTOM); + margins[2] = obj_styleBox->get_margin_size(MARGIN_LEFT); + margins[3] = obj_styleBox->get_margin_size(MARGIN_RIGHT); + } + Vector2 pos[4] = { + mtx.basis_xform(rect.pos+Vector2(0,margins[0]))-draw_ofs, + mtx.basis_xform(rect.pos+rect.size-Vector2(0,margins[1]))-draw_ofs, + mtx.basis_xform(rect.pos+Vector2(margins[2],0))-draw_ofs, + mtx.basis_xform(rect.pos+rect.size-Vector2(margins[3],0))-draw_ofs}; + if (Math::abs(mb.y - pos[0].y) < 8) { + edited_margin = 0; + prev_margin = margins[0]; + } else if (Math::abs(mb.y - pos[1].y) < 8) { + edited_margin = 1; + prev_margin = margins[1]; + } else if (Math::abs(mb.x - pos[2].x) < 8) { + edited_margin = 2; + prev_margin = margins[2]; + } else if (Math::abs(mb.x - pos[3].x) < 8) { + edited_margin = 3; + prev_margin = margins[3]; + } + if (edited_margin >= 0) { + drag_from=Vector2(mb.x,mb.y); + drag=true; } } + if ( edited_margin < 0 && snap_mode == SNAP_AUTOSLICE) { + Vector2 point = mtx.affine_inverse().xform(Vector2(mb.x,mb.y)); + for (List<Rect2>::Element *E=autoslice_cache.front();E;E=E->next()) { + if (E->get().has_point(point)) { + rect = E->get(); + if (Input::get_singleton()->is_key_pressed(KEY_CONTROL)&&!(Input::get_singleton()->is_key_pressed(KEY_SHIFT|KEY_ALT))) { + Rect2 r; + if(node_sprite ) + r=node_sprite->get_region_rect(); + else if(node_patch9) + r=node_patch9->get_region_rect(); + else if(obj_styleBox.is_valid()) + r=obj_styleBox->get_region_rect(); + else if(atlas_tex.is_valid()) + r =atlas_tex->get_region(); + rect.expand_to(r.pos); + rect.expand_to(r.pos+r.size); + } + undo_redo->create_action("Set Region Rect"); + if(node_sprite){ + undo_redo->add_do_method(node_sprite ,"set_region_rect",rect); + undo_redo->add_undo_method(node_sprite,"set_region_rect",node_sprite->get_region_rect()); + } else if(node_patch9){ + undo_redo->add_do_method(node_patch9 ,"set_region_rect",rect); + undo_redo->add_undo_method(node_patch9,"set_region_rect",node_patch9->get_region_rect()); + } else if (obj_styleBox.is_valid()) { + undo_redo->add_do_method(obj_styleBox.ptr(),"set_region_rect",rect); + undo_redo->add_undo_method(obj_styleBox.ptr(),"set_region_rect",obj_styleBox->get_region_rect()); + } else if (atlas_tex.is_valid()) { + 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(edit_draw,"update"); + undo_redo->add_undo_method(edit_draw,"update"); + undo_redo->commit_action(); + break; + } + } + } else if (edited_margin < 0) { + drag_from=mtx.affine_inverse().xform(Vector2(mb.x,mb.y)); + if (snap_mode == SNAP_PIXEL) + drag_from = drag_from.snapped(Vector2(1,1)); + else if (snap_mode == SNAP_GRID) + drag_from=snap_point(drag_from); + drag=true; + if(node_sprite ) + rect_prev=node_sprite->get_region_rect(); + else if(node_patch9) + rect_prev=node_patch9->get_region_rect(); + else if(obj_styleBox.is_valid()) + rect_prev=obj_styleBox->get_region_rect(); + else if(atlas_tex.is_valid()) + rect_prev=atlas_tex->get_region(); + + for (int i=0; i<8;i++) { + Vector2 tuv=endpoints[i]; + if (tuv.distance_to(Vector2(mb.x,mb.y))<8) { + drag_index=i; + } + } - if (drag_index==-1) { - creating = true; - rect = Rect2(drag_from,Size2()); + if (drag_index==-1) { + creating = true; + rect = Rect2(drag_from,Size2()); + } } } else if (drag) { - if(editing_region == REGION_TEXTURE_REGION) { - undo_redo->create_action("Set region_rect"); - if(node_type == "Sprite" && node_sprite ){ + if (edited_margin >= 0) { + undo_redo->create_action("Set Margin"); + static Margin m[4] = {MARGIN_TOP,MARGIN_BOTTOM,MARGIN_LEFT,MARGIN_RIGHT}; + if (node_patch9) { + undo_redo->add_do_method(node_patch9 ,"set_patch_margin",m[edited_margin],node_patch9->get_patch_margin(m[edited_margin])); + undo_redo->add_undo_method(node_patch9,"set_patch_margin",m[edited_margin],prev_margin); + } else if (obj_styleBox.is_valid()) { + undo_redo->add_do_method(obj_styleBox.ptr() ,"set_margin_size",m[edited_margin],obj_styleBox->get_margin_size(m[edited_margin])); + undo_redo->add_undo_method(obj_styleBox.ptr(),"set_margin_size",m[edited_margin],prev_margin); + obj_styleBox->emit_signal(CoreStringNames::get_singleton()->changed); + } + edited_margin = -1; + } else { + undo_redo->create_action("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); } - else if(node_type == "AtlasTexture" && atlas_tex ){ - undo_redo->add_do_method(atlas_tex ,"set_region",atlas_tex->get_region()); - undo_redo->add_undo_method(atlas_tex,"set_region",rect_prev); + else if(atlas_tex.is_valid()){ + undo_redo->add_do_method(atlas_tex.ptr() ,"set_region",atlas_tex->get_region()); + undo_redo->add_undo_method(atlas_tex.ptr(),"set_region",rect_prev); } - else if(node_type == "Patch9Frame" && node_patch9){ + else if(node_patch9){ + } else if(node_patch9){ undo_redo->add_do_method(node_patch9 ,"set_region_rect",node_patch9->get_region_rect()); undo_redo->add_undo_method(node_patch9,"set_region_rect",rect_prev); + } else if (obj_styleBox.is_valid()) { + undo_redo->add_do_method(obj_styleBox.ptr() ,"set_region_rect",obj_styleBox->get_region_rect()); + undo_redo->add_undo_method(obj_styleBox.ptr(),"set_region_rect",rect_prev); } - else if(node_type == "StyleBoxTexture" && obj_styleBox){ - undo_redo->add_do_method(obj_styleBox ,"set_region_rect",obj_styleBox->get_region_rect()); - undo_redo->add_undo_method(obj_styleBox,"set_region_rect",rect_prev); - } - undo_redo->add_do_method(edit_draw,"update"); - undo_redo->add_undo_method(edit_draw,"update"); - undo_redo->commit_action(); + drag_index = -1; } + undo_redo->add_do_method(edit_draw,"update"); + undo_redo->add_undo_method(edit_draw,"update"); + undo_redo->commit_action(); drag=false; + creating = false; } } else if (mb.button_index==BUTTON_RIGHT && mb.pressed) { if (drag) { drag=false; - apply_rect(rect_prev); - rect=rect_prev; - edit_draw->update(); + if (edited_margin >= 0) { + static Margin m[4] = {MARGIN_TOP,MARGIN_BOTTOM,MARGIN_LEFT,MARGIN_RIGHT}; + if (node_patch9) + node_patch9->set_patch_margin(m[edited_margin],prev_margin); + if (obj_styleBox.is_valid()) + obj_styleBox->set_margin_size(m[edited_margin],prev_margin); + edited_margin = -1; + } else { + apply_rect(rect_prev); + rect=rect_prev; + edit_draw->update(); + drag_index = -1; + } } - - } else if (mb.button_index==BUTTON_WHEEL_UP && mb.pressed) { - - zoom->set_val( zoom->get_val()/0.9 ); - } else if (mb.button_index==BUTTON_WHEEL_DOWN && mb.pressed) { - - zoom->set_val( zoom->get_val()*0.9); } - } else if (p_input.type==InputEvent::MOUSE_MOTION) { const InputEventMouseMotion &mm=p_input.mouse_motion; @@ -243,67 +401,89 @@ void TextureRegionEditor::_region_input(const InputEvent& p_input) } else if (drag) { - Vector2 new_pos = mtx.affine_inverse().xform(Vector2(mm.x,mm.y)); - new_pos = snap_point(new_pos); - - if (creating) { - rect = Rect2(drag_from,Size2()); - rect.expand_to(new_pos); - apply_rect(rect); - edit_draw->update(); - return; - } - - switch(drag_index) { - case 0: { - Vector2 p=rect_prev.pos+rect_prev.size; - rect = Rect2(p,Size2()); - rect.expand_to(new_pos); - apply_rect(rect); - } break; - case 1: { - Vector2 p=rect_prev.pos+Vector2(0,rect_prev.size.y); - rect = Rect2(p,Size2(rect_prev.size.x,0)); - rect.expand_to(new_pos); - apply_rect(rect); - } break; - case 2: { - Vector2 p=rect_prev.pos+Vector2(0,rect_prev.size.y); - rect = Rect2(p,Size2()); - rect.expand_to(new_pos); - apply_rect(rect); - } break; - case 3: { - Vector2 p=rect_prev.pos; - rect = Rect2(p,Size2(0,rect_prev.size.y)); - rect.expand_to(new_pos); - apply_rect(rect); - } break; - case 4: { - Vector2 p=rect_prev.pos; - rect = Rect2(p,Size2()); - rect.expand_to(new_pos); - apply_rect(rect); - } break; - case 5: { - Vector2 p=rect_prev.pos; - rect = Rect2(p,Size2(rect_prev.size.x,0)); - rect.expand_to(new_pos); - apply_rect(rect); - } break; - case 6: { - Vector2 p=rect_prev.pos+Vector2(rect_prev.size.x,0); - rect = Rect2(p,Size2()); - rect.expand_to(new_pos); - apply_rect(rect); - } break; - case 7: { - Vector2 p=rect_prev.pos+Vector2(rect_prev.size.x,0); - rect = Rect2(p,Size2(0,rect_prev.size.y)); + if (edited_margin >= 0) { + float new_margin; + if (edited_margin == 0) + new_margin = prev_margin + (mm.y-drag_from.y) / draw_zoom; + else if (edited_margin == 1) + new_margin = prev_margin - (mm.y-drag_from.y) / draw_zoom; + else if (edited_margin == 2) + new_margin = prev_margin + (mm.x-drag_from.x) / draw_zoom; + else if (edited_margin == 3) + new_margin = prev_margin - (mm.x-drag_from.x) / draw_zoom; + if (new_margin < 0) + new_margin = 0; + static Margin m[4] = {MARGIN_TOP,MARGIN_BOTTOM,MARGIN_LEFT,MARGIN_RIGHT}; + if (node_patch9) + node_patch9->set_patch_margin(m[edited_margin],new_margin); + if (obj_styleBox.is_valid()) + obj_styleBox->set_margin_size(m[edited_margin],new_margin); + } else { + Vector2 new_pos = mtx.affine_inverse().xform(Vector2(mm.x,mm.y)); + if (snap_mode == SNAP_PIXEL) + new_pos = new_pos.snapped(Vector2(1,1)); + else if (snap_mode == SNAP_GRID) + new_pos=snap_point(new_pos); + + if (creating) { + rect = Rect2(drag_from,Size2()); rect.expand_to(new_pos); apply_rect(rect); - } break; + edit_draw->update(); + return; + } + switch(drag_index) { + case 0: { + Vector2 p=rect_prev.pos+rect_prev.size; + rect = Rect2(p,Size2()); + rect.expand_to(new_pos); + apply_rect(rect); + } break; + case 1: { + Vector2 p=rect_prev.pos+Vector2(0,rect_prev.size.y); + rect = Rect2(p,Size2(rect_prev.size.x,0)); + rect.expand_to(new_pos); + apply_rect(rect); + } break; + case 2: { + Vector2 p=rect_prev.pos+Vector2(0,rect_prev.size.y); + rect = Rect2(p,Size2()); + rect.expand_to(new_pos); + apply_rect(rect); + } break; + case 3: { + Vector2 p=rect_prev.pos; + rect = Rect2(p,Size2(0,rect_prev.size.y)); + rect.expand_to(new_pos); + apply_rect(rect); + } break; + case 4: { + Vector2 p=rect_prev.pos; + rect = Rect2(p,Size2()); + rect.expand_to(new_pos); + apply_rect(rect); + } break; + case 5: { + Vector2 p=rect_prev.pos; + rect = Rect2(p,Size2(rect_prev.size.x,0)); + rect.expand_to(new_pos); + apply_rect(rect); + } break; + case 6: { + Vector2 p=rect_prev.pos+Vector2(rect_prev.size.x,0); + rect = Rect2(p,Size2()); + rect.expand_to(new_pos); + apply_rect(rect); + } break; + case 7: { + Vector2 p=rect_prev.pos+Vector2(rect_prev.size.x,0); + rect = Rect2(p,Size2(0,rect_prev.size.y)); + rect.expand_to(new_pos); + apply_rect(rect); + } break; + + } } edit_draw->update(); } @@ -318,19 +498,21 @@ void TextureRegionEditor::_scroll_changed(float) draw_ofs.x=hscroll->get_val(); draw_ofs.y=vscroll->get_val(); - draw_zoom=zoom->get_val(); - print_line("_scroll_changed"); edit_draw->update(); } -void TextureRegionEditor::_set_use_snap(bool p_use) +void TextureRegionEditor::_set_snap_mode(int p_mode) { - use_snap=p_use; -} + 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(); + else + hb_grid->hide(); -void TextureRegionEditor::_set_show_grid(bool p_show) -{ - snap_show_grid=p_show; edit_draw->update(); } @@ -358,42 +540,59 @@ void TextureRegionEditor::_set_snap_step_y(float p_val) edit_draw->update(); } -void TextureRegionEditor::apply_rect(const Rect2& rect){ +void TextureRegionEditor::_set_snap_sep_x(float p_val) +{ + snap_separation.x = p_val; + edit_draw->update(); +} - if(this->editing_region == REGION_TEXTURE_REGION) { - if(node_sprite) - node_sprite->set_region_rect(rect); - else if(node_patch9) - node_patch9->set_region_rect(rect); - else if(obj_styleBox) - obj_styleBox->set_region_rect(rect); - else if(atlas_tex) - atlas_tex->set_region(rect); +void TextureRegionEditor::_set_snap_sep_y(float p_val) +{ + snap_separation.y = p_val; + edit_draw->update(); +} + +void TextureRegionEditor::_zoom_in() +{ + if (draw_zoom < 8) { + draw_zoom *= 2; + edit_draw->update(); } - else if(this->editing_region == REGION_PATCH_MARGIN) { - if(node_patch9) { - node_patch9->set_patch_margin(MARGIN_LEFT, rect.pos.x - tex_region.pos.x); - node_patch9->set_patch_margin(MARGIN_RIGHT, tex_region.pos.x+tex_region.size.width-(rect.pos.x+rect.size.width)); - node_patch9->set_patch_margin(MARGIN_TOP, rect.pos.y - tex_region.pos.y); - node_patch9->set_patch_margin(MARGIN_BOTTOM, tex_region.pos.y+tex_region.size.height-(rect.pos.y+rect.size.height)); - } - else if(obj_styleBox) { - obj_styleBox->set_margin_size(MARGIN_LEFT, rect.pos.x - tex_region.pos.x); - obj_styleBox->set_margin_size(MARGIN_RIGHT, tex_region.pos.x+tex_region.size.width-(rect.pos.x+rect.size.width)); - obj_styleBox->set_margin_size(MARGIN_TOP, rect.pos.y - tex_region.pos.y); - obj_styleBox->set_margin_size(MARGIN_BOTTOM, tex_region.pos.y+tex_region.size.height-(rect.pos.y+rect.size.height)); - } +} + +void TextureRegionEditor::_zoom_reset() +{ + if (draw_zoom == 1) return; + draw_zoom = 1; + edit_draw->update(); +} + +void TextureRegionEditor::_zoom_out() +{ + if (draw_zoom > 0.25) { + draw_zoom /= 2; + edit_draw->update(); } } +void TextureRegionEditor::apply_rect(const Rect2& rect){ + if(node_sprite) + node_sprite->set_region_rect(rect); + else if(node_patch9) + node_patch9->set_region_rect(rect); + else if(obj_styleBox.is_valid()) + obj_styleBox->set_region_rect(rect); + else if(atlas_tex.is_valid()) + atlas_tex->set_region(rect); +} + void TextureRegionEditor::_notification(int p_what) { switch(p_what) { case NOTIFICATION_READY: { - region_button->set_icon( get_icon("RegionEdit","EditorIcons")); - margin_button->set_icon( get_icon("Patch9Frame", "EditorIcons")); - b_snap_grid->set_icon( get_icon("Grid", "EditorIcons")); - b_snap_enable->set_icon( get_icon("Snap", "EditorIcons")); + zoom_out->set_icon(get_icon("ZoomLess", "EditorIcons")); + zoom_reset->set_icon(get_icon("ZoomReset", "EditorIcons")); + zoom_in->set_icon(get_icon("ZoomMore", "EditorIcons")); icon_zoom->set_texture( get_icon("Zoom", "EditorIcons")); } break; } @@ -401,149 +600,165 @@ void TextureRegionEditor::_notification(int p_what) void TextureRegionEditor::_node_removed(Object *p_obj) { - if(p_obj == node_sprite || p_obj == node_patch9 || p_obj == obj_styleBox || p_obj == atlas_tex) { - node_patch9 = NULL; - node_sprite = NULL; - obj_styleBox = NULL; - atlas_tex = NULL; + if(p_obj == node_sprite || p_obj == node_patch9 || p_obj == obj_styleBox.ptr() || p_obj == atlas_tex.ptr()) { + node_patch9 = NULL; + node_sprite = NULL; + obj_styleBox = Ref<StyleBox>(NULL); + atlas_tex = Ref<AtlasTexture>(NULL); hide(); } } void TextureRegionEditor::_bind_methods() { - ObjectTypeDB::bind_method(_MD("_edit_node"),&TextureRegionEditor::_edit_node); ObjectTypeDB::bind_method(_MD("_edit_region"),&TextureRegionEditor::_edit_region); - ObjectTypeDB::bind_method(_MD("_edit_margin"),&TextureRegionEditor::_edit_margin); ObjectTypeDB::bind_method(_MD("_region_draw"),&TextureRegionEditor::_region_draw); ObjectTypeDB::bind_method(_MD("_region_input"),&TextureRegionEditor::_region_input); ObjectTypeDB::bind_method(_MD("_scroll_changed"),&TextureRegionEditor::_scroll_changed); ObjectTypeDB::bind_method(_MD("_node_removed"),&TextureRegionEditor::_node_removed); - ObjectTypeDB::bind_method(_MD("_set_use_snap"),&TextureRegionEditor::_set_use_snap); - ObjectTypeDB::bind_method(_MD("_set_show_grid"),&TextureRegionEditor::_set_show_grid); + ObjectTypeDB::bind_method(_MD("_set_snap_mode"),&TextureRegionEditor::_set_snap_mode); ObjectTypeDB::bind_method(_MD("_set_snap_off_x"),&TextureRegionEditor::_set_snap_off_x); ObjectTypeDB::bind_method(_MD("_set_snap_off_y"),&TextureRegionEditor::_set_snap_off_y); ObjectTypeDB::bind_method(_MD("_set_snap_step_x"),&TextureRegionEditor::_set_snap_step_x); ObjectTypeDB::bind_method(_MD("_set_snap_step_y"),&TextureRegionEditor::_set_snap_step_y); + ObjectTypeDB::bind_method(_MD("_set_snap_sep_x"),&TextureRegionEditor::_set_snap_sep_x); + ObjectTypeDB::bind_method(_MD("_set_snap_sep_y"),&TextureRegionEditor::_set_snap_sep_y); + ObjectTypeDB::bind_method(_MD("_zoom_in"),&TextureRegionEditor::_zoom_in); + ObjectTypeDB::bind_method(_MD("_zoom_reset"),&TextureRegionEditor::_zoom_reset); + ObjectTypeDB::bind_method(_MD("_zoom_out"),&TextureRegionEditor::_zoom_out); } void TextureRegionEditor::edit(Object *p_obj) { + if (node_sprite && node_sprite->is_connected("texture_changed",this,"_edit_region")) + node_sprite->disconnect("texture_changed",this,"_edit_region"); + if (node_patch9 && node_patch9->is_connected("texture_changed",this,"_edit_region")) + node_patch9->disconnect("texture_changed",this,"_edit_region"); + if (obj_styleBox.is_valid() && obj_styleBox->is_connected("texture_changed",this,"_edit_region")) + obj_styleBox->disconnect("texture_changed",this,"_edit_region"); + if (atlas_tex.is_valid() && atlas_tex->is_connected("atlas_changed",this,"_edit_region")) + atlas_tex->disconnect("atlas_changed",this,"_edit_region"); if (p_obj) { - margin_button->hide(); - node_type = p_obj->get_type(); - if(node_type == "Sprite"){ - node_sprite = p_obj->cast_to<Sprite>(); - node_patch9 = NULL; - obj_styleBox = NULL; - atlas_tex = NULL; - } - else if(node_type == "AtlasTexture") { - atlas_tex = p_obj->cast_to<AtlasTexture>(); - node_sprite = NULL; - node_patch9 = NULL; - obj_styleBox = NULL; - } - else if(node_type == "Patch9Frame") { - node_patch9 = p_obj->cast_to<Patch9Frame>(); - node_sprite = NULL; - obj_styleBox = NULL; - atlas_tex = NULL; - margin_button->show(); - } - else if(node_type == "StyleBoxTexture") { - obj_styleBox = p_obj->cast_to<StyleBoxTexture>(); - node_sprite = NULL; - node_patch9 = NULL; - atlas_tex = NULL; - margin_button->show(); + node_sprite = p_obj->cast_to<Sprite>(); + node_patch9 = p_obj->cast_to<Patch9Frame>(); + if (p_obj->cast_to<StyleBoxTexture>()) + obj_styleBox = Ref<StyleBoxTexture>(p_obj->cast_to<StyleBoxTexture>()); + if (p_obj->cast_to<AtlasTexture>()) { + atlas_tex = Ref<AtlasTexture>(p_obj->cast_to<AtlasTexture>()); + atlas_tex->connect("atlas_changed",this,"_edit_region"); + } else { + p_obj->connect("texture_changed",this,"_edit_region"); } p_obj->connect("exit_tree",this,"_node_removed",varray(p_obj),CONNECT_ONESHOT); + _edit_region(); } else { if(node_sprite) node_sprite->disconnect("exit_tree",this,"_node_removed"); - else if(atlas_tex) - atlas_tex->disconnect("exit_tree",this,"_node_removed"); else if(node_patch9) node_patch9->disconnect("exit_tree",this,"_node_removed"); - else if(obj_styleBox) + else if(obj_styleBox.is_valid()) obj_styleBox->disconnect("exit_tree",this,"_node_removed"); - node_sprite = NULL; - node_patch9 = NULL; - obj_styleBox = NULL; - atlas_tex = NULL; + else if(atlas_tex.is_valid()) + atlas_tex->disconnect("exit_tree",this,"_node_removed"); + + node_sprite = NULL; + node_patch9 = NULL; + obj_styleBox = Ref<StyleBoxTexture>(NULL); + atlas_tex = Ref<AtlasTexture>(NULL); } + edit_draw->update(); } void TextureRegionEditor::_edit_region() { - this->_edit_node(REGION_TEXTURE_REGION); - dlg_editor->set_title(TTR("Texture Region Editor")); -} - -void TextureRegionEditor::_edit_margin() -{ - this->_edit_node(REGION_PATCH_MARGIN); - dlg_editor->set_title(TTR("Scale Region Editor")); -} - -void TextureRegionEditor::_edit_node(int region) -{ Ref<Texture> texture = NULL; - if(node_type == "Sprite" && node_sprite ) + if(node_sprite ) texture = node_sprite->get_texture(); - else if(node_type == "Patch9Frame" && node_patch9 ) + else if(node_patch9 ) texture = node_patch9->get_texture(); - else if(node_type == "StyleBoxTexture" && obj_styleBox) + else if(obj_styleBox.is_valid()) texture = obj_styleBox->get_texture(); - else if(node_type == "AtlasTexture" && atlas_tex) + else if(atlas_tex.is_valid()) texture = atlas_tex->get_atlas(); if (texture.is_null()) { - error->set_text(TTR("No texture in this node.\nSet a texture to be able to edit region.")); - error->popup_centered_minsize(); return; } - if(node_type == "Sprite" && node_sprite ) - tex_region = node_sprite->get_region_rect(); - else if(node_type == "Patch9Frame" && node_patch9 ) - tex_region = node_patch9->get_region_rect(); - else if(node_type == "StyleBoxTexture" && obj_styleBox) - tex_region = obj_styleBox->get_region_rect(); - else if(node_type == "AtlasTexture" && atlas_tex) - tex_region = atlas_tex->get_region(); - rect = tex_region; - - if(region == REGION_PATCH_MARGIN) { - if(node_patch9){ - Patch9Frame *node = node_patch9; - rect.pos += Point2(node->get_patch_margin(MARGIN_LEFT),node->get_patch_margin(MARGIN_TOP)); - rect.size -= Size2(node->get_patch_margin(MARGIN_RIGHT)+node->get_patch_margin(MARGIN_LEFT), node->get_patch_margin(MARGIN_BOTTOM)+node->get_patch_margin(MARGIN_TOP)); - } - else if(obj_styleBox) { - StyleBoxTexture * node = obj_styleBox; - rect.pos += Point2(node->get_margin_size(MARGIN_LEFT),node->get_margin_size(MARGIN_TOP)); - rect.size -= Size2(node->get_margin_size(MARGIN_RIGHT)+node->get_margin_size(MARGIN_LEFT), node->get_margin_size(MARGIN_BOTTOM)+node->get_margin_size(MARGIN_TOP)); + autoslice_cache.clear(); + Image i; + if (i.load(texture->get_path()) == OK) { + BitMap bm; + bm.create_from_image_alpha(i); + for (int y = 0; y < i.get_height(); y++) { + for (int x = 0; x < i.get_width(); x++) { + if (bm.get_bit(Point2(x,y))) { + bool found = false; + for (List<Rect2>::Element *E = autoslice_cache.front(); E; E=E->next()) { + Rect2 grown = E->get().grow(1.5); + if (grown.has_point(Point2(x,y))) { + E->get().expand_to(Point2(x,y)); + E->get().expand_to(Point2(x+1,y+1)); + x = E->get().pos.x+E->get().size.x-1; + bool merged = true; + while (merged) { + merged = false; + for (List<Rect2>::Element *F = autoslice_cache.front(); F; F=F->next()) { + if (F==E) + continue; + if (E->get().grow(1).intersects(F->get())) { + E->get().expand_to(F->get().pos); + E->get().expand_to(F->get().pos+F->get().size); + F=F->prev(); + autoslice_cache.erase(F->next()); + merged = true; + } + } + } + found = true; + break; + } + } + if (!found) { + Rect2 new_rect(x,y,1,1); + autoslice_cache.push_back(new_rect); + } + } + } } } - dlg_editor->popup_centered_ratio(0.85); - dlg_editor->get_ok()->release_focus(); - editing_region = region; + if(node_sprite ) + rect = node_sprite->get_region_rect(); + else if(node_patch9 ) + rect = node_patch9->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(); + + edit_draw->update(); } -inline float _snap_scalar(float p_offset, float p_step, float p_target) { - return p_step != 0 ? Math::stepify(p_target - p_offset, p_step) + p_offset : p_target; +inline float _snap_scalar(float p_offset, float p_step, float separation, float p_target) { + if (p_step != 0) { + float a = Math::stepify(p_target - p_offset, p_step+separation) + p_offset; + float b = a; + if (p_target >= 0) + b -= separation; + else + b += p_step; + return (Math::abs(p_target-a) < Math::abs(p_target-b)) ? a : b; + } + return p_target; } Vector2 TextureRegionEditor::snap_point(Vector2 p_target) const { - if (use_snap) { - p_target.x = _snap_scalar(snap_offset.x, snap_step.x, p_target.x); - p_target.y = _snap_scalar(snap_offset.y, snap_step.y, p_target.y); + if (snap_mode == SNAP_GRID) { + p_target.x = _snap_scalar(snap_offset.x, snap_step.x, snap_separation.x, p_target.x); + p_target.y = _snap_scalar(snap_offset.y, snap_step.y, snap_separation.y, p_target.y); } - p_target = p_target.snapped(Size2(1, 1)); return p_target; } @@ -552,56 +767,42 @@ TextureRegionEditor::TextureRegionEditor(EditorNode* p_editor) { node_sprite = NULL; node_patch9 = NULL; - atlas_tex = NULL; + obj_styleBox = Ref<StyleBoxTexture>(NULL); + atlas_tex = Ref<AtlasTexture>(NULL); editor=p_editor; undo_redo = editor->get_undo_redo(); snap_step=Vector2(10,10); - use_snap=false; - snap_show_grid=false; + snap_separation = Vector2(0,0); + edited_margin = -1; + drag_index = -1; drag=false; - add_child( memnew( VSeparator )); - region_button = memnew( ToolButton ); - add_child(region_button); - region_button->set_tooltip(TTR("Texture Region Editor")); - region_button->connect("pressed",this,"_edit_region"); - - margin_button = memnew( ToolButton ); - add_child(margin_button); - margin_button->set_tooltip(TTR("Scale Region Editor")); - margin_button->connect("pressed",this,"_edit_margin"); - - dlg_editor = memnew( AcceptDialog ); - add_child(dlg_editor); - dlg_editor->set_self_opacity(0.9); - VBoxContainer *main_vb = memnew( VBoxContainer ); - dlg_editor->add_child(main_vb); - dlg_editor->set_child_rect(main_vb); + add_child(main_vb); + main_vb->set_area_as_parent_rect(0); HBoxContainer *hb_tools = memnew( HBoxContainer ); main_vb->add_child(hb_tools); - b_snap_enable = memnew( ToolButton ); - hb_tools->add_child(b_snap_enable); - b_snap_enable->set_text(TTR("Snap")); - b_snap_enable->set_focus_mode(FOCUS_NONE); - b_snap_enable->set_toggle_mode(true); - b_snap_enable->set_pressed(use_snap); - b_snap_enable->set_tooltip(TTR("Enable Snap")); - b_snap_enable->connect("toggled",this,"_set_use_snap"); - - b_snap_grid = memnew( ToolButton ); - hb_tools->add_child(b_snap_grid); - b_snap_grid->set_text(TTR("Grid")); - b_snap_grid->set_focus_mode(FOCUS_NONE); - b_snap_grid->set_toggle_mode(true); - b_snap_grid->set_pressed(snap_show_grid); - b_snap_grid->set_tooltip(TTR("Show Grid")); - b_snap_grid->connect("toggled",this,"_set_show_grid"); - - hb_tools->add_child( memnew( VSeparator )); - hb_tools->add_child( memnew( Label(TTR("Grid Offset:")) ) ); + hb_tools->add_child(memnew( Label(TTR("Snap Mode:")) )); + + snap_mode_button = memnew( MenuButton ); + hb_tools->add_child(snap_mode_button); + snap_mode_button->set_text(TTR("<None>")); + PopupMenu *p = snap_mode_button->get_popup(); + p->add_item(TTR("<None>"),0); + p->add_item(TTR("Pixel Snap"),1); + p->add_item(TTR("Grid Snap"),2); + p->add_item(TTR("Auto Slice"),3); + for (int i = 0; i < 4; i++) + p->set_item_as_checkable(i,true); + p->set_item_checked(0,true); + p->connect("item_pressed", this, "_set_snap_mode"); + hb_grid = memnew( HBoxContainer ); + 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 ); sb_off_x->set_min(-256); @@ -610,7 +811,7 @@ TextureRegionEditor::TextureRegionEditor(EditorNode* p_editor) sb_off_x->set_val(snap_offset.x); sb_off_x->set_suffix("px"); sb_off_x->connect("value_changed", this, "_set_snap_off_x"); - hb_tools->add_child(sb_off_x); + hb_grid->add_child(sb_off_x); sb_off_y = memnew( SpinBox ); sb_off_y->set_min(-256); @@ -619,10 +820,10 @@ TextureRegionEditor::TextureRegionEditor(EditorNode* p_editor) sb_off_y->set_val(snap_offset.y); sb_off_y->set_suffix("px"); sb_off_y->connect("value_changed", this, "_set_snap_off_y"); - hb_tools->add_child(sb_off_y); + hb_grid->add_child(sb_off_y); - hb_tools->add_child( memnew( VSeparator )); - hb_tools->add_child( memnew( Label(TTR("Grid Step:")) ) ); + hb_grid->add_child( memnew( VSeparator )); + hb_grid->add_child( memnew( Label(TTR("Step:")) ) ); sb_step_x = memnew( SpinBox ); sb_step_x->set_min(-256); @@ -631,7 +832,7 @@ TextureRegionEditor::TextureRegionEditor(EditorNode* p_editor) sb_step_x->set_val(snap_step.x); sb_step_x->set_suffix("px"); sb_step_x->connect("value_changed", this, "_set_snap_step_x"); - hb_tools->add_child(sb_step_x); + hb_grid->add_child(sb_step_x); sb_step_y = memnew( SpinBox ); sb_step_y->set_min(-256); @@ -640,7 +841,30 @@ TextureRegionEditor::TextureRegionEditor(EditorNode* p_editor) sb_step_y->set_val(snap_step.y); sb_step_y->set_suffix("px"); sb_step_y->connect("value_changed", this, "_set_snap_step_y"); - hb_tools->add_child(sb_step_y); + hb_grid->add_child(sb_step_y); + + hb_grid->add_child( memnew( VSeparator )); + hb_grid->add_child( memnew( Label(TTR("Separation:")) ) ); + + sb_sep_x = memnew( SpinBox ); + sb_sep_x->set_min(0); + sb_sep_x->set_max(256); + sb_sep_x->set_step(1); + sb_sep_x->set_val(snap_separation.x); + sb_sep_x->set_suffix("px"); + sb_sep_x->connect("value_changed", this, "_set_snap_sep_x"); + hb_grid->add_child(sb_sep_x); + + sb_sep_y = memnew( SpinBox ); + sb_sep_y->set_min(0); + sb_sep_y->set_max(256); + sb_sep_y->set_step(1); + sb_sep_y->set_val(snap_separation.y); + sb_sep_y->set_suffix("px"); + sb_sep_y->connect("value_changed", this, "_set_snap_sep_y"); + hb_grid->add_child(sb_sep_y); + + hb_grid->hide(); HBoxContainer *main_hb = memnew( HBoxContainer ); main_vb->add_child(main_hb); @@ -649,25 +873,24 @@ TextureRegionEditor::TextureRegionEditor(EditorNode* p_editor) main_hb->set_v_size_flags(SIZE_EXPAND_FILL); edit_draw->set_h_size_flags(SIZE_EXPAND_FILL); + Control * separator = memnew( Control ); + separator->set_h_size_flags(Control::SIZE_EXPAND_FILL); + hb_tools->add_child(separator); - hb_tools->add_child( memnew( VSeparator )); icon_zoom = memnew( TextureFrame ); hb_tools->add_child(icon_zoom); - zoom = memnew( HSlider ); - zoom->set_min(0.01); - zoom->set_max(4); - zoom->set_val(1); - zoom->set_step(0.01); - hb_tools->add_child(zoom); - zoom->set_custom_minimum_size(Size2(200,0)); - zoom_value = memnew( SpinBox ); - zoom->share(zoom_value); - zoom_value->set_custom_minimum_size(Size2(50,0)); - hb_tools->add_child(zoom_value); - zoom->connect("value_changed",this,"_scroll_changed"); + zoom_out = memnew( ToolButton ); + zoom_out->connect("pressed", this, "_zoom_out"); + hb_tools->add_child(zoom_out); + zoom_reset = memnew( ToolButton ); + zoom_reset->connect("pressed", this, "_zoom_reset"); + hb_tools->add_child(zoom_reset); + zoom_in = memnew( ToolButton ); + zoom_in->connect("pressed", this, "_zoom_in"); + hb_tools->add_child(zoom_in); vscroll = memnew( VScrollBar); main_hb->add_child(vscroll); @@ -681,9 +904,6 @@ TextureRegionEditor::TextureRegionEditor(EditorNode* p_editor) draw_zoom=1.0; updating_scroll=false; - error = memnew( AcceptDialog); - add_child(error); - } void TextureRegionEditorPlugin::edit(Object *p_node) @@ -699,10 +919,13 @@ bool TextureRegionEditorPlugin::handles(Object *p_obj) const void TextureRegionEditorPlugin::make_visible(bool p_visible) { if (p_visible) { - region_editor->show(); + region_button->show(); + if (region_button->is_pressed()) + region_editor->show(); } else { - region_editor->hide(); + region_button->hide(); region_editor->edit(NULL); + region_editor->hide(); } } @@ -710,11 +933,11 @@ void TextureRegionEditorPlugin::make_visible(bool p_visible) Dictionary TextureRegionEditorPlugin::get_state() const { Dictionary state; - state["zoom"]=region_editor->zoom->get_val(); + state["zoom"]=region_editor->draw_zoom; state["snap_offset"]=region_editor->snap_offset; state["snap_step"]=region_editor->snap_step; - state["use_snap"]=region_editor->use_snap; - state["snap_show_grid"]=region_editor->snap_show_grid; + state["snap_separation"]=region_editor->snap_separation; + state["snap_mode"]=region_editor->snap_mode; return state; } @@ -722,7 +945,7 @@ void TextureRegionEditorPlugin::set_state(const Dictionary& p_state){ Dictionary state=p_state; if (state.has("zoom")) { - region_editor->zoom->set_val(p_state["zoom"]); + region_editor->draw_zoom = p_state["zoom"]; } if (state.has("snap_step")) { @@ -739,22 +962,28 @@ void TextureRegionEditorPlugin::set_state(const Dictionary& p_state){ region_editor->snap_offset = ofs; } - if (state.has("use_snap")) { - region_editor->use_snap=state["use_snap"]; - region_editor->b_snap_enable->set_pressed(state["use_snap"]); + if (state.has("snap_separation")) { + Vector2 sep = state["snap_separation"]; + region_editor->sb_sep_x->set_val(sep.x); + region_editor->sb_sep_y->set_val(sep.y); + region_editor->snap_separation = sep; } - if (state.has("snap_show_grid")) { - region_editor->snap_show_grid=state["snap_show_grid"]; - region_editor->b_snap_grid->set_pressed(state["snap_show_grid"]); + if (state.has("snap_mode")) { + region_editor->_set_snap_mode(state["snap_mode"]); } + } TextureRegionEditorPlugin::TextureRegionEditorPlugin(EditorNode *p_node) { editor = p_node; - region_editor= memnew ( TextureRegionEditor(p_node) ); - CanvasItemEditor::get_singleton()->add_control_to_menu_panel(region_editor); + region_editor = memnew ( TextureRegionEditor(p_node) ); + + region_button = p_node->add_bottom_panel_item(TTR("Texture Region"), region_editor); + region_button->set_tooltip(TTR("Texture Region Editor")); + region_editor->set_custom_minimum_size(Size2(0,200)); region_editor->hide(); + region_button->hide(); } diff --git a/tools/editor/plugins/texture_region_editor_plugin.h b/tools/editor/plugins/texture_region_editor_plugin.h index 1e4888b06d..3658a38f11 100644 --- a/tools/editor/plugins/texture_region_editor_plugin.h +++ b/tools/editor/plugins/texture_region_editor_plugin.h @@ -40,69 +40,73 @@ #include "scene/resources/style_box.h" #include "scene/resources/texture.h" -class TextureRegionEditor : public HBoxContainer { +class TextureRegionEditor : public Control { - OBJ_TYPE(TextureRegionEditor, HBoxContainer ); - enum RegionType { - REGION_TEXTURE_REGION, - REGION_PATCH_MARGIN + OBJ_TYPE(TextureRegionEditor, Control ); + + enum SnapMode { + SNAP_NONE, + SNAP_PIXEL, + SNAP_GRID, + SNAP_AUTOSLICE }; friend class TextureRegionEditorPlugin; - ToolButton *region_button; - ToolButton *margin_button; - ToolButton *b_snap_enable; - ToolButton *b_snap_grid; + MenuButton *snap_mode_button; TextureFrame *icon_zoom; - HSlider *zoom; - SpinBox *zoom_value; + ToolButton *zoom_in; + ToolButton *zoom_reset; + ToolButton *zoom_out; + HBoxContainer * hb_grid; //For showing/hiding the grid controls when changing the SnapMode SpinBox *sb_step_y; SpinBox *sb_step_x; SpinBox *sb_off_y; SpinBox *sb_off_x; + SpinBox *sb_sep_y; + SpinBox *sb_sep_x; Control *edit_draw; VScrollBar *vscroll; HScrollBar *hscroll; EditorNode *editor; - AcceptDialog *dlg_editor; UndoRedo* undo_redo; Vector2 draw_ofs; float draw_zoom; bool updating_scroll; - bool use_snap; - bool snap_show_grid; + int snap_mode; Vector2 snap_offset; Vector2 snap_step; + Vector2 snap_separation; - - String node_type; Patch9Frame *node_patch9; Sprite *node_sprite; - StyleBoxTexture *obj_styleBox; - AtlasTexture *atlas_tex; + Ref<StyleBoxTexture> obj_styleBox; + Ref<AtlasTexture> atlas_tex; - int editing_region; Rect2 rect; Rect2 rect_prev; - Rect2 tex_region; + float prev_margin; + int edited_margin; + List<Rect2> autoslice_cache; bool drag; bool creating; Vector2 drag_from; int drag_index; - AcceptDialog *error; - - void _set_use_snap(bool p_use); - void _set_show_grid(bool p_show); + void _set_snap_mode(int p_mode); void _set_snap_off_x(float p_val); void _set_snap_off_y(float p_val); void _set_snap_step_x(float p_val); void _set_snap_step_y(float p_val); + void _set_snap_sep_x(float p_val); + void _set_snap_sep_y(float p_val); + void _zoom_in(); + void _zoom_reset(); + void _zoom_out(); void apply_rect(const Rect2& rect); protected: @@ -114,9 +118,7 @@ protected: public: - void _edit_node(int tex_region); void _edit_region(); - void _edit_margin(); void _region_draw(); void _region_input(const InputEvent &p_input); void _scroll_changed(float); @@ -130,11 +132,12 @@ class TextureRegionEditorPlugin : public EditorPlugin { OBJ_TYPE( TextureRegionEditorPlugin, EditorPlugin ); + Button *region_button; TextureRegionEditor *region_editor; EditorNode *editor; public: - virtual String get_name() const { return "SpriteRegion"; } + virtual String get_name() const { return "TextureRegion"; } bool has_main_screen() const { return false; } virtual void edit(Object *p_node); virtual bool handles(Object *p_node) const; diff --git a/tools/editor/plugins/tile_map_editor_plugin.cpp b/tools/editor/plugins/tile_map_editor_plugin.cpp index d5f85d3333..d686c37d1a 100644 --- a/tools/editor/plugins/tile_map_editor_plugin.cpp +++ b/tools/editor/plugins/tile_map_editor_plugin.cpp @@ -223,7 +223,7 @@ void TileMapEditor::_update_palette() { String name; if (tileset->tile_get_name(E->get())!="") { - name = tileset->tile_get_name(E->get()); + name = itos(E->get())+" - "+tileset->tile_get_name(E->get()); } else { name = "#"+itos(E->get()); } @@ -412,6 +412,24 @@ void TileMapEditor::_draw_cell(int p_cell, const Point2i& p_point, bool p_flip_h if (node->get_tile_origin()==TileMap::TILE_ORIGIN_TOP_LEFT) { rect.pos+=tile_ofs; + } else if (node->get_tile_origin()==TileMap::TILE_ORIGIN_BOTTOM_LEFT) { + Size2 cell_size = node->get_cell_size(); + + rect.pos+=tile_ofs; + + if(p_transpose) + { + if(p_flip_h) + rect.pos.x-=cell_size.x; + else + rect.pos.x+=cell_size.x; + } else { + if(p_flip_v) + rect.pos.y-=cell_size.y; + else + rect.pos.y+=cell_size.y; + } + } else if (node->get_tile_origin()==TileMap::TILE_ORIGIN_CENTER) { rect.pos+=node->get_cell_size()/2; Vector2 s = r.size; diff --git a/tools/editor/plugins/tile_set_editor_plugin.cpp b/tools/editor/plugins/tile_set_editor_plugin.cpp index a2c7147bf3..39a15189e7 100644 --- a/tools/editor/plugins/tile_set_editor_plugin.cpp +++ b/tools/editor/plugins/tile_set_editor_plugin.cpp @@ -73,24 +73,24 @@ void TileSetEditor::_import_scene(Node *scene, Ref<TileSet> p_library, bool p_me p_library->tile_set_name(id,mi->get_name()); } - - p_library->tile_set_texture(id,texture); p_library->tile_set_material(id,material); Vector2 phys_offset; + Size2 s; - if (mi->is_centered()) { - Size2 s; - if (mi->is_region()) { - s=mi->get_region_rect().size; - } else { - s=texture->get_size(); - } - phys_offset+=-s/2; - } if (mi->is_region()) { + s=mi->get_region_rect().size; p_library->tile_set_region(id,mi->get_region_rect()); + } else { + const int frame = mi->get_frame(); + const int hframes = mi->get_hframes(); + s=texture->get_size()/Size2(hframes,mi->get_vframes()); + p_library->tile_set_region(id,Rect2(Vector2(frame%hframes,frame/hframes)*s,s)); + } + + if (mi->is_centered()) { + phys_offset+=-s/2; } Vector<Ref<Shape2D> >collisions; diff --git a/tools/editor/project_export.cpp b/tools/editor/project_export.cpp index 3f82199fc3..103962716b 100644 --- a/tools/editor/project_export.cpp +++ b/tools/editor/project_export.cpp @@ -431,7 +431,6 @@ void ProjectExportDialog::_validate_platform() { void ProjectExportDialog::_export_mode_changed(int p_idx) { - bool do_all = p_idx==0; if (EditorImportExport::get_singleton()->get_export_filter()==p_idx) return; EditorImportExport::get_singleton()->set_export_filter(EditorImportExport::ExportFilter(p_idx)); diff --git a/tools/editor/project_manager.cpp b/tools/editor/project_manager.cpp index d8814fd50e..52c8ca4d6c 100644 --- a/tools/editor/project_manager.cpp +++ b/tools/editor/project_manager.cpp @@ -46,20 +46,33 @@ #include "io/resource_saver.h" #include "editor_themes.h" - +#include "editor_initialize_ssl.h" #include "editor_scale.h" +#include "io/zip_io.h" + class NewProjectDialog : public ConfirmationDialog { OBJ_TYPE(NewProjectDialog,ConfirmationDialog); +public: - bool import_mode; + enum Mode { + MODE_NEW, + MODE_IMPORT, + MODE_INSTALL + }; +private: + + Mode mode; Label *pp,*pn; Label *error; LineEdit *project_path; LineEdit *project_name; FileDialog *fdialog; + String zip_path; + String zip_title; + AcceptDialog *dialog_error; bool _test_path() { @@ -72,7 +85,7 @@ class NewProjectDialog : public ConfirmationDialog { return false; } - if (!import_mode) { + if (mode!=MODE_IMPORT) { if (d->file_exists("engine.cfg")) { @@ -109,7 +122,7 @@ class NewProjectDialog : public ConfirmationDialog { if (lidx!=-1) { sp=sp.substr(lidx+1,sp.length()); } - if (sp=="" && import_mode ) + if (sp=="" && mode==MODE_IMPORT ) sp=TTR("Imported Project"); project_name->set_text(sp); @@ -119,7 +132,7 @@ class NewProjectDialog : public ConfirmationDialog { void _file_selected(const String& p_path) { String p = p_path; - if (import_mode) { + if (mode==MODE_IMPORT) { if (p.ends_with("engine.cfg")) { p=p.get_base_dir(); @@ -141,7 +154,7 @@ class NewProjectDialog : public ConfirmationDialog { void _browse_path() { - if (import_mode) { + if (mode==MODE_IMPORT) { fdialog->set_mode(FileDialog::MODE_OPEN_FILE); fdialog->clear_filters(); @@ -163,7 +176,7 @@ class NewProjectDialog : public ConfirmationDialog { String dir; - if (import_mode) { + if (mode==MODE_IMPORT) { dir=project_path->get_text(); @@ -179,26 +192,130 @@ class NewProjectDialog : public ConfirmationDialog { dir=d->get_current_dir(); memdelete(d); - FileAccess *f = FileAccess::open(dir.plus_file("/engine.cfg"),FileAccess::WRITE); - if (!f) { - error->set_text(TTR("Couldn't create engine.cfg in project path.")); - } else { + if (mode==MODE_NEW) { + + + + + FileAccess *f = FileAccess::open(dir.plus_file("/engine.cfg"),FileAccess::WRITE); + if (!f) { + error->set_text(TTR("Couldn't create engine.cfg in project path.")); + } else { + + f->store_line("; Engine configuration file."); + f->store_line("; It's best to edit using the editor UI, not directly,"); + f->store_line("; becausethe parameters that go here are not obvious."); + f->store_line("; "); + f->store_line("; Format: "); + f->store_line("; [section] ; section goes between []"); + f->store_line("; param=value ; assign values to parameters"); + f->store_line("\n"); + f->store_line("[application]"); + f->store_line("name=\""+project_name->get_text()+"\""); + f->store_line("icon=\"res://icon.png\""); + + memdelete(f); + + ResourceSaver::save(dir.plus_file("/icon.png"),get_icon("DefaultProjectIcon","EditorIcons")); + } + + } else if (mode==MODE_INSTALL) { + + + FileAccess *src_f=NULL; + zlib_filefunc_def io = zipio_create_io_from_file(&src_f); + + unzFile pkg = unzOpen2(zip_path.utf8().get_data(), &io); + if (!pkg) { + + dialog_error->set_text("Error opening package file, not in zip format."); + return; + } + + int ret = unzGoToFirstFile(pkg); + + Vector<String> failed_files; + + int idx=0; + while(ret==UNZ_OK) { + + //get filename + unz_file_info info; + char fname[16384]; + ret = unzGetCurrentFileInfo(pkg,&info,fname,16384,NULL,0,NULL,0); + + String path=fname; + + int depth=1; //stuff from github comes with tag + bool skip=false; + while(depth>0) { + int pp = path.find("/"); + if (pp==-1) { + skip=true; + break; + } + path=path.substr(pp+1,path.length()); + depth--; + } + + + if (skip || path==String()) { + // + } else if (path.ends_with("/")) { // a dir + + path=path.substr(0,path.length()-1); + + DirAccess *da = DirAccess::create(DirAccess::ACCESS_FILESYSTEM); + da->make_dir(dir.plus_file(path)); + memdelete(da); + + } else { + + Vector<uint8_t> data; + data.resize(info.uncompressed_size); + + //read + unzOpenCurrentFile(pkg); + unzReadCurrentFile(pkg,data.ptr(),data.size()); + unzCloseCurrentFile(pkg); + + FileAccess *f=FileAccess::open(dir.plus_file(path),FileAccess::WRITE); + + if (f) { + f->store_buffer(data.ptr(),data.size()); + memdelete(f); + } else { + failed_files.push_back(path); + } + + + } + + idx++; + ret = unzGoToNextFile(pkg); + } + + unzClose(pkg); + + if (failed_files.size()) { + String msg=TTR("The following files failed extraction from package:")+"\n\n"; + for(int i=0;i<failed_files.size();i++) { + + if (i>15) { + msg+="\nAnd "+itos(failed_files.size()-i)+" more files."; + break; + } + msg+=failed_files[i]+"\n"; + } + + dialog_error->set_text(msg); + dialog_error->popup_centered_minsize(); + + } else { + dialog_error->set_text(TTR("Package Installed Successfully!")); + dialog_error->popup_centered_minsize(); + } - f->store_line("; Engine configuration file."); - f->store_line("; It's best to edit using the editor UI, not directly,"); - f->store_line("; becausethe parameters that go here are not obvious."); - f->store_line("; "); - f->store_line("; Format: "); - f->store_line("; [section] ; section goes between []"); - f->store_line("; param=value ; assign values to parameters"); - f->store_line("\n"); - f->store_line("[application]"); - f->store_line("name=\""+project_name->get_text()+"\""); - f->store_line("icon=\"res://icon.png\""); - - memdelete(f); - - ResourceSaver::save(dir.plus_file("/icon.png"),get_icon("DefaultProjectIcon","EditorIcons")); } @@ -233,10 +350,16 @@ protected: public: + void set_zip_path(const String& p_path) { + zip_path=p_path; + } + void set_zip_title(const String& p_title) { + zip_title=p_title; + } - void set_import_mode(bool p_import ) { + void set_mode(Mode p_mode) { - import_mode=p_import; + mode=p_mode; } void show_dialog() { @@ -245,7 +368,7 @@ public: project_path->clear(); project_name->clear(); - if (import_mode) { + if (mode==MODE_IMPORT) { set_title(TTR("Import Existing Project")); get_ok()->set_text(TTR("Import")); pp->set_text(TTR("Project Path (Must Exist):")); @@ -253,9 +376,10 @@ public: pn->hide(); project_name->hide(); - popup_centered(Size2(500,125)); + popup_centered(Size2(500,125)*EDSCALE); + + } else if (mode==MODE_NEW){ - } else { set_title(TTR("Create New Project")); get_ok()->set_text(TTR("Create")); pp->set_text(TTR("Project Path:")); @@ -263,7 +387,16 @@ public: pn->show(); project_name->show(); - popup_centered(Size2(500,145)); + popup_centered(Size2(500,145)*EDSCALE); + } else if (mode==MODE_INSTALL){ + + set_title(TTR("Install Project:")+" "+zip_title); + get_ok()->set_text(TTR("Install")); + pp->set_text(TTR("Project Path:")); + pn->hide(); + project_name->hide(); + + popup_centered(Size2(500,125)*EDSCALE); } @@ -329,7 +462,10 @@ public: fdialog->connect("dir_selected", this,"_path_selected"); fdialog->connect("file_selected", this,"_file_selected"); set_hide_on_ok(false); - import_mode=false; + mode=MODE_NEW; + + dialog_error = memnew( AcceptDialog ); + add_child(dialog_error); } @@ -616,6 +752,8 @@ void ProjectManager::_load_recent_projects() { run_btn->set_disabled(selected_list.size()<1 || (selected_list.size()==1 && single_selected_main=="")); EditorSettings::get_singleton()->save(); + + tabs->set_current_tab(0); } void ProjectManager::_open_project_confirm() { @@ -755,14 +893,14 @@ void ProjectManager::_scan_projects() { void ProjectManager::_new_project() { - npdialog->set_import_mode(false); + npdialog->set_mode(NewProjectDialog::MODE_NEW); npdialog->show_dialog(); } void ProjectManager::_import_project() { - npdialog->set_import_mode(true); + npdialog->set_mode(NewProjectDialog::MODE_IMPORT); npdialog->show_dialog(); } @@ -800,6 +938,15 @@ void ProjectManager::_exit_dialog() { get_tree()->quit(); } + +void ProjectManager::_install_project(const String& p_zip_path,const String& p_title) { + + npdialog->set_mode(NewProjectDialog::MODE_INSTALL); + npdialog->set_zip_path(p_zip_path); + npdialog->set_zip_title(p_title); + npdialog->show_dialog(); +} + void ProjectManager::_bind_methods() { ObjectTypeDB::bind_method("_open_project",&ProjectManager::_open_project); @@ -817,19 +964,20 @@ void ProjectManager::_bind_methods() { ObjectTypeDB::bind_method("_panel_draw",&ProjectManager::_panel_draw); ObjectTypeDB::bind_method("_panel_input",&ProjectManager::_panel_input); ObjectTypeDB::bind_method("_favorite_pressed",&ProjectManager::_favorite_pressed); + ObjectTypeDB::bind_method("_install_project",&ProjectManager::_install_project); } ProjectManager::ProjectManager() { - int margin = get_constant("margin","Dialogs"); - int button_margin = get_constant("button_margin","Dialogs"); - // load settings if (!EditorSettings::get_singleton()) EditorSettings::create(); + + EditorSettings::get_singleton()->set_optimize_save(false); //just write settings as they came + { int dpi_mode = EditorSettings::get_singleton()->get("global/hidpi_mode"); if (dpi_mode==0) { @@ -871,9 +1019,6 @@ ProjectManager::ProjectManager() { HBoxContainer *top_hb = memnew( HBoxContainer); vb->add_child(top_hb); - TextureFrame *logo = memnew( TextureFrame ); - logo->set_texture(theme->get_icon("LogoSmall","EditorIcons")); - //top_hb->add_child( logo ); CenterContainer *ccl = memnew( CenterContainer ); Label *l = memnew( Label ); l->set_text(_MKSTR(VERSION_NAME)+String(" - ")+TTR("Project Manager")); @@ -981,10 +1126,10 @@ ProjectManager::ProjectManager() { if (StreamPeerSSL::is_available()) { - asset_library = memnew( EditorAssetLibrary(true) ); asset_library->set_name("Templates"); tabs->add_child(asset_library); + asset_library->connect("install_asset",this,"_install_project"); } else { WARN_PRINT("Asset Library not available, as it requires SSL to work."); } @@ -1018,8 +1163,6 @@ ProjectManager::ProjectManager() { gui_base->add_child(multi_run_ask); - - OS::get_singleton()->set_low_processor_usage_mode(true); npdialog = memnew( NewProjectDialog ); @@ -1103,6 +1246,8 @@ void ProjectListFilter::_bind_methods() { ProjectListFilter::ProjectListFilter() { + editor_initialize_certificates(); //for asset sharing + _current_filter = FILTER_NAME; filter_option = memnew(OptionButton); diff --git a/tools/editor/project_manager.h b/tools/editor/project_manager.h index 2db1bb839e..69467f50e7 100644 --- a/tools/editor/project_manager.h +++ b/tools/editor/project_manager.h @@ -88,6 +88,8 @@ class ProjectManager : public Control { void _load_recent_projects(); void _scan_dir(DirAccess *da,float pos, float total,List<String> *r_projects); + void _install_project(const String& p_zip_path,const String& p_title); + void _panel_draw(Node *p_hb); void _panel_input(const InputEvent& p_ev,Node *p_hb); void _favorite_pressed(Node *p_hb); diff --git a/tools/editor/project_settings.cpp b/tools/editor/project_settings.cpp index 6822e50b73..6be1abf52f 100644 --- a/tools/editor/project_settings.cpp +++ b/tools/editor/project_settings.cpp @@ -100,16 +100,6 @@ void ProjectSettings::_notification(int p_what) { translation_res_file_open->add_filter("*."+E->get()); translation_res_option_file_open->add_filter("*."+E->get()); } - - List<String> afn; - ResourceLoader::get_recognized_extensions_for_type("Script",&afn); - ResourceLoader::get_recognized_extensions_for_type("PackedScene",&afn); - - for (List<String>::Element *E=afn.front();E;E=E->next()) { - - autoload_file_open->add_filter("*."+E->get()); - } - } } @@ -564,7 +554,7 @@ void ProjectSettings::popup_project_settings() { popup_centered_ratio(); globals_editor->update_category_list(); _update_translations(); - _update_autoload(); + autoload_settings->update_autoload(); plugin_settings->update_plugins(); } @@ -616,10 +606,26 @@ void ProjectSettings::_item_add() { String name = catname!="" ? catname+"/"+propname : propname; - Globals::get_singleton()->set(name,value); + undo_redo->create_action("Add Global Property"); + + undo_redo->add_do_property(Globals::get_singleton(), name, value); + undo_redo->add_do_method(Globals::get_singleton(), "set_persisting", name, true); + + if (Globals::get_singleton()->has(name)) { + undo_redo->add_undo_property(Globals::get_singleton(), name, Globals::get_singleton()->get(name)); + } else { + undo_redo->add_undo_property(Globals::get_singleton(), name, Variant()); + } + + undo_redo->add_do_method(globals_editor, "update_category_list"); + undo_redo->add_undo_method(globals_editor, "update_category_list"); + + undo_redo->add_do_method(this, "_settings_changed"); + undo_redo->add_undo_method(this, "_settings_changed"); + + undo_redo->commit_action(); globals_editor->set_current_section(catname); - globals_editor->update_category_list(); _settings_changed(); } @@ -633,10 +639,20 @@ void ProjectSettings::_item_del() { String name = catname!="" ? catname+"/"+propname : propname; - Globals::get_singleton()->set(name,Variant()); + undo_redo->create_action("Delete Global Property"); - globals_editor->set_current_section(catname); - globals_editor->update_category_list(); + undo_redo->add_do_property(Globals::get_singleton(), name, Variant()); + + undo_redo->add_undo_property(Globals::get_singleton(), name, Globals::get_singleton()->get(name)); + undo_redo->add_undo_method(Globals::get_singleton(), "set_persisting", name, Globals::get_singleton()->is_persisting(name)); + + undo_redo->add_do_method(globals_editor, "update_category_list"); + undo_redo->add_undo_method(globals_editor, "update_category_list"); + + undo_redo->add_do_method(this, "_settings_changed"); + undo_redo->add_undo_method(this, "_settings_changed"); + + undo_redo->commit_action(); _settings_changed(); } @@ -811,263 +827,6 @@ void ProjectSettings::_translation_file_open() { translation_file_open->popup_centered_ratio(); } - -void ProjectSettings::_autoload_file_callback(const String& p_path) { - - autoload_add_path->set_text(p_path); - //if (autoload_add_name->get_text().strip_edges()==String()) { - - autoload_add_name->set_text( p_path.get_file().basename() ); - //} - - //_translation_add(p_translation); -} - -void ProjectSettings::_autoload_file_open() { - - autoload_file_open->popup_centered_ratio(); -} - -void ProjectSettings::_autoload_edited() { - - if (updating_autoload) - return; - - TreeItem *ti = autoload_list->get_edited(); - int column = autoload_list->get_edited_column(); - - if (!ti || (column != 0 && column != 2)) - return; - - if (column == 0) { - String name = ti->get_text(0); - String old_name = selected_autoload.substr(selected_autoload.find("/")+1,selected_autoload.length()); - - if (!name.is_valid_identifier()) { - ti->set_text(0,old_name); - message->set_text(TTR("Invalid name.")+"\n"+TTR("Valid characters:")+" a-z, A-Z, 0-9 or _"); - message->popup_centered(Size2(300,100)); - return; - } - - if (ObjectTypeDB::type_exists(name)) { - ti->set_text(0,old_name); - message->set_text(TTR("Invalid name. Must not collide with an existing engine class name.")); - message->popup_centered(Size2(400,100)); - return; - } - - for(int i=0;i<Variant::VARIANT_MAX;i++) { - if (Variant::get_type_name(Variant::Type(i))==name) { - ti->set_text(0,old_name); - message->set_text(TTR("Invalid name. Must not collide with an existing buit-in type name.")); - message->popup_centered(Size2(400,100)); - return; - } - } - - for(int i=0;i<GlobalConstants::get_global_constant_count();i++) { - if (GlobalConstants::get_global_constant_name(i)==name) { - ti->set_text(0,old_name); - message->set_text(TTR("Invalid name. Must not collide with an existing global constant name.")); - message->popup_centered(Size2(400,100)); - return; - } - } - - if (Globals::get_singleton()->has("autoload/"+name)) { - ti->set_text(0,old_name); - message->set_text(vformat(TTR("Autoload '%s' already exists!"),name)); - message->popup_centered(Size2(300,100)); - return; - } - - updating_autoload = true; - - name = "autoload/"+name; - String path = Globals::get_singleton()->get(selected_autoload); - bool is_persisting = Globals::get_singleton()->is_persisting(selected_autoload); - int order = Globals::get_singleton()->get_order(selected_autoload); - - undo_redo->create_action(TTR("Rename Autoload")); - undo_redo->add_do_property(Globals::get_singleton(),name,path); - undo_redo->add_do_method(Globals::get_singleton(),"set_persisting",name,is_persisting); - undo_redo->add_do_method(Globals::get_singleton(),"set_order",name,order); - undo_redo->add_do_method(Globals::get_singleton(),"clear",selected_autoload); - undo_redo->add_undo_property(Globals::get_singleton(),selected_autoload,path); - undo_redo->add_undo_method(Globals::get_singleton(),"set_persisting",selected_autoload,is_persisting); - undo_redo->add_undo_method(Globals::get_singleton(),"set_order",selected_autoload,order); - undo_redo->add_undo_method(Globals::get_singleton(),"clear",name); - undo_redo->add_do_method(this,"_update_autoload"); - undo_redo->add_undo_method(this,"_update_autoload"); - undo_redo->add_do_method(this,"_settings_changed"); - undo_redo->add_undo_method(this,"_settings_changed"); - undo_redo->commit_action(); - - selected_autoload = name; - } else if (column == 2) { - updating_autoload = true; - - bool checked = ti->is_checked(2); - String base = "autoload/"+ti->get_text(0); - String path = Globals::get_singleton()->get(base); - int order = Globals::get_singleton()->get_order(base); - - if (path.begins_with("*")) - path = path.substr(1,path.length()); - - if (checked) - path = "*" + path; - - undo_redo->create_action(TTR("Toggle AutoLoad Globals")); - undo_redo->add_do_property(Globals::get_singleton(),base,path); - undo_redo->add_undo_property(Globals::get_singleton(),base,Globals::get_singleton()->get(base)); - undo_redo->add_do_method(Globals::get_singleton(),"set_order",base,order); // keep order, as config order matters for these - undo_redo->add_undo_method(Globals::get_singleton(),"set_order",base,order); - undo_redo->add_do_method(this,"_update_autoload"); - undo_redo->add_undo_method(this,"_update_autoload"); - undo_redo->add_do_method(this,"_settings_changed"); - undo_redo->add_undo_method(this,"_settings_changed"); - undo_redo->commit_action(); - } - - updating_autoload = false; -} - -void ProjectSettings::_autoload_add() { - - String name = autoload_add_name->get_text(); - if (!name.is_valid_identifier()) { - message->set_text(TTR("Invalid name.")+"\n"+TTR("Valid characters:")+" a-z, A-Z, 0-9 or _"); - message->popup_centered(Size2(300,100)); - return; - - } - - if (ObjectTypeDB::type_exists(name)) { - - message->set_text(TTR("Invalid name. Must not collide with an existing engine class name.")); - message->popup_centered(Size2(300,100)); - return; - - } - - for(int i=0;i<Variant::VARIANT_MAX;i++) { - if (Variant::get_type_name(Variant::Type(i))==name) { - - message->set_text(TTR("Invalid name. Must not collide with an existing buit-in type name.")); - message->popup_centered(Size2(300,100)); - return; - - } - } - - for(int i=0;i<GlobalConstants::get_global_constant_count();i++) { - - if (GlobalConstants::get_global_constant_name(i)==name) { - - message->set_text(TTR("Invalid name. Must not collide with an existing global constant name.")); - message->popup_centered(Size2(300,100)); - return; - } - - } - - String path = autoload_add_path->get_text(); - if (!FileAccess::exists(path)) { - message->set_text("Invalid Path.\nFile does not exist."); - message->popup_centered(Size2(300,100)); - return; - - } - if (!path.begins_with("res://")) { - message->set_text("Invalid Path.\nNot in resource path."); - message->popup_centered(Size2(300,100)); - return; - - } - - undo_redo->create_action(TTR("Add Autoload")); - name = "autoload/"+name; - undo_redo->add_do_property(Globals::get_singleton(),name,"*"+path); - if (Globals::get_singleton()->has(name)) - undo_redo->add_undo_property(Globals::get_singleton(),name,Globals::get_singleton()->get(name)); - else - undo_redo->add_undo_property(Globals::get_singleton(),name,Variant()); - - undo_redo->add_do_method(Globals::get_singleton(),"set_persisting",name,true); - undo_redo->add_do_method(this,"_update_autoload"); - undo_redo->add_undo_method(this,"_update_autoload"); - undo_redo->add_do_method(this,"_settings_changed"); - undo_redo->add_undo_method(this,"_settings_changed"); - undo_redo->commit_action(); - - autoload_add_path->set_text(""); - autoload_add_name->set_text(""); - - //autoload_file_open->popup_centered_ratio(); -} - -void ProjectSettings::_autoload_delete(Object *p_item,int p_column, int p_button) { - - - TreeItem *ti=p_item->cast_to<TreeItem>(); - String name = "autoload/"+ti->get_text(0); - - if (p_button==0) { - //delete - int order = Globals::get_singleton()->get_order(name); - undo_redo->create_action(TTR("Remove Autoload")); - undo_redo->add_do_property(Globals::get_singleton(),name,Variant()); - undo_redo->add_undo_property(Globals::get_singleton(),name,Globals::get_singleton()->get(name)); - undo_redo->add_undo_method(Globals::get_singleton(),"set_persisting",name,true); - undo_redo->add_undo_method(Globals::get_singleton(),"set_order",name,order); - undo_redo->add_do_method(this,"_update_autoload"); - undo_redo->add_undo_method(this,"_update_autoload"); - undo_redo->add_do_method(this,"_settings_changed"); - undo_redo->add_undo_method(this,"_settings_changed"); - undo_redo->commit_action(); - } else { - - TreeItem *swap = NULL; - - if (p_button==1) { - swap=ti->get_prev(); - } else if (p_button==2) { - swap=ti->get_next(); - } - if (!swap) - return; - - String swap_name= "autoload/"+swap->get_text(0); - - int order = Globals::get_singleton()->get_order(name); - int swap_order = Globals::get_singleton()->get_order(swap_name); - - undo_redo->create_action(TTR("Move Autoload")); - undo_redo->add_do_method(Globals::get_singleton(),"set_order",swap_name,order); - undo_redo->add_do_method(Globals::get_singleton(),"set_order",name,swap_order); - undo_redo->add_undo_method(Globals::get_singleton(),"set_order",swap_name,swap_order); - undo_redo->add_undo_method(Globals::get_singleton(),"set_order",name,order); - undo_redo->add_do_method(this,"_update_autoload"); - undo_redo->add_undo_method(this,"_update_autoload"); - undo_redo->add_do_method(this,"_settings_changed"); - undo_redo->add_undo_method(this,"_settings_changed"); - undo_redo->commit_action(); - - } - -} - -void ProjectSettings::_autoload_selected() { - TreeItem *ti = autoload_list->get_selected(); - - if (!ti) - return; - - selected_autoload = "autoload/"+ti->get_text(0); -} - void ProjectSettings::_translation_delete(Object *p_item,int p_column, int p_button) { TreeItem *ti = p_item->cast_to<TreeItem>(); @@ -1393,55 +1152,6 @@ void ProjectSettings::_update_translations() { } -void ProjectSettings::_update_autoload() { - - if (updating_autoload) - return; - - updating_autoload=true; - - autoload_list->clear(); - TreeItem *root = autoload_list->create_item(); - autoload_list->set_hide_root(true); - - List<PropertyInfo> props; - Globals::get_singleton()->get_property_list(&props); - - for(List<PropertyInfo>::Element *E=props.front();E;E=E->next()) { - - const PropertyInfo &pi=E->get(); - if (!pi.name.begins_with("autoload/")) - continue; - - String name = pi.name.get_slice("/",1); - String path = Globals::get_singleton()->get(pi.name); - - if (name=="") - continue; - bool global=false; - if (path.begins_with("*")) { - path=path.substr(1,path.length()); - global=true; - } - TreeItem *t = autoload_list->create_item(root); - t->set_text(0,name); - t->set_editable(0,true); - t->set_text(1,path); - t->set_cell_mode(2,TreeItem::CELL_MODE_CHECK); - t->set_editable(2,true); - t->set_text(2,TTR("Enable")); - t->set_checked(2,global); - t->add_button(3,get_icon("MoveUp","EditorIcons"),1); - t->add_button(3,get_icon("MoveDown","EditorIcons"),2); - t->add_button(3,get_icon("Del","EditorIcons"),0); - - - } - - updating_autoload=false; - -} - void ProjectSettings::_toggle_search_bar(bool p_pressed) { globals_editor->get_property_editor()->set_use_filter(p_pressed); @@ -1508,14 +1218,6 @@ void ProjectSettings::_bind_methods() { ObjectTypeDB::bind_method(_MD("_translation_res_delete"),&ProjectSettings::_translation_res_delete); ObjectTypeDB::bind_method(_MD("_translation_res_option_delete"),&ProjectSettings::_translation_res_option_delete); - ObjectTypeDB::bind_method(_MD("_autoload_add"),&ProjectSettings::_autoload_add); - ObjectTypeDB::bind_method(_MD("_autoload_file_open"),&ProjectSettings::_autoload_file_open); - ObjectTypeDB::bind_method(_MD("_autoload_file_callback"),&ProjectSettings::_autoload_file_callback); - ObjectTypeDB::bind_method(_MD("_update_autoload"),&ProjectSettings::_update_autoload); - ObjectTypeDB::bind_method(_MD("_autoload_delete"),&ProjectSettings::_autoload_delete); - ObjectTypeDB::bind_method(_MD("_autoload_edited"),&ProjectSettings::_autoload_edited); - ObjectTypeDB::bind_method(_MD("_autoload_selected"),&ProjectSettings::_autoload_selected); - ObjectTypeDB::bind_method(_MD("_clear_search_box"),&ProjectSettings::_clear_search_box); ObjectTypeDB::bind_method(_MD("_toggle_search_bar"),&ProjectSettings::_toggle_search_bar); @@ -1858,69 +1560,10 @@ ProjectSettings::ProjectSettings(EditorData *p_data) { { - VBoxContainer *avb = memnew( VBoxContainer ); - tab_container->add_child(avb); - avb->set_name(TTR("AutoLoad")); - HBoxContainer *ahb = memnew( HBoxContainer); - avb->add_child(ahb); - - - VBoxContainer *avb_path = memnew( VBoxContainer ); - avb_path->set_h_size_flags(SIZE_EXPAND_FILL); - HBoxContainer *ahb_path = memnew( HBoxContainer ); - autoload_add_path = memnew(LineEdit); - autoload_add_path->set_h_size_flags(SIZE_EXPAND_FILL); - ahb_path->add_child(autoload_add_path); - Button *browseaa = memnew( Button("..") ); - ahb_path->add_child(browseaa); - browseaa->connect("pressed",this,"_autoload_file_open"); - - avb_path->add_margin_child(TTR("Path:"),ahb_path); - ahb->add_child(avb_path); - - VBoxContainer *avb_name = memnew( VBoxContainer ); - avb_name->set_h_size_flags(SIZE_EXPAND_FILL); - - HBoxContainer *ahb_name = memnew( HBoxContainer ); - autoload_add_name = memnew(LineEdit); - autoload_add_name->set_h_size_flags(SIZE_EXPAND_FILL); - ahb_name->add_child(autoload_add_name); - avb_name->add_margin_child(TTR("Node Name:"),ahb_name); - Button *addaa = memnew( Button(TTR("Add")) ); - ahb_name->add_child(addaa); - addaa->connect("pressed",this,"_autoload_add"); - - ahb->add_child(avb_name); - - autoload_list = memnew( Tree ); - autoload_list->set_v_size_flags(SIZE_EXPAND_FILL); - avb->add_margin_child(TTR("List:"),autoload_list,true); - - autoload_file_open=memnew( EditorFileDialog ); - add_child(autoload_file_open); - autoload_file_open->set_mode(EditorFileDialog::MODE_OPEN_FILE); - autoload_file_open->connect("file_selected",this,"_autoload_file_callback"); - - autoload_list->set_columns(4); - autoload_list->set_column_titles_visible(true); - autoload_list->set_column_title(0,TTR("Name")); - autoload_list->set_column_expand(0,true); - autoload_list->set_column_min_width(0,100); - autoload_list->set_column_title(1,TTR("Path")); - autoload_list->set_column_expand(1,true); - autoload_list->set_column_min_width(1,100); - autoload_list->set_column_title(2,TTR("Singleton")); - autoload_list->set_column_expand(2,false); - autoload_list->set_column_min_width(2,80); - autoload_list->set_column_expand(3,false); - autoload_list->set_column_min_width(3,80); - - autoload_list->connect("button_pressed",this,"_autoload_delete"); - autoload_list->connect("item_edited",this,"_autoload_edited"); - autoload_list->connect("cell_selected", this, "_autoload_selected"); - - updating_autoload=false; - + autoload_settings = memnew( EditorAutoloadSettings ); + autoload_settings->set_name(TTR("AutoLoad")); + tab_container->add_child(autoload_settings); + autoload_settings->connect("autoload_changed", this, "_settings_changed"); } { diff --git a/tools/editor/project_settings.h b/tools/editor/project_settings.h index 79e1acf75e..46e98f69ad 100644 --- a/tools/editor/project_settings.h +++ b/tools/editor/project_settings.h @@ -34,6 +34,7 @@ #include "undo_redo.h" #include "editor_data.h" #include "scene/gui/tab_container.h" +#include "editor_autoload_settings.h" #include "editor_plugin_settings.h" //#include "project_export_settings.h" @@ -88,26 +89,10 @@ class ProjectSettings : public AcceptDialog { Tree *translation_remap; Tree *translation_remap_options; - - Tree *autoload_list; - String selected_autoload; - EditorFileDialog *autoload_file_open; - LineEdit *autoload_add_name; - LineEdit *autoload_add_path; - + EditorAutoloadSettings *autoload_settings; EditorPluginSettings *plugin_settings; - void _update_autoload(); - void _autoload_file_callback(const String& p_path); - void _autoload_add(); - void _autoload_edited(); - void _autoload_file_open(); - void _autoload_delete(Object *p_item,int p_column, int p_button); - void _autoload_selected(); - bool updating_autoload; - - void _item_selected(); void _item_adds(String); void _item_add(); diff --git a/tools/editor/property_editor.cpp b/tools/editor/property_editor.cpp index 246785932d..ceb62d5ff0 100644 --- a/tools/editor/property_editor.cpp +++ b/tools/editor/property_editor.cpp @@ -389,7 +389,6 @@ bool CustomPropertyEditor::edit(Object* p_owner,const String& p_name,Variant::Ty List<String> names; names.push_back("value:"); config_value_editors(1,1,50,names); - Vector3 vec=v; value_editor[0]->set_text( String::num(v) ); } @@ -436,7 +435,6 @@ bool CustomPropertyEditor::edit(Object* p_owner,const String& p_name,Variant::Ty List<String> names; names.push_back("string:"); config_value_editors(1,1,50,names); - Vector3 vec=v; value_editor[0]->set_text( v ); } @@ -612,6 +610,7 @@ bool CustomPropertyEditor::edit(Object* p_owner,const String& p_name,Variant::Ty color_picker->set_edit_alpha(hint!=PROPERTY_HINT_COLOR_NO_ALPHA); color_picker->set_color(v); set_size( Size2(300*EDSCALE, color_picker->get_combined_minimum_size().height+10*EDSCALE)); + color_picker->set_focus_on_line_edit(); /* int ofs=80; int m=10; @@ -2980,10 +2979,8 @@ void PropertyEditor::update_tree() { else item->set_cell_mode( 1, TreeItem::CELL_MODE_RANGE_EXPRESSION ); - if (p.hint==PROPERTY_HINT_SPRITE_FRAME) { - item->set_range_config(1,0,99999,1); - } else if (p.hint==PROPERTY_HINT_RANGE || p.hint==PROPERTY_HINT_EXP_RANGE) { + if (p.hint==PROPERTY_HINT_SPRITE_FRAME || p.hint==PROPERTY_HINT_RANGE || p.hint==PROPERTY_HINT_EXP_RANGE) { int c = p.hint_string.get_slice_count(","); float min=0,max=100,step=1; @@ -3346,7 +3343,6 @@ void PropertyEditor::update_tree() { String type; if (p.hint==PROPERTY_HINT_RESOURCE_TYPE) type=p.hint_string; - bool notnil=false; if (obj->get( p.name ).get_type() == Variant::NIL || obj->get( p.name ).operator RefPtr().is_null()) { item->set_text(1,"<null>"); @@ -3369,8 +3365,7 @@ void PropertyEditor::update_tree() { } else { item->set_text(1,"<"+res->get_type()+">"); - }; - notnil=true; + } if (has_icon(res->get_type(),"EditorIcons")) { type=res->get_type(); @@ -4192,6 +4187,8 @@ public: void SectionedPropertyEditor::_bind_methods() { ObjectTypeDB::bind_method("_section_selected",&SectionedPropertyEditor::_section_selected); + + ObjectTypeDB::bind_method("update_category_list", &SectionedPropertyEditor::update_category_list); } void SectionedPropertyEditor::_section_selected(int p_which) { diff --git a/tools/editor/quick_open.cpp b/tools/editor/quick_open.cpp index fc2a2241ab..e18dc584d5 100644 --- a/tools/editor/quick_open.cpp +++ b/tools/editor/quick_open.cpp @@ -109,16 +109,27 @@ void EditorQuickOpen::_sbox_input(const InputEvent& p_ie) { } -void EditorQuickOpen::_parse_fs(EditorFileSystemDirectory *efsd) { +float EditorQuickOpen::_path_cmp(String search, String path) const { + + if (search == path) { + return 1.2f; + } + if (path.findn(search) != -1) { + return 1.1f; + } + return path.to_lower().similarity(search.to_lower()); +} + +void EditorQuickOpen::_parse_fs(EditorFileSystemDirectory *efsd, Vector< Pair< String, Ref<Texture> > > &list) { if (!add_directories) { for(int i=0;i<efsd->get_subdir_count();i++) { - _parse_fs(efsd->get_subdir(i)); + _parse_fs(efsd->get_subdir(i), list); } } - TreeItem *root = search_options->get_root(); + String search_text = search_box->get_text(); if (add_directories) { String path = efsd->get_path(); @@ -126,11 +137,27 @@ void EditorQuickOpen::_parse_fs(EditorFileSystemDirectory *efsd) { path+="/"; if (path!="res://") { path=path.substr(6,path.length()); - if (search_box->get_text().is_subsequence_ofi(path)) { - TreeItem *ti = search_options->create_item(root); - ti->set_text(0,path); - Ref<Texture> icon = get_icon("folder","FileDialog"); - ti->set_icon(0,icon); + if (search_text.is_subsequence_ofi(path)) { + Pair< String, Ref<Texture> > pair; + pair.first = path; + pair.second = get_icon("folder", "FileDialog"); + + if (search_text != String() && list.size() > 0) { + + float this_sim = _path_cmp(search_text, path); + float other_sim = _path_cmp(list[0].first, path); + int pos = 1; + + while (pos < list.size() && this_sim <= other_sim) { + other_sim = _path_cmp(list[pos++].first, path); + } + + pos = this_sim >= other_sim ? pos - 1 : pos; + list.insert(pos, pair); + + } else { + list.push_back(pair); + } } } } @@ -138,12 +165,29 @@ void EditorQuickOpen::_parse_fs(EditorFileSystemDirectory *efsd) { String file = efsd->get_file_path(i); file=file.substr(6,file.length()); - if (ObjectTypeDB::is_type(efsd->get_file_type(i),base_type) && (search_box->get_text().is_subsequence_ofi(file))) { - TreeItem *ti = search_options->create_item(root); - ti->set_text(0,file); - Ref<Texture> icon = get_icon( (has_icon(efsd->get_file_type(i),ei)?efsd->get_file_type(i):ot),ei); - ti->set_icon(0,icon); + if (ObjectTypeDB::is_type(efsd->get_file_type(i),base_type) && (search_text.is_subsequence_ofi(file))) { + Pair< String, Ref<Texture> > pair; + pair.first = file; + pair.second = get_icon((has_icon(efsd->get_file_type(i), ei) ? efsd->get_file_type(i) : ot), ei); + + if (search_text != String() && list.size() > 0) { + + float this_sim = _path_cmp(search_text, file); + float other_sim = _path_cmp(list[0].first, file); + int pos = 1; + + while (pos < list.size() && this_sim <= other_sim) { + other_sim = _path_cmp(list[pos++].first, file); + } + + pos = this_sim >= other_sim ? pos - 1 : pos; + list.insert(pos, pair); + + } else { + + list.push_back(pair); + } } } @@ -151,7 +195,7 @@ void EditorQuickOpen::_parse_fs(EditorFileSystemDirectory *efsd) { if (add_directories) { for(int i=0;i<efsd->get_subdir_count();i++) { - _parse_fs(efsd->get_subdir(i)); + _parse_fs(efsd->get_subdir(i), list); } } @@ -159,10 +203,18 @@ void EditorQuickOpen::_parse_fs(EditorFileSystemDirectory *efsd) { void EditorQuickOpen::_update_search() { - search_options->clear(); TreeItem *root = search_options->create_item(); - _parse_fs(EditorFileSystem::get_singleton()->get_filesystem()); + EditorFileSystemDirectory *efsd = EditorFileSystem::get_singleton()->get_filesystem(); + Vector< Pair< String, Ref<Texture> > > list; + + _parse_fs(efsd, list); + + for (int i = 0; i < list.size(); i++) { + TreeItem *ti = search_options->create_item(root); + ti->set_text(0, list[i].first); + ti->set_icon(0, list[i].second); + } if (root->get_children()) { TreeItem *ti = root->get_children(); diff --git a/tools/editor/quick_open.h b/tools/editor/quick_open.h index 520f7e569d..c253f7606e 100644 --- a/tools/editor/quick_open.h +++ b/tools/editor/quick_open.h @@ -32,6 +32,7 @@ #include "scene/gui/dialogs.h" #include "scene/gui/tree.h" #include "editor_file_system.h" +#include "pair.h" class EditorQuickOpen : public ConfirmationDialog { OBJ_TYPE(EditorQuickOpen,ConfirmationDialog ) @@ -47,7 +48,8 @@ class EditorQuickOpen : public ConfirmationDialog { void _update_search(); void _sbox_input(const InputEvent& p_ie); - void _parse_fs(EditorFileSystemDirectory *efsd); + void _parse_fs(EditorFileSystemDirectory *efsd, Vector< Pair< String,Ref <Texture> > > &list); + float _path_cmp(String search, String path) const; void _confirmed(); diff --git a/tools/editor/scene_tree_dock.cpp b/tools/editor/scene_tree_dock.cpp index 30ffdf6664..2e7d65eadc 100644 --- a/tools/editor/scene_tree_dock.cpp +++ b/tools/editor/scene_tree_dock.cpp @@ -39,16 +39,20 @@ #include "multi_node_edit.h" #include "tools/editor/plugins/animation_player_editor_plugin.h" #include "animation_editor.h" - +#include "scene/main/viewport.h" void SceneTreeDock::_unhandled_key_input(InputEvent p_event) { + if (get_viewport()->get_modal_stack_top()) + return; //ignore because of modal window + uint32_t sc = p_event.key.get_scancode_with_modifiers(); if (!p_event.key.pressed || p_event.key.echo) return; + if (ED_IS_SHORTCUT("scene_tree/add_child_node", p_event)) { _tool_selected(TOOL_NEW); } @@ -239,7 +243,7 @@ void SceneTreeDock::_tool_selected(int p_tool, bool p_confirm_override) { //if (!_validate_no_foreign()) // break; - create_dialog->popup_centered_ratio(); + create_dialog->popup(true); } break; case TOOL_INSTANCE: { @@ -277,7 +281,7 @@ void SceneTreeDock::_tool_selected(int p_tool, bool p_confirm_override) { } break; case TOOL_REPLACE: { - create_dialog->popup_centered_ratio(); + create_dialog->popup(false); } break; case TOOL_CONNECT: { @@ -378,11 +382,8 @@ void SceneTreeDock::_tool_selected(int p_tool, bool p_confirm_override) { ERR_FAIL_COND(!top_node->get_parent()); ERR_FAIL_COND(!bottom_node->get_parent()); - int top_node_pos = top_node->get_index(); int bottom_node_pos = bottom_node->get_index(); - - int top_node_pos_next = top_node_pos + (MOVING_DOWN ? 1 : -1); - int bottom_node_pos_next = bottom_node_pos + (MOVING_DOWN ? 1 : -1); + int top_node_pos_next = top_node->get_index() + (MOVING_DOWN ? 1 : -1); editor_data->get_undo_redo().add_do_method(top_node->get_parent(), "move_child", top_node, top_node_pos_next); editor_data->get_undo_redo().add_undo_method(bottom_node->get_parent(), "move_child", bottom_node, bottom_node_pos); @@ -1065,6 +1066,8 @@ void SceneTreeDock::_do_reparent(Node* p_new_parent,int p_position_in_parent,Vec List<Pair<NodePath,NodePath> > path_renames; + int inc=0; + for(int ni=0;ni<p_nodes.size();ni++) { //no undo for now, sorry @@ -1081,12 +1084,16 @@ void SceneTreeDock::_do_reparent(Node* p_new_parent,int p_position_in_parent,Vec } + if (new_parent==node->get_parent() && node->get_index() < p_position_in_parent+ni) { + //if child will generate a gap when moved, adjust + inc--; + } editor_data->get_undo_redo().add_do_method(node->get_parent(),"remove_child",node); editor_data->get_undo_redo().add_do_method(new_parent,"add_child",node); if (p_position_in_parent>=0) - editor_data->get_undo_redo().add_do_method(new_parent,"move_child",node,p_position_in_parent+ni); + editor_data->get_undo_redo().add_do_method(new_parent,"move_child",node,p_position_in_parent+inc); ScriptEditorDebugger *sed = ScriptEditor::get_singleton()->get_debugger(); String new_name = new_parent->validate_child_name(node->get_name()); @@ -1098,17 +1105,8 @@ void SceneTreeDock::_do_reparent(Node* p_new_parent,int p_position_in_parent,Vec editor_data->get_undo_redo().add_do_method(node,"set_global_transform",node->cast_to<Node2D>()->get_global_transform()); if (node->cast_to<Spatial>()) editor_data->get_undo_redo().add_do_method(node,"set_global_transform",node->cast_to<Spatial>()->get_global_transform()); - if (node->cast_to<Control>()) { - bool can_do_it=false; - Control *c=node->cast_to<Control>(); - if (c->get_parent()->cast_to<Container>()) - can_do_it=false; - for(int i=0;i<4;i++) { - if (c->get_anchor(Margin(i))!=ANCHOR_BEGIN) - can_do_it=false; - } + if (node->cast_to<Control>()) editor_data->get_undo_redo().add_do_method(node,"set_global_pos",node->cast_to<Control>()->get_global_pos()); - } } editor_data->get_undo_redo().add_do_method(this,"_set_owners",edited_scene,owners); @@ -1118,6 +1116,8 @@ void SceneTreeDock::_do_reparent(Node* p_new_parent,int p_position_in_parent,Vec editor_data->get_undo_redo().add_undo_method(new_parent,"remove_child",node); + inc++; + } //add and move in a second step.. (so old order is preserved) @@ -1149,17 +1149,8 @@ void SceneTreeDock::_do_reparent(Node* p_new_parent,int p_position_in_parent,Vec editor_data->get_undo_redo().add_undo_method(node,"set_transform",node->cast_to<Node2D>()->get_transform()); if (node->cast_to<Spatial>()) editor_data->get_undo_redo().add_undo_method(node,"set_transform",node->cast_to<Spatial>()->get_transform()); - if (node->cast_to<Control>()) { - bool can_do_it=false; - Control *c=node->cast_to<Control>(); - if (c->get_parent()->cast_to<Container>()) - can_do_it=false; - for(int i=0;i<4;i++) { - if (c->get_anchor(Margin(i))!=ANCHOR_BEGIN) - can_do_it=false; - } + if (node->cast_to<Control>()) editor_data->get_undo_redo().add_undo_method(node,"set_pos",node->cast_to<Control>()->get_pos()); - } } @@ -1539,7 +1530,7 @@ static bool _has_visible_children(Node* p_node) { for(int i=0;i<p_node->get_child_count();i++) { Node* child = p_node->get_child(i); - if (!_is_node_visible(p_node)) + if (!_is_node_visible(child)) continue; return true; @@ -1551,9 +1542,9 @@ static bool _has_visible_children(Node* p_node) { -static Node* _find_last_visible(Node*p_node) { +static Node* _find_last_visible(Node* p_node) { - Node*last=NULL; + Node* last=NULL; bool collapsed = p_node->has_meta("_editor_collapsed") ? (bool)p_node->get_meta("_editor_collapsed") : false; @@ -1579,7 +1570,7 @@ static Node* _find_last_visible(Node*p_node) { } -void SceneTreeDock::_normalize_drop(Node*& to_node, int &to_pos,int p_type) { +void SceneTreeDock::_normalize_drop(Node*& to_node, int &to_pos, int p_type) { to_pos=-1; @@ -1620,6 +1611,7 @@ void SceneTreeDock::_normalize_drop(Node*& to_node, int &to_pos,int p_type) { //just insert over this node because nothing is above at the same level to_pos=to_node->get_index(); to_node=to_node->get_parent(); + } } else if (p_type==1) { @@ -1646,12 +1638,13 @@ void SceneTreeDock::_normalize_drop(Node*& to_node, int &to_pos,int p_type) { break; } } - if (lower_sibling) { to_pos=lower_sibling->get_index(); } to_node=to_node->get_parent(); + + } #if 0 //quite complicated, look for next visible in tree diff --git a/tools/editor/scene_tree_dock.h b/tools/editor/scene_tree_dock.h index 60bec9b4f4..51041a235b 100644 --- a/tools/editor/scene_tree_dock.h +++ b/tools/editor/scene_tree_dock.h @@ -139,7 +139,7 @@ class SceneTreeDock : public VBoxContainer { void _fill_path_renames(Vector<StringName> base_path,Vector<StringName> new_base_path,Node * p_node, List<Pair<NodePath,NodePath> > *p_renames); - void _normalize_drop(Node*& to_node, int &to_pos,int p_type); + void _normalize_drop(Node*& to_node, int &to_pos, int p_type); void _nodes_dragged(Array p_nodes,NodePath p_to,int p_type); void _files_dropped(Vector<String> p_files,NodePath p_to,int p_type); diff --git a/tools/editor/scene_tree_editor.cpp b/tools/editor/scene_tree_editor.cpp index a155f0c0cf..cc11cbc562 100644 --- a/tools/editor/scene_tree_editor.cpp +++ b/tools/editor/scene_tree_editor.cpp @@ -260,13 +260,21 @@ void SceneTreeEditor::_cell_button_pressed(Object *p_item,int p_column,int p_id) } else if (p_id==BUTTON_SIGNALS) { - item->select(0); + editor_selection->clear(); + editor_selection->add_node(n); + + set_selected(n); + NodeDock::singleton->get_parent()->call("set_current_tab",NodeDock::singleton->get_index()); NodeDock::singleton->show_connections(); } else if (p_id==BUTTON_GROUPS) { - item->select(0); + editor_selection->clear(); + editor_selection->add_node(n); + + set_selected(n); + NodeDock::singleton->get_parent()->call("set_current_tab",NodeDock::singleton->get_index()); NodeDock::singleton->show_groups(); } @@ -302,8 +310,15 @@ bool SceneTreeEditor::_add_nodes(Node *p_node,TreeItem *p_parent) { item->set_selectable(0,true); if (can_rename) { - - bool collapsed = p_node->has_meta("_editor_collapsed") ? (bool)p_node->get_meta("_editor_collapsed") : false; +#ifdef ENABLE_DEPRECATED + if (p_node->has_meta("_editor_collapsed")) { + //remove previous way of storing folding, which did not get along with scene inheritance and instancing + if ((bool)p_node->get_meta("_editor_collapsed")) + p_node->set_display_folded(true); + p_node->set_meta("_editor_collapsed",Variant()); + } +#endif + bool collapsed = p_node->is_displayed_folded(); if (collapsed) item->set_collapsed(true); } @@ -896,10 +911,7 @@ void SceneTreeEditor::_cell_collapsed(Object *p_obj) { Node *n=get_node(np); ERR_FAIL_COND(!n); - if (collapsed) - n->set_meta("_editor_collapsed",true); - else - n->set_meta("_editor_collapsed",Variant()); + n->set_display_folded(collapsed); } diff --git a/tools/editor/scenes_dock.cpp b/tools/editor/scenes_dock.cpp index 44832c84eb..75c983994e 100644 --- a/tools/editor/scenes_dock.cpp +++ b/tools/editor/scenes_dock.cpp @@ -37,6 +37,8 @@ #include "editor_settings.h" #include "scene/main/viewport.h" + + bool ScenesDock::_create_tree(TreeItem *p_parent,EditorFileSystemDirectory *p_dir) { @@ -57,60 +59,8 @@ bool ScenesDock::_create_tree(TreeItem *p_parent,EditorFileSystemDirectory *p_di item->select(0); } - - //item->set_custom_bg_color(0,get_color("prop_subsection","Editor")); - - bool has_items=false; - - for(int i=0;i<p_dir->get_subdir_count();i++) { - - if (_create_tree(item,p_dir->get_subdir(i))) - has_items=true; - } -#if 0 - for (int i=0;i<p_dir->get_file_count();i++) { - - String file_name = p_dir->get_file(i); - String file_path = p_dir->get_file_path(i); - - // ScenesDockFilter::FILTER_PATH - String search_from = file_path.right(6); // trim "res://" - if (file_filter == ScenesDockFilter::FILTER_NAME) - search_from = file_name; - else if (file_filter == ScenesDockFilter::FILTER_FOLDER) - search_from = file_path.right(6).get_base_dir(); - - if (search_term!="" && search_from.findn(search_term)==-1) - continue; - - bool isfave = favorites.has(file_path); - if (button_favorite->is_pressed() && !isfave) - continue; - - TreeItem *fitem = tree->create_item(item); - fitem->set_cell_mode(0,TreeItem::CELL_MODE_CHECK); - fitem->set_editable(0,true); - fitem->set_checked(0,isfave); - fitem->set_text(0,file_name); - - Ref<Texture> icon = get_icon( (has_icon(p_dir->get_file_type(i),"EditorIcons")?p_dir->get_file_type(i):String("Object")),"EditorIcons"); - fitem->set_icon(0, icon ); - - - fitem->set_metadata(0,file_path); - //if (p_dir->files[i]->icon.is_valid()) { -// fitem->set_icon(0,p_dir->files[i]->icon); -// } - has_items=true; - - } -#endif - /*if (!has_items) { - - memdelete(item); - return false; - - }*/ + for(int i=0;i<p_dir->get_subdir_count();i++) + _create_tree(item,p_dir->get_subdir(i)); return true; } @@ -164,12 +114,14 @@ void ScenesDock::_notification(int p_what) { if (split_mode) { file_list_vb->hide(); + tree->set_custom_minimum_size(Size2(0,0)); tree->set_v_size_flags(SIZE_EXPAND_FILL); button_back->show(); } else { tree->show(); file_list_vb->show(); + tree->set_custom_minimum_size(Size2(0,200)*EDSCALE); tree->set_v_size_flags(SIZE_FILL); button_back->hide(); if (!EditorFileSystem::get_singleton()->is_scanning()) { @@ -187,6 +139,7 @@ void ScenesDock::_notification(int p_what) { initialized=true; EditorFileSystem::get_singleton()->connect("filesystem_changed",this,"_fs_changed"); + EditorResourcePreview::get_singleton()->connect("preview_invalidated",this,"_preview_invalidated"); button_reload->set_icon( get_icon("Reload","EditorIcons")); button_favorite->set_icon( get_icon("Favorites","EditorIcons")); @@ -661,6 +614,27 @@ void ScenesDock::_go_to_dir(const String& p_dir){ } + +void ScenesDock::_preview_invalidated(const String& p_path) { + + if (p_path.get_base_dir()==path && search_box->get_text()==String() && file_list_vb->is_visible()) { + + + for(int i=0;i<files->get_item_count();i++) { + + if (files->get_item_metadata(i)==p_path) { + //re-request preview + Array udata; + udata.resize(2); + udata[0]=i; + udata[1]=files->get_item_text(i); + EditorResourcePreview::get_singleton()->queue_resource_preview(p_path,this,"_thumbnail_done",udata); + break; + } + } + } +} + void ScenesDock::_fs_changed() { button_hist_prev->set_disabled(history_pos==0); @@ -1618,6 +1592,9 @@ void ScenesDock::_bind_methods() { ObjectTypeDB::bind_method(_MD("drop_data_fw"), &ScenesDock::drop_data_fw); ObjectTypeDB::bind_method(_MD("_files_list_rmb_select"),&ScenesDock::_files_list_rmb_select); + ObjectTypeDB::bind_method(_MD("_preview_invalidated"),&ScenesDock::_preview_invalidated); + + ADD_SIGNAL(MethodInfo("instance")); ADD_SIGNAL(MethodInfo("open")); @@ -1668,7 +1645,7 @@ ScenesDock::ScenesDock(EditorNode *p_editor) { button_favorite->set_focus_mode(FOCUS_NONE); - Control *spacer = memnew( Control); +// Control *spacer = memnew( Control); @@ -1702,7 +1679,6 @@ ScenesDock::ScenesDock(EditorNode *p_editor) { tree->set_hide_root(true); split_box->add_child(tree); - tree->set_custom_minimum_size(Size2(0,200)*EDSCALE); tree->set_drag_forwarding(this); diff --git a/tools/editor/scenes_dock.h b/tools/editor/scenes_dock.h index ed24711abb..0973fce250 100644 --- a/tools/editor/scenes_dock.h +++ b/tools/editor/scenes_dock.h @@ -168,6 +168,8 @@ class ScenesDock : public VBoxContainer { bool can_drop_data_fw(const Point2& p_point,const Variant& p_data,Control* p_from) const; void drop_data_fw(const Point2& p_point,const Variant& p_data,Control* p_from); + void _preview_invalidated(const String& p_path); + protected: void _notification(int p_what); static void _bind_methods(); diff --git a/tools/editor/script_editor_debugger.cpp b/tools/editor/script_editor_debugger.cpp index 6d8f54d88f..b6390e5aae 100644 --- a/tools/editor/script_editor_debugger.cpp +++ b/tools/editor/script_editor_debugger.cpp @@ -338,8 +338,9 @@ void ScriptEditorDebugger::_parse_message(const String& p_msg,const Array& p_dat docontinue->set_disabled(false); emit_signal("breaked",true,can_continue); OS::get_singleton()->move_window_to_foreground(); - if (!profiler->is_seeking()) + if (error!="") { tabs->set_current_tab(0); + } profiler->set_enabled(false); @@ -819,7 +820,6 @@ void ScriptEditorDebugger::_performance_draw() { if(which.empty()) return; - Color graph_color=get_color("font_color","TextEdit"); Ref<StyleBox> graph_sb = get_stylebox("normal","TextEdit"); Ref<Font> graph_font = get_font("font","TextEdit"); diff --git a/tools/editor/settings_config_dialog.cpp b/tools/editor/settings_config_dialog.cpp index e1a2ea162e..f436e369af 100644 --- a/tools/editor/settings_config_dialog.cpp +++ b/tools/editor/settings_config_dialog.cpp @@ -97,11 +97,24 @@ void EditorSettingsDialog::_clear_search_box() { property_editor->get_property_editor()->update_tree(); } +void EditorSettingsDialog::_clear_shortcut_search_box() { + if (shortcut_search_box->get_text()=="") + return; + + shortcut_search_box->clear(); +} + +void EditorSettingsDialog::_filter_shortcuts(const String& p_filter) { + shortcut_filter = p_filter; + _update_shortcuts(); +} + void EditorSettingsDialog::_notification(int p_what) { if (p_what==NOTIFICATION_ENTER_TREE) { clear_button->set_icon(get_icon("Close","EditorIcons")); + shortcut_clear_button->set_icon(get_icon("Close","EditorIcons")); } } @@ -137,26 +150,30 @@ void EditorSettingsDialog::_update_shortcuts() { sections[section_name]=section; section->set_custom_bg_color(0,get_color("prop_subsection","Editor")); section->set_custom_bg_color(1,get_color("prop_subsection","Editor")); - } - TreeItem *item = shortcuts->create_item(section); - - - item->set_text(0,sc->get_name()); - item->set_text(1,sc->get_as_text()); - if (!sc->is_shortcut(original) && !(sc->get_shortcut().type==InputEvent::NONE && original.type==InputEvent::NONE)) { - item->add_button(1,get_icon("Reload","EditorIcons"),2); + if (shortcut_filter.is_subsequence_ofi(sc->get_name())) { + TreeItem *item = shortcuts->create_item(section); + + item->set_text(0,sc->get_name()); + item->set_text(1,sc->get_as_text()); + if (!sc->is_shortcut(original) && !(sc->get_shortcut().type==InputEvent::NONE && original.type==InputEvent::NONE)) { + item->add_button(1,get_icon("Reload","EditorIcons"),2); + } + item->add_button(1,get_icon("Edit","EditorIcons"),0); + item->add_button(1,get_icon("Close","EditorIcons"),1); + item->set_tooltip(0,E->get()); + item->set_metadata(0,E->get()); } - item->add_button(1,get_icon("Edit","EditorIcons"),0); - item->add_button(1,get_icon("Close","EditorIcons"),1); - item->set_tooltip(0,E->get()); - item->set_metadata(0,E->get()); } - - - + // remove sections with no shortcuts + for(Map<String,TreeItem*>::Element *E=sections.front();E;E=E->next()) { + TreeItem *section = E->get(); + if (section->get_children() == NULL) { + root->remove_child(section); + } + } } void EditorSettingsDialog::_shortcut_button_pressed(Object* p_item,int p_column,int p_idx) { @@ -265,7 +282,9 @@ void EditorSettingsDialog::_bind_methods() { ObjectTypeDB::bind_method(_MD("_settings_save"),&EditorSettingsDialog::_settings_save); ObjectTypeDB::bind_method(_MD("_settings_changed"),&EditorSettingsDialog::_settings_changed); ObjectTypeDB::bind_method(_MD("_clear_search_box"),&EditorSettingsDialog::_clear_search_box); + ObjectTypeDB::bind_method(_MD("_clear_shortcut_search_box"),&EditorSettingsDialog::_clear_shortcut_search_box); ObjectTypeDB::bind_method(_MD("_shortcut_button_pressed"),&EditorSettingsDialog::_shortcut_button_pressed); + ObjectTypeDB::bind_method(_MD("_filter_shortcuts"),&EditorSettingsDialog::_filter_shortcuts); ObjectTypeDB::bind_method(_MD("_update_shortcuts"),&EditorSettingsDialog::_update_shortcuts); ObjectTypeDB::bind_method(_MD("_press_a_key_confirm"),&EditorSettingsDialog::_press_a_key_confirm); ObjectTypeDB::bind_method(_MD("_wait_for_key"),&EditorSettingsDialog::_wait_for_key); @@ -311,6 +330,23 @@ EditorSettingsDialog::EditorSettingsDialog() { tabs->add_child(vbc); vbc->set_name(TTR("Shortcuts")); + hbc = memnew( HBoxContainer ); + hbc->set_h_size_flags(Control::SIZE_EXPAND_FILL); + vbc->add_child(hbc); + + l = memnew( Label ); + l->set_text(TTR("Search:")+" "); + hbc->add_child(l); + + shortcut_search_box = memnew( LineEdit ); + shortcut_search_box->set_h_size_flags(Control::SIZE_EXPAND_FILL); + hbc->add_child(shortcut_search_box); + shortcut_search_box->connect("text_changed", this, "_filter_shortcuts"); + + shortcut_clear_button = memnew( ToolButton ); + hbc->add_child(shortcut_clear_button); + shortcut_clear_button->connect("pressed",this,"_clear_shortcut_search_box"); + shortcuts = memnew( Tree ); vbc->add_margin_child("Shortcut List:",shortcuts,true); shortcuts->set_columns(2); diff --git a/tools/editor/settings_config_dialog.h b/tools/editor/settings_config_dialog.h index c930de6a77..68a2b008f0 100644 --- a/tools/editor/settings_config_dialog.h +++ b/tools/editor/settings_config_dialog.h @@ -45,7 +45,9 @@ class EditorSettingsDialog : public AcceptDialog { TabContainer *tabs; LineEdit *search_box; + LineEdit *shortcut_search_box; ToolButton *clear_button; + ToolButton *shortcut_clear_button; SectionedPropertyEditor *property_editor; Timer *timer; @@ -56,6 +58,7 @@ class EditorSettingsDialog : public AcceptDialog { Label *press_a_key_label; InputEvent last_wait_for_key; String shortcut_configured; + String shortcut_filter; virtual void cancel_pressed(); virtual void ok_pressed(); @@ -69,8 +72,11 @@ class EditorSettingsDialog : public AcceptDialog { void _press_a_key_confirm(); void _wait_for_key(const InputEvent& p_event); + void _clear_shortcut_search_box(); void _clear_search_box(); + void _filter_shortcuts(const String& p_filter); + void _update_shortcuts(); void _shortcut_button_pressed(Object* p_item,int p_column,int p_idx); diff --git a/tools/editor/spatial_editor_gizmos.cpp b/tools/editor/spatial_editor_gizmos.cpp index 1ca62d3a63..480d33fd0a 100644 --- a/tools/editor/spatial_editor_gizmos.cpp +++ b/tools/editor/spatial_editor_gizmos.cpp @@ -424,16 +424,11 @@ bool EditorSpatialGizmo::intersect_ray(const Camera *p_camera,const Point2& p_po } Transform ti=t.affine_inverse(); - Vector3 ray_from=ti.xform(p_camera->project_ray_origin(p_point)); - Vector3 ray_dir=t.basis.xform_inv(p_camera->project_ray_normal(p_point)).normalized(); - Vector3 ray_to = ray_from+ray_dir*4096; float min_d=1e20; int idx=-1; for(int i=0;i<secondary_handles.size();i++) { -#if 1 - Vector3 hpos = t.xform(secondary_handles[i]); Vector2 p = p_camera->unproject_position(hpos); @@ -449,31 +444,7 @@ bool EditorSpatialGizmo::intersect_ray(const Camera *p_camera,const Point2& p_po idx=i+handles.size(); } - } - -#else - AABB aabb; - aabb.pos=Vector3(-1,-1,-1)*HANDLE_HALF_SIZE; - aabb.size=aabb.pos*-2; - aabb.pos+=secondary_handles[i]; - - - Vector3 rpos,rnorm; - - if (aabb.intersects_segment(ray_from,ray_to,&rpos,&rnorm)) { - - real_t dp = ray_dir.dot(rpos); - if (dp<min_d) { - - r_pos=t.xform(rpos); - r_normal=ti.basis.xform_inv(rnorm).normalized(); - min_d=dp; - idx=i+handles.size(); - - } - } -#endif } if (p_sec_first && idx!=-1) { @@ -486,9 +457,6 @@ bool EditorSpatialGizmo::intersect_ray(const Camera *p_camera,const Point2& p_po for(int i=0;i<handles.size();i++) { -#if 1 - - Vector3 hpos = t.xform(handles[i]); Vector2 p = p_camera->unproject_position(hpos); if (p.distance_to(p_point)<SpatialEditorGizmos::singleton->handle_t->get_width()*0.6) { @@ -503,32 +471,7 @@ bool EditorSpatialGizmo::intersect_ray(const Camera *p_camera,const Point2& p_po idx=i; } - - } - -#else - - AABB aabb; - aabb.pos=Vector3(-1,-1,-1)*HANDLE_HALF_SIZE; - aabb.size=aabb.pos*-2; - aabb.pos+=handles[i]; - - - Vector3 rpos,rnorm; - - if (aabb.intersects_segment(ray_from,ray_to,&rpos,&rnorm)) { - - real_t dp = ray_dir.dot(rpos); - if (dp<min_d) { - - r_pos=t.xform(rpos); - r_normal=ti.basis.xform_inv(rnorm).normalized(); - min_d=dp; - idx=i; - - } } -#endif } if (idx>=0) { @@ -612,9 +555,6 @@ bool EditorSpatialGizmo::intersect_ray(const Camera *p_camera,const Point2& p_po Vector3 ray_dir=ai.basis.xform(p_camera->project_ray_normal(p_point)).normalized(); Vector3 rpos,rnorm; -#if 1 - - if (collision_mesh->intersect_ray(ray_from,ray_dir,rpos,rnorm)) { @@ -622,16 +562,6 @@ bool EditorSpatialGizmo::intersect_ray(const Camera *p_camera,const Point2& p_po r_normal=gt.basis.xform(rnorm).normalized(); return true; } -#else - - if (collision_mesh->intersect_segment(ray_from,ray_from+ray_dir*4906.0,rpos,rnorm)) { - - r_pos=gt.xform(rpos); - r_normal=gt.basis.xform(rnorm).normalized(); - return true; - } - -#endif } return false; @@ -693,12 +623,11 @@ void EditorSpatialGizmo::_bind_methods() { ObjectTypeDB::bind_method(_MD("add_unscaled_billboard","material:Material","default_scale"),&EditorSpatialGizmo::add_unscaled_billboard,DEFVAL(1)); ObjectTypeDB::bind_method(_MD("add_handles","handles","billboard","secondary"),&EditorSpatialGizmo::add_handles,DEFVAL(false),DEFVAL(false)); ObjectTypeDB::bind_method(_MD("set_spatial_node","node:Spatial"),&EditorSpatialGizmo::_set_spatial_node); + ObjectTypeDB::bind_method(_MD("clear"),&EditorSpatialGizmo::clear); BIND_VMETHOD( MethodInfo("redraw")); BIND_VMETHOD( MethodInfo(Variant::STRING,"get_handle_name",PropertyInfo(Variant::INT,"index"))); - { - BIND_VMETHOD( MethodInfo("get_handle_value:Variant",PropertyInfo(Variant::INT,"index"))); - } + BIND_VMETHOD( MethodInfo("get_handle_value:Variant",PropertyInfo(Variant::INT,"index"))); BIND_VMETHOD( MethodInfo("set_handle",PropertyInfo(Variant::INT,"index"),PropertyInfo(Variant::OBJECT,"camera:Camera"),PropertyInfo(Variant::VECTOR2,"point"))); MethodInfo cm = MethodInfo("commit_handle",PropertyInfo(Variant::INT,"index"),PropertyInfo(Variant::NIL,"restore:Variant"),PropertyInfo(Variant::BOOL,"cancel")); cm.default_arguments.push_back(false); @@ -2250,7 +2179,6 @@ void VisibilityNotifierGizmo::set_handle(int p_idx,Camera *p_camera, const Point if (d<0.001) d=0.001; - Vector3 he = aabb.size; aabb.pos[p_idx]=(aabb.pos[p_idx]+aabb.size[p_idx]*0.5)-d; aabb.size[p_idx]=d*2; notifier->set_aabb(aabb); @@ -2456,8 +2384,6 @@ void HingeJointSpatialGizmo::redraw() { if (p3d->get_flag(HingeJoint::FLAG_USE_LIMIT) && ll<ul) { const int points = 32; - float step = (ul-ll)/points; - for(int i=0;i<points;i++) { @@ -2573,8 +2499,6 @@ void SliderJointSpatialGizmo::redraw() { if (ll<ul) { const int points = 32; - float step = (ul-ll)/points; - for(int i=0;i<points;i++) { @@ -2641,7 +2565,6 @@ SliderJointSpatialGizmo::SliderJointSpatialGizmo(SliderJoint* p_p3d) { void ConeTwistJointSpatialGizmo::redraw() { clear(); - float cs = 0.25; Vector<Vector3> points; float r = 1.0; @@ -2837,8 +2760,6 @@ void Generic6DOFJointSpatialGizmo::redraw() { if (enable_ang && ll<=ul) { const int points = 32; - float step = (ul-ll)/points; - for(int i=0;i<points;i++) { diff --git a/tools/editor_fonts/LICENSE.DroidSans.txt b/tools/editor_fonts/LICENSE.DroidSans.txt new file mode 100644 index 0000000000..636f1e2975 --- /dev/null +++ b/tools/editor_fonts/LICENSE.DroidSans.txt @@ -0,0 +1,13 @@ +Copyright (C) 2008 The Android Open Source Project + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/tools/editor_fonts/LICENSE.SourceCodePro.txt b/tools/editor_fonts/LICENSE.SourceCodePro.txt new file mode 100644 index 0000000000..f430ee5dbe --- /dev/null +++ b/tools/editor_fonts/LICENSE.SourceCodePro.txt @@ -0,0 +1,94 @@ +Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name 'Source'. All Rights Reserved. Source is a trademark of Adobe Systems Incorporated in the United States and/or other countries. + +This Font Software is licensed under the SIL Open Font License, Version 1.1. + +This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. + diff --git a/tools/export/blender25/godot_export_manager.py b/tools/export/blender25/godot_export_manager.py deleted file mode 100644 index a249611c71..0000000000 --- a/tools/export/blender25/godot_export_manager.py +++ /dev/null @@ -1,472 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# Script copyright (c) Andreas Esau - -bl_info = { - "name": "Godot Export Manager", - "author": "Andreas Esau", - "version": (1, 0), - "blender": (2, 7, 0), - "location": "Scene Properties > Godot Export Manager", - "description": "Godot Export Manager uses the Better Collada Exporter to manage Export Groups and automatically export the objects groups to Collada Files.", - "warning": "", - "wiki_url": ("http://www.godotengine.org"), - "tracker_url": "", - "category": "Import-Export"} - -import bpy -from bpy.props import StringProperty, BoolProperty, EnumProperty, FloatProperty, FloatVectorProperty, IntProperty, CollectionProperty, PointerProperty -import os -from bpy.app.handlers import persistent -from mathutils import Vector, Matrix - -class godot_export_manager(bpy.types.Panel): - bl_label = "Godot Export Manager" - bl_space_type = 'PROPERTIES' - bl_region_type = 'WINDOW' - bl_context = "scene" - - bpy.types.Scene.godot_export_on_save = BoolProperty(default=False) - - ### draw function for all ui elements - def draw(self, context): - layout = self.layout - split = self.layout.split() - scene = bpy.data.scenes[0] - ob = context.object - scene = context.scene - - row = layout.row() - col = row.column() - col.prop(scene,"godot_export_on_save",text="Export Groups on save") - - row = layout.row() - col = row.column(align=True) - op = col.operator("scene.godot_add_objects_to_group",text="Add selected objects to Group",icon="COPYDOWN") - - op = col.operator("scene.godot_delete_objects_from_group",text="Delete selected objects from Group",icon="PASTEDOWN") - - - - row = layout.row() - col = row.column() - col.label(text="Export Groups:") - - - row = layout.row() - col = row.column() - - col.template_list("UI_List_Godot","dummy",scene, "godot_export_groups", scene, "godot_export_groups_index",rows=1,maxrows=10,type='DEFAULT') - - col = row.column(align=True) - col.operator("scene.godot_add_export_group",text="",icon="ZOOMIN") - col.operator("scene.godot_delete_export_group",text="",icon="ZOOMOUT") - col.operator("scene.godot_export_all_groups",text="",icon="EXPORT") - - if len(scene.godot_export_groups) > 0: - row = layout.row() - col = row.column() - group = scene.godot_export_groups[scene.godot_export_groups_index] - col.prop(group,"name",text="Group Name") - col.prop(group,"export_name",text="Export Name") - col.prop(group,"export_path",text="Export Filepath") - - row = layout.row() - col = row.column() - row = layout.row() - col = row.column() - col.label(text="Export Settings:") - - col = col.row(align=True) - col.prop(group,"apply_loc",toggle=True,icon="MAN_TRANS") - col.prop(group,"apply_rot",toggle=True,icon="MAN_ROT") - col.prop(group,"apply_scale",toggle=True,icon="MAN_SCALE") - - row = layout.row() - col = row.column() - - col.prop(group,"use_include_particle_duplicates") - col.prop(group,"use_mesh_modifiers") - col.prop(group,"use_tangent_arrays") - col.prop(group,"use_triangles") - col.prop(group,"use_copy_images") - col.prop(group,"use_active_layers") - col.prop(group,"use_anim") - col.prop(group,"use_anim_action_all") - col.prop(group,"use_anim_skip_noexp") - col.prop(group,"use_anim_optimize") - col.prop(group,"anim_optimize_precision") - col.prop(group,"use_metadata") - -### Custom template_list look -class UI_List_Godot(bpy.types.UIList): - def draw_item(self, context, layout, data, item, icon, active_data, active_propname, index): - ob = data - slot = item - col = layout.row(align=True) - - col.label(text=item.name,icon="GROUP") - col.prop(item,"active",text="") - - op = col.operator("scene.godot_select_group_objects",text="",emboss=False,icon="RESTRICT_SELECT_OFF") - op.idx = index - op = col.operator("scene.godot_export_group",text="",emboss=False,icon="EXPORT") - op.idx = index - -class add_objects_to_group(bpy.types.Operator): - bl_idname = "scene.godot_add_objects_to_group" - bl_label = "Add Objects to Group" - bl_description = "Adds the selected Objects to the active group below." - - undo = BoolProperty(default=True) - - def execute(self,context): - scene = context.scene - - objects_str = "" - if len(scene.godot_export_groups) > 0: - for i,object in enumerate(context.selected_objects): - if object.name not in scene.godot_export_groups[scene.godot_export_groups_index].nodes: - node = scene.godot_export_groups[scene.godot_export_groups_index].nodes.add() - node.name = object.name - if i == 0: - objects_str += object.name - else: - objects_str += ", "+object.name - - - self.report({'INFO'}, objects_str + " added to group." ) - if self.undo: - bpy.ops.ed.undo_push(message="Objects added to group") - else: - self.report({'WARNING'}, "Create a group first." ) - return{'FINISHED'} - -class del_objects_from_group(bpy.types.Operator): - bl_idname = "scene.godot_delete_objects_from_group" - bl_label = "Delete Objects from Group" - bl_description = "Delets the selected Objects from the active group below." - - def execute(self,context): - scene = context.scene - - if len(scene.godot_export_groups) > 0: - - selected_objects = [] - for object in context.selected_objects: - selected_objects.append(object.name) - - objects_str = "" - j = 0 - for i,node in enumerate(scene.godot_export_groups[scene.godot_export_groups_index].nodes): - if node.name in selected_objects: - scene.godot_export_groups[scene.godot_export_groups_index].nodes.remove(i) - - - if j == 0: - objects_str += object.name - else: - objects_str += ", "+object.name - j+=1 - - - self.report({'INFO'}, objects_str + " deleted from group." ) - bpy.ops.ed.undo_push(message="Objects deleted from group") - else: - self.report({'WARNING'}, "There is no group to delete from." ) - return{'FINISHED'} - -class select_group_objects(bpy.types.Operator): - bl_idname = "scene.godot_select_group_objects" - bl_label = "Select Group Objects" - bl_description = "Will select all group Objects in the scene." - - idx = IntProperty() - - def execute(self,context): - scene = context.scene - for object in context.scene.objects: - object.select = False - for node in scene.godot_export_groups[self.idx].nodes: - if node.name in bpy.data.objects: - bpy.data.objects[node.name].select = True - context.scene.objects.active = bpy.data.objects[node.name] - return{'FINISHED'} - -class export_groups_autosave(bpy.types.Operator): - bl_idname = "scene.godot_export_groups_autosave" - bl_label = "Export All Groups" - bl_description = "Exports all groups to Collada." - - def execute(self,context): - scene = context.scene - if scene.godot_export_on_save: - for i in range(len(scene.godot_export_groups)): - if scene.godot_export_groups[i].active: - bpy.ops.scene.godot_export_group(idx=i) - self.report({'INFO'}, "All Groups exported." ) - bpy.ops.ed.undo_push(message="Export all Groups") - return{'FINISHED'} - -class export_all_groups(bpy.types.Operator): - bl_idname = "scene.godot_export_all_groups" - bl_label = "Export All Groups" - bl_description = "Exports all groups to Collada." - - def execute(self,context): - scene = context.scene - - for i in range(0,len(scene.godot_export_groups)): - bpy.ops.scene.godot_export_group(idx=i,export_all=True) - - self.report({'INFO'}, "All Groups exported." ) - return{'FINISHED'} - - -class export_group(bpy.types.Operator): - bl_idname = "scene.godot_export_group" - bl_label = "Export Group" - bl_description = "Exports the active group to destination folder as Collada file." - - idx = IntProperty(default=0) - export_all = BoolProperty(default=False) - - - def copy_object_recursive(self,ob,parent,single_user = True): - new_ob = bpy.data.objects[ob.name].copy() - if single_user or ob.type=="ARMATURE": - new_mesh_data = new_ob.data.copy() - new_ob.data = new_mesh_data - bpy.context.scene.objects.link(new_ob) - - if ob != parent: - new_ob.parent = parent - else: - new_ob.parent = None - - for child in ob.children: - self.copy_object_recursive(child,new_ob,single_user) - new_ob.select = True - return new_ob - - def delete_object(self,ob): - if ob != None: - for child in ob.children: - self.delete_object(child) - bpy.context.scene.objects.unlink(ob) - bpy.data.objects.remove(ob) - - def convert_group_to_node(self,group): - if group.dupli_group != None: - for object in group.dupli_group.objects: - if object.parent == None: - object = self.copy_object_recursive(object,object,True) - matrix = Matrix(object.matrix_local) - object.matrix_local = Matrix() - object.matrix_local *= group.matrix_local - object.matrix_local *= matrix - - self.delete_object(group) - - def execute(self,context): - - scene = context.scene - group = context.scene.godot_export_groups - - if not group[self.idx].active and self.export_all: - return{'FINISHED'} - - for i,object in enumerate(group[self.idx].nodes): - if object.name in bpy.data.objects: - pass - else: - group[self.idx].nodes.remove(i) - bpy.ops.ed.undo_push(message="Clear not existent Group Nodes.") - - path = group[self.idx].export_path - if (path.find("//")==0 or path.find("\\\\")==0): - #if relative, convert to absolute - path = bpy.path.abspath(path) - path = path.replace("\\","/") - - ### if path exists and group export name is set the group will be exported - if os.path.exists(path) and group[self.idx].export_name != "": - - context.scene.layers = [True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True] - - - if group[self.idx].export_name.endswith(".dae"): - path = os.path.join(path,group[self.idx].export_name) - else: - path = os.path.join(path,group[self.idx].export_name+".dae") - - hide_select = [] - for object in context.scene.objects: - hide_select.append(object.hide_select) - object.hide_select = False - object.select = False - context.scene.objects.active = None - - ### make particle duplicates, parent and select them - nodes_to_be_added = [] - if group[self.idx].use_include_particle_duplicates: - for i,object in enumerate(group[self.idx].nodes): - if bpy.data.objects[object.name].type != "EMPTY": - context.scene.objects.active = bpy.data.objects[object.name] - bpy.data.objects[object.name].select = True - bpy.ops.object.duplicates_make_real() - for object in context.selected_objects: - nodes_to_be_added.append(object) - bpy.ops.object.parent_set(type="OBJECT", keep_transform=False) - - for object in context.selected_objects: - object.select = False - bpy.data.objects[object.name].select = False - context.scene.objects.active = None - for object in nodes_to_be_added: - object.select = True - - ### select all other nodes from the group - for i,object in enumerate(group[self.idx].nodes): - if bpy.data.objects[object.name].type == "EMPTY": - self.convert_group_to_node(bpy.data.objects[object.name]) - else: - bpy.data.objects[object.name].select = True - - bpy.ops.object.transform_apply(location=group[self.idx].apply_loc, rotation=group[self.idx].apply_rot, scale=group[self.idx].apply_scale) - bpy.ops.export_scene.dae(check_existing=True, filepath=path, filter_glob="*.dae", object_types=group[self.idx].object_types, use_export_selected=group[self.idx].use_export_selected, use_mesh_modifiers=group[self.idx].use_mesh_modifiers, use_tangent_arrays=group[self.idx].use_tangent_arrays, use_triangles=group[self.idx].use_triangles, use_copy_images=group[self.idx].use_copy_images, use_active_layers=group[self.idx].use_active_layers, use_anim=group[self.idx].use_anim, use_anim_action_all=group[self.idx].use_anim_action_all, use_anim_skip_noexp=group[self.idx].use_anim_skip_noexp, use_anim_optimize=group[self.idx].use_anim_optimize, anim_optimize_precision=group[self.idx].anim_optimize_precision, use_metadata=group[self.idx].use_metadata) - - self.report({'INFO'}, '"'+group[self.idx].name+'"' + " Group exported." ) - msg = "Export Group "+group[self.idx].name - - bpy.ops.ed.undo_push(message="") - bpy.ops.ed.undo() - bpy.ops.ed.undo_push(message=msg) - - else: - self.report({'INFO'}, "Define Export Name and Export Path." ) - return{'FINISHED'} - -class add_export_group(bpy.types.Operator): - bl_idname = "scene.godot_add_export_group" - bl_label = "Adds a new export Group" - bl_description = "Creates a new Export Group with the selected Objects assigned to it." - - def execute(self,context): - scene = context.scene - - item = scene.godot_export_groups.add() - item.name = "New Group" - for object in context.selected_objects: - node = item.nodes.add() - node.name = object.name - scene.godot_export_groups_index = len(scene.godot_export_groups)-1 - bpy.ops.ed.undo_push(message="Create New Export Group") - return{'FINISHED'} - -class del_export_group(bpy.types.Operator): - bl_idname = "scene.godot_delete_export_group" - bl_label = "Delets the selected export Group" - bl_description = "Delets the active Export Group." - - def invoke(self, context, event): - wm = context.window_manager - return wm.invoke_confirm(self,event) - - def execute(self,context): - scene = context.scene - - scene.godot_export_groups.remove(scene.godot_export_groups_index) - if scene.godot_export_groups_index > 0: - scene.godot_export_groups_index -= 1 - bpy.ops.ed.undo_push(message="Delete Export Group") - return{'FINISHED'} - -class godot_node_list(bpy.types.PropertyGroup): - name = StringProperty() - -class godot_export_groups(bpy.types.PropertyGroup): - name = StringProperty(name="Group Name") - export_name = StringProperty(name="scene_name") - nodes = CollectionProperty(type=godot_node_list) - export_path = StringProperty(subtype="DIR_PATH") - active = BoolProperty(default=True,description="Export Group") - - object_types = EnumProperty(name="Object Types",options={'ENUM_FLAG'},items=(('EMPTY', "Empty", ""),('CAMERA', "Camera", ""),('LAMP', "Lamp", ""),('ARMATURE', "Armature", ""),('MESH', "Mesh", ""),('CURVE', "Curve", ""),),default={'EMPTY', 'CAMERA', 'LAMP', 'ARMATURE', 'MESH','CURVE'}) - - apply_scale = BoolProperty(name="Apply Scale",description="Apply Scale before export.",default=False) - apply_rot = BoolProperty(name="Apply Rotation",description="Apply Rotation before export.",default=False) - apply_loc = BoolProperty(name="Apply Location",description="Apply Location before export.",default=False) - - use_export_selected = BoolProperty(name="Selected Objects",description="Export only selected objects (and visible in active layers if that applies).",default=True) - use_mesh_modifiers = BoolProperty(name="Apply Modifiers",description="Apply modifiers to mesh objects (on a copy!).",default=True) - use_tangent_arrays = BoolProperty(name="Tangent Arrays",description="Export Tangent and Binormal arrays (for normalmapping).",default=False) - use_triangles = BoolProperty(name="Triangulate",description="Export Triangles instead of Polygons.",default=False) - - use_copy_images = BoolProperty(name="Copy Images",description="Copy Images (create images/ subfolder)",default=False) - use_active_layers = BoolProperty(name="Active Layers",description="Export only objects on the active layers.",default=True) - use_anim = BoolProperty(name="Export Animation",description="Export keyframe animation",default=False) - use_anim_action_all = BoolProperty(name="All Actions",description=("Export all actions for the first armature found in separate DAE files"),default=False) - use_anim_skip_noexp = BoolProperty(name="Skip (-noexp) Actions",description="Skip exporting of actions whose name end in (-noexp). Useful to skip control animations.",default=True) - use_anim_optimize = BoolProperty(name="Optimize Keyframes",description="Remove double keyframes",default=True) - - anim_optimize_precision = FloatProperty(name="Precision",description=("Tolerence for comparing double keyframes (higher for greater accuracy)"),min=1, max=16,soft_min=1, soft_max=16,default=6.0) - - use_metadata = BoolProperty(name="Use Metadata",default=True,options={'HIDDEN'}) - use_include_particle_duplicates = BoolProperty(name="Include Particle Duplicates",default=True) - -def register(): - bpy.utils.register_class(godot_export_manager) - bpy.utils.register_class(godot_node_list) - bpy.utils.register_class(godot_export_groups) - bpy.utils.register_class(add_export_group) - bpy.utils.register_class(del_export_group) - bpy.utils.register_class(export_all_groups) - bpy.utils.register_class(export_groups_autosave) - bpy.utils.register_class(export_group) - bpy.utils.register_class(add_objects_to_group) - bpy.utils.register_class(del_objects_from_group) - bpy.utils.register_class(select_group_objects) - bpy.utils.register_class(UI_List_Godot) - - bpy.types.Scene.godot_export_groups = CollectionProperty(type=godot_export_groups) - bpy.types.Scene.godot_export_groups_index = IntProperty(default=0,min=0) - -def unregister(): - bpy.utils.unregister_class(godot_export_manager) - bpy.utils.unregister_class(godot_node_list) - bpy.utils.unregister_class(godot_export_groups) - bpy.utils.unregister_class(export_groups_autosave) - bpy.utils.unregister_class(add_export_group) - bpy.utils.unregister_class(del_export_group) - bpy.utils.unregister_class(export_all_groups) - bpy.utils.unregister_class(export_group) - bpy.utils.unregister_class(add_objects_to_group) - bpy.utils.unregister_class(del_objects_from_group) - bpy.utils.unregister_class(select_group_objects) - bpy.utils.unregister_class(UI_List_Godot) - -@persistent -def auto_export(dummy): - bpy.ops.scene.godot_export_groups_autosave() - -bpy.app.handlers.save_post.append(auto_export) - -if __name__ == "__main__": - register() diff --git a/tools/export/blender25/install.txt b/tools/export/blender25/install.txt deleted file mode 100644 index 049af8848e..0000000000 --- a/tools/export/blender25/install.txt +++ /dev/null @@ -1,11 +0,0 @@ -Godot Author's Own Collada Exporter ------------------------------------ - -1) Copy the "io_scene_dae" directory to wherever blender stores the - scripts/addons folder (You will see many other io_scene_blahblah like - folders). Copy the entire dir, not just the contents, make it just like - the others. -2) Go to Blender settings and enable the "Better Collada" plugin -3) Enjoy proper Collada export. -4) If it's broken, contact us. -
\ No newline at end of file diff --git a/tools/export/blender25/io_scene_dae/__init__.py b/tools/export/blender25/io_scene_dae/__init__.py deleted file mode 100644 index a1a0eabbbe..0000000000 --- a/tools/export/blender25/io_scene_dae/__init__.py +++ /dev/null @@ -1,193 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# <pep8-80 compliant> - -bl_info = { - "name": "Better Collada Exporter", - "author": "Juan Linietsky", - "blender": (2, 5, 8), - "api": 38691, - "location": "File > Import-Export", - "description": ("Export DAE Scenes, This plugin actually works better! otherwise contact me."), - "warning": "", - "wiki_url": ("http://www.godotengine.org"), - "tracker_url": "", - "support": 'OFFICIAL', - "category": "Import-Export"} - - -if "bpy" in locals(): - import imp - if "export_dae" in locals(): - imp.reload(export_dae) - - -import bpy -from bpy.props import StringProperty, BoolProperty, FloatProperty, EnumProperty - -from bpy_extras.io_utils import (ExportHelper, - path_reference_mode, - axis_conversion, - ) - - -class ExportDAE(bpy.types.Operator, ExportHelper): - '''Selection to DAE''' - bl_idname = "export_scene.dae" - bl_label = "Export DAE" - bl_options = {'PRESET'} - - filename_ext = ".dae" - filter_glob = StringProperty(default="*.dae", options={'HIDDEN'}) - - # List of operator properties, the attributes will be assigned - # to the class instance from the operator settings before calling. - - - object_types = EnumProperty( - name="Object Types", - options={'ENUM_FLAG'}, - items=(('EMPTY', "Empty", ""), - ('CAMERA', "Camera", ""), - ('LAMP', "Lamp", ""), - ('ARMATURE', "Armature", ""), - ('MESH', "Mesh", ""), - ('CURVE', "Curve", ""), - ), - default={'EMPTY', 'CAMERA', 'LAMP', 'ARMATURE', 'MESH','CURVE'}, - ) - - use_export_selected = BoolProperty( - name="Selected Objects", - description="Export only selected objects (and visible in active layers if that applies).", - default=False, - ) - use_mesh_modifiers = BoolProperty( - name="Apply Modifiers", - description="Apply modifiers to mesh objects (on a copy!).", - default=False, - ) - use_tangent_arrays = BoolProperty( - name="Tangent Arrays", - description="Export Tangent and Binormal arrays (for normalmapping).", - default=False, - ) - use_triangles = BoolProperty( - name="Triangulate", - description="Export Triangles instead of Polygons.", - default=False, - ) - - use_copy_images = BoolProperty( - name="Copy Images", - description="Copy Images (create images/ subfolder)", - default=False, - ) - use_active_layers = BoolProperty( - name="Active Layers", - description="Export only objects on the active layers.", - default=True, - ) - use_anim = BoolProperty( - name="Export Animation", - description="Export keyframe animation", - default=False, - ) - use_anim_action_all = BoolProperty( - name="All Actions", - description=("Export all actions for the first armature found in separate DAE files"), - default=False, - ) - use_anim_skip_noexp = BoolProperty( - name="Skip (-noexp) Actions", - description="Skip exporting of actions whose name end in (-noexp). Useful to skip control animations.", - default=True, - ) - use_anim_optimize = BoolProperty( - name="Optimize Keyframes", - description="Remove double keyframes", - default=True, - ) - - anim_optimize_precision = FloatProperty( - name="Precision", - description=("Tolerence for comparing double keyframes " - "(higher for greater accuracy)"), - min=1, max=16, - soft_min=1, soft_max=16, - default=6.0, - ) - - use_metadata = BoolProperty( - name="Use Metadata", - default=True, - options={'HIDDEN'}, - ) - - @property - def check_extension(self): - return True#return self.batch_mode == 'OFF' - - def check(self, context): - return True - """ - isretur_def_change = super().check(context) - return (is_xna_change or is_def_change) - """ - - def execute(self, context): - if not self.filepath: - raise Exception("filepath not set") - - """ global_matrix = Matrix() - - global_matrix[0][0] = \ - global_matrix[1][1] = \ - global_matrix[2][2] = self.global_scale - """ - - keywords = self.as_keywords(ignore=("axis_forward", - "axis_up", - "global_scale", - "check_existing", - "filter_glob", - "xna_validate", - )) - - from . import export_dae - return export_dae.save(self, context, **keywords) - - -def menu_func(self, context): - self.layout.operator(ExportDAE.bl_idname, text="Better Collada (.dae)") - - -def register(): - bpy.utils.register_module(__name__) - - bpy.types.INFO_MT_file_export.append(menu_func) - - -def unregister(): - bpy.utils.unregister_module(__name__) - - bpy.types.INFO_MT_file_export.remove(menu_func) - -if __name__ == "__main__": - register() diff --git a/tools/export/blender25/io_scene_dae/export_dae.py b/tools/export/blender25/io_scene_dae/export_dae.py deleted file mode 100644 index 2f7d1ddd86..0000000000 --- a/tools/export/blender25/io_scene_dae/export_dae.py +++ /dev/null @@ -1,1724 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# <pep8 compliant> - -# Script copyright (C) Juan Linietsky -# Contact Info: juan@codenix.com - -""" -This script is an exporter to the Khronos Collada file format. - -http://www.khronos.org/collada/ -""" - -# TODO: -# Materials & Textures -# Optionally export Vertex Colors -# Morph Targets -# Control bone removal -# Copy textures -# Export Keyframe Optimization -# -- -# Morph Targets -# Blender native material? (?) - -import os -import time -import math # math.pi -import shutil -import bpy -import bmesh -from mathutils import Vector, Matrix - -#according to collada spec, order matters -S_ASSET=0 -S_IMGS=1 -S_FX=2 -S_MATS=3 -S_GEOM=4 -S_MORPH=5 -S_SKIN=6 -S_CONT=7 -S_CAMS=8 -S_LAMPS=9 -S_ANIM_CLIPS=10 -S_NODES=11 -S_ANIM=12 - -CMP_EPSILON=0.0001 - -def snap_tup(tup): - ret=() - for x in tup: - ret+=( x-math.fmod(x,0.0001), ) - - return tup - - -def strmtx(mtx): - s=" " - for x in range(4): - for y in range(4): - s+=str(mtx[x][y]) - s+=" " - s+=" " - return s - -def numarr(a,mult=1.0): - s=" " - for x in a: - s+=" "+str(x*mult) - s+=" " - return s - -def numarr_alpha(a,mult=1.0): - s=" " - for x in a: - s+=" "+str(x*mult) - if len(a) == 3: - s+=" 1.0" - s+=" " - return s - -def strarr(arr): - s=" " - for x in arr: - s+=" "+str(x) - s+=" " - return s - -class DaeExporter: - - def validate_id(self,d): - if (d.find("id-")==0): - return "z"+d - return d - - - def new_id(self,t): - self.last_id+=1 - return "id-"+t+"-"+str(self.last_id) - - class Vertex: - - def close_to(v): - if ( (self.vertex-v.vertex).length() > CMP_EPSILON ): - return False - if ( (self.normal-v.normal).length() > CMP_EPSILON ): - return False - if ( (self.uv-v.uv).length() > CMP_EPSILON ): - return False - if ( (self.uv2-v.uv2).length() > CMP_EPSILON ): - return False - - return True - - def get_tup(self): - tup = (self.vertex.x,self.vertex.y,self.vertex.z,self.normal.x,self.normal.y,self.normal.z) - for t in self.uv: - tup = tup + (t.x,t.y) - if (self.color!=None): - tup = tup + (self.color.x,self.color.y,self.color.z) - if (self.tangent!=None): - tup = tup + (self.tangent.x,self.tangent.y,self.tangent.z) - if (self.bitangent!=None): - tup = tup + (self.bitangent.x,self.bitangent.y,self.bitangent.z) - for t in self.bones: - tup = tup + (float(t),) - for t in self.weights: - tup = tup + (float(t),) - - return tup - - def __init__(self): - self.vertex = Vector( (0.0,0.0,0.0) ) - self.normal = Vector( (0.0,0.0,0.0) ) - self.tangent = None - self.bitangent = None - self.color = None - self.uv = [] - self.uv2 = Vector( (0.0,0.0) ) - self.bones=[] - self.weights=[] - - - def writel(self,section,indent,text): - if (not (section in self.sections)): - self.sections[section]=[] - line="" - for x in range(indent): - line+="\t" - line+=text - self.sections[section].append(line) - - - def export_image(self,image): - if (image in self.image_cache): - return self.image_cache[image] - - imgpath = image.filepath - if (imgpath.find("//")==0 or imgpath.find("\\\\")==0): - #if relative, convert to absolute - imgpath = bpy.path.abspath(imgpath) - - #path is absolute, now do something! - - if (self.config["use_copy_images"]): - #copy image - basedir = os.path.dirname(self.path)+"/images" - if (not os.path.isdir(basedir)): - os.makedirs(basedir) - - if os.path.isfile(imgpath): - dstfile=basedir+"/"+os.path.basename(imgpath) - - if (not os.path.isfile(dstfile)): - shutil.copy(imgpath,dstfile) - imgpath="images/"+os.path.basename(imgpath) - else: - ### if file is not found save it as png file in the destination folder - img_tmp_path = image.filepath - if img_tmp_path.endswith((".bmp",".rgb",".png",".jpeg",".jpg",".jp2",".tga",".cin",".dpx",".exr",".hdr",".tif")): - image.filepath = basedir+"/"+os.path.basename(img_tmp_path) - else: - image.filepath = basedir+"/"+image.name+".png" - - dstfile=basedir+"/"+os.path.basename(image.filepath) - - if (not os.path.isfile(dstfile)): - - image.save() - imgpath="images/"+os.path.basename(image.filepath) - image.filepath = img_tmp_path - - else: - #export relative, always, no one wants absolute paths. - try: - imgpath = os.path.relpath(imgpath,os.path.dirname(self.path)).replace("\\","/") # export unix compatible always - - except: - pass #fails sometimes, not sure why - - - imgid = self.new_id("image") - - print("FOR: "+imgpath) - -# if (not os.path.isfile(imgpath)): -# print("NOT FILE?") -# if imgpath.endswith((".bmp",".rgb",".png",".jpeg",".jpg",".jp2",".tga",".cin",".dpx",".exr",".hdr",".tif")): -# imgpath="images/"+os.path.basename(imgpath) -# else: -# imgpath="images/"+image.name+".png" - - self.writel(S_IMGS,1,'<image id="'+imgid+'" name="'+image.name+'">') - self.writel(S_IMGS,2,'<init_from>'+imgpath+'</init_from>') - self.writel(S_IMGS,1,'</image>') - self.image_cache[image]=imgid - return imgid - - def export_material(self,material,double_sided_hint=True): - - if (material in self.material_cache): - return self.material_cache[material] - - fxid = self.new_id("fx") - self.writel(S_FX,1,'<effect id="'+fxid+'" name="'+material.name+'-fx">') - self.writel(S_FX,2,'<profile_COMMON>') - - #Find and fetch the textures and create sources - sampler_table={} - diffuse_tex=None - specular_tex=None - emission_tex=None - normal_tex=None - for i in range(len(material.texture_slots)): - ts=material.texture_slots[i] - if (not ts): - continue - if (not ts.use): - continue - if (not ts.texture): - continue - if (ts.texture.type!="IMAGE"): - continue - - if (ts.texture.image==None): - continue - - #image - imgid = self.export_image(ts.texture.image) - - #surface - surface_sid = self.new_id("fx_surf") - self.writel(S_FX,3,'<newparam sid="'+surface_sid+'">') - self.writel(S_FX,4,'<surface type="2D">') - self.writel(S_FX,5,'<init_from>'+imgid+'</init_from>') #this is sooo weird - self.writel(S_FX,5,'<format>A8R8G8B8</format>') - self.writel(S_FX,4,'</surface>') - self.writel(S_FX,3,'</newparam>') - #sampler, collada sure likes it difficult - sampler_sid = self.new_id("fx_sampler") - self.writel(S_FX,3,'<newparam sid="'+sampler_sid+'">') - self.writel(S_FX,4,'<sampler2D>') - self.writel(S_FX,5,'<source>'+surface_sid+'</source>') - self.writel(S_FX,4,'</sampler2D>') - self.writel(S_FX,3,'</newparam>') - sampler_table[i]=sampler_sid - - if (ts.use_map_color_diffuse and diffuse_tex==None): - diffuse_tex=sampler_sid - if (ts.use_map_color_spec and specular_tex==None): - specular_tex=sampler_sid - if (ts.use_map_emit and emission_tex==None): - emission_tex=sampler_sid - if (ts.use_map_normal and normal_tex==None): - normal_tex=sampler_sid - - self.writel(S_FX,3,'<technique sid="common">') - shtype="blinn" - self.writel(S_FX,4,'<'+shtype+'>') - #ambient? from where? - - self.writel(S_FX,5,'<emission>') - if (emission_tex!=None): - self.writel(S_FX,6,'<texture texture="'+emission_tex+'" texcoord="CHANNEL1"/>') - else: - self.writel(S_FX,6,'<color>'+numarr_alpha(material.diffuse_color,material.emit)+' </color>') # not totally right but good enough - self.writel(S_FX,5,'</emission>') - - self.writel(S_FX,5,'<ambient>') - self.writel(S_FX,6,'<color>'+numarr_alpha(self.scene.world.ambient_color,material.ambient)+' </color>') - self.writel(S_FX,5,'</ambient>') - - self.writel(S_FX,5,'<diffuse>') - if (diffuse_tex!=None): - self.writel(S_FX,6,'<texture texture="'+diffuse_tex+'" texcoord="CHANNEL1"/>') - else: - self.writel(S_FX,6,'<color>'+numarr_alpha(material.diffuse_color,material.diffuse_intensity)+'</color>') - self.writel(S_FX,5,'</diffuse>') - - self.writel(S_FX,5,'<specular>') - if (specular_tex!=None): - self.writel(S_FX,6,'<texture texture="'+specular_tex+'" texcoord="CHANNEL1"/>') - else: - self.writel(S_FX,6,'<color>'+numarr_alpha(material.specular_color,material.specular_intensity)+'</color>') - self.writel(S_FX,5,'</specular>') - - self.writel(S_FX,5,'<shininess>') - self.writel(S_FX,6,'<float>'+str(material.specular_hardness)+'</float>') - self.writel(S_FX,5,'</shininess>') - - self.writel(S_FX,5,'<reflective>') - self.writel(S_FX,6,'<color>'+numarr_alpha(material.mirror_color)+'</color>') - self.writel(S_FX,5,'</reflective>') - - if (material.use_transparency): - self.writel(S_FX,5,'<transparency>') - self.writel(S_FX,6,'<float>'+str(material.alpha)+'</float>') - self.writel(S_FX,5,'</transparency>') - - self.writel(S_FX,5,'<index_of_refraction>') - self.writel(S_FX,6,'<float>'+str(material.specular_ior)+'</float>') - self.writel(S_FX,5,'</index_of_refraction>') - - self.writel(S_FX,4,'</'+shtype+'>') - - self.writel(S_FX,4,'<extra>') - self.writel(S_FX,5,'<technique profile="FCOLLADA">') - if (normal_tex): - self.writel(S_FX,6,'<bump bumptype="NORMALMAP">') - self.writel(S_FX,7,'<texture texture="'+normal_tex+'" texcoord="CHANNEL1"/>') - self.writel(S_FX,6,'</bump>') - - self.writel(S_FX,5,'</technique>') - self.writel(S_FX,5,'<technique profile="GOOGLEEARTH">') - self.writel(S_FX,6,'<double_sided>'+["0","1"][double_sided_hint]+"</double_sided>") - self.writel(S_FX,5,'</technique>') - - if (material.use_shadeless): - self.writel(S_FX,5,'<technique profile="GODOT">') - self.writel(S_FX,6,'<unshaded>1</unshaded>') - self.writel(S_FX,5,'</technique>') - - self.writel(S_FX,4,'</extra>') - - self.writel(S_FX,3,'</technique>') - self.writel(S_FX,2,'</profile_COMMON>') - self.writel(S_FX,1,'</effect>') - - # Also export blender material in all it's glory (if set as active) - - - #Material - matid = self.new_id("material") - self.writel(S_MATS,1,'<material id="'+matid+'" name="'+material.name+'">') - self.writel(S_MATS,2,'<instance_effect url="#'+fxid+'"/>') - self.writel(S_MATS,1,'</material>') - - self.material_cache[material]=matid - return matid - - - def export_mesh(self,node,armature=None,skeyindex=-1,skel_source=None,custom_name=None): - - mesh = node.data - - - if (node.data in self.mesh_cache): - return self.mesh_cache[mesh] - - if (skeyindex==-1 and mesh.shape_keys!=None and len(mesh.shape_keys.key_blocks)): - values=[] - morph_targets=[] - md=None - for k in range(0,len(mesh.shape_keys.key_blocks)): - shape = node.data.shape_keys.key_blocks[k] - values+=[shape.value] #save value - shape.value=0 - - mid = self.new_id("morph") - - for k in range(0,len(mesh.shape_keys.key_blocks)): - - shape = node.data.shape_keys.key_blocks[k] - node.show_only_shape_key=True - node.active_shape_key_index = k - shape.value = 1.0 - mesh.update() - """ - oldval = shape.value - shape.value = 1.0 - - """ - p = node.data - v = node.to_mesh(bpy.context.scene, True, "RENDER") - node.data = v -# self.export_node(node,il,shape.name) - node.data.update() - if (armature and k==0): - md=self.export_mesh(node,armature,k,mid,shape.name) - else: - md=self.export_mesh(node,None,k,None,shape.name) - - node.data = p - node.data.update() - shape.value = 0.0 - morph_targets.append(md) - - """ - shape.value = oldval - """ - node.show_only_shape_key=False - node.active_shape_key_index = 0 - - - self.writel(S_MORPH,1,'<controller id="'+mid+'" name="">') - #if ("skin_id" in morph_targets[0]): - # self.writel(S_MORPH,2,'<morph source="#'+morph_targets[0]["skin_id"]+'" method="NORMALIZED">') - #else: - self.writel(S_MORPH,2,'<morph source="#'+morph_targets[0]["id"]+'" method="NORMALIZED">') - - self.writel(S_MORPH,3,'<source id="'+mid+'-morph-targets">') - self.writel(S_MORPH,4,'<IDREF_array id="'+mid+'-morph-targets-array" count="'+str(len(morph_targets)-1)+'">') - marr="" - warr="" - for i in range(len(morph_targets)): - if (i==0): - continue - elif (i>1): - marr+=" " - - if ("skin_id" in morph_targets[i]): - marr+=morph_targets[i]["skin_id"] - else: - marr+=morph_targets[i]["id"] - - warr+=" 0" - - self.writel(S_MORPH,5,marr) - self.writel(S_MORPH,4,'</IDREF_array>') - self.writel(S_MORPH,4,'<technique_common>') - self.writel(S_MORPH,5,'<accessor source="#'+mid+'-morph-targets-array" count="'+str(len(morph_targets)-1)+'" stride="1">') - self.writel(S_MORPH,6,'<param name="MORPH_TARGET" type="IDREF"/>') - self.writel(S_MORPH,5,'</accessor>') - self.writel(S_MORPH,4,'</technique_common>') - self.writel(S_MORPH,3,'</source>') - - self.writel(S_MORPH,3,'<source id="'+mid+'-morph-weights">') - self.writel(S_MORPH,4,'<float_array id="'+mid+'-morph-weights-array" count="'+str(len(morph_targets)-1)+'" >') - self.writel(S_MORPH,5,warr) - self.writel(S_MORPH,4,'</float_array>') - self.writel(S_MORPH,4,'<technique_common>') - self.writel(S_MORPH,5,'<accessor source="#'+mid+'-morph-weights-array" count="'+str(len(morph_targets)-1)+'" stride="1">') - self.writel(S_MORPH,6,'<param name="MORPH_WEIGHT" type="float"/>') - self.writel(S_MORPH,5,'</accessor>') - self.writel(S_MORPH,4,'</technique_common>') - self.writel(S_MORPH,3,'</source>') - - self.writel(S_MORPH,3,'<targets>') - self.writel(S_MORPH,4,'<input semantic="MORPH_TARGET" source="#'+mid+'-morph-targets"/>') - self.writel(S_MORPH,4,'<input semantic="MORPH_WEIGHT" source="#'+mid+'-morph-weights"/>') - self.writel(S_MORPH,3,'</targets>') - self.writel(S_MORPH,2,'</morph>') - self.writel(S_MORPH,1,'</controller>') - if (armature!=None): - - self.armature_for_morph[node]=armature - - meshdata={} - if (armature): - meshdata = morph_targets[0] - meshdata["morph_id"]=mid - else: - meshdata["id"]=morph_targets[0]["id"] - meshdata["morph_id"]=mid - meshdata["material_assign"]=morph_targets[0]["material_assign"] - - - - self.mesh_cache[node.data]=meshdata - return meshdata - - apply_modifiers = len(node.modifiers) and self.config["use_mesh_modifiers"] - - name_to_use = mesh.name - #print("name to use: "+mesh.name) - if (custom_name!=None and custom_name!=""): - name_to_use=custom_name - - mesh=node.to_mesh(self.scene,apply_modifiers,"RENDER") #is this allright? - - triangulate=self.config["use_triangles"] - if (triangulate): - bm = bmesh.new() - bm.from_mesh(mesh) - bmesh.ops.triangulate(bm, faces=bm.faces) - bm.to_mesh(mesh) - bm.free() - - - mesh.update(calc_tessface=True) - vertices=[] - vertex_map={} - surface_indices={} - materials={} - - materials={} - - si=None - if (armature!=None): - si=self.skeleton_info[armature] - - has_uv=False - has_uv2=False - has_weights=armature!=None - has_tangents=self.config["use_tangent_arrays"] # could detect.. - has_colors=len(mesh.vertex_colors) - mat_assign=[] - - uv_layer_count=len(mesh.uv_textures) - if (has_tangents and len(mesh.uv_textures)): - try: - mesh.calc_tangents() - except: - self.operator.report({'WARNING'},'CalcTangets failed for mesh "'+mesh.name+'", no tangets will be exported.') - #uv_layer_count=0 - mesh.calc_normals_split() - has_tangents=False - - else: - mesh.calc_normals_split() - has_tangents=False - - - for fi in range(len(mesh.polygons)): - f=mesh.polygons[fi] - - if (not (f.material_index in surface_indices)): - surface_indices[f.material_index]=[] - #print("Type: "+str(type(f.material_index))) - #print("IDX: "+str(f.material_index)+"/"+str(len(mesh.materials))) - - try: - #Bizarre blender behavior i don't understand, so catching exception - mat = mesh.materials[f.material_index] - except: - mat= None - - if (mat!=None): - materials[f.material_index]=self.export_material( mat,mesh.show_double_sided ) - else: - materials[f.material_index]=None #weird, has no material? - - indices = surface_indices[f.material_index] - vi=[] - #vertices always 3 - """ - if (len(f.vertices)==3): - vi.append(0) - vi.append(1) - vi.append(2) - elif (len(f.vertices)==4): - #todo, should use shortest path - vi.append(0) - vi.append(1) - vi.append(2) - vi.append(0) - vi.append(2) - vi.append(3) - """ - - for lt in range(f.loop_total): - loop_index = f.loop_start + lt - ml = mesh.loops[loop_index] - mv = mesh.vertices[ml.vertex_index] - - v = self.Vertex() - v.vertex = Vector( mv.co ) - - for xt in mesh.uv_layers: - v.uv.append( Vector( xt.data[loop_index].uv ) ) - - if (has_colors): - v.color = Vector( mesh.vertex_colors[0].data[loop_index].color ) - - v.normal = Vector( ml.normal ) - - if (has_tangents): - v.tangent = Vector( ml.tangent ) - v.bitangent = Vector( ml.bitangent ) - - - # if (armature): - # v.vertex = node.matrix_world * v.vertex - - #v.color=Vertex(mv. ??? - - if (armature!=None): - wsum=0.0 - zero_bones=[] - - for vg in mv.groups: - if vg.group >= len(node.vertex_groups): - continue; - name = node.vertex_groups[vg.group].name - - if (name in si["bone_index"]): - #could still put the weight as 0.0001 maybe - if (vg.weight>0.001): #blender has a lot of zero weight stuff - v.bones.append(si["bone_index"][name]) - v.weights.append(vg.weight) - wsum+=vg.weight - if (wsum==0.0): - if not self.wrongvtx_report: - self.operator.report({'WARNING'},'Mesh for object "'+node.name+'" has unassigned weights. This may look wrong in exported model.') - self.wrongvtx_report=True - - #blender can have bones assigned that weight zero so they remain local - #this is the best it can be done? - v.bones.append(0) - v.weights.append(1) - - - - - tup = v.get_tup() - idx = 0 - if (skeyindex==-1 and tup in vertex_map): #do not optmize if using shapekeys - idx = vertex_map[tup] - else: - idx = len(vertices) - vertices.append(v) - vertex_map[tup]=idx - - vi.append(idx) - - if (len(vi)>2): - #only triangles and above - indices.append(vi) - - - meshid = self.new_id("mesh") - self.writel(S_GEOM,1,'<geometry id="'+meshid+'" name="'+name_to_use+'">') - - self.writel(S_GEOM,2,'<mesh>') - - - # Vertex Array - self.writel(S_GEOM,3,'<source id="'+meshid+'-positions">') - float_values="" - for v in vertices: - float_values+=" "+str(v.vertex.x)+" "+str(v.vertex.y)+" "+str(v.vertex.z) - self.writel(S_GEOM,4,'<float_array id="'+meshid+'-positions-array" count="'+str(len(vertices)*3)+'">'+float_values+'</float_array>') - self.writel(S_GEOM,4,'<technique_common>') - self.writel(S_GEOM,4,'<accessor source="#'+meshid+'-positions-array" count="'+str(len(vertices))+'" stride="3">') - self.writel(S_GEOM,5,'<param name="X" type="float"/>') - self.writel(S_GEOM,5,'<param name="Y" type="float"/>') - self.writel(S_GEOM,5,'<param name="Z" type="float"/>') - self.writel(S_GEOM,4,'</accessor>') - self.writel(S_GEOM,4,'</technique_common>') - self.writel(S_GEOM,3,'</source>') - - # Normal Array - - self.writel(S_GEOM,3,'<source id="'+meshid+'-normals">') - float_values="" - for v in vertices: - float_values+=" "+str(v.normal.x)+" "+str(v.normal.y)+" "+str(v.normal.z) - self.writel(S_GEOM,4,'<float_array id="'+meshid+'-normals-array" count="'+str(len(vertices)*3)+'">'+float_values+'</float_array>') - self.writel(S_GEOM,4,'<technique_common>') - self.writel(S_GEOM,4,'<accessor source="#'+meshid+'-normals-array" count="'+str(len(vertices))+'" stride="3">') - self.writel(S_GEOM,5,'<param name="X" type="float"/>') - self.writel(S_GEOM,5,'<param name="Y" type="float"/>') - self.writel(S_GEOM,5,'<param name="Z" type="float"/>') - self.writel(S_GEOM,4,'</accessor>') - self.writel(S_GEOM,4,'</technique_common>') - self.writel(S_GEOM,3,'</source>') - - if (has_tangents): - self.writel(S_GEOM,3,'<source id="'+meshid+'-tangents">') - float_values="" - for v in vertices: - float_values+=" "+str(v.tangent.x)+" "+str(v.tangent.y)+" "+str(v.tangent.z) - self.writel(S_GEOM,4,'<float_array id="'+meshid+'-tangents-array" count="'+str(len(vertices)*3)+'">'+float_values+'</float_array>') - self.writel(S_GEOM,4,'<technique_common>') - self.writel(S_GEOM,4,'<accessor source="#'+meshid+'-tangents-array" count="'+str(len(vertices))+'" stride="3">') - self.writel(S_GEOM,5,'<param name="X" type="float"/>') - self.writel(S_GEOM,5,'<param name="Y" type="float"/>') - self.writel(S_GEOM,5,'<param name="Z" type="float"/>') - self.writel(S_GEOM,4,'</accessor>') - self.writel(S_GEOM,4,'</technique_common>') - self.writel(S_GEOM,3,'</source>') - - self.writel(S_GEOM,3,'<source id="'+meshid+'-bitangents">') - float_values="" - for v in vertices: - float_values+=" "+str(v.bitangent.x)+" "+str(v.bitangent.y)+" "+str(v.bitangent.z) - self.writel(S_GEOM,4,'<float_array id="'+meshid+'-bitangents-array" count="'+str(len(vertices)*3)+'">'+float_values+'</float_array>') - self.writel(S_GEOM,4,'<technique_common>') - self.writel(S_GEOM,4,'<accessor source="#'+meshid+'-bitangents-array" count="'+str(len(vertices))+'" stride="3">') - self.writel(S_GEOM,5,'<param name="X" type="float"/>') - self.writel(S_GEOM,5,'<param name="Y" type="float"/>') - self.writel(S_GEOM,5,'<param name="Z" type="float"/>') - self.writel(S_GEOM,4,'</accessor>') - self.writel(S_GEOM,4,'</technique_common>') - self.writel(S_GEOM,3,'</source>') - - - - # UV Arrays - - for uvi in range(uv_layer_count): - - self.writel(S_GEOM,3,'<source id="'+meshid+'-texcoord-'+str(uvi)+'">') - float_values="" - for v in vertices: - try: - float_values+=" "+str(v.uv[uvi].x)+" "+str(v.uv[uvi].y) - except: - # I don't understand this weird multi-uv-layer API, but with this it seems to works - float_values+=" 0 0 " - - self.writel(S_GEOM,4,'<float_array id="'+meshid+'-texcoord-'+str(uvi)+'-array" count="'+str(len(vertices)*2)+'">'+float_values+'</float_array>') - self.writel(S_GEOM,4,'<technique_common>') - self.writel(S_GEOM,4,'<accessor source="#'+meshid+'-texcoord-'+str(uvi)+'-array" count="'+str(len(vertices))+'" stride="2">') - self.writel(S_GEOM,5,'<param name="S" type="float"/>') - self.writel(S_GEOM,5,'<param name="T" type="float"/>') - self.writel(S_GEOM,4,'</accessor>') - self.writel(S_GEOM,4,'</technique_common>') - self.writel(S_GEOM,3,'</source>') - - # Color Arrays - - if (has_colors): - self.writel(S_GEOM,3,'<source id="'+meshid+'-colors">') - float_values="" - for v in vertices: - float_values+=" "+str(v.color.x)+" "+str(v.color.y)+" "+str(v.color.z) - self.writel(S_GEOM,4,'<float_array id="'+meshid+'-colors-array" count="'+str(len(vertices)*3)+'">'+float_values+'</float_array>') - self.writel(S_GEOM,4,'<technique_common>') - self.writel(S_GEOM,4,'<accessor source="#'+meshid+'-colors-array" count="'+str(len(vertices))+'" stride="3">') - self.writel(S_GEOM,5,'<param name="X" type="float"/>') - self.writel(S_GEOM,5,'<param name="Y" type="float"/>') - self.writel(S_GEOM,5,'<param name="Z" type="float"/>') - self.writel(S_GEOM,4,'</accessor>') - self.writel(S_GEOM,4,'</technique_common>') - self.writel(S_GEOM,3,'</source>') - - # Triangle Lists - self.writel(S_GEOM,3,'<vertices id="'+meshid+'-vertices">') - self.writel(S_GEOM,4,'<input semantic="POSITION" source="#'+meshid+'-positions"/>') - self.writel(S_GEOM,3,'</vertices>') - - prim_type="" - if (triangulate): - prim_type="triangles" - else: - prim_type="polygons" - - - for m in surface_indices: - indices = surface_indices[m] - mat = materials[m] - - if (mat!=None): - matref = self.new_id("trimat") - self.writel(S_GEOM,3,'<'+prim_type+' count="'+str(int(len(indices)))+'" material="'+matref+'">') # todo material - mat_assign.append( (mat,matref) ) - else: - self.writel(S_GEOM,3,'<'+prim_type+' count="'+str(int(len(indices)))+'">') # todo material - - - self.writel(S_GEOM,4,'<input semantic="VERTEX" source="#'+meshid+'-vertices" offset="0"/>') - self.writel(S_GEOM,4,'<input semantic="NORMAL" source="#'+meshid+'-normals" offset="0"/>') - - for uvi in range(uv_layer_count): - self.writel(S_GEOM,4,'<input semantic="TEXCOORD" source="#'+meshid+'-texcoord-'+str(uvi)+'" offset="0" set="'+str(uvi)+'"/>') - - if (has_colors): - self.writel(S_GEOM,4,'<input semantic="COLOR" source="#'+meshid+'-colors" offset="0"/>') - if (has_tangents): - self.writel(S_GEOM,4,'<input semantic="TEXTANGENT" source="#'+meshid+'-tangents" offset="0"/>') - self.writel(S_GEOM,4,'<input semantic="TEXBINORMAL" source="#'+meshid+'-bitangents" offset="0"/>') - - if (triangulate): - int_values="<p>" - for p in indices: - for i in p: - int_values+=" "+str(i) - int_values+=" </p>" - self.writel(S_GEOM,4,int_values) - else: - for p in indices: - int_values="<p>" - for i in p: - int_values+=" "+str(i) - int_values+=" </p>" - self.writel(S_GEOM,4,int_values) - - self.writel(S_GEOM,3,'</'+prim_type+'>') - - - self.writel(S_GEOM,2,'</mesh>') - self.writel(S_GEOM,1,'</geometry>') - - - meshdata={} - meshdata["id"]=meshid - meshdata["material_assign"]=mat_assign - if (skeyindex==-1): - self.mesh_cache[node.data]=meshdata - - - # Export armature data (if armature exists) - - if (armature!=None and (skel_source!=None or skeyindex==-1)): - - contid = self.new_id("controller") - - self.writel(S_SKIN,1,'<controller id="'+contid+'">') - if (skel_source!=None): - self.writel(S_SKIN,2,'<skin source="#'+skel_source+'">') - else: - self.writel(S_SKIN,2,'<skin source="#'+meshid+'">') - - self.writel(S_SKIN,3,'<bind_shape_matrix>'+strmtx(node.matrix_world)+'</bind_shape_matrix>') - #Joint Names - self.writel(S_SKIN,3,'<source id="'+contid+'-joints">') - name_values="" - for v in si["bone_names"]: - name_values+=" "+v - - self.writel(S_SKIN,4,'<Name_array id="'+contid+'-joints-array" count="'+str(len(si["bone_names"]))+'">'+name_values+'</Name_array>') - self.writel(S_SKIN,4,'<technique_common>') - self.writel(S_SKIN,4,'<accessor source="#'+contid+'-joints-array" count="'+str(len(si["bone_names"]))+'" stride="1">') - self.writel(S_SKIN,5,'<param name="JOINT" type="Name"/>') - self.writel(S_SKIN,4,'</accessor>') - self.writel(S_SKIN,4,'</technique_common>') - self.writel(S_SKIN,3,'</source>') - #Pose Matrices! - self.writel(S_SKIN,3,'<source id="'+contid+'-bind_poses">') - pose_values="" - for v in si["bone_bind_poses"]: - pose_values+=" "+strmtx(v) - - self.writel(S_SKIN,4,'<float_array id="'+contid+'-bind_poses-array" count="'+str(len(si["bone_bind_poses"])*16)+'">'+pose_values+'</float_array>') - self.writel(S_SKIN,4,'<technique_common>') - self.writel(S_SKIN,4,'<accessor source="#'+contid+'-bind_poses-array" count="'+str(len(si["bone_bind_poses"]))+'" stride="16">') - self.writel(S_SKIN,5,'<param name="TRANSFORM" type="float4x4"/>') - self.writel(S_SKIN,4,'</accessor>') - self.writel(S_SKIN,4,'</technique_common>') - self.writel(S_SKIN,3,'</source>') - #Skin Weights! - self.writel(S_SKIN,3,'<source id="'+contid+'-skin_weights">') - skin_weights="" - skin_weights_total=0 - for v in vertices: - skin_weights_total+=len(v.weights) - for w in v.weights: - skin_weights+=" "+str(w) - - self.writel(S_SKIN,4,'<float_array id="'+contid+'-skin_weights-array" count="'+str(skin_weights_total)+'">'+skin_weights+'</float_array>') - self.writel(S_SKIN,4,'<technique_common>') - self.writel(S_SKIN,4,'<accessor source="#'+contid+'-skin_weights-array" count="'+str(skin_weights_total)+'" stride="1">') - self.writel(S_SKIN,5,'<param name="WEIGHT" type="float"/>') - self.writel(S_SKIN,4,'</accessor>') - self.writel(S_SKIN,4,'</technique_common>') - self.writel(S_SKIN,3,'</source>') - - - self.writel(S_SKIN,3,'<joints>') - self.writel(S_SKIN,4,'<input semantic="JOINT" source="#'+contid+'-joints"/>') - self.writel(S_SKIN,4,'<input semantic="INV_BIND_MATRIX" source="#'+contid+'-bind_poses"/>') - self.writel(S_SKIN,3,'</joints>') - self.writel(S_SKIN,3,'<vertex_weights count="'+str(len(vertices))+'">') - self.writel(S_SKIN,4,'<input semantic="JOINT" source="#'+contid+'-joints" offset="0"/>') - self.writel(S_SKIN,4,'<input semantic="WEIGHT" source="#'+contid+'-skin_weights" offset="1"/>') - vcounts="" - vs="" - vcount=0 - for v in vertices: - vcounts+=" "+str(len(v.weights)) - for b in v.bones: - vs+=" "+str(b) - vs+=" "+str(vcount) - vcount+=1 - self.writel(S_SKIN,4,'<vcount>'+vcounts+'</vcount>') - self.writel(S_SKIN,4,'<v>'+vs+'</v>') - self.writel(S_SKIN,3,'</vertex_weights>') - - - self.writel(S_SKIN,2,'</skin>') - self.writel(S_SKIN,1,'</controller>') - meshdata["skin_id"]=contid - - - return meshdata - - - def export_mesh_node(self,node,il): - - if (node.data==None): - return - armature=None - armcount=0 - for n in node.modifiers: - if (n.type=="ARMATURE"): - armcount+=1 - - if (node.parent!=None): - if (node.parent.type=="ARMATURE"): - armature=node.parent - if (armcount>1): - self.operator.report({'WARNING'},'Object "'+node.name+'" refers to more than one armature! This is unsupported.') - if (armcount==0): - self.operator.report({'WARNING'},'Object "'+node.name+'" is child of an armature, but has no armature modifier.') - - - if (armcount>0 and not armature): - self.operator.report({'WARNING'},'Object "'+node.name+'" has armature modifier, but is not a child of an armature. This is unsupported.') - - - if (node.data.shape_keys!=None): - sk = node.data.shape_keys - if (sk.animation_data): - #print("HAS ANIM") - #print("DRIVERS: "+str(len(sk.animation_data.drivers))) - for d in sk.animation_data.drivers: - if (d.driver): - for v in d.driver.variables: - for t in v.targets: - if (t.id!=None and t.id.name in self.scene.objects): - #print("LINKING "+str(node)+" WITH "+str(t.id.name)) - self.armature_for_morph[node]=self.scene.objects[t.id.name] - - - meshdata = self.export_mesh(node,armature) - close_controller=False - - if ("skin_id" in meshdata): - close_controller=True - self.writel(S_NODES,il,'<instance_controller url="#'+meshdata["skin_id"]+'">') - for sn in self.skeleton_info[armature]["skeleton_nodes"]: - self.writel(S_NODES,il+1,'<skeleton>#'+sn+'</skeleton>') - elif ("morph_id" in meshdata): - self.writel(S_NODES,il,'<instance_controller url="#'+meshdata["morph_id"]+'">') - close_controller=True - elif (armature==None): - self.writel(S_NODES,il,'<instance_geometry url="#'+meshdata["id"]+'">') - - - if (len(meshdata["material_assign"])>0): - - self.writel(S_NODES,il+1,'<bind_material>') - self.writel(S_NODES,il+2,'<technique_common>') - for m in meshdata["material_assign"]: - self.writel(S_NODES,il+3,'<instance_material symbol="'+m[1]+'" target="#'+m[0]+'"/>') - - self.writel(S_NODES,il+2,'</technique_common>') - self.writel(S_NODES,il+1,'</bind_material>') - - if (close_controller): - self.writel(S_NODES,il,'</instance_controller>') - else: - self.writel(S_NODES,il,'</instance_geometry>') - - - def export_armature_bone(self,bone,il,si): - boneid = self.new_id("bone") - boneidx = si["bone_count"] - si["bone_count"]+=1 - bonesid = si["id"]+"-"+str(boneidx) - if (bone.name in self.used_bones): - if (self.config["use_anim_action_all"]): - self.operator.report({'WARNING'},'Bone name "'+bone.name+'" used in more than one skeleton. Actions might export wrong.') - else: - self.used_bones.append(bone.name) - - si["bone_index"][bone.name]=boneidx - si["bone_ids"][bone]=boneid - si["bone_names"].append(bonesid) - self.writel(S_NODES,il,'<node id="'+boneid+'" sid="'+bonesid+'" name="'+bone.name+'" type="JOINT">') - il+=1 - xform = bone.matrix_local - si["bone_bind_poses"].append((si["armature_xform"] * xform).inverted()) - - if (bone.parent!=None): - xform = bone.parent.matrix_local.inverted() * xform - else: - si["skeleton_nodes"].append(boneid) - - self.writel(S_NODES,il,'<matrix sid="transform">'+strmtx(xform)+'</matrix>') - for c in bone.children: - self.export_armature_bone(c,il,si) - il-=1 - self.writel(S_NODES,il,'</node>') - - - def export_armature_node(self,node,il): - - if (node.data==None): - return - - self.skeletons.append(node) - - armature = node.data - self.skeleton_info[node]={ "bone_count":0, "id":self.new_id("skelbones"),"name":node.name, "bone_index":{},"bone_ids":{},"bone_names":[],"bone_bind_poses":[],"skeleton_nodes":[],"armature_xform":node.matrix_world } - - - - for b in armature.bones: - if (b.parent!=None): - continue - self.export_armature_bone(b,il,self.skeleton_info[node]) - - if (node.pose): - for b in node.pose.bones: - for x in b.constraints: - if (x.type=='ACTION'): - self.action_constraints.append(x.action) - - - def export_camera_node(self,node,il): - - if (node.data==None): - return - - camera=node.data - camid=self.new_id("camera") - self.writel(S_CAMS,1,'<camera id="'+camid+'" name="'+camera.name+'">') - self.writel(S_CAMS,2,'<optics>') - self.writel(S_CAMS,3,'<technique_common>') - if (camera.type=="PERSP"): - self.writel(S_CAMS,4,'<perspective>') - self.writel(S_CAMS,5,'<yfov> '+str(math.degrees(camera.angle))+' </yfov>') # I think? - self.writel(S_CAMS,5,'<aspect_ratio> '+str(self.scene.render.resolution_x / self.scene.render.resolution_y)+' </aspect_ratio>') - self.writel(S_CAMS,5,'<znear> '+str(camera.clip_start)+' </znear>') - self.writel(S_CAMS,5,'<zfar> '+str(camera.clip_end)+' </zfar>') - self.writel(S_CAMS,4,'</perspective>') - else: - self.writel(S_CAMS,4,'<orthographic>') - self.writel(S_CAMS,5,'<xmag> '+str(camera.ortho_scale*0.5)+' </xmag>') # I think? - self.writel(S_CAMS,5,'<aspect_ratio> '+str(self.scene.render.resolution_x / self.scene.render.resolution_y)+' </aspect_ratio>') - self.writel(S_CAMS,5,'<znear> '+str(camera.clip_start)+' </znear>') - self.writel(S_CAMS,5,'<zfar> '+str(camera.clip_end)+' </zfar>') - self.writel(S_CAMS,4,'</orthographic>') - - self.writel(S_CAMS,3,'</technique_common>') - self.writel(S_CAMS,2,'</optics>') - self.writel(S_CAMS,1,'</camera>') - - - self.writel(S_NODES,il,'<instance_camera url="#'+camid+'"/>') - - def export_lamp_node(self,node,il): - - if (node.data==None): - return - - light=node.data - lightid=self.new_id("light") - self.writel(S_LAMPS,1,'<light id="'+lightid+'" name="'+light.name+'">') - #self.writel(S_LAMPS,2,'<optics>') - self.writel(S_LAMPS,3,'<technique_common>') - - if (light.type=="POINT"): - self.writel(S_LAMPS,4,'<point>') - self.writel(S_LAMPS,5,'<color>'+strarr(light.color)+'</color>') - att_by_distance = 2.0 / light.distance # convert to linear attenuation - self.writel(S_LAMPS,5,'<linear_attenuation>'+str(att_by_distance)+'</linear_attenuation>') - if (light.use_sphere): - self.writel(S_LAMPS,5,'<zfar>'+str(light.distance)+'</zfar>') - - self.writel(S_LAMPS,4,'</point>') - elif (light.type=="SPOT"): - self.writel(S_LAMPS,4,'<spot>') - self.writel(S_LAMPS,5,'<color>'+strarr(light.color)+'</color>') - att_by_distance = 2.0 / light.distance # convert to linear attenuation - self.writel(S_LAMPS,5,'<linear_attenuation>'+str(att_by_distance)+'</linear_attenuation>') - self.writel(S_LAMPS,5,'<falloff_angle>'+str(math.degrees(light.spot_size/2))+'</falloff_angle>') - self.writel(S_LAMPS,4,'</spot>') - - - else: #write a sun lamp for everything else (not supported) - self.writel(S_LAMPS,4,'<directional>') - self.writel(S_LAMPS,5,'<color>'+strarr(light.color)+'</color>') - self.writel(S_LAMPS,4,'</directional>') - - - self.writel(S_LAMPS,3,'</technique_common>') - #self.writel(S_LAMPS,2,'</optics>') - self.writel(S_LAMPS,1,'</light>') - - - self.writel(S_NODES,il,'<instance_light url="#'+lightid+'"/>') - - def export_empty_node(self,node,il): - - self.writel(S_NODES,4,'<extra>') - self.writel(S_NODES,5,'<technique profile="GODOT">') - self.writel(S_NODES,6,'<empty_draw_type>'+node.empty_draw_type+'</empty_draw_type>') - self.writel(S_NODES,5,'</technique>') - self.writel(S_NODES,4,'</extra>') - - - def export_curve(self,curve): - - splineid = self.new_id("spline") - - self.writel(S_GEOM,1,'<geometry id="'+splineid+'" name="'+curve.name+'">') - self.writel(S_GEOM,2,'<spline closed="0">') - - points=[] - interps=[] - handles_in=[] - handles_out=[] - tilts=[] - - for cs in curve.splines: - - if (cs.type=="BEZIER"): - for s in cs.bezier_points: - points.append(s.co[0]) - points.append(s.co[1]) - points.append(s.co[2]) - - - handles_in.append(s.handle_left[0]) - handles_in.append(s.handle_left[1]) - handles_in.append(s.handle_left[2]) - - handles_out.append(s.handle_right[0]) - handles_out.append(s.handle_right[1]) - handles_out.append(s.handle_right[2]) - - - tilts.append(s.tilt) - interps.append("BEZIER") - else: - - for s in cs.points: - points.append(s.co[0]) - points.append(s.co[1]) - points.append(s.co[2]) - handles_in.append(s.co[0]) - handles_in.append(s.co[1]) - handles_in.append(s.co[2]) - handles_out.append(s.co[0]) - handles_out.append(s.co[1]) - handles_out.append(s.co[2]) - tilts.append(s.tilt) - interps.append("LINEAR") - - - - - self.writel(S_GEOM,3,'<source id="'+splineid+'-positions">') - position_values="" - for x in points: - position_values+=" "+str(x) - self.writel(S_GEOM,4,'<float_array id="'+splineid+'-positions-array" count="'+str(len(points))+'">'+position_values+'</float_array>') - self.writel(S_GEOM,4,'<technique_common>') - self.writel(S_GEOM,4,'<accessor source="#'+splineid+'-positions-array" count="'+str(len(points)/3)+'" stride="3">') - self.writel(S_GEOM,5,'<param name="X" type="float"/>') - self.writel(S_GEOM,5,'<param name="Y" type="float"/>') - self.writel(S_GEOM,5,'<param name="Z" type="float"/>') - self.writel(S_GEOM,4,'</accessor>') - self.writel(S_GEOM,3,'</source>') - - self.writel(S_GEOM,3,'<source id="'+splineid+'-intangents">') - intangent_values="" - for x in handles_in: - intangent_values+=" "+str(x) - self.writel(S_GEOM,4,'<float_array id="'+splineid+'-intangents-array" count="'+str(len(points))+'">'+intangent_values+'</float_array>') - self.writel(S_GEOM,4,'<technique_common>') - self.writel(S_GEOM,4,'<accessor source="#'+splineid+'-intangents-array" count="'+str(len(points)/3)+'" stride="3">') - self.writel(S_GEOM,5,'<param name="X" type="float"/>') - self.writel(S_GEOM,5,'<param name="Y" type="float"/>') - self.writel(S_GEOM,5,'<param name="Z" type="float"/>') - self.writel(S_GEOM,4,'</accessor>') - self.writel(S_GEOM,3,'</source>') - - self.writel(S_GEOM,3,'<source id="'+splineid+'-outtangents">') - outtangent_values="" - for x in handles_out: - outtangent_values+=" "+str(x) - self.writel(S_GEOM,4,'<float_array id="'+splineid+'-outtangents-array" count="'+str(len(points))+'">'+outtangent_values+'</float_array>') - self.writel(S_GEOM,4,'<technique_common>') - self.writel(S_GEOM,4,'<accessor source="#'+splineid+'-outtangents-array" count="'+str(len(points)/3)+'" stride="3">') - self.writel(S_GEOM,5,'<param name="X" type="float"/>') - self.writel(S_GEOM,5,'<param name="Y" type="float"/>') - self.writel(S_GEOM,5,'<param name="Z" type="float"/>') - self.writel(S_GEOM,4,'</accessor>') - self.writel(S_GEOM,3,'</source>') - - self.writel(S_GEOM,3,'<source id="'+splineid+'-interpolations">') - interpolation_values="" - for x in interps: - interpolation_values+=" "+x - self.writel(S_GEOM,4,'<Name_array id="'+splineid+'-interpolations-array" count="'+str(len(interps))+'">'+interpolation_values+'</Name_array>') - self.writel(S_GEOM,4,'<technique_common>') - self.writel(S_GEOM,4,'<accessor source="#'+splineid+'-interpolations-array" count="'+str(len(interps))+'" stride="1">') - self.writel(S_GEOM,5,'<param name="INTERPOLATION" type="name"/>') - self.writel(S_GEOM,4,'</accessor>') - self.writel(S_GEOM,3,'</source>') - - - self.writel(S_GEOM,3,'<source id="'+splineid+'-tilts">') - tilt_values="" - for x in tilts: - tilt_values+=" "+str(x) - self.writel(S_GEOM,4,'<float_array id="'+splineid+'-tilts-array" count="'+str(len(tilts))+'">'+tilt_values+'</float_array>') - self.writel(S_GEOM,4,'<technique_common>') - self.writel(S_GEOM,4,'<accessor source="#'+splineid+'-tilts-array" count="'+str(len(tilts))+'" stride="1">') - self.writel(S_GEOM,5,'<param name="TILT" type="float"/>') - self.writel(S_GEOM,4,'</accessor>') - self.writel(S_GEOM,3,'</source>') - - self.writel(S_GEOM,3,'<control_vertices>') - self.writel(S_GEOM,4,'<input semantic="POSITION" source="#'+splineid+'-positions"/>') - self.writel(S_GEOM,4,'<input semantic="IN_TANGENT" source="#'+splineid+'-intangents"/>') - self.writel(S_GEOM,4,'<input semantic="OUT_TANGENT" source="#'+splineid+'-outtangents"/>') - self.writel(S_GEOM,4,'<input semantic="INTERPOLATION" source="#'+splineid+'-interpolations"/>') - self.writel(S_GEOM,4,'<input semantic="TILT" source="#'+splineid+'-tilts"/>') - self.writel(S_GEOM,3,'</control_vertices>') - - - self.writel(S_GEOM,2,'</spline>') - self.writel(S_GEOM,1,'</geometry>') - - return splineid - - def export_curve_node(self,node,il): - - if (node.data==None): - return - curveid = self.export_curve(node.data) - - self.writel(S_NODES,il,'<instance_geometry url="#'+curveid+'">') - self.writel(S_NODES,il,'</instance_geometry>') - - - - def export_node(self,node,il): - if (not node in self.valid_nodes): - return - prev_node = bpy.context.scene.objects.active - bpy.context.scene.objects.active = node - - self.writel(S_NODES,il,'<node id="'+self.validate_id(node.name)+'" name="'+node.name+'" type="NODE">') - il+=1 - - self.writel(S_NODES,il,'<matrix sid="transform">'+strmtx(node.matrix_local)+'</matrix>') - #print("NODE TYPE: "+node.type+" NAME: "+node.name) - if (node.type=="MESH"): - self.export_mesh_node(node,il) - elif (node.type=="CURVE"): - self.export_curve_node(node,il) - elif (node.type=="ARMATURE"): - self.export_armature_node(node,il) - elif (node.type=="CAMERA"): - self.export_camera_node(node,il) - elif (node.type=="LAMP"): - self.export_lamp_node(node,il) - elif (node.type=="EMPTY"): - self.export_empty_node(node,il) - - for x in node.children: - self.export_node(x,il) - - il-=1 - self.writel(S_NODES,il,'</node>') - bpy.context.scene.objects.active = prev_node #make previous node active again - - def is_node_valid(self,node): - if (not node.type in self.config["object_types"]): - return False - if (self.config["use_active_layers"]): - valid=False - #print("NAME: "+node.name) - for i in range(20): - if (node.layers[i] and self.scene.layers[i]): - valid=True - break - if (not valid): - return False - - if (self.config["use_export_selected"] and not node.select): - return False - - return True - - - def export_scene(self): - - - self.writel(S_NODES,0,'<library_visual_scenes>') - self.writel(S_NODES,1,'<visual_scene id="'+self.scene_name+'" name="scene">') - - #validate nodes - for obj in self.scene.objects: - if (obj in self.valid_nodes): - continue - if (self.is_node_valid(obj)): - n = obj - while (n!=None): - if (not n in self.valid_nodes): - self.valid_nodes.append(n) - n=n.parent - - - - for obj in self.scene.objects: - if (obj in self.valid_nodes and obj.parent==None): - self.export_node(obj,2) - - self.writel(S_NODES,1,'</visual_scene>') - self.writel(S_NODES,0,'</library_visual_scenes>') - - def export_asset(self): - - - self.writel(S_ASSET,0,'<asset>') - # Why is this time stuff mandatory?, no one could care less... - self.writel(S_ASSET,1,'<contributor>') - self.writel(S_ASSET,2,'<author> Anonymous </author>') #Who made Collada, the FBI ? - self.writel(S_ASSET,2,'<authoring_tool> Collada Exporter for Blender 2.6+, by Juan Linietsky (juan@codenix.com) </authoring_tool>') #Who made Collada, the FBI ? - self.writel(S_ASSET,1,'</contributor>') - self.writel(S_ASSET,1,'<created>'+time.strftime("%Y-%m-%dT%H:%M:%SZ ")+'</created>') - self.writel(S_ASSET,1,'<modified>'+time.strftime("%Y-%m-%dT%H:%M:%SZ")+'</modified>') - self.writel(S_ASSET,1,'<unit meter="1.0" name="meter"/>') - self.writel(S_ASSET,1,'<up_axis>Z_UP</up_axis>') - self.writel(S_ASSET,0,'</asset>') - - - def export_animation_transform_channel(self,target,keys,matrices=True): - - frame_total=len(keys) - anim_id=self.new_id("anim") - self.writel(S_ANIM,1,'<animation id="'+anim_id+'">') - source_frames = "" - source_transforms = "" - source_interps = "" - - for k in keys: - source_frames += " "+str(k[0]) - if (matrices): - source_transforms += " "+strmtx(k[1]) - else: - source_transforms += " "+str(k[1]) - - source_interps +=" LINEAR" - - - # Time Source - self.writel(S_ANIM,2,'<source id="'+anim_id+'-input">') - self.writel(S_ANIM,3,'<float_array id="'+anim_id+'-input-array" count="'+str(frame_total)+'">'+source_frames+'</float_array>') - self.writel(S_ANIM,3,'<technique_common>') - self.writel(S_ANIM,4,'<accessor source="#'+anim_id+'-input-array" count="'+str(frame_total)+'" stride="1">') - self.writel(S_ANIM,5,'<param name="TIME" type="float"/>') - self.writel(S_ANIM,4,'</accessor>') - self.writel(S_ANIM,3,'</technique_common>') - self.writel(S_ANIM,2,'</source>') - - if (matrices): - # Transform Source - self.writel(S_ANIM,2,'<source id="'+anim_id+'-transform-output">') - self.writel(S_ANIM,3,'<float_array id="'+anim_id+'-transform-output-array" count="'+str(frame_total*16)+'">'+source_transforms+'</float_array>') - self.writel(S_ANIM,3,'<technique_common>') - self.writel(S_ANIM,4,'<accessor source="#'+anim_id+'-transform-output-array" count="'+str(frame_total)+'" stride="16">') - self.writel(S_ANIM,5,'<param name="TRANSFORM" type="float4x4"/>') - self.writel(S_ANIM,4,'</accessor>') - self.writel(S_ANIM,3,'</technique_common>') - self.writel(S_ANIM,2,'</source>') - else: - # Value Source - self.writel(S_ANIM,2,'<source id="'+anim_id+'-transform-output">') - self.writel(S_ANIM,3,'<float_array id="'+anim_id+'-transform-output-array" count="'+str(frame_total)+'">'+source_transforms+'</float_array>') - self.writel(S_ANIM,3,'<technique_common>') - self.writel(S_ANIM,4,'<accessor source="#'+anim_id+'-transform-output-array" count="'+str(frame_total)+'" stride="1">') - self.writel(S_ANIM,5,'<param name="X" type="float"/>') - self.writel(S_ANIM,4,'</accessor>') - self.writel(S_ANIM,3,'</technique_common>') - self.writel(S_ANIM,2,'</source>') - - # Interpolation Source - self.writel(S_ANIM,2,'<source id="'+anim_id+'-interpolation-output">') - self.writel(S_ANIM,3,'<Name_array id="'+anim_id+'-interpolation-output-array" count="'+str(frame_total)+'">'+source_interps+'</Name_array>') - self.writel(S_ANIM,3,'<technique_common>') - self.writel(S_ANIM,4,'<accessor source="#'+anim_id+'-interpolation-output-array" count="'+str(frame_total)+'" stride="1">') - self.writel(S_ANIM,5,'<param name="INTERPOLATION" type="Name"/>') - self.writel(S_ANIM,4,'</accessor>') - self.writel(S_ANIM,3,'</technique_common>') - self.writel(S_ANIM,2,'</source>') - - self.writel(S_ANIM,2,'<sampler id="'+anim_id+'-sampler">') - self.writel(S_ANIM,3,'<input semantic="INPUT" source="#'+anim_id+'-input"/>') - self.writel(S_ANIM,3,'<input semantic="OUTPUT" source="#'+anim_id+'-transform-output"/>') - self.writel(S_ANIM,3,'<input semantic="INTERPOLATION" source="#'+anim_id+'-interpolation-output"/>') - self.writel(S_ANIM,2,'</sampler>') - if (matrices): - self.writel(S_ANIM,2,'<channel source="#'+anim_id+'-sampler" target="'+target+'/transform"/>') - else: - self.writel(S_ANIM,2,'<channel source="#'+anim_id+'-sampler" target="'+target+'"/>') - self.writel(S_ANIM,1,'</animation>') - - return [anim_id] - - - def export_animation(self,start,end,allowed=None): - - #Blender -> Collada frames needs a little work - #Collada starts from 0, blender usually from 1 - #The last frame must be included also - - frame_orig = self.scene.frame_current - - frame_len = 1.0 / self.scene.render.fps - frame_total = end - start + 1 - frame_sub = 0 - if (start>0): - frame_sub=start*frame_len - - tcn = [] - xform_cache={} - blend_cache={} - # Change frames first, export objects last - # This improves performance enormously - - #print("anim from: "+str(start)+" to "+str(end)+" allowed: "+str(allowed)) - for t in range(start,end+1): - self.scene.frame_set(t) - key = t * frame_len - frame_sub -# print("Export Anim Frame "+str(t)+"/"+str(self.scene.frame_end+1)) - - for node in self.scene.objects: - - if (not node in self.valid_nodes): - continue - if (allowed!=None and not (node in allowed)): - if (node.type=="MESH" and node.data!=None and (node in self.armature_for_morph) and (self.armature_for_morph[node] in allowed)): - pass #all good you pass with flying colors for morphs inside of action - else: - #print("fail "+str((node in self.armature_for_morph))) - continue - if (node.type=="MESH" and node.data!=None and node.data.shape_keys!=None and (node.data in self.mesh_cache) and len(node.data.shape_keys.key_blocks)): - target = self.mesh_cache[node.data]["morph_id"] - for i in range(len(node.data.shape_keys.key_blocks)): - - if (i==0): - continue - - name=target+"-morph-weights("+str(i-1)+")" - if (not (name in blend_cache)): - blend_cache[name]=[] - - blend_cache[name].append( (key,node.data.shape_keys.key_blocks[i].value) ) - - - if (node.type=="MESH" and node.parent and node.parent.type=="ARMATURE"): - - continue #In Collada, nodes that have skin modifier must not export animation, animate the skin instead. - - if (len(node.constraints)>0 or node.animation_data!=None): - #If the node has constraints, or animation data, then export a sampled animation track - name=self.validate_id(node.name) - if (not (name in xform_cache)): - xform_cache[name]=[] - - mtx = node.matrix_world.copy() - if (node.parent): - mtx = node.parent.matrix_world.inverted() * mtx - - xform_cache[name].append( (key,mtx) ) - - if (node.type=="ARMATURE"): - #All bones exported for now - - for bone in node.data.bones: - - bone_name=self.skeleton_info[node]["bone_ids"][bone] - - if (not (bone_name in xform_cache)): - #print("has bone: "+bone_name) - xform_cache[bone_name]=[] - - posebone = node.pose.bones[bone.name] - parent_posebone=None - - mtx = posebone.matrix.copy() - if (bone.parent): - parent_posebone=node.pose.bones[bone.parent.name] - parent_invisible=False - - for i in range(3): - if (parent_posebone.scale[i]==0.0): - parent_invisible=True - - if (not parent_invisible): - mtx = parent_posebone.matrix.inverted() * mtx - - - xform_cache[bone_name].append( (key,mtx) ) - - self.scene.frame_set(frame_orig) - - #export animation xml - for nid in xform_cache: - tcn+=self.export_animation_transform_channel(nid,xform_cache[nid],True) - for nid in blend_cache: - tcn+=self.export_animation_transform_channel(nid,blend_cache[nid],False) - - return tcn - - def export_animations(self): - tmp_mat = [] - for s in self.skeletons: - tmp_bone_mat = [] - for bone in s.pose.bones: - tmp_bone_mat.append(Matrix(bone.matrix_basis)) - bone.matrix_basis = Matrix() - tmp_mat.append([Matrix(s.matrix_local),tmp_bone_mat]) - - self.writel(S_ANIM,0,'<library_animations>') - - - if (self.config["use_anim_action_all"] and len(self.skeletons)): - - cached_actions = {} - - for s in self.skeletons: - if s.animation_data and s.animation_data.action: - cached_actions[s] = s.animation_data.action.name - - - self.writel(S_ANIM_CLIPS,0,'<library_animation_clips>') - - for x in bpy.data.actions[:]: - if x.users==0 or x in self.action_constraints: - continue - if (self.config["use_anim_skip_noexp"] and x.name.endswith("-noexp")): - continue - - bones=[] - #find bones used - for p in x.fcurves: - dp = str(p.data_path) - base = "pose.bones[\"" - if (dp.find(base)==0): - dp=dp[len(base):] - if (dp.find('"')!=-1): - dp=dp[:dp.find('"')] - if (not dp in bones): - bones.append(dp) - - allowed_skeletons=[] - for i,y in enumerate(self.skeletons): - if (y.animation_data): - for z in y.pose.bones: - if (z.bone.name in bones): - if (not y in allowed_skeletons): - allowed_skeletons.append(y) - y.animation_data.action=x; - - y.matrix_local = tmp_mat[i][0] - for j,bone in enumerate(s.pose.bones): - bone.matrix_basis = Matrix() - - - #print("allowed skeletons "+str(allowed_skeletons)) - - #print(str(x)) - - tcn = self.export_animation(int(x.frame_range[0]),int(x.frame_range[1]+0.5),allowed_skeletons) - framelen=(1.0/self.scene.render.fps) - start = x.frame_range[0]*framelen - end = x.frame_range[1]*framelen - #print("Export anim: "+x.name) - self.writel(S_ANIM_CLIPS,1,'<animation_clip name="'+x.name+'" start="'+str(start)+'" end="'+str(end)+'">') - for z in tcn: - self.writel(S_ANIM_CLIPS,2,'<instance_animation url="#'+z+'"/>') - self.writel(S_ANIM_CLIPS,1,'</animation_clip>') - if (len(tcn)==0): - self.operator.report({'WARNING'},'Animation clip "'+x.name+'" contains no tracks.') - - - - self.writel(S_ANIM_CLIPS,0,'</library_animation_clips>') - - - for i,s in enumerate(self.skeletons): - if (s.animation_data==None): - continue - if s in cached_actions: - s.animation_data.action = bpy.data.actions[cached_actions[s]] - else: - s.animation_data.action = None - for j,bone in enumerate(s.pose.bones): - bone.matrix_basis = tmp_mat[i][1][j] - - else: - self.export_animation(self.scene.frame_start,self.scene.frame_end) - - - - self.writel(S_ANIM,0,'</library_animations>') - - def export(self): - - self.writel(S_GEOM,0,'<library_geometries>') - self.writel(S_CONT,0,'<library_controllers>') - self.writel(S_CAMS,0,'<library_cameras>') - self.writel(S_LAMPS,0,'<library_lights>') - self.writel(S_IMGS,0,'<library_images>') - self.writel(S_MATS,0,'<library_materials>') - self.writel(S_FX,0,'<library_effects>') - - - self.skeletons=[] - self.action_constraints=[] - self.export_asset() - self.export_scene() - - self.writel(S_GEOM,0,'</library_geometries>') - - #morphs always go before skin controllers - if S_MORPH in self.sections: - for l in self.sections[S_MORPH]: - self.writel(S_CONT,0,l) - del self.sections[S_MORPH] - - #morphs always go before skin controllers - if S_SKIN in self.sections: - for l in self.sections[S_SKIN]: - self.writel(S_CONT,0,l) - del self.sections[S_SKIN] - - self.writel(S_CONT,0,'</library_controllers>') - self.writel(S_CAMS,0,'</library_cameras>') - self.writel(S_LAMPS,0,'</library_lights>') - self.writel(S_IMGS,0,'</library_images>') - self.writel(S_MATS,0,'</library_materials>') - self.writel(S_FX,0,'</library_effects>') - - if (self.config["use_anim"]): - self.export_animations() - - try: - f = open(self.path,"wb") - except: - return False - - f.write(bytes('<?xml version="1.0" encoding="utf-8"?>\n',"UTF-8")) - f.write(bytes('<COLLADA xmlns="http://www.collada.org/2005/11/COLLADASchema" version="1.4.1">\n',"UTF-8")) - - - s=[] - for x in self.sections.keys(): - s.append(x) - s.sort() - for x in s: - for l in self.sections[x]: - f.write(bytes(l+"\n","UTF-8")) - - f.write(bytes('<scene>\n',"UTF-8")) - f.write(bytes('\t<instance_visual_scene url="#'+self.scene_name+'" />\n',"UTF-8")) - f.write(bytes('</scene>\n',"UTF-8")) - f.write(bytes('</COLLADA>\n',"UTF-8")) - return True - - def __init__(self,path,kwargs,operator): - self.operator=operator - self.scene=bpy.context.scene - self.last_id=0 - self.scene_name=self.new_id("scene") - self.sections={} - self.path=path - self.mesh_cache={} - self.curve_cache={} - self.material_cache={} - self.image_cache={} - self.skeleton_info={} - self.config=kwargs - self.valid_nodes=[] - self.armature_for_morph={} - self.used_bones=[] - self.wrongvtx_report=False - - - - - - - -def save(operator, context, - filepath="", - use_selection=False, - **kwargs - ): - - exp = DaeExporter(filepath,kwargs,operator) - exp.export() - - - - return {'FINISHED'} # so the script wont run after we have batch exported. - - diff --git a/tools/translations/ar.po b/tools/translations/ar.po index 772404006a..8a43e72eba 100644 --- a/tools/translations/ar.po +++ b/tools/translations/ar.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2016-06-19 08:49+0000\n" +"PO-Revision-Date: 2016-06-20 11:18+0000\n" "Last-Translator: Mohammmad Khashashneh <mohammad.rasmi@gmail.com>\n" "Language-Team: Arabic <https://hosted.weblate.org/projects/godot-engine/" "godot/ar/>\n" @@ -64,7 +64,7 @@ msgid "" "order for AnimatedSprite to display frames." msgstr "" "ليتم إظهار الأطر (اللقطات) في الAnimatedSprite (النقوش المتحركة), يجب تكوين " -"مصدر لها من نوع SpriteFrames و ضبط خاصية الFrames (الأطر) بها. " +"مصدر لها من نوع SpriteFrames و ضبط خاصية الFrames (الأطر) بها." #: scene/2d/canvas_modulate.cpp msgid "" @@ -282,9 +282,10 @@ msgstr "" msgid "Create Folder" msgstr "" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "" @@ -477,19 +478,19 @@ msgid "Anim Add Track" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Up" +msgid "Anim Duplicate Keys" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Down" +msgid "Move Anim Track Up" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Remove Anim Track" +msgid "Move Anim Track Down" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" +msgid "Remove Anim Track" msgstr "" #: tools/editor/animation_editor.cpp @@ -521,6 +522,19 @@ msgid "Anim Delete Keys" msgstr "" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "" @@ -549,15 +563,6 @@ msgid "Scale From Cursor" msgstr "" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "" @@ -640,10 +645,6 @@ msgid "Change Anim Loop" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "" @@ -684,10 +685,6 @@ msgid "Enable/Disable looping in animation." msgstr "" #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "" @@ -836,7 +833,6 @@ msgid "Call" msgstr "" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -952,10 +948,11 @@ msgid "Method in target Node must be specified!" msgstr "" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" +msgid "Connect To Node:" msgstr "" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1059,8 +1056,8 @@ msgstr "" msgid "Resource" msgstr "" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "" @@ -1145,6 +1142,89 @@ msgstr "" msgid "Delete" msgstr "" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Not in resource path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "" @@ -1165,6 +1245,46 @@ msgstr "" msgid "Choose" msgstr "" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "" @@ -1185,14 +1305,18 @@ msgstr "" msgid "ScanSources" msgstr "" -#: tools/editor/editor_help.cpp -msgid "Search Classes" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" msgstr "" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "" @@ -1290,10 +1414,6 @@ msgstr "" msgid "Node From Scene" msgstr "" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "" - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1418,8 +1538,23 @@ msgstr "" #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" #: tools/editor/editor_node.cpp @@ -1512,6 +1647,10 @@ msgid "" "(Unsaved changes will be lost)" msgstr "" +#: tools/editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "" @@ -1535,7 +1674,7 @@ msgid "Save Layout" msgstr "" #: tools/editor/editor_node.cpp -msgid "Load Layout" +msgid "Delete Layout" msgstr "" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp @@ -1543,10 +1682,6 @@ msgid "Default" msgstr "" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "" @@ -1576,6 +1711,14 @@ msgid "Distraction Free Mode" msgstr "" #: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "" @@ -1596,6 +1739,10 @@ msgid "Save Scene" msgstr "" #: tools/editor/editor_node.cpp +msgid "Save all Scenes" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "" @@ -1719,6 +1866,10 @@ msgid "Play custom scene" msgstr "" #: tools/editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "" @@ -1871,7 +2022,6 @@ msgid "Output" msgstr "" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "" @@ -2043,10 +2193,6 @@ msgstr "" msgid "Remove from Group" msgstr "" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "" @@ -2118,6 +2264,12 @@ msgid "No target font resource!" msgstr "" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "" @@ -2249,12 +2401,6 @@ msgid "Clips" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "" @@ -2353,7 +2499,7 @@ msgid "Couldn't load post-import script:" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" +msgid "Invalid/broken script for post-import (check console):" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -3016,13 +3162,11 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "" @@ -3138,7 +3282,6 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "" @@ -3217,7 +3360,7 @@ msgid "Anchor" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" +msgid "Insert Keys" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp @@ -3391,6 +3534,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "" @@ -3752,17 +3899,15 @@ msgid "Clear UV" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "" @@ -3870,6 +4015,14 @@ msgid "Save Theme As.." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp +msgid "Next script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "" @@ -4055,10 +4208,6 @@ msgid "Search the class hierarchy." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "" @@ -4093,6 +4242,11 @@ msgstr "" msgid "Debugger" msgstr "" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "" @@ -4326,75 +4480,75 @@ msgid "Align with view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" +msgid "Environment" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" +msgid "Audio Listener" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" +msgid "Gizmos" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" +msgid "XForm Dialog" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" +msgid "No scene selected to instance!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" +msgid "Instance at Cursor" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" +msgid "Could not instance scene!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" +msgid "Scale Mode (R)" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" +msgid "Bottom View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" +msgid "Top View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" +msgid "Rear View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" +msgid "Front View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" +msgid "Left View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" +msgid "Right View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" +msgid "Switch Perspective/Orthogonal view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" +msgid "Insert Animation Key" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" +msgid "Focus Selection" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" +msgid "Align Selection With View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp @@ -4598,17 +4752,43 @@ msgid "StyleBox Preview:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" +msgid "Snap Mode:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" +msgid "<None>" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" msgstr "" #: tools/editor/plugins/theme_editor_plugin.cpp @@ -5090,6 +5270,14 @@ msgid "Couldn't create engine.cfg in project path." msgstr "" #: tools/editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "" @@ -5110,6 +5298,14 @@ msgid "Project Path:" msgstr "" #: tools/editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "" @@ -5274,50 +5470,6 @@ msgid "Add Translation" msgstr "" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "" @@ -5342,10 +5494,6 @@ msgid "Remove Resource Remap Option" msgstr "" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "" @@ -5418,18 +5566,6 @@ msgid "AutoLoad" msgstr "" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "" @@ -5670,31 +5806,27 @@ msgid "Error duplicating scene to save it." msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" +msgid "Edit Groups" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Add Child Node" +msgid "Edit Connections" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Instance Child Scene" +msgid "Delete Node(s)" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Change Type" +msgid "Add Child Node" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" +msgid "Instance Child Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" +msgid "Change Type" msgstr "" #: tools/editor/scene_tree_dock.cpp @@ -5710,10 +5842,6 @@ msgid "Save Branch as Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "" @@ -5842,6 +5970,10 @@ msgid "Show In File Manager" msgstr "" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "" diff --git a/tools/translations/bg.po b/tools/translations/bg.po new file mode 100644 index 0000000000..5b3c4db057 --- /dev/null +++ b/tools/translations/bg.po @@ -0,0 +1,6269 @@ +# Bulgarian translation of the Godot Engine editor +# Copyright (C) 2016 Juan Linietsky, Ariel Manzur and the Godot community +# This file is distributed under the same license as the Godot source code. +# +# Bojidar Marinov <bojidar.marinov.bg@gmail.com>, 2016. +# +msgid "" +msgstr "" +"Project-Id-Version: Godot Engine editor\n" +"PO-Revision-Date: 2016-06-27 15:36+0000\n" +"Last-Translator: Bojidar Marinov <bojidar.marinov.bg@gmail.com>\n" +"Language-Team: Bulgarian <https://hosted.weblate.org/projects/godot-engine/" +"godot/bg/>\n" +"Language: bg\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 2.7-dev\n" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid type argument to convert(), use TYPE_* constants." +msgstr "" +"Невалиден агрумент тип на convert(), използвайте константите започващи с " +"TYPE_*." + +#: modules/gdscript/gd_functions.cpp +msgid "Not enough bytes for decoding bytes, or invalid format." +msgstr "Недостатъчно байтове за декодиране на байтовете, или невалиден формат." + +#: modules/gdscript/gd_functions.cpp +msgid "step argument is zero!" +msgstr "Стъпката на range() е нула!" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Not a script with an instance" +msgstr "Скриптът няма инстанция" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Not based on a script" +msgstr "Обектът не е базиран на скрипт" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Not based on a resource file" +msgstr "Обектът не е базиран на ресурсен файл" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Invalid instance dictionary format (missing @path)" +msgstr "Невалиден формат на инстанцията в речника (липсва @path)" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (can't load script at @path)" +msgstr "" +"Невалиден формат на инстанцията в речника (скриптът в @path не може да бъде " +"зареден)" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (invalid script at @path)" +msgstr "" +"Невалиден формат на инстанцията в речника (скриптът в @path е невалиден)" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Invalid instance dictionary (invalid subclasses)" +msgstr "Невалиден формат на инстанцията в речника (невалиден подклас)" + +#: scene/2d/animated_sprite.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite to display frames." +msgstr "" +"За да може AnimatedSprite да показва кадри, първо трябва да му се даде " +"SpriteFrames ресурс в парамертъра 'Frames'." + +#: scene/2d/canvas_modulate.cpp +#, fuzzy +msgid "" +"Only one visible CanvasModulate is allowed per scene (or set of instanced " +"scenes). The first created one will work, while the rest will be ignored." +msgstr "" +"Може да има само един видим CanvasModulate на сцене (или няколко " +"инстанцирани сцени). Само първият ще работи, а всички останали - игнорирани." + +#: scene/2d/collision_polygon_2d.cpp +msgid "" +"CollisionPolygon2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" +"CollisionPolygon2D служи само за да даде форма за колизии на " +"CollisionObject2D. Моля, използвайте го само като наследник на Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, и т.н. за да им дадете форма." + +#: scene/2d/collision_polygon_2d.cpp +msgid "An empty CollisionPolygon2D has no effect on collision." +msgstr "Празен CollisionPolygon2D няма никакъв ефект на колизията." + +#: scene/2d/collision_shape_2d.cpp +msgid "" +"CollisionShape2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" +"CollisionShape2D служи само за да даде форма за колизии на " +"CollisionObject2D. Моля, използвайте го само като наследник на Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, и т.н. за да им дадете форма." + +#: scene/2d/collision_shape_2d.cpp +#, fuzzy +msgid "" +"A shape must be provided for CollisionShape2D to function. Please create a " +"shape resource for it!" +msgstr "" +"За да работи CollisionShape2D, е нужно да му се даде форма. Моля, създайте " +"му Shape2D ресурс." + +#: scene/2d/light_2d.cpp +msgid "" +"A texture with the shape of the light must be supplied to the 'texture' " +"property." +msgstr "" +"Тесктура с нужната форма на светлината трябва да бъде дадена в параметъра " +"'texture'." + +#: scene/2d/light_occluder_2d.cpp +msgid "" +"An occluder polygon must be set (or drawn) for this occluder to take effect." +msgstr "" +"Затъмняващият многоъгълник трябва да бъде зададен (или нарисуван) за да може " +"да работи тази сянка." + +#: scene/2d/light_occluder_2d.cpp +msgid "The occluder polygon for this occluder is empty. Please draw a polygon!" +msgstr "Затъмняващият многоъгълник е празен. Моля, нарисувайте един." + +#: scene/2d/navigation_polygon.cpp +msgid "" +"A NavigationPolygon resource must be set or created for this node to work. " +"Please set a property or draw a polygon." +msgstr "" +"На този нод трябва да бъде даден един NavigationPolygon ресурс. Моля, " +"задайте или нарисувайте един многоъгълник." + +#: scene/2d/navigation_polygon.cpp +msgid "" +"NavigationPolygonInstance must be a child or grandchild to a Navigation2D " +"node. It only provides navigation data." +msgstr "" +"NavigationPolygonInstance трябва да бъде наследник или наследник на " +"наследник на Navigation2D. Той само дава навигационна информация." + +#: scene/2d/parallax_layer.cpp +msgid "" +"ParallaxLayer node only works when set as child of a ParallaxBackground node." +msgstr "ParallaxLayer работи само когато е наследник на ParallaxBackground." + +#: scene/2d/particles_2d.cpp +msgid "Path property must point to a valid Particles2D node to work." +msgstr "" +"Параметъра 'Path' трябва да сочи към работещ Particles2D нод за да работи." + +#: scene/2d/path_2d.cpp +msgid "PathFollow2D only works when set as a child of a Path2D node." +msgstr "PathFollow2D работи само когато е наследник на Path2D." + +#: scene/2d/remote_transform_2d.cpp +msgid "Path property must point to a valid Node2D node to work." +msgstr "Параметъра 'Path' трябва да сочи към Node2D нод за да работи." + +#: scene/2d/sample_player_2d.cpp scene/audio/sample_player.cpp +msgid "" +"A SampleLibrary resource must be created or set in the 'samples' property in " +"order for SamplePlayer to play sound." +msgstr "" +"За да изпълнява звук, SamplePlayer трябва да има един SampleLibrary ресурс в " +"параметъра 'samples'." + +#: scene/2d/sprite.cpp +msgid "" +"Path property must point to a valid Viewport node to work. Such Viewport " +"must be set to 'render target' mode." +msgstr "" +"Параметъра 'Path' трябва да сочи към валиден Viewport нод за да работи. Този " +"Viewport трябва да бъде настройен в режим 'рендъринг цел'(render target)." + +#: scene/2d/sprite.cpp +msgid "" +"The Viewport set in the path property must be set as 'render target' in " +"order for this sprite to work." +msgstr "" + +#: scene/2d/visibility_notifier_2d.cpp +msgid "" +"VisibilityEnable2D works best when used with the edited scene root directly " +"as parent." +msgstr "" + +#: scene/3d/body_shape.cpp +msgid "" +"CollisionShape only serves to provide a collision shape to a CollisionObject " +"derived node. Please only use it as a child of Area, StaticBody, RigidBody, " +"KinematicBody, etc. to give them a shape." +msgstr "" + +#: scene/3d/body_shape.cpp +msgid "" +"A shape must be provided for CollisionShape to function. Please create a " +"shape resource for it!" +msgstr "" + +#: scene/3d/collision_polygon.cpp +msgid "" +"CollisionPolygon only serves to provide a collision shape to a " +"CollisionObject derived node. Please only use it as a child of Area, " +"StaticBody, RigidBody, KinematicBody, etc. to give them a shape." +msgstr "" + +#: scene/3d/collision_polygon.cpp +msgid "An empty CollisionPolygon has no effect on collision." +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 "" +"NavigationMeshInstance must be a child or grandchild to a Navigation node. " +"It only provides navigation data." +msgstr "" + +#: scene/3d/scenario_fx.cpp +msgid "" +"Only one WorldEnvironment is allowed per scene (or set of instanced scenes)." +msgstr "" + +#: scene/3d/spatial_sample_player.cpp +msgid "" +"A SampleLibrary resource must be created or set in the 'samples' property in " +"order for SpatialSamplePlayer to play sound." +msgstr "" + +#: scene/3d/sprite_3d.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite3D to display frames." +msgstr "" + +#: scene/gui/dialogs.cpp tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Cancel" +msgstr "" + +#: scene/gui/dialogs.cpp +msgid "OK" +msgstr "" + +#: scene/gui/dialogs.cpp +msgid "Alert!" +msgstr "" + +#: scene/gui/dialogs.cpp +msgid "Please Confirm..." +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "File Exists, Overwrite?" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "All Recognized" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "All Files (*)" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/editor_help.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +#: tools/editor/scenes_dock.cpp +msgid "Open" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open a File" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open File(s)" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open a Directory" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open a File or Directory" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Save a File" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp +msgid "Create Folder" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Path:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Directories & Files:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "File:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Filter:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp tools/editor/editor_plugin_settings.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Name:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp +msgid "Could not create folder." +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Must use a valid extension." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Shift+" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Alt+" +msgstr "" + +#: scene/gui/input_action.cpp +msgid "Ctrl+" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Meta+" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Device" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Button" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Left Button." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Right Button." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Middle Button." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Wheel Up." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Wheel Down." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Axis" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Cut" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/resources_dock.cpp +msgid "Copy" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/resources_dock.cpp +msgid "Paste" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_export.cpp +msgid "Select All" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp tools/editor/editor_log.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/rich_text_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/script_editor_debugger.cpp +msgid "Clear" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Undo" +msgstr "" + +#: scene/gui/popup.cpp +msgid "" +"Popups will hide by default unless you call popup() or any of the popup*() " +"functions. Making them visible for editing is fine though, but they will " +"hide upon running." +msgstr "" + +#: scene/main/viewport.cpp +msgid "" +"This viewport is not set as render target. If you intend for it to display " +"its contents directly to the screen, make it a child of a Control so it can " +"obtain a size. Otherwise, make it a RenderTarget and assign its internal " +"texture to some node for display." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Error initializing FreeType." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Unknown font format." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Error loading font." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Invalid font size." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Disabled" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "All Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move Add Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Transition" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Transform" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Value" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Call" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move Anim Track Up" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move Anim Track Down" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Anim Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Set Transitions to:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Rename" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Change Interpolation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Change Value Mode" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Edit Node Curve" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Edit Selection Curve" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Delete Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Continuous" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Discrete" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Trigger" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Move Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale From Cursor" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Goto Next Step" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Goto Prev Step" +msgstr "" + +#: tools/editor/animation_editor.cpp tools/editor/property_editor.cpp +msgid "Linear" +msgstr "" + +#: tools/editor/animation_editor.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Constant" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "In" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Out" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "In-Out" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Out-In" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Transitions" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Optimize Animation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up Animation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Create NEW track for %s and insert key?" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Create %d NEW tracks and insert keys?" +msgstr "" + +#: tools/editor/animation_editor.cpp tools/editor/create_dialog.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/particles_editor_plugin.cpp +#: tools/editor/project_manager.cpp tools/editor/script_create_dialog.cpp +msgid "Create" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Create & Insert" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert Track & Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Change Anim Len" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Change Anim Loop" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Create Typed Value Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Scale Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Call Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Animation zoom." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Length (s):" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Animation length (in seconds)." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Step (s):" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Cursor step snap (in seconds)." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Enable/Disable looping in animation." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Add new tracks." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move current track up." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move current track down." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove selected track." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Track tools" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Enable editing of individual keys by clicking them." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim. Optimizer" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max. Linear Error:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max. Angular Error:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max Optimizable Angle:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Optimize" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Transition" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale Ratio:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Call Functions in Which Node?" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove invalid keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove unresolved and empty tracks" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-up all animations" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up Animation(s) (NO UNDO!)" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Resize Array" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Change Array Value Type" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Change Array Value" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp tools/editor/create_dialog.cpp +#: tools/editor/editor_help.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Search:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Sort:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Reverse" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Category:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "All" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Site:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Support.." +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Official" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Community" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Testing" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Assets ZIP File" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Method List For '%s':" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Call" +msgstr "" + +#: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/project_settings.cpp tools/editor/property_editor.cpp +#: tools/editor/run_settings_dialog.cpp tools/editor/settings_config_dialog.cpp +msgid "Close" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Method List:" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Arguments:" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Return:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Go to Line" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Line Number:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "No Matches" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replaced %d Ocurrence(s)." +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace All" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Match Case" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Whole Words" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Selection Only" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/editor_help.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Search" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/editor_help.cpp +msgid "Find" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Next" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replaced %d ocurrence(s)." +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Not found!" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace By" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Case Sensitive" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Backwards" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Prompt On Replace" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Skip" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/script_editor_debugger.cpp +msgid "Line:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Col:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Method in target Node must be specified!" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect To Node:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp +#: tools/editor/plugins/item_list_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Add" +msgstr "" + +#: tools/editor/connections_dialog.cpp tools/editor/dependency_editor.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Remove" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Add Extra Call Argument:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Extra Call Arguments:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Path to Node:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Make Function" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Deferred" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Oneshot" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect '%s' to '%s'" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connecting Signal:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Create Subscription" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect.." +msgstr "" + +#: tools/editor/connections_dialog.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Disconnect" +msgstr "" + +#: tools/editor/connections_dialog.cpp tools/editor/node_dock.cpp +msgid "Signals" +msgstr "" + +#: tools/editor/create_dialog.cpp +msgid "Create New" +msgstr "" + +#: tools/editor/create_dialog.cpp tools/editor/editor_help.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +msgid "Matches:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Search Replacement For:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies For:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"Scene '%s' is currently being edited.\n" +"Changes will not take effect unless reloaded." +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"Resource '%s' is in use.\n" +"Changes will take effect when reloaded." +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Resource" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp +msgid "Path" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Fix Broken" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependency Editor" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Search Replacement Resource:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Owners Of:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"The files being removed are required by other resources in order for them to " +"work.\n" +"Remove them anyway? (no undo)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Remove selected files from the project? (no undo)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Error loading:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Scene failed to load due to missing dependencies:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Open Anyway" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Which action should be taken?" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Fix Dependencies" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Errors loading!" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Permanently delete %d item(s)? (No undo!)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Owns" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Resources Without Explicit Ownership:" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_node.cpp +msgid "Orphan Resource Explorer" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Delete selected files?" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/item_list_editor_plugin.cpp +#: tools/editor/scenes_dock.cpp +msgid "Delete" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr "Обектът не е базиран на ресурсен файл" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Updating Scene" +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Storing local changes.." +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Updating scene.." +msgstr "" + +#: tools/editor/editor_dir_dialog.cpp +msgid "Choose a Directory" +msgstr "" + +#: tools/editor/editor_dir_dialog.cpp +msgid "Choose" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp +msgid "Favorites:" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Recent:" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Preview:" +msgstr "" + +#: tools/editor/editor_file_system.cpp +msgid "Cannot go into subdir:" +msgstr "" + +#: tools/editor/editor_file_system.cpp +msgid "ScanSources" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Class List:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/property_editor.cpp +msgid "Class:" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/scene_tree_editor.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Inherits:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Inherited by:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Brief Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Public Methods:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Members:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "GUI Theme Items:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Signals:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Constants:" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/script_editor_debugger.cpp +msgid "Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Method Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Search Text" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Added:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Removed:" +msgstr "" + +#: tools/editor/editor_import_export.cpp tools/editor/project_export.cpp +msgid "Error saving atlas:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Could not save atlas subtexture:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Storing File:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Packing" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Exporting for %s" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Setting Up.." +msgstr "" + +#: tools/editor/editor_log.cpp +msgid " Output:" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp +msgid "Re-Importing" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Importing:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Node From Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/resources_dock.cpp +msgid "Error saving resource!" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/resources_dock.cpp +msgid "Save Resource As.." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp +msgid "I see.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't open file for writing:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Requested file format unknown:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error while saving." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Saving Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Analyzing" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Creating Thumbnail" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Couldn't save scene. Likely dependencies (instances) couldn't be satisfied." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Failed to load resource." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't load MeshLibrary for merging!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error saving MeshLibrary!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't load TileSet for merging!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error saving TileSet!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't open export templates zip." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Loading Export Templates" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error trying to save layout!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Default editor layout overridden." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Layout name not found!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Restored default layout to base settings." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Copy Params" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Paste Params" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Paste Resource" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Copy Resource" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Make Built-In" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Make Sub-Resources Unique" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open in Help" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "There is no defined scene to run." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Current scene was never saved, please save it prior to running." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Could not start subprocess!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Base Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Open Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Open Script.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Yes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Close scene? (Unsaved changes will be lost)" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Scene As.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "This scene has never been saved. Save before running?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Please save the scene first." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Translatable Strings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Mesh Library" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Tile Set" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quit" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Exit the editor?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Current scene not saved. Open anyway?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't reload a scene that was never saved." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Revert" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "This action cannot be undone. Revert anyway?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Run Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Open Project Manager? \n" +"(Unsaved changes will be lost)" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp +msgid "Ugh" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Error loading scene, it must be inside the project path. Use 'Import' to " +"open the scene, then save it inside the project path." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error loading scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Scene '%s' has broken dependencies:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Layout" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Delete Layout" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Default" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Switch Scene Tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "%d more file(s)" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "%d more file(s) or folder(s)" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to previously opened scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Fullscreen Mode" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Distraction Free Mode" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Operations with scene files." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "New Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "New Inherited Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save all Scenes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Close Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Close Goto Prev. Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Recent" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Filter Files.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Convert To.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Translatable Strings.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "MeshLibrary.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "TileSet.." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Redo" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Run Script" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Project Settings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Revert Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quit to Project List" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Import assets to the project." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Import" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Miscellaneous project or scene-wide tools." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Tools" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export the project to many platforms." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Export" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play the project." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Play" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Pause the scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Pause Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Stop the scene." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Stop" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play the edited scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play custom scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Debug options" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Deploy with Remote Debug" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When exporting or deploying, the resulting executable will attempt to " +"connect to the IP of this computer in order to be debugged." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Small Deploy with Network FS" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is enabled, export or deploy will produce a minimal " +"executable.\n" +"The filesystem will be provided from the project by the editor over the " +"network.\n" +"On Android, deploy will use the USB cable for faster performance. This " +"option speeds up testing for games with a large footprint." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Visible Collision Shapes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " +"running game if this option is turned on." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Visible Navigation" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Navigation meshes and polygons will be visible on the running game if this " +"option is turned on." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Sync Scene Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is turned on, any changes made to the scene in the editor " +"will be replicated in the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Sync Script Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is turned on, any script that is saved will be reloaded on " +"the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Settings" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/settings_config_dialog.cpp +msgid "Editor Settings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Editor Layout" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Install Export Templates" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "About" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Alerts when an external resource has changed." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Spins when the editor window repaints!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Update Always" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Update Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Inspector" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Create a new resource in memory and edit it." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Load an existing resource from disk and edit it." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save the currently edited resource." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Save As.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to the previous edited object in history." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to the next edited object in history." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "History of recently edited objects." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Object properties." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "FileSystem" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Output" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp +msgid "Re-Import" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_plugin_settings.cpp +msgid "Update" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Thanks from the Godot community!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Thanks!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Import Templates From ZIP File" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Export Project" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Library" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Merge With Existing" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Password:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open & Run a Script" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Load Errors" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Installed Plugins:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Version:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Author:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Status:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Stop Profiling" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Start Profiling" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Measure:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame Time (sec)" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Average Time (sec)" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame %" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Fixed Frame %" +msgstr "" + +#: tools/editor/editor_profiler.cpp tools/editor/script_editor_debugger.cpp +msgid "Time:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Inclusive" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Self" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame #:" +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Please wait for scan to complete." +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Current scene must be saved to re-import." +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Save & Re-Import" +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Re-Import Changed Resources" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Write your logic in the _run() method." +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "There is an edited scene already." +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Couldn't instance script:" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Did you forget the 'tool' keyword?" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Couldn't run script:" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Did you forget the '_run' method?" +msgstr "" + +#: tools/editor/editor_settings.cpp +msgid "Default (Same as Editor)" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Select Node(s) to Import" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Scene Path:" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Import From Node:" +msgstr "" + +#: tools/editor/file_type_cache.cpp +msgid "Can't open file_type_cache.cch for writing, not saving file type cache!" +msgstr "" + +#: tools/editor/groups_editor.cpp +msgid "Add to Group" +msgstr "" + +#: tools/editor/groups_editor.cpp +msgid "Remove from Group" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "No bit masks to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path is empty." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must be a complete resource path." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must exist." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Save path is empty!" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Import BitMasks" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s):" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Target Path:" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Accept" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Bit Mask" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "No source font file!" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "No target font resource!" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Can't load/process source font." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Couldn't save font." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Dest Resource:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "The quick brown fox jumps over the lazy dog." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Test:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Options:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Font Import" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"This file is already a Godot font file, please supply a BMFont type file " +"instead." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Failed opening as BMFont file." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Invalid font custom source." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Font" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "No meshes to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Single Mesh Import" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Source Mesh(es):" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Surface %d" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "No samples to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Import Audio Samples" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Source Sample(s):" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Audio Sample" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "New Clip" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Animation Options" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Flags" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Bake FPS:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Optimizer" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Linear Error" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angular Error" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angle" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Clips" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Start(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "End(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Loop" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Filters" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source path is empty." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error importing scene." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import 3D Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source Scene:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Same as Target Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Shared" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Target Texture Folder:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Post-Process Script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Custom Root Node Type:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Auto" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "The Following Files are Missing:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Anyway" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import & Open" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Edited scene has not been saved, open imported scene anyway?" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Importing Scene.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Running Custom Script.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import (check console):" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error running post-import script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Image:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Can't import a file over itself:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't localize path: %s (already local)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Saving.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "3D Scene Animation" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Uncompressed" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossless (PNG)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossy (WebP)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress (VRAM)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Format" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Compression Quality (WebP):" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Options" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Please specify some files!" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "At least one file needed for Atlas." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Error importing:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Only one file is required for large texture." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Max Texture Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for Atlas (2D)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cell Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Large Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Textures (2D)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Base Atlas Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 2D" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 3D" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "2D Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "3D Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Atlas Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "" +"NOTICE: Importing 2D textures is not mandatory. Just copy png/jpg files to " +"the project." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Crop empty space." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Load Source Image" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Slicing" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Inserting" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Saving" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save large texture:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Build Atlas For:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Loading Image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't load image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Converting Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cropping Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Blitting Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save atlas image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save converted texture:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid source!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid translation source!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Column" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Language" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No items to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No target path!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translations" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Couldn't import!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translation" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Source CSV:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Ignore First Row" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Compress" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Add to Project (engine.cfg)" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Languages:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Translation" +msgstr "" + +#: tools/editor/multi_node_edit.cpp +msgid "MultiNode Set" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Node" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Groups" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Select a Node to edit Signals and Groups." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Toggle Autoplay" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "New Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "New Anim" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Remove Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Invalid animation name!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Animation name already exists!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Rename Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Next Changed" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Blend Time" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Duplicate Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to copy!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation resource on clipboard!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Pasted Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Paste Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to edit!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from current pos. (A)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from end. (Shift+A)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Stop animation playback. (S)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from start. (Shift+D)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from current pos. (D)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation position (in seconds)." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Scale animation playback globally for the node." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Create new animation in player." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load animation from disk." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load an animation from disk." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Save the current animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Save As" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Display list of animations in player." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Autoplay on Load" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Edit Target Blend Times" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Tools" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Copy Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Create New Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/script_create_dialog.cpp +msgid "Error!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Times:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Next (Auto Queue):" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Cross-Animation Blend Times" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Animation" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "New name:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Scale:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade In (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade Out (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Auto Restart:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Restart (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Random Restart (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Start!" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Amount:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 0:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 1:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "X-Fade Time (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Current:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Add Input" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Clear Auto-Advance" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Set Auto-Advance" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Delete Input" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Rename" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is valid." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is invalid." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "OneShot Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend2 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend3 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend4 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeScale Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeSeek Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Transition Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Import Animations.." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Edit Node Filters" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Filters.." +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Parsing %d Triangles:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Triangle #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Light Baker Setup:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Parsing Geometry" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Fixing Lights" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Making BVH" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Creating Light Octree" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Creating Octree Texture" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Transfer to Lightmaps:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Allocating Texture #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Baking Triangle #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Post-Processing Texture #" +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "BakedLightInstance does not contain a BakedLight resource." +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "Bake!" +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "Reset the lightmap octree baking process (start over)." +msgstr "" + +#: tools/editor/plugins/camera_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Preview" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Configure Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Offset:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Step:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Offset:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Step:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Pivot" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Action" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit CanvasItem" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Change Anchors" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom (%):" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Paste Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Select Mode (Q)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Drag: Rotate" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+Drag: Move" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Press 'v' to Change Pivot, 'Shift+v' to Drag Pivot (while moving)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+RMB: Depth list selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Move Mode (W)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Mode (E)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "" +"Show a list of all objects at the position clicked\n" +"(same as Alt+RMB in select mode)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Click to change object's rotation pivot." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Pan Mode" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Lock the selected object in place (can't be moved)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Unlock the selected object (can be moved)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Makes sure the object's children are not selectable." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Restores the object's children's ability to be selected." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Edit" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Show Grid" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Rotation Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap Relative" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Configure Snap.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Pixel Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Expand to Parent" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Skeleton.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make Bones" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Bones" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom In" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Out" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Reset" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Set.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Center Selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Frame Selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Anchor" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Keys" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key (Existing Tracks)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Copy Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Set a Value" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap (Pixels):" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create Poly" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly (Remove Point)" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create a new polygon from scratch." +msgstr "" + +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +msgid "Create Poly3D" +msgstr "" + +#: tools/editor/plugins/collision_shape_2d_editor_plugin.cpp +msgid "Set Handle" +msgstr "" + +#: tools/editor/plugins/color_ramp_editor_plugin.cpp +msgid "Add/Remove Color Ramp Point" +msgstr "" + +#: tools/editor/plugins/color_ramp_editor_plugin.cpp +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Color Ramp" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Creating Mesh Library" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Thumbnail.." +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove item %d?" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Add Item" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove Selected Item" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import from Scene" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Update from Scene" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Item %d" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Items" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Item List Editor" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +msgid "Create Occluder Polygon" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Edit existing polygon:" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "LMB: Move Point." +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Ctrl+LMB: Split Segment." +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "RMB: Erase Point." +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh is empty!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Trimesh Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Convex Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "This doesn't work on scene root!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Shape" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Shape" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Navigation Mesh" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "MeshInstance lacks a Mesh!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Could not create outline!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Static Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Static Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Collision Sibling" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Collision Sibling" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh.." +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Outline Size:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and no MultiMesh set in node)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and MultiMesh contains no Mesh)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (invalid path)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (not a MeshInstance)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (contains no Mesh resource)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No surface source specified." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (invalid path)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no geometry)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no faces)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Parent has no solid faces to populate." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Couldn't map area." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Source Mesh:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Target Surface:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate Surface" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate MultiMesh" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Target Surface:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Source Mesh:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "X-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Y-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Z-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh Up Axis:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Rotation:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Tilt:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Scale:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate" +msgstr "" + +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create Navigation Polygon" +msgstr "" + +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Remove Poly And Point" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Error loading image:" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "No pixels with transparency > 128 in image.." +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Set Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Clear Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Load Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Generated Point Count:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry." +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry (faces)." +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Faces contain no area!" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "No faces!" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Generate AABB" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter From Mesh" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter From Node" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Clear Emitter" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Emission Positions:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Emission Fill:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Surface" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Volume" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Remove Point from Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Add Point to Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Point in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move In-Control in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Out-Control in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Select Points" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Shift+Drag: Select Control Points" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Click: Add Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Right Click: Delete Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Select Control Points (Shift+Drag)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Add Point (in empty space)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Split Segment (in curve)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Delete Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Close Curve" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Curve Point #" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Point Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve In Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Out Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Split Path" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Remove Path Point" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create UV Map" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Transform UV Map" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon 2D UV Editor" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Point" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Ctrl: Rotate" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift: Move All" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift+Ctrl: Scale" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Rotate Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Scale Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon->UV" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "UV->Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Clear UV" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Snap" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Enable Snap" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "ERROR: Couldn't load resource!" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Add Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Rename Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Delete Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Resource clipboard is empty!" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Load Resource" +msgstr "" + +#: tools/editor/plugins/rich_text_editor_plugin.cpp +msgid "Parse BBCode" +msgstr "" + +#: tools/editor/plugins/sample_editor_plugin.cpp +msgid "Length:" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Open Sample File(s)" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "ERROR: Couldn't load sample!" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Add Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Rename Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Delete Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "16 Bits" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "8 Bits" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Stereo" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Mono" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Format" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Pitch" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error while saving theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error saving" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error importing theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error importing" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Import Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Next script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/project_export.cpp +msgid "File" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/property_editor.cpp +msgid "New" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save All" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "History Prev" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "History Next" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Reload Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Move Up" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Move Down" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Indent Left" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Indent Right" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Toggle Comment" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Clone Down" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Complete Symbol" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Trim Trailing Whitespace" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Auto Indent" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Soft Reload Script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find Next" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find Previous" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Replace.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Function.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Goto Line.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Debug" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Toggle Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Remove All Breakpoints" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Next Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Previous Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Step Over" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Step Into" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Break" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Continue" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Keep Debugger Open" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Window" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Move Left" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Move Right" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Help" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Contextual Help" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Tutorials" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Open https://godotengine.org at tutorials section." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Classes" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Search the class hierarchy." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Search the reference documentation." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Go to previous edited document." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Go to next edited document." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Create Script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"The following files are newer on disk.\n" +"What action should be taken?:" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Reload" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Resave" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Debugger" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Vertex" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Fragment" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Lighting" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Scalar Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Toggle Rot Only" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Function" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Function" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Default Value" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change XForm Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Texture Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Cubemap Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Comment" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Color Ramp" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Curve Map" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Curve Map" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Input Name" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Connect Graph Nodes" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Disconnect Graph Nodes" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Remove Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Move Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Duplicate Graph Node(s)" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Delete Shader Graph Node(s)" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Cyclic Connection Link" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Missing Input Connections" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Orthogonal" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Aborted." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "X-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Y-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Z-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Plane Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scaling to %s%%." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotating %s degrees." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Keying is disabled (no key inserted)." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Animation Key Inserted." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Align with view" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Environment" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Audio Listener" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Gizmos" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "XForm Dialog" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "No scene selected to instance!" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Instance at Cursor" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Could not instance scene!" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Mode (R)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Switch Perspective/Orthogonal view" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Insert Animation Key" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Focus Selection" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Align Selection With View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Local Coords" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Dialog.." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default Light" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default sRGB" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "1 Viewport" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports (Alt)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports (Alt)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "4 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Normal" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Wireframe" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Overdraw" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Shadeless" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Origin" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Grid" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Snap Settings" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Translate Snap:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Snap (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Snap (%):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Viewport Settings" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Default Light Normal:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Ambient Light Color:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective FOV (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Near:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Far:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Change" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Translate:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale (ratio):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Type" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Pre" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Post" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "ERROR: Couldn't load frame resource!" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Frame" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Resource clipboard is empty or not a texture!" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Paste Frame" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Empty" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation Loop" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation FPS" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "(empty)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animations" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Speed (FPS):" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animation Frames" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (Before)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (After)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Up" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Down" +msgstr "" + +#: tools/editor/plugins/style_box_editor_plugin.cpp +msgid "StyleBox Preview:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Snap Mode:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "<None>" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Can't save theme to file:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add All Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add All" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Remove Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add Class Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Remove Class Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Template" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Editor Template" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio1" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio2" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Check Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Checked Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Has" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Many" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp tools/editor/project_export.cpp +msgid "Options" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Have,Many,Several,Options!" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 1" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 2" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 3" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_settings.cpp tools/editor/scene_tree_editor.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Type:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Data Type:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Icon" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Style" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Color" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Paint TileMap" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Duplicate" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase TileMap" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase selection" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Find tile" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Transpose" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror X" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror Y" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Bucket" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Pick Tile" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Select" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 0 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 90 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 180 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 270 degrees" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Could not find tile:" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Item name or ID:" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from scene?" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from scene?" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from Scene" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from Scene" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Error" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Edit Script Options" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Please export outside the project folder!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Error exporting project!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Error writing the project PCK!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "No exporter for platform '%s' yet." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Include" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Change Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group name can't be empty!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Invalid character in group name!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group name already exists!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Add Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Delete Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Atlas Preview" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Project Export Settings" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Target" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export to Platform" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Resources" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export selected resources (including dependencies)." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export all resources in the project." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export all files in the project directory." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Resources to Export:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Action" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "" +"Filters to export non-resource files (comma-separated, e.g.: *.json, *.txt):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Filters to exclude from export (comma-separated, e.g.: *.json, *.txt):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Convert text scenes to binary on export." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Images" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Keep Original" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for Disk (Lossy, WebP)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for RAM (BC/PVRTC/ETC)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Convert Images (*.png):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for Disk (Lossy) Quality:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Shrink All Images:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Formats:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Image Groups" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Groups:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Disk" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress RAM" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Lossy Quality:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Atlas:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Shrink By:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Preview Atlas" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Image Filter:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Images:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Select None" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Samples" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Sample Conversion Mode: (.wav files):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Keep" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress (RAM - IMA-ADPCM)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Sampling Rate Limit (Hz):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Trim" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Trailing Silence:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script Export Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Text" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compiled" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Encrypted (Provide Key Below)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script Encryption Key (256-bits as hex):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export PCK/Zip" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Project PCK" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export.." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Project Export" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Preset:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, the path must exist!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, engine.cfg must not exist." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, engine.cfg must exist." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Imported Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path (changed anything?)." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Couldn't create engine.cfg in project path." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Import Existing Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Path (Must Exist):" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Name:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Create New Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Path:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Browse" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "New Game Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "That's a BINGO!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Unnamed Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Are you sure to open more than one projects?" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Are you sure to run more than one projects?" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Remove project from the list? (Folder contents will not be modified)" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Manager" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project List" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Run" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Scan" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "New Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Exit" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Key " +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joy Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joy Axis" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Mouse Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Invalid action (anything goes but '/' or ':')." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Action '%s' already exists!" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Rename Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "Control+" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "Press a Key.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Mouse Button Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Left Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Right Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Middle Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Wheel Up Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Wheel Down Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 6" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 7" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 8" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 9" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joystick Axis Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joystick Button Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Input Action" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Erase Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Toggle Persisting" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Error saving settings." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Settings saved OK." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Translation" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Translation" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Remapped Path" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Resource Remap Add Remap" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Change Resource Remap Language" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Resource Remap" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Resource Remap Option" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Project Settings (engine.cfg)" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "General" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/property_editor.cpp +msgid "Property:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Del" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Copy To Platform.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Input Map" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Action:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Device:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Localization" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Translations" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Translations:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remaps" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Resources:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remaps by Locale:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Locale" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "AutoLoad" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Plugins" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Preset.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Ease In" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Ease Out" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Zero" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Easing In-Out" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Easing Out-In" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "File.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Dir.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Load" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Assign" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Error loading file: Not a resource!" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Couldn't load image" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Bit %d, val %d." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "On" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Set" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Properties:" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Global" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Sections:" +msgstr "" + +#: tools/editor/pvrtc_compress.cpp +msgid "Could not execute PVRTC tool:" +msgstr "" + +#: tools/editor/pvrtc_compress.cpp +msgid "Can't load back converted image using PVRTC tool:" +msgstr "" + +#: tools/editor/reparent_dialog.cpp tools/editor/scene_tree_dock.cpp +msgid "Reparent Node" +msgstr "" + +#: tools/editor/reparent_dialog.cpp +msgid "Reparent Location (Select new Parent):" +msgstr "" + +#: tools/editor/reparent_dialog.cpp +msgid "Keep Global Transform" +msgstr "" + +#: tools/editor/reparent_dialog.cpp tools/editor/scene_tree_dock.cpp +msgid "Reparent" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Create New Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Open Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Save Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Resource Tools" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Make Local" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Run Mode:" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Current Scene" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Main Scene" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Main Scene Arguments:" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Scene Run Settings" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "OK :(" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "No parent to instance a child at." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error loading scene from %s" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error instancing scene from %s" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Ok" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Cannot instance the scene '%s' because the current scene exists within one " +"of its nodes." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Instance Scene(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done on the tree root." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Move Node In Parent" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Move Nodes In Parent" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Duplicate Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)?" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done without a scene." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation requires a single selected node." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done on instanced scenes." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Save New Scene As.." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Makes Sense!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Can't operate on nodes from a foreign scene!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Can't operate on nodes the current scene inherits from!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Remove Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Create Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Couldn't save new scene. Likely dependencies (instances) couldn't be " +"satisfied." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error saving scene." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error duplicating scene to save it." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Groups" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Connections" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add Child Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Instance Child Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Change Type" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add Script" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Merge From Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Save Branch as Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add/Create a New Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Instance a scene file as a Node. Creates an inherited scene if no root node " +"exists." +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "" +"This item cannot be made visible because the parent is hidden. Unhide the " +"parent first." +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Toggle Spatial Visible" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Toggle CanvasItem Visible" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Instance:" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Invalid node name, the following characters are not allowed:" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Rename Node" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Scene Tree (Nodes):" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Editable Children" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Load As Placeholder" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Discard Instancing" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Open in Editor" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear Inheritance" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear Inheritance? (No Undo!)" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear!" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Select a Node" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Same source and destination files, doing nothing." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Same source and destination paths, doing nothing." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Can't move directories to within themselves." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Can't operate on '..'" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Pick New Name and Location For:" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "No files selected!" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Instance" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Edit Dependencies.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "View Owners.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Copy Path" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Rename or Move.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Move To.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Info" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Show In File Manager" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Previous Directory" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Next Directory" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Re-Scan Filesystem" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Toggle folder status as Favorite" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Instance the selected scene(s) as child of the selected node." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Move" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid parent class name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid chars:" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid class name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "N/A" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Class name is invalid!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Parent class name is invalid!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid path!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Could not create script in filesystem." +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Path is empty" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Path is not local" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid base path" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "File exists" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid extension" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid path" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Class Name:" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Built-In Script" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Create Node Script" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Bytes:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Warning" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Error:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Source:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Function:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Errors" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Child Process Connected" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Inspect Previous Instance" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Inspect Next Instance" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Stack Frames" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Variable" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Errors:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Stack Trace (if applicable):" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Remote Inspector" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Live Scene Tree:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Remote Object Properties: " +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Profiler" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Monitor" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Value" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Monitors" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "List of Video Memory Usage by Resource:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Total:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Video Mem" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Resource Path" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Type" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Usage" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Misc" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Clicked Control:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Clicked Control Type:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Live Edit Root:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Set From Tree" +msgstr "" + +#: tools/editor/settings_config_dialog.cpp +msgid "Shortcuts" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Light Radius" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Camera FOV" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Camera Size" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Sphere Shape Radius" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Box Shape Extents" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Radius" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Height" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Ray Shape Length" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Notifier Extents" +msgstr "" diff --git a/tools/translations/bn.po b/tools/translations/bn.po new file mode 100644 index 0000000000..5ebe5c1c9e --- /dev/null +++ b/tools/translations/bn.po @@ -0,0 +1,6231 @@ +# Bengali translation of the Godot Engine editor +# Copyright (C) 2016 Juan Linietsky, Ariel Manzur and the Godot community +# This file is distributed under the same license as the Godot source code. +# +# Abu Md. Maruf Sarker <maruf.webdev@gmail.com>, 2016. +# +msgid "" +msgstr "" +"Project-Id-Version: Godot Engine editor\n" +"PO-Revision-Date: 2016-07-10 16:42+0000\n" +"Last-Translator: Abu Md. Maruf Sarker <maruf.webdev@gmail.com>\n" +"Language-Team: Bengali <https://hosted.weblate.org/projects/godot-engine/" +"godot/bn/>\n" +"Language: bn\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 2.8-dev\n" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid type argument to convert(), use TYPE_* constants." +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Not enough bytes for decoding bytes, or invalid format." +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "step argument is zero!" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Not a script with an instance" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Not based on a script" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Not based on a resource file" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (missing @path)" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (can't load script at @path)" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (invalid script at @path)" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary (invalid subclasses)" +msgstr "" + +#: scene/2d/animated_sprite.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite to display frames." +msgstr "" + +#: scene/2d/canvas_modulate.cpp +msgid "" +"Only one visible CanvasModulate is allowed per scene (or set of instanced " +"scenes). The first created one will work, while the rest will be ignored." +msgstr "" + +#: scene/2d/collision_polygon_2d.cpp +msgid "" +"CollisionPolygon2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" + +#: scene/2d/collision_polygon_2d.cpp +msgid "An empty CollisionPolygon2D has no effect on collision." +msgstr "" + +#: scene/2d/collision_shape_2d.cpp +msgid "" +"CollisionShape2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" + +#: scene/2d/collision_shape_2d.cpp +msgid "" +"A shape must be provided for CollisionShape2D to function. Please create a " +"shape resource for it!" +msgstr "" + +#: scene/2d/light_2d.cpp +msgid "" +"A texture with the shape of the light must be supplied to the 'texture' " +"property." +msgstr "" + +#: scene/2d/light_occluder_2d.cpp +msgid "" +"An occluder polygon must be set (or drawn) for this occluder to take effect." +msgstr "" + +#: scene/2d/light_occluder_2d.cpp +msgid "The occluder polygon for this occluder is empty. Please draw a polygon!" +msgstr "" + +#: scene/2d/navigation_polygon.cpp +msgid "" +"A NavigationPolygon resource must be set or created for this node to work. " +"Please set a property or draw a polygon." +msgstr "" + +#: scene/2d/navigation_polygon.cpp +msgid "" +"NavigationPolygonInstance must be a child or grandchild to a Navigation2D " +"node. It only provides navigation data." +msgstr "" + +#: scene/2d/parallax_layer.cpp +msgid "" +"ParallaxLayer node only works when set as child of a ParallaxBackground node." +msgstr "" + +#: scene/2d/particles_2d.cpp +msgid "Path property must point to a valid Particles2D node to work." +msgstr "" + +#: scene/2d/path_2d.cpp +msgid "PathFollow2D only works when set as a child of a Path2D node." +msgstr "" + +#: scene/2d/remote_transform_2d.cpp +msgid "Path property must point to a valid Node2D node to work." +msgstr "" + +#: scene/2d/sample_player_2d.cpp scene/audio/sample_player.cpp +msgid "" +"A SampleLibrary resource must be created or set in the 'samples' property in " +"order for SamplePlayer to play sound." +msgstr "" + +#: scene/2d/sprite.cpp +msgid "" +"Path property must point to a valid Viewport node to work. Such Viewport " +"must be set to 'render target' mode." +msgstr "" + +#: scene/2d/sprite.cpp +msgid "" +"The Viewport set in the path property must be set as 'render target' in " +"order for this sprite to work." +msgstr "" + +#: scene/2d/visibility_notifier_2d.cpp +msgid "" +"VisibilityEnable2D works best when used with the edited scene root directly " +"as parent." +msgstr "" + +#: scene/3d/body_shape.cpp +msgid "" +"CollisionShape only serves to provide a collision shape to a CollisionObject " +"derived node. Please only use it as a child of Area, StaticBody, RigidBody, " +"KinematicBody, etc. to give them a shape." +msgstr "" + +#: scene/3d/body_shape.cpp +msgid "" +"A shape must be provided for CollisionShape to function. Please create a " +"shape resource for it!" +msgstr "" + +#: scene/3d/collision_polygon.cpp +msgid "" +"CollisionPolygon only serves to provide a collision shape to a " +"CollisionObject derived node. Please only use it as a child of Area, " +"StaticBody, RigidBody, KinematicBody, etc. to give them a shape." +msgstr "" + +#: scene/3d/collision_polygon.cpp +msgid "An empty CollisionPolygon has no effect on collision." +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 "" +"NavigationMeshInstance must be a child or grandchild to a Navigation node. " +"It only provides navigation data." +msgstr "" + +#: scene/3d/scenario_fx.cpp +msgid "" +"Only one WorldEnvironment is allowed per scene (or set of instanced scenes)." +msgstr "" + +#: scene/3d/spatial_sample_player.cpp +msgid "" +"A SampleLibrary resource must be created or set in the 'samples' property in " +"order for SpatialSamplePlayer to play sound." +msgstr "" + +#: scene/3d/sprite_3d.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite3D to display frames." +msgstr "" + +#: scene/gui/dialogs.cpp tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Cancel" +msgstr "" + +#: scene/gui/dialogs.cpp +msgid "OK" +msgstr "" + +#: scene/gui/dialogs.cpp +msgid "Alert!" +msgstr "" + +#: scene/gui/dialogs.cpp +msgid "Please Confirm..." +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "File Exists, Overwrite?" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "All Recognized" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "All Files (*)" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/editor_help.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +#: tools/editor/scenes_dock.cpp +msgid "Open" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open a File" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open File(s)" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open a Directory" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open a File or Directory" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Save a File" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp +msgid "Create Folder" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Path:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Directories & Files:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "File:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Filter:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp tools/editor/editor_plugin_settings.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Name:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp +msgid "Could not create folder." +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Must use a valid extension." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Shift+" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Alt+" +msgstr "" + +#: scene/gui/input_action.cpp +msgid "Ctrl+" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Meta+" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Device" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Button" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Left Button." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Right Button." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Middle Button." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Wheel Up." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Wheel Down." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Axis" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Cut" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/resources_dock.cpp +msgid "Copy" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/resources_dock.cpp +msgid "Paste" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_export.cpp +msgid "Select All" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp tools/editor/editor_log.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/rich_text_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/script_editor_debugger.cpp +msgid "Clear" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Undo" +msgstr "" + +#: scene/gui/popup.cpp +msgid "" +"Popups will hide by default unless you call popup() or any of the popup*() " +"functions. Making them visible for editing is fine though, but they will " +"hide upon running." +msgstr "" + +#: scene/main/viewport.cpp +msgid "" +"This viewport is not set as render target. If you intend for it to display " +"its contents directly to the screen, make it a child of a Control so it can " +"obtain a size. Otherwise, make it a RenderTarget and assign its internal " +"texture to some node for display." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Error initializing FreeType." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Unknown font format." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Error loading font." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Invalid font size." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Disabled" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "All Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move Add Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Transition" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Transform" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Value" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Call" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move Anim Track Up" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move Anim Track Down" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Anim Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Set Transitions to:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Rename" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Change Interpolation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Change Value Mode" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Edit Node Curve" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Edit Selection Curve" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Delete Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Continuous" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Discrete" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Trigger" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Move Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale From Cursor" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Goto Next Step" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Goto Prev Step" +msgstr "" + +#: tools/editor/animation_editor.cpp tools/editor/property_editor.cpp +msgid "Linear" +msgstr "" + +#: tools/editor/animation_editor.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Constant" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "In" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Out" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "In-Out" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Out-In" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Transitions" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Optimize Animation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up Animation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Create NEW track for %s and insert key?" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Create %d NEW tracks and insert keys?" +msgstr "" + +#: tools/editor/animation_editor.cpp tools/editor/create_dialog.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/particles_editor_plugin.cpp +#: tools/editor/project_manager.cpp tools/editor/script_create_dialog.cpp +msgid "Create" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Create & Insert" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert Track & Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Change Anim Len" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Change Anim Loop" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Create Typed Value Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Scale Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Call Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Animation zoom." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Length (s):" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Animation length (in seconds)." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Step (s):" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Cursor step snap (in seconds)." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Enable/Disable looping in animation." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Add new tracks." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move current track up." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move current track down." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove selected track." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Track tools" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Enable editing of individual keys by clicking them." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim. Optimizer" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max. Linear Error:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max. Angular Error:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max Optimizable Angle:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Optimize" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Transition" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale Ratio:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Call Functions in Which Node?" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove invalid keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove unresolved and empty tracks" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-up all animations" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up Animation(s) (NO UNDO!)" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Resize Array" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Change Array Value Type" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Change Array Value" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp tools/editor/create_dialog.cpp +#: tools/editor/editor_help.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Search:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Sort:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Reverse" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Category:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "All" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Site:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Support.." +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Official" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Community" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Testing" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Assets ZIP File" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Method List For '%s':" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Call" +msgstr "" + +#: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/project_settings.cpp tools/editor/property_editor.cpp +#: tools/editor/run_settings_dialog.cpp tools/editor/settings_config_dialog.cpp +msgid "Close" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Method List:" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Arguments:" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Return:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Go to Line" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Line Number:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "No Matches" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replaced %d Ocurrence(s)." +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace All" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Match Case" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Whole Words" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Selection Only" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/editor_help.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Search" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/editor_help.cpp +msgid "Find" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Next" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replaced %d ocurrence(s)." +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Not found!" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace By" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Case Sensitive" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Backwards" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Prompt On Replace" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Skip" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/script_editor_debugger.cpp +msgid "Line:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Col:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Method in target Node must be specified!" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect To Node:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp +#: tools/editor/plugins/item_list_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Add" +msgstr "" + +#: tools/editor/connections_dialog.cpp tools/editor/dependency_editor.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Remove" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Add Extra Call Argument:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Extra Call Arguments:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Path to Node:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Make Function" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Deferred" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Oneshot" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect '%s' to '%s'" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connecting Signal:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Create Subscription" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect.." +msgstr "" + +#: tools/editor/connections_dialog.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Disconnect" +msgstr "" + +#: tools/editor/connections_dialog.cpp tools/editor/node_dock.cpp +msgid "Signals" +msgstr "" + +#: tools/editor/create_dialog.cpp +msgid "Create New" +msgstr "" + +#: tools/editor/create_dialog.cpp tools/editor/editor_help.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +msgid "Matches:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Search Replacement For:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies For:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"Scene '%s' is currently being edited.\n" +"Changes will not take effect unless reloaded." +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"Resource '%s' is in use.\n" +"Changes will take effect when reloaded." +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Resource" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp +msgid "Path" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Fix Broken" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependency Editor" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Search Replacement Resource:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Owners Of:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"The files being removed are required by other resources in order for them to " +"work.\n" +"Remove them anyway? (no undo)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Remove selected files from the project? (no undo)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Error loading:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Scene failed to load due to missing dependencies:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Open Anyway" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Which action should be taken?" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Fix Dependencies" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Errors loading!" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Permanently delete %d item(s)? (No undo!)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Owns" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Resources Without Explicit Ownership:" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_node.cpp +msgid "Orphan Resource Explorer" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Delete selected files?" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/item_list_editor_plugin.cpp +#: tools/editor/scenes_dock.cpp +msgid "Delete" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Not in resource path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Updating Scene" +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Storing local changes.." +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Updating scene.." +msgstr "" + +#: tools/editor/editor_dir_dialog.cpp +msgid "Choose a Directory" +msgstr "" + +#: tools/editor/editor_dir_dialog.cpp +msgid "Choose" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp +msgid "Favorites:" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Recent:" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Preview:" +msgstr "" + +#: tools/editor/editor_file_system.cpp +msgid "Cannot go into subdir:" +msgstr "" + +#: tools/editor/editor_file_system.cpp +msgid "ScanSources" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Class List:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/property_editor.cpp +msgid "Class:" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/scene_tree_editor.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Inherits:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Inherited by:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Brief Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Public Methods:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Members:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "GUI Theme Items:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Signals:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Constants:" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/script_editor_debugger.cpp +msgid "Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Method Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Search Text" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Added:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Removed:" +msgstr "" + +#: tools/editor/editor_import_export.cpp tools/editor/project_export.cpp +msgid "Error saving atlas:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Could not save atlas subtexture:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Storing File:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Packing" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Exporting for %s" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Setting Up.." +msgstr "" + +#: tools/editor/editor_log.cpp +msgid " Output:" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp +msgid "Re-Importing" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Importing:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Node From Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/resources_dock.cpp +msgid "Error saving resource!" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/resources_dock.cpp +msgid "Save Resource As.." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp +msgid "I see.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't open file for writing:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Requested file format unknown:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error while saving." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Saving Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Analyzing" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Creating Thumbnail" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Couldn't save scene. Likely dependencies (instances) couldn't be satisfied." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Failed to load resource." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't load MeshLibrary for merging!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error saving MeshLibrary!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't load TileSet for merging!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error saving TileSet!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't open export templates zip." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Loading Export Templates" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error trying to save layout!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Default editor layout overridden." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Layout name not found!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Restored default layout to base settings." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Copy Params" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Paste Params" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Paste Resource" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Copy Resource" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Make Built-In" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Make Sub-Resources Unique" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open in Help" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "There is no defined scene to run." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Current scene was never saved, please save it prior to running." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Could not start subprocess!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Base Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Open Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Open Script.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Yes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Close scene? (Unsaved changes will be lost)" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Scene As.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "This scene has never been saved. Save before running?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Please save the scene first." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Translatable Strings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Mesh Library" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Tile Set" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quit" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Exit the editor?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Current scene not saved. Open anyway?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't reload a scene that was never saved." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Revert" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "This action cannot be undone. Revert anyway?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Run Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Open Project Manager? \n" +"(Unsaved changes will be lost)" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp +msgid "Ugh" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Error loading scene, it must be inside the project path. Use 'Import' to " +"open the scene, then save it inside the project path." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error loading scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Scene '%s' has broken dependencies:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Layout" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Delete Layout" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Default" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Switch Scene Tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "%d more file(s)" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "%d more file(s) or folder(s)" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to previously opened scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Fullscreen Mode" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Distraction Free Mode" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Operations with scene files." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "New Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "New Inherited Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save all Scenes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Close Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Close Goto Prev. Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Recent" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Filter Files.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Convert To.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Translatable Strings.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "MeshLibrary.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "TileSet.." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Redo" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Run Script" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Project Settings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Revert Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quit to Project List" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Import assets to the project." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Import" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Miscellaneous project or scene-wide tools." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Tools" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export the project to many platforms." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Export" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play the project." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Play" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Pause the scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Pause Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Stop the scene." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Stop" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play the edited scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play custom scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Debug options" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Deploy with Remote Debug" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When exporting or deploying, the resulting executable will attempt to " +"connect to the IP of this computer in order to be debugged." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Small Deploy with Network FS" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is enabled, export or deploy will produce a minimal " +"executable.\n" +"The filesystem will be provided from the project by the editor over the " +"network.\n" +"On Android, deploy will use the USB cable for faster performance. This " +"option speeds up testing for games with a large footprint." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Visible Collision Shapes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " +"running game if this option is turned on." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Visible Navigation" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Navigation meshes and polygons will be visible on the running game if this " +"option is turned on." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Sync Scene Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is turned on, any changes made to the scene in the editor " +"will be replicated in the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Sync Script Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is turned on, any script that is saved will be reloaded on " +"the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Settings" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/settings_config_dialog.cpp +msgid "Editor Settings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Editor Layout" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Install Export Templates" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "About" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Alerts when an external resource has changed." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Spins when the editor window repaints!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Update Always" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Update Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Inspector" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Create a new resource in memory and edit it." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Load an existing resource from disk and edit it." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save the currently edited resource." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Save As.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to the previous edited object in history." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to the next edited object in history." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "History of recently edited objects." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Object properties." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "FileSystem" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Output" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp +msgid "Re-Import" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_plugin_settings.cpp +msgid "Update" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Thanks from the Godot community!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Thanks!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Import Templates From ZIP File" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Export Project" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Library" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Merge With Existing" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Password:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open & Run a Script" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Load Errors" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Installed Plugins:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Version:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Author:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Status:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Stop Profiling" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Start Profiling" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Measure:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame Time (sec)" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Average Time (sec)" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame %" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Fixed Frame %" +msgstr "" + +#: tools/editor/editor_profiler.cpp tools/editor/script_editor_debugger.cpp +msgid "Time:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Inclusive" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Self" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame #:" +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Please wait for scan to complete." +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Current scene must be saved to re-import." +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Save & Re-Import" +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Re-Import Changed Resources" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Write your logic in the _run() method." +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "There is an edited scene already." +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Couldn't instance script:" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Did you forget the 'tool' keyword?" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Couldn't run script:" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Did you forget the '_run' method?" +msgstr "" + +#: tools/editor/editor_settings.cpp +msgid "Default (Same as Editor)" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Select Node(s) to Import" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Scene Path:" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Import From Node:" +msgstr "" + +#: tools/editor/file_type_cache.cpp +msgid "Can't open file_type_cache.cch for writing, not saving file type cache!" +msgstr "" + +#: tools/editor/groups_editor.cpp +msgid "Add to Group" +msgstr "" + +#: tools/editor/groups_editor.cpp +msgid "Remove from Group" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "No bit masks to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path is empty." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must be a complete resource path." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must exist." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Save path is empty!" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Import BitMasks" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s):" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Target Path:" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Accept" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Bit Mask" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "No source font file!" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "No target font resource!" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Can't load/process source font." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Couldn't save font." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Dest Resource:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "The quick brown fox jumps over the lazy dog." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Test:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Options:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Font Import" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"This file is already a Godot font file, please supply a BMFont type file " +"instead." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Failed opening as BMFont file." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Invalid font custom source." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Font" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "No meshes to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Single Mesh Import" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Source Mesh(es):" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Surface %d" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "No samples to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Import Audio Samples" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Source Sample(s):" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Audio Sample" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "New Clip" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Animation Options" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Flags" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Bake FPS:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Optimizer" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Linear Error" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angular Error" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angle" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Clips" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Start(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "End(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Loop" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Filters" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source path is empty." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error importing scene." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import 3D Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source Scene:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Same as Target Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Shared" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Target Texture Folder:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Post-Process Script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Custom Root Node Type:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Auto" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "The Following Files are Missing:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Anyway" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import & Open" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Edited scene has not been saved, open imported scene anyway?" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Importing Scene.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Running Custom Script.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import (check console):" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error running post-import script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Image:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Can't import a file over itself:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't localize path: %s (already local)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Saving.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "3D Scene Animation" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Uncompressed" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossless (PNG)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossy (WebP)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress (VRAM)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Format" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Compression Quality (WebP):" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Options" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Please specify some files!" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "At least one file needed for Atlas." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Error importing:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Only one file is required for large texture." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Max Texture Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for Atlas (2D)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cell Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Large Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Textures (2D)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Base Atlas Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 2D" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 3D" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "2D Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "3D Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Atlas Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "" +"NOTICE: Importing 2D textures is not mandatory. Just copy png/jpg files to " +"the project." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Crop empty space." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Load Source Image" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Slicing" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Inserting" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Saving" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save large texture:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Build Atlas For:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Loading Image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't load image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Converting Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cropping Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Blitting Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save atlas image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save converted texture:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid source!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid translation source!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Column" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Language" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No items to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No target path!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translations" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Couldn't import!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translation" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Source CSV:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Ignore First Row" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Compress" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Add to Project (engine.cfg)" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Languages:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Translation" +msgstr "" + +#: tools/editor/multi_node_edit.cpp +msgid "MultiNode Set" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Node" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Groups" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Select a Node to edit Signals and Groups." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Toggle Autoplay" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "New Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "New Anim" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Remove Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Invalid animation name!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Animation name already exists!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Rename Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Next Changed" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Blend Time" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Duplicate Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to copy!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation resource on clipboard!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Pasted Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Paste Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to edit!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from current pos. (A)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from end. (Shift+A)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Stop animation playback. (S)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from start. (Shift+D)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from current pos. (D)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation position (in seconds)." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Scale animation playback globally for the node." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Create new animation in player." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load animation from disk." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load an animation from disk." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Save the current animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Save As" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Display list of animations in player." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Autoplay on Load" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Edit Target Blend Times" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Tools" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Copy Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Create New Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/script_create_dialog.cpp +msgid "Error!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Times:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Next (Auto Queue):" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Cross-Animation Blend Times" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Animation" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "New name:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Scale:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade In (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade Out (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Auto Restart:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Restart (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Random Restart (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Start!" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Amount:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 0:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 1:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "X-Fade Time (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Current:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Add Input" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Clear Auto-Advance" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Set Auto-Advance" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Delete Input" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Rename" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is valid." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is invalid." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "OneShot Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend2 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend3 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend4 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeScale Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeSeek Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Transition Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Import Animations.." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Edit Node Filters" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Filters.." +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Parsing %d Triangles:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Triangle #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Light Baker Setup:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Parsing Geometry" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Fixing Lights" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Making BVH" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Creating Light Octree" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Creating Octree Texture" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Transfer to Lightmaps:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Allocating Texture #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Baking Triangle #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Post-Processing Texture #" +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "BakedLightInstance does not contain a BakedLight resource." +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "Bake!" +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "Reset the lightmap octree baking process (start over)." +msgstr "" + +#: tools/editor/plugins/camera_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Preview" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Configure Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Offset:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Step:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Offset:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Step:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Pivot" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Action" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit CanvasItem" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Change Anchors" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom (%):" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Paste Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Select Mode (Q)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Drag: Rotate" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+Drag: Move" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Press 'v' to Change Pivot, 'Shift+v' to Drag Pivot (while moving)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+RMB: Depth list selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Move Mode (W)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Mode (E)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "" +"Show a list of all objects at the position clicked\n" +"(same as Alt+RMB in select mode)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Click to change object's rotation pivot." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Pan Mode" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Lock the selected object in place (can't be moved)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Unlock the selected object (can be moved)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Makes sure the object's children are not selectable." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Restores the object's children's ability to be selected." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Edit" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Show Grid" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Rotation Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap Relative" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Configure Snap.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Pixel Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Expand to Parent" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Skeleton.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make Bones" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Bones" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom In" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Out" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Reset" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Set.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Center Selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Frame Selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Anchor" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Keys" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key (Existing Tracks)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Copy Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Set a Value" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap (Pixels):" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create Poly" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly (Remove Point)" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create a new polygon from scratch." +msgstr "" + +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +msgid "Create Poly3D" +msgstr "" + +#: tools/editor/plugins/collision_shape_2d_editor_plugin.cpp +msgid "Set Handle" +msgstr "" + +#: tools/editor/plugins/color_ramp_editor_plugin.cpp +msgid "Add/Remove Color Ramp Point" +msgstr "" + +#: tools/editor/plugins/color_ramp_editor_plugin.cpp +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Color Ramp" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Creating Mesh Library" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Thumbnail.." +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove item %d?" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Add Item" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove Selected Item" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import from Scene" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Update from Scene" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Item %d" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Items" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Item List Editor" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +msgid "Create Occluder Polygon" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Edit existing polygon:" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "LMB: Move Point." +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Ctrl+LMB: Split Segment." +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "RMB: Erase Point." +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh is empty!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Trimesh Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Convex Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "This doesn't work on scene root!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Shape" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Shape" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Navigation Mesh" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "MeshInstance lacks a Mesh!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Could not create outline!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Static Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Static Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Collision Sibling" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Collision Sibling" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh.." +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Outline Size:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and no MultiMesh set in node)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and MultiMesh contains no Mesh)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (invalid path)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (not a MeshInstance)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (contains no Mesh resource)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No surface source specified." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (invalid path)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no geometry)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no faces)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Parent has no solid faces to populate." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Couldn't map area." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Source Mesh:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Target Surface:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate Surface" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate MultiMesh" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Target Surface:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Source Mesh:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "X-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Y-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Z-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh Up Axis:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Rotation:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Tilt:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Scale:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate" +msgstr "" + +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create Navigation Polygon" +msgstr "" + +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Remove Poly And Point" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Error loading image:" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "No pixels with transparency > 128 in image.." +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Set Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Clear Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Load Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Generated Point Count:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry." +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry (faces)." +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Faces contain no area!" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "No faces!" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Generate AABB" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter From Mesh" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter From Node" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Clear Emitter" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Emission Positions:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Emission Fill:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Surface" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Volume" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Remove Point from Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Add Point to Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Point in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move In-Control in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Out-Control in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Select Points" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Shift+Drag: Select Control Points" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Click: Add Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Right Click: Delete Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Select Control Points (Shift+Drag)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Add Point (in empty space)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Split Segment (in curve)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Delete Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Close Curve" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Curve Point #" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Point Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve In Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Out Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Split Path" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Remove Path Point" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create UV Map" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Transform UV Map" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon 2D UV Editor" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Point" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Ctrl: Rotate" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift: Move All" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift+Ctrl: Scale" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Rotate Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Scale Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon->UV" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "UV->Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Clear UV" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Snap" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Enable Snap" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "ERROR: Couldn't load resource!" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Add Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Rename Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Delete Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Resource clipboard is empty!" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Load Resource" +msgstr "" + +#: tools/editor/plugins/rich_text_editor_plugin.cpp +msgid "Parse BBCode" +msgstr "" + +#: tools/editor/plugins/sample_editor_plugin.cpp +msgid "Length:" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Open Sample File(s)" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "ERROR: Couldn't load sample!" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Add Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Rename Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Delete Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "16 Bits" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "8 Bits" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Stereo" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Mono" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Format" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Pitch" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error while saving theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error saving" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error importing theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error importing" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Import Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Next script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/project_export.cpp +msgid "File" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/property_editor.cpp +msgid "New" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save All" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "History Prev" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "History Next" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Reload Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Move Up" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Move Down" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Indent Left" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Indent Right" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Toggle Comment" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Clone Down" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Complete Symbol" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Trim Trailing Whitespace" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Auto Indent" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Soft Reload Script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find Next" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find Previous" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Replace.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Function.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Goto Line.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Debug" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Toggle Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Remove All Breakpoints" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Next Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Previous Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Step Over" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Step Into" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Break" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Continue" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Keep Debugger Open" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Window" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Move Left" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Move Right" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Help" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Contextual Help" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Tutorials" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Open https://godotengine.org at tutorials section." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Classes" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Search the class hierarchy." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Search the reference documentation." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Go to previous edited document." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Go to next edited document." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Create Script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"The following files are newer on disk.\n" +"What action should be taken?:" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Reload" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Resave" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Debugger" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Vertex" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Fragment" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Lighting" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Scalar Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Toggle Rot Only" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Function" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Function" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Default Value" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change XForm Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Texture Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Cubemap Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Comment" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Color Ramp" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Curve Map" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Curve Map" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Input Name" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Connect Graph Nodes" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Disconnect Graph Nodes" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Remove Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Move Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Duplicate Graph Node(s)" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Delete Shader Graph Node(s)" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Cyclic Connection Link" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Missing Input Connections" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Orthogonal" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Aborted." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "X-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Y-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Z-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Plane Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scaling to %s%%." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotating %s degrees." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Keying is disabled (no key inserted)." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Animation Key Inserted." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Align with view" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Environment" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Audio Listener" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Gizmos" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "XForm Dialog" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "No scene selected to instance!" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Instance at Cursor" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Could not instance scene!" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Mode (R)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Switch Perspective/Orthogonal view" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Insert Animation Key" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Focus Selection" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Align Selection With View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Local Coords" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Dialog.." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default Light" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default sRGB" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "1 Viewport" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports (Alt)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports (Alt)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "4 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Normal" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Wireframe" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Overdraw" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Shadeless" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Origin" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Grid" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Snap Settings" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Translate Snap:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Snap (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Snap (%):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Viewport Settings" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Default Light Normal:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Ambient Light Color:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective FOV (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Near:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Far:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Change" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Translate:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale (ratio):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Type" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Pre" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Post" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "ERROR: Couldn't load frame resource!" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Frame" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Resource clipboard is empty or not a texture!" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Paste Frame" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Empty" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation Loop" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation FPS" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "(empty)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animations" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Speed (FPS):" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animation Frames" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (Before)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (After)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Up" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Down" +msgstr "" + +#: tools/editor/plugins/style_box_editor_plugin.cpp +msgid "StyleBox Preview:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Snap Mode:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "<None>" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Can't save theme to file:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add All Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add All" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Remove Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add Class Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Remove Class Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Template" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Editor Template" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio1" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio2" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Check Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Checked Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Has" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Many" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp tools/editor/project_export.cpp +msgid "Options" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Have,Many,Several,Options!" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 1" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 2" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 3" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_settings.cpp tools/editor/scene_tree_editor.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Type:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Data Type:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Icon" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Style" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Color" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Paint TileMap" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Duplicate" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase TileMap" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase selection" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Find tile" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Transpose" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror X" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror Y" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Bucket" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Pick Tile" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Select" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 0 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 90 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 180 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 270 degrees" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Could not find tile:" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Item name or ID:" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from scene?" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from scene?" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from Scene" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from Scene" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Error" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Edit Script Options" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Please export outside the project folder!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Error exporting project!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Error writing the project PCK!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "No exporter for platform '%s' yet." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Include" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Change Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group name can't be empty!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Invalid character in group name!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group name already exists!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Add Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Delete Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Atlas Preview" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Project Export Settings" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Target" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export to Platform" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Resources" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export selected resources (including dependencies)." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export all resources in the project." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export all files in the project directory." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Resources to Export:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Action" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "" +"Filters to export non-resource files (comma-separated, e.g.: *.json, *.txt):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Filters to exclude from export (comma-separated, e.g.: *.json, *.txt):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Convert text scenes to binary on export." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Images" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Keep Original" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for Disk (Lossy, WebP)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for RAM (BC/PVRTC/ETC)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Convert Images (*.png):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for Disk (Lossy) Quality:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Shrink All Images:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Formats:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Image Groups" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Groups:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Disk" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress RAM" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Lossy Quality:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Atlas:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Shrink By:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Preview Atlas" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Image Filter:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Images:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Select None" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Samples" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Sample Conversion Mode: (.wav files):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Keep" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress (RAM - IMA-ADPCM)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Sampling Rate Limit (Hz):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Trim" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Trailing Silence:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script Export Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Text" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compiled" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Encrypted (Provide Key Below)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script Encryption Key (256-bits as hex):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export PCK/Zip" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Project PCK" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export.." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Project Export" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Preset:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, the path must exist!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, engine.cfg must not exist." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, engine.cfg must exist." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Imported Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path (changed anything?)." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Couldn't create engine.cfg in project path." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Import Existing Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Path (Must Exist):" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Name:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Create New Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Path:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Browse" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "New Game Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "That's a BINGO!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Unnamed Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Are you sure to open more than one projects?" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Are you sure to run more than one projects?" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Remove project from the list? (Folder contents will not be modified)" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Manager" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project List" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Run" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Scan" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "New Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Exit" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Key " +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joy Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joy Axis" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Mouse Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Invalid action (anything goes but '/' or ':')." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Action '%s' already exists!" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Rename Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "Control+" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "Press a Key.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Mouse Button Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Left Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Right Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Middle Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Wheel Up Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Wheel Down Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 6" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 7" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 8" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 9" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joystick Axis Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joystick Button Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Input Action" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Erase Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Toggle Persisting" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Error saving settings." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Settings saved OK." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Translation" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Translation" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Remapped Path" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Resource Remap Add Remap" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Change Resource Remap Language" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Resource Remap" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Resource Remap Option" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Project Settings (engine.cfg)" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "General" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/property_editor.cpp +msgid "Property:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Del" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Copy To Platform.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Input Map" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Action:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Device:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Localization" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Translations" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Translations:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remaps" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Resources:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remaps by Locale:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Locale" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "AutoLoad" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Plugins" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Preset.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Ease In" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Ease Out" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Zero" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Easing In-Out" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Easing Out-In" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "File.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Dir.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Load" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Assign" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Error loading file: Not a resource!" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Couldn't load image" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Bit %d, val %d." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "On" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Set" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Properties:" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Global" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Sections:" +msgstr "" + +#: tools/editor/pvrtc_compress.cpp +msgid "Could not execute PVRTC tool:" +msgstr "" + +#: tools/editor/pvrtc_compress.cpp +msgid "Can't load back converted image using PVRTC tool:" +msgstr "" + +#: tools/editor/reparent_dialog.cpp tools/editor/scene_tree_dock.cpp +msgid "Reparent Node" +msgstr "" + +#: tools/editor/reparent_dialog.cpp +msgid "Reparent Location (Select new Parent):" +msgstr "" + +#: tools/editor/reparent_dialog.cpp +msgid "Keep Global Transform" +msgstr "" + +#: tools/editor/reparent_dialog.cpp tools/editor/scene_tree_dock.cpp +msgid "Reparent" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Create New Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Open Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Save Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Resource Tools" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Make Local" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Run Mode:" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Current Scene" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Main Scene" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Main Scene Arguments:" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Scene Run Settings" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "OK :(" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "No parent to instance a child at." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error loading scene from %s" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error instancing scene from %s" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Ok" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Cannot instance the scene '%s' because the current scene exists within one " +"of its nodes." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Instance Scene(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done on the tree root." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Move Node In Parent" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Move Nodes In Parent" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Duplicate Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)?" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done without a scene." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation requires a single selected node." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done on instanced scenes." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Save New Scene As.." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Makes Sense!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Can't operate on nodes from a foreign scene!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Can't operate on nodes the current scene inherits from!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Remove Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Create Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Couldn't save new scene. Likely dependencies (instances) couldn't be " +"satisfied." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error saving scene." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error duplicating scene to save it." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Groups" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Connections" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add Child Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Instance Child Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Change Type" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add Script" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Merge From Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Save Branch as Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add/Create a New Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Instance a scene file as a Node. Creates an inherited scene if no root node " +"exists." +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "" +"This item cannot be made visible because the parent is hidden. Unhide the " +"parent first." +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Toggle Spatial Visible" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Toggle CanvasItem Visible" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Instance:" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Invalid node name, the following characters are not allowed:" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Rename Node" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Scene Tree (Nodes):" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Editable Children" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Load As Placeholder" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Discard Instancing" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Open in Editor" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear Inheritance" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear Inheritance? (No Undo!)" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear!" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Select a Node" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Same source and destination files, doing nothing." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Same source and destination paths, doing nothing." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Can't move directories to within themselves." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Can't operate on '..'" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Pick New Name and Location For:" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "No files selected!" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Instance" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Edit Dependencies.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "View Owners.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Copy Path" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Rename or Move.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Move To.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Info" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Show In File Manager" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Previous Directory" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Next Directory" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Re-Scan Filesystem" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Toggle folder status as Favorite" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Instance the selected scene(s) as child of the selected node." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Move" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid parent class name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid chars:" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid class name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "N/A" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Class name is invalid!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Parent class name is invalid!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid path!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Could not create script in filesystem." +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Path is empty" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Path is not local" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid base path" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "File exists" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid extension" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid path" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Class Name:" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Built-In Script" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Create Node Script" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Bytes:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Warning" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Error:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Source:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Function:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Errors" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Child Process Connected" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Inspect Previous Instance" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Inspect Next Instance" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Stack Frames" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Variable" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Errors:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Stack Trace (if applicable):" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Remote Inspector" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Live Scene Tree:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Remote Object Properties: " +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Profiler" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Monitor" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Value" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Monitors" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "List of Video Memory Usage by Resource:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Total:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Video Mem" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Resource Path" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Type" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Usage" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Misc" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Clicked Control:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Clicked Control Type:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Live Edit Root:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Set From Tree" +msgstr "" + +#: tools/editor/settings_config_dialog.cpp +msgid "Shortcuts" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Light Radius" +msgstr "Light এর ব্যাসার্ধ পরিবর্তন করুন" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Camera FOV" +msgstr "Camera এর ভিউ (FOV) পরিবর্তন করুন" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Camera Size" +msgstr "Camera এর আকার পরিবর্তন করুন" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Sphere Shape Radius" +msgstr "Sphere Shape এর ব্যাসার্ধ পরিবর্তন করুন" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Box Shape Extents" +msgstr "Box Shape এর সীমা পরিবর্তন করুন" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Radius" +msgstr "Capsule Shape এর ব্যাসার্ধ পরিবর্তন করুন" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Height" +msgstr "Capsule Shape এর উচ্চতা পরিবর্তন করুন" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Ray Shape Length" +msgstr "Ray Shape এর দৈর্ঘ্য পরিবর্তন করুন" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Notifier Extents" +msgstr "Notifier এর সীমা পরিবর্তন করুন" diff --git a/tools/translations/cs.po b/tools/translations/cs.po index 8a1e596942..c3b0532000 100644 --- a/tools/translations/cs.po +++ b/tools/translations/cs.po @@ -273,9 +273,10 @@ msgstr "" msgid "Create Folder" msgstr "" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "" @@ -468,19 +469,19 @@ msgid "Anim Add Track" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Up" +msgid "Anim Duplicate Keys" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Down" +msgid "Move Anim Track Up" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Remove Anim Track" +msgid "Move Anim Track Down" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" +msgid "Remove Anim Track" msgstr "" #: tools/editor/animation_editor.cpp @@ -512,6 +513,19 @@ msgid "Anim Delete Keys" msgstr "" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "" @@ -540,15 +554,6 @@ msgid "Scale From Cursor" msgstr "" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "" @@ -631,10 +636,6 @@ msgid "Change Anim Loop" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "" @@ -675,10 +676,6 @@ msgid "Enable/Disable looping in animation." msgstr "" #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "" @@ -827,7 +824,6 @@ msgid "Call" msgstr "" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -943,10 +939,11 @@ msgid "Method in target Node must be specified!" msgstr "" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" +msgid "Connect To Node:" msgstr "" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1050,8 +1047,8 @@ msgstr "" msgid "Resource" msgstr "" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "" @@ -1136,6 +1133,89 @@ msgstr "" msgid "Delete" msgstr "" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Not in resource path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "" @@ -1156,6 +1236,46 @@ msgstr "" msgid "Choose" msgstr "" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "" @@ -1176,14 +1296,18 @@ msgstr "" msgid "ScanSources" msgstr "" -#: tools/editor/editor_help.cpp -msgid "Search Classes" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" msgstr "" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "" @@ -1281,10 +1405,6 @@ msgstr "" msgid "Node From Scene" msgstr "" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "" - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1409,8 +1529,23 @@ msgstr "" #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" #: tools/editor/editor_node.cpp @@ -1503,6 +1638,10 @@ msgid "" "(Unsaved changes will be lost)" msgstr "" +#: tools/editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "" @@ -1526,7 +1665,7 @@ msgid "Save Layout" msgstr "" #: tools/editor/editor_node.cpp -msgid "Load Layout" +msgid "Delete Layout" msgstr "" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp @@ -1534,10 +1673,6 @@ msgid "Default" msgstr "" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "" @@ -1567,6 +1702,14 @@ msgid "Distraction Free Mode" msgstr "" #: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "" @@ -1587,6 +1730,10 @@ msgid "Save Scene" msgstr "" #: tools/editor/editor_node.cpp +msgid "Save all Scenes" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "" @@ -1710,6 +1857,10 @@ msgid "Play custom scene" msgstr "" #: tools/editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "" @@ -1862,7 +2013,6 @@ msgid "Output" msgstr "" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "" @@ -2034,10 +2184,6 @@ msgstr "" msgid "Remove from Group" msgstr "" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "" @@ -2109,6 +2255,12 @@ msgid "No target font resource!" msgstr "" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "" @@ -2240,12 +2392,6 @@ msgid "Clips" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "" @@ -2344,7 +2490,7 @@ msgid "Couldn't load post-import script:" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" +msgid "Invalid/broken script for post-import (check console):" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -3007,13 +3153,11 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "" @@ -3129,7 +3273,6 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "" @@ -3208,7 +3351,7 @@ msgid "Anchor" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" +msgid "Insert Keys" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp @@ -3382,6 +3525,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "" @@ -3743,17 +3890,15 @@ msgid "Clear UV" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "" @@ -3861,6 +4006,14 @@ msgid "Save Theme As.." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp +msgid "Next script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "" @@ -4046,10 +4199,6 @@ msgid "Search the class hierarchy." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "" @@ -4084,6 +4233,11 @@ msgstr "" msgid "Debugger" msgstr "" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "" @@ -4317,75 +4471,75 @@ msgid "Align with view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" +msgid "Environment" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" +msgid "Audio Listener" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" +msgid "Gizmos" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" +msgid "XForm Dialog" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" +msgid "No scene selected to instance!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" +msgid "Instance at Cursor" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" +msgid "Could not instance scene!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" +msgid "Scale Mode (R)" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" +msgid "Bottom View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" +msgid "Top View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" +msgid "Rear View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" +msgid "Front View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" +msgid "Left View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" +msgid "Right View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" +msgid "Switch Perspective/Orthogonal view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" +msgid "Insert Animation Key" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" +msgid "Focus Selection" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" +msgid "Align Selection With View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp @@ -4589,17 +4743,43 @@ msgid "StyleBox Preview:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" +msgid "Snap Mode:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" +msgid "<None>" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" msgstr "" #: tools/editor/plugins/theme_editor_plugin.cpp @@ -5081,6 +5261,14 @@ msgid "Couldn't create engine.cfg in project path." msgstr "" #: tools/editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "" @@ -5101,6 +5289,14 @@ msgid "Project Path:" msgstr "" #: tools/editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "" @@ -5265,50 +5461,6 @@ msgid "Add Translation" msgstr "" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "" @@ -5333,10 +5485,6 @@ msgid "Remove Resource Remap Option" msgstr "" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "" @@ -5409,18 +5557,6 @@ msgid "AutoLoad" msgstr "" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "" @@ -5661,31 +5797,27 @@ msgid "Error duplicating scene to save it." msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" +msgid "Edit Groups" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Add Child Node" +msgid "Edit Connections" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Instance Child Scene" +msgid "Delete Node(s)" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Change Type" +msgid "Add Child Node" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" +msgid "Instance Child Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" +msgid "Change Type" msgstr "" #: tools/editor/scene_tree_dock.cpp @@ -5701,10 +5833,6 @@ msgid "Save Branch as Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "" @@ -5833,6 +5961,10 @@ msgid "Show In File Manager" msgstr "" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "" diff --git a/tools/translations/de.po b/tools/translations/de.po index b9c1c070d8..60c3919a97 100644 --- a/tools/translations/de.po +++ b/tools/translations/de.po @@ -18,8 +18,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-06-14 12:29+0000\n" -"Last-Translator: Timo Schwarzer <account@timoschwarzer.com>\n" +"PO-Revision-Date: 2016-07-01 21:03+0000\n" +"Last-Translator: Christian Fisch <christian.fiesel@gmail.com>\n" "Language-Team: German <https://hosted.weblate.org/projects/godot-engine/" "godot/de/>\n" "Language: de\n" @@ -187,7 +187,7 @@ msgid "" "order for SamplePlayer to play sound." msgstr "" "Eine SampleLibrary Ressource muss in der 'samples' Variable erzeugt oder " -"definiert werden, damit SpatialSamplePlayer einen Sound abspielen kann." +"definiert werden, damit SamplePlayer einen Sound abspielen kann." #: scene/2d/sprite.cpp msgid "" @@ -350,9 +350,10 @@ msgstr "Datei speichern" msgid "Create Folder" msgstr "Ordner erstellen" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "Pfad:" @@ -554,6 +555,10 @@ msgid "Anim Add Track" msgstr "Anim Spur hinzufügen" #: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "Anim doppelte Schlüsselbilder" + +#: tools/editor/animation_editor.cpp msgid "Move Anim Track Up" msgstr "Anim Spur nach oben verschieben" @@ -566,10 +571,6 @@ msgid "Remove Anim Track" msgstr "Anim Spur entfernen" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" -msgstr "Anim doppelte Schlüsselbilder" - -#: tools/editor/animation_editor.cpp msgid "Set Transitions to:" msgstr "Setze Übergänge auf:" @@ -598,18 +599,30 @@ msgid "Anim Delete Keys" msgstr "Anim Schlüsselbilder löschen" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "Auswahl duplizieren" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp #, fuzzy +msgid "Remove Selection" +msgstr "Auswahl einrahmen" + +#: tools/editor/animation_editor.cpp msgid "Continuous" -msgstr "Fortfahren" +msgstr "Fortlaufend" #: tools/editor/animation_editor.cpp -#, fuzzy msgid "Discrete" -msgstr "Trennen" +msgstr "Einzeln" #: tools/editor/animation_editor.cpp msgid "Trigger" -msgstr "" +msgstr "Auslöser" #: tools/editor/animation_editor.cpp msgid "Anim Add Key" @@ -628,15 +641,6 @@ msgid "Scale From Cursor" msgstr "Skalierung vom Cursor" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "Auswahl duplizieren" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "Gehe zum nächsten Schritt" @@ -719,11 +723,6 @@ msgid "Change Anim Loop" msgstr "Ändere Animationswiederholung" #: tools/editor/animation_editor.cpp -#, fuzzy -msgid "Change Anim Loop Interpolation" -msgstr "Ändere Animationswiederholung" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "Animation Erstelle Typed Value Key" @@ -764,11 +763,6 @@ msgid "Enable/Disable looping in animation." msgstr "Aktivieren / Deaktivieren der Schleife (Loop)." #: tools/editor/animation_editor.cpp -#, fuzzy -msgid "Enable/Disable interpolation when looping animation." -msgstr "Aktivieren / Deaktivieren der Schleife (Loop)." - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "Neue Spuren hinzufügen." @@ -918,7 +912,6 @@ msgid "Call" msgstr "Aufruf" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -1035,10 +1028,11 @@ msgstr "Methode in Ziel-Node muss angegeben werden!" #: tools/editor/connections_dialog.cpp #, fuzzy -msgid "Conect To Node:" +msgid "Connect To Node:" msgstr "Verbinde Zu Node:" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1149,8 +1143,8 @@ msgstr "Abhängigkeiten" msgid "Resource" msgstr "Ressource" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "Pfad" @@ -1238,6 +1232,92 @@ msgstr "Ausgewählten Dateien löschen?" msgid "Delete" msgstr "Löschen" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "Ungültiger Name." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid Path." +msgstr "Ungültiger Pfad!" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "File does not exist." +msgstr "Datei existiert" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr "Keine Ziel Font Ressource!" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "Autoload '%s' existiert bereits!" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "Aktivieren" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "Name" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "Aktualisiere Szene" @@ -1258,6 +1338,51 @@ msgstr "Wähle ein Verzeichnis" msgid "Choose" msgstr "Wählen" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Toggle Favorite" +msgstr "Favoriten:" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Toggle Mode" +msgstr "Autoplay Umschalten" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Focus Path" +msgstr "Pfad kopieren" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Up" +msgstr "Favoriten:" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Down" +msgstr "Favoriten:" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "Favoriten:" @@ -1278,14 +1403,18 @@ msgstr "Unterordner kann nicht geöffnet werden:" msgid "ScanSources" msgstr "Scanne Quellen" -#: tools/editor/editor_help.cpp -msgid "Search Classes" -msgstr "Klassen suchen" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "Klassenliste:" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "Klassen suchen" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "Klasse:" @@ -1383,10 +1512,6 @@ msgstr "Importiere:" msgid "Node From Scene" msgstr "Node aus Szene" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "Re-Import.." - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1512,9 +1637,31 @@ msgid "There is no defined scene to run." msgstr "Es ist keine zu startende Szene definiert." #: tools/editor/editor_node.cpp +#, fuzzy msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" +"Es ist keine Hauptszene definiert worden.\n" +"Wähle eine in den \"Projekt Einstellungen\" in der 'Applikation' Kategorie." + +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"Es ist keine Hauptszene definiert worden.\n" +"Wähle eine in den \"Projekt Einstellungen\" in der 'Applikation' Kategorie." + +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" "Es ist keine Hauptszene definiert worden.\n" "Wähle eine in den \"Projekt Einstellungen\" in der 'Applikation' Kategorie." @@ -1615,6 +1762,11 @@ msgstr "" "Projektmanager Öffnen?\n" "(Nichtgespeicherte Änderungen gehen verloren)" +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Pick a Main Scene" +msgstr "Hauptszene" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "Ugh" @@ -1641,18 +1793,14 @@ msgid "Save Layout" msgstr "Layout Speichern" #: tools/editor/editor_node.cpp -msgid "Load Layout" -msgstr "Layout Laden" +msgid "Delete Layout" +msgstr "Layout Löschen" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp msgid "Default" msgstr "Standard" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "Layout Löschen" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "Wechsle Szenen Tab" @@ -1682,6 +1830,15 @@ msgid "Distraction Free Mode" msgstr "" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Next tab" +msgstr "Nächste" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "Operationen mit Szenen Dateien." @@ -1702,6 +1859,11 @@ msgid "Save Scene" msgstr "Szene Speichern" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "Szene Speichern" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "Szene Schliessen" @@ -1711,7 +1873,7 @@ msgstr "Schließen Zu Vorh. Szene Gehen" #: tools/editor/editor_node.cpp msgid "Open Recent" -msgstr "Aktuelle Öffnen" +msgstr "Zuletzt benutzte Scenen" #: tools/editor/editor_node.cpp msgid "Quick Filter Files.." @@ -1825,6 +1987,11 @@ msgid "Play custom scene" msgstr "Spiele angepasste Szene" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Play Custom Scene" +msgstr "Spiele angepasste Szene" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "Debug Optionen" @@ -1997,7 +2164,6 @@ msgid "Output" msgstr "Ausgabe" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "Re-Import" @@ -2171,10 +2337,6 @@ msgstr "Füge Gruppe hinzu" msgid "Remove from Group" msgstr "Entferne aus Gruppe" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "Importierte Ressourcen" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "Keine Bit Masken zu importieren!" @@ -2246,6 +2408,12 @@ msgid "No target font resource!" msgstr "Keine Ziel Font Ressource!" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "Quell Font kann nicht geladen/verarbeitet werden." @@ -2380,12 +2548,6 @@ msgid "Clips" msgstr "Begrenzungen" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "Name" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "Start" @@ -2485,7 +2647,8 @@ msgid "Couldn't load post-import script:" msgstr "Post-Import Skript konnte nicht geladen werden:" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" +#, fuzzy +msgid "Invalid/broken script for post-import (check console):" msgstr "Fehlerhaftes Skript für Post-Import:" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -3152,13 +3315,11 @@ msgstr "Einrasten konfigurieren" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "Gitterverschiebung:" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "Gitterabstand:" @@ -3283,7 +3444,6 @@ msgstr "Einrasten aktivieren" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "Raster anzeigen" @@ -3362,8 +3522,9 @@ msgid "Anchor" msgstr "Anker" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" -msgstr "Schlüsselbilder einfügen (Einfg)" +#, fuzzy +msgid "Insert Keys" +msgstr "Schlüsselbild einfügen" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" @@ -3536,6 +3697,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "" @@ -3897,17 +4062,15 @@ msgid "Clear UV" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "Einrasten" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "Einrasten aktivieren" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "Raster" @@ -4015,6 +4178,15 @@ msgid "Save Theme As.." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "Nächste" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "Datei" @@ -4200,10 +4372,6 @@ msgid "Search the class hierarchy." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "" @@ -4238,6 +4406,11 @@ msgstr "" msgid "Debugger" msgstr "Debugger" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "" @@ -4471,76 +4644,82 @@ msgid "Align with view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" +msgid "Environment" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" +msgid "Audio Listener" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" +msgid "Gizmos" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" +msgid "XForm Dialog" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" +msgid "No scene selected to instance!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" +msgid "Instance at Cursor" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" +msgid "Could not instance scene!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" +msgid "Scale Mode (R)" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" +msgid "Bottom View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" -msgstr "" +#, fuzzy +msgid "Top View" +msgstr "Ansicht" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" -msgstr "" +#, fuzzy +msgid "Rear View" +msgstr "Ansicht" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" +msgid "Front View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" -msgstr "" +#, fuzzy +msgid "Left View" +msgstr "Ansicht" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" +msgid "Right View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" +msgid "Switch Perspective/Orthogonal view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" -msgstr "" +#, fuzzy +msgid "Insert Animation Key" +msgstr "Animation Einfügen" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" -msgstr "" +#, fuzzy +msgid "Focus Selection" +msgstr "Skalierung Auswahl" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" -msgstr "" +#, fuzzy +msgid "Align Selection With View" +msgstr "Alle auswählen" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Transform" @@ -4743,19 +4922,52 @@ msgid "StyleBox Preview:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" -msgstr "Texturbegrenzungseditor" +#, fuzzy +msgid "Snap Mode:" +msgstr "Export-Modus:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" -msgstr "Skalierungsbegrenzungseditor" +msgid "<None>" +msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." +#, fuzzy +msgid "Pixel Snap" +msgstr "Einrasten an Pixeln aktivieren" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Grid Snap" +msgstr "Gitterabstand:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" msgstr "" +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Offset:" +msgstr "Gitterverschiebung:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Step:" +msgstr "Schritte (s):" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Separation:" +msgstr "Version:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Texture Region" +msgstr "Texturbegrenzungseditor" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "Texturbegrenzungseditor" + #: tools/editor/plugins/theme_editor_plugin.cpp msgid "Can't save theme to file:" msgstr "" @@ -5144,8 +5356,9 @@ msgid "Group" msgstr "Gruppe" #: tools/editor/project_export.cpp +#, fuzzy msgid "Samples" -msgstr "Beispiele" +msgstr "Samples" #: tools/editor/project_export.cpp msgid "Sample Conversion Mode: (.wav files):" @@ -5240,6 +5453,15 @@ msgid "Couldn't create engine.cfg in project path." msgstr "" #: tools/editor/project_manager.cpp +#, fuzzy +msgid "The following files failed extraction from package:" +msgstr "Die folgenden Dateien fehlen:" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "" @@ -5260,6 +5482,16 @@ msgid "Project Path:" msgstr "" #: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install Project:" +msgstr "Unbenanntes Projekt" + +#: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install" +msgstr "Instanz:" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "" @@ -5426,50 +5658,6 @@ msgid "Add Translation" msgstr "Übersetzung hinzufügen" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "Ungültiger Name." - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "Autoload '%s' existiert bereits!" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "" @@ -5494,10 +5682,6 @@ msgid "Remove Resource Remap Option" msgstr "" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "Aktivieren" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "Projekteinstellungen (engine.cfg)" @@ -5570,18 +5754,6 @@ msgid "AutoLoad" msgstr "" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "Erweiterungen" @@ -5822,31 +5994,27 @@ msgid "Error duplicating scene to save it." msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" +msgid "Edit Groups" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Add Child Node" +msgid "Edit Connections" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Instance Child Scene" +msgid "Delete Node(s)" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Change Type" +msgid "Add Child Node" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" +msgid "Instance Child Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" +msgid "Change Type" msgstr "" #: tools/editor/scene_tree_dock.cpp @@ -5862,10 +6030,6 @@ msgid "Save Branch as Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "" @@ -5994,6 +6158,10 @@ msgid "Show In File Manager" msgstr "Zeige im Dateimanager" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "Re-Import.." + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "" @@ -6253,6 +6421,25 @@ msgstr "" msgid "Change Notifier Extents" msgstr "" +#~ msgid "Imported Resources" +#~ msgstr "Importierte Ressourcen" + +#~ msgid "Insert Keys (Ins)" +#~ msgstr "Schlüsselbilder einfügen (Einfg)" + +#, fuzzy +#~ msgid "Change Anim Loop Interpolation" +#~ msgstr "Ändere Animationswiederholung" + +#~ msgid "Enable/Disable interpolation when looping animation." +#~ msgstr "Aktivieren/Deaktivieren Interpolation, wenn Schleife aktiviert." + +#~ msgid "Load Layout" +#~ msgstr "Layout Laden" + +#~ msgid "Scale Region Editor" +#~ msgstr "Skalierungsbegrenzungseditor" + #~ msgid "Binds (Extra Params):" #~ msgstr "Bindungen (Extra Parameter):" diff --git a/tools/translations/de_CH.po b/tools/translations/de_CH.po index eb5e1be880..5524736388 100644 --- a/tools/translations/de_CH.po +++ b/tools/translations/de_CH.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2016-06-12 13:27+0000\n" +"PO-Revision-Date: 2016-06-30 13:47+0000\n" "Last-Translator: Christian Fisch <christian.fiesel@gmail.com>\n" "Language-Team: Swiss High German <https://hosted.weblate.org/projects/godot-" "engine/godot/de_CH/>\n" @@ -58,13 +58,12 @@ msgid "Invalid instance dictionary (invalid subclasses)" msgstr "" #: scene/2d/animated_sprite.cpp -#, fuzzy msgid "" "A SpriteFrames resource must be created or set in the 'Frames' property in " "order for AnimatedSprite to display frames." msgstr "" -"Damit das AnimatedSprite node Frames anzeigen kann, muss eine SpriteFrame " -"Resource unter Frames gesetzt sein." +"Damit AnimatedSprite Frames anzeigen kann, muss eine SpriteFrame Resource " +"unter der 'Frames' Property erstellt oder gesetzt sein." #: scene/2d/canvas_modulate.cpp msgid "" @@ -109,16 +108,23 @@ msgstr "" msgid "" "An occluder polygon must be set (or drawn) for this occluder to take effect." msgstr "" +"Ein Okkluder Polygon muss gesetzt oder gezeichnet werden, damit dieser " +"Okkluder funktioniert." #: scene/2d/light_occluder_2d.cpp msgid "The occluder polygon for this occluder is empty. Please draw a polygon!" msgstr "" +"Das Okkluder Polygon für diesen Okkluder ist leer. Bitte zeichne ein Polygon!" #: scene/2d/navigation_polygon.cpp +#, fuzzy msgid "" "A NavigationPolygon resource must be set or created for this node to work. " "Please set a property or draw a polygon." msgstr "" +"Eine NavigationPolygon Ressource muss für diesen Node gesetzt oder erstellt " +"werden, damit er funktioniert. Bitte setze eine Variable oder zeichne ein " +"Polygon." #: scene/2d/navigation_polygon.cpp msgid "" @@ -135,21 +141,27 @@ msgstr "" #: scene/2d/particles_2d.cpp msgid "Path property must point to a valid Particles2D node to work." -msgstr "" +msgstr "Die Pfad-Variable muss auf einen gültigen Particles2D Node verweisen." #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." msgstr "" +"PathFollow2D funktioniert nur, wenn sie als Unterobjekt eines Path2D Nodes " +"gesetzt wird." #: scene/2d/remote_transform_2d.cpp msgid "Path property must point to a valid Node2D node to work." msgstr "" +"Die Pfad-Variable muss auf einen gültigen Node2D Node zeigen um zu " +"funktionieren." #: scene/2d/sample_player_2d.cpp scene/audio/sample_player.cpp msgid "" "A SampleLibrary resource must be created or set in the 'samples' property in " "order for SamplePlayer to play sound." msgstr "" +"Damit SamplePlayer einen Sound abspielen kann, muss eine SampleLibrary " +"Ressource in der 'samples' Property erzeugt oder definiert werden." #: scene/2d/sprite.cpp msgid "" @@ -164,10 +176,13 @@ msgid "" msgstr "" #: scene/2d/visibility_notifier_2d.cpp +#, fuzzy msgid "" "VisibilityEnable2D works best when used with the edited scene root directly " "as parent." msgstr "" +"VisibilityEnable2D funktioniert am besten, wenn es ein Unterobjekt erster " +"Ordnung der bearbeiteten Hauptszene ist." #: scene/3d/body_shape.cpp msgid "" @@ -213,6 +228,9 @@ msgid "" "A SampleLibrary resource must be created or set in the 'samples' property in " "order for SpatialSamplePlayer to play sound." msgstr "" +"Damit SpatialSamplePlayer einen Sound abspielen kann, muss eine " +"SampleLibrary Ressource in der 'samples' Eigenschaft erzeugt oder definiert " +"werden." #: scene/3d/sprite_3d.cpp msgid "" @@ -222,7 +240,7 @@ msgstr "" #: scene/gui/dialogs.cpp tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Cancel" -msgstr "" +msgstr "Abbrechen" #: scene/gui/dialogs.cpp msgid "OK" @@ -230,15 +248,15 @@ msgstr "Okay" #: scene/gui/dialogs.cpp msgid "Alert!" -msgstr "" +msgstr "Alert!" #: scene/gui/dialogs.cpp msgid "Please Confirm..." -msgstr "" +msgstr "Bitte bestätigen..." #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp msgid "File Exists, Overwrite?" -msgstr "" +msgstr "Datei existiert, Überschreiben?" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp msgid "All Recognized" @@ -246,50 +264,51 @@ msgstr "" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp msgid "All Files (*)" -msgstr "" +msgstr "Alle Dateien (*)" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp #: tools/editor/editor_help.cpp tools/editor/editor_node.cpp #: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp #: tools/editor/scenes_dock.cpp msgid "Open" -msgstr "" +msgstr "Öffnen" #: scene/gui/file_dialog.cpp msgid "Open a File" -msgstr "" +msgstr "Datei öffnen" #: scene/gui/file_dialog.cpp msgid "Open File(s)" -msgstr "" +msgstr "Datei(en) öffnen" #: scene/gui/file_dialog.cpp msgid "Open a Directory" -msgstr "" +msgstr "Verzeichnis öffnen" #: scene/gui/file_dialog.cpp msgid "Open a File or Directory" -msgstr "" +msgstr "Datei oder Verzeichnis öffnen" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/script_editor_plugin.cpp msgid "Save" -msgstr "" +msgstr "Speichern" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp msgid "Save a File" -msgstr "" +msgstr "Datei speichern" #: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp #: tools/editor/editor_file_dialog.cpp msgid "Create Folder" msgstr "" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "" @@ -431,8 +450,9 @@ msgstr "" #: scene/resources/dynamic_font.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp +#, fuzzy msgid "Error initializing FreeType." -msgstr "" +msgstr "Fehler bei der FreeType Inizialisierung." #: scene/resources/dynamic_font.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp @@ -482,6 +502,10 @@ msgid "Anim Add Track" msgstr "" #: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "Anim Bilder duplizieren" + +#: tools/editor/animation_editor.cpp msgid "Move Anim Track Up" msgstr "" @@ -494,10 +518,6 @@ msgid "Remove Anim Track" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" -msgstr "Anim Bilder duplizieren" - -#: tools/editor/animation_editor.cpp msgid "Set Transitions to:" msgstr "" @@ -515,7 +535,7 @@ msgstr "" #: tools/editor/animation_editor.cpp msgid "Edit Node Curve" -msgstr "" +msgstr "Node Kurve editieren" #: tools/editor/animation_editor.cpp msgid "Edit Selection Curve" @@ -526,6 +546,19 @@ msgid "Anim Delete Keys" msgstr "Anim Bilder löschen" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "" @@ -554,15 +587,6 @@ msgid "Scale From Cursor" msgstr "" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "" @@ -645,10 +669,6 @@ msgid "Change Anim Loop" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "" @@ -689,10 +709,6 @@ msgid "Enable/Disable looping in animation." msgstr "" #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "" @@ -750,7 +766,7 @@ msgstr "" #: tools/editor/animation_editor.cpp msgid "Call Functions in Which Node?" -msgstr "" +msgstr "Im welchem Node soll die Funktion aufgerufen werden?" #: tools/editor/animation_editor.cpp msgid "Remove invalid keys" @@ -841,7 +857,6 @@ msgid "Call" msgstr "" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -954,13 +969,15 @@ msgstr "" #: tools/editor/connections_dialog.cpp msgid "Method in target Node must be specified!" -msgstr "" +msgstr "Die Methode muss im Ziel Node definiert werden!" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" -msgstr "" +#, fuzzy +msgid "Connect To Node:" +msgstr "Verbindung zu Node:" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -984,7 +1001,7 @@ msgstr "" #: tools/editor/connections_dialog.cpp msgid "Path to Node:" -msgstr "" +msgstr "Pfad zum Node:" #: tools/editor/connections_dialog.cpp msgid "Make Function" @@ -1064,8 +1081,8 @@ msgstr "" msgid "Resource" msgstr "" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "" @@ -1150,6 +1167,89 @@ msgstr "" msgid "Delete" msgstr "" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Not in resource path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "" @@ -1170,6 +1270,46 @@ msgstr "" msgid "Choose" msgstr "" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "" @@ -1190,14 +1330,18 @@ msgstr "" msgid "ScanSources" msgstr "" -#: tools/editor/editor_help.cpp -msgid "Search Classes" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" msgstr "" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "" @@ -1293,11 +1437,7 @@ msgstr "" #: tools/editor/editor_node.cpp msgid "Node From Scene" -msgstr "" - -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "" +msgstr "Node von Szene" #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp @@ -1423,8 +1563,23 @@ msgstr "" #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" #: tools/editor/editor_node.cpp @@ -1517,6 +1672,10 @@ msgid "" "(Unsaved changes will be lost)" msgstr "" +#: tools/editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "" @@ -1540,7 +1699,7 @@ msgid "Save Layout" msgstr "" #: tools/editor/editor_node.cpp -msgid "Load Layout" +msgid "Delete Layout" msgstr "" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp @@ -1548,10 +1707,6 @@ msgid "Default" msgstr "" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "" @@ -1581,6 +1736,14 @@ msgid "Distraction Free Mode" msgstr "" #: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "" @@ -1601,6 +1764,11 @@ msgid "Save Scene" msgstr "" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "Neue Szene speichern als..." + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "" @@ -1687,12 +1855,12 @@ msgstr "" #: tools/editor/editor_node.cpp msgid "Play the project." -msgstr "" +msgstr "Projekt starten." #: tools/editor/editor_node.cpp #: tools/editor/plugins/sample_library_editor_plugin.cpp msgid "Play" -msgstr "" +msgstr "Abspielen" #: tools/editor/editor_node.cpp msgid "Pause the scene" @@ -1713,15 +1881,20 @@ msgstr "" #: tools/editor/editor_node.cpp msgid "Play the edited scene." -msgstr "" +msgstr "Spiele die editierte Szene." #: tools/editor/editor_node.cpp msgid "Play Scene" -msgstr "" +msgstr "Szene starten" #: tools/editor/editor_node.cpp msgid "Play custom scene" -msgstr "" +msgstr "Spiele angepasste Szene" + +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Play Custom Scene" +msgstr "Spiele angepasste Szene" #: tools/editor/editor_node.cpp msgid "Debug options" @@ -1756,10 +1929,13 @@ msgid "Visible Collision Shapes" msgstr "" #: tools/editor/editor_node.cpp +#, fuzzy msgid "" "Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " "running game if this option is turned on." msgstr "" +"Collision-Formen und Raycast Nodes (für 2D und 3D) werden im laufenden Spiel " +"angezeigt, falls diese Option aktiviert ist." #: tools/editor/editor_node.cpp msgid "Visible Navigation" @@ -1876,7 +2052,6 @@ msgid "Output" msgstr "" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "" @@ -2026,7 +2201,7 @@ msgstr "" #: tools/editor/editor_sub_scene.cpp msgid "Select Node(s) to Import" -msgstr "" +msgstr "Selektiere Node(s) zum Importieren aus" #: tools/editor/editor_sub_scene.cpp msgid "Scene Path:" @@ -2034,7 +2209,7 @@ msgstr "" #: tools/editor/editor_sub_scene.cpp msgid "Import From Node:" -msgstr "" +msgstr "Importiere von folgendem Node:" #: tools/editor/file_type_cache.cpp msgid "Can't open file_type_cache.cch for writing, not saving file type cache!" @@ -2048,10 +2223,6 @@ msgstr "" msgid "Remove from Group" msgstr "" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "" @@ -2123,6 +2294,12 @@ msgid "No target font resource!" msgstr "" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "" @@ -2199,7 +2376,7 @@ msgstr "" #: tools/editor/io_plugins/editor_mesh_import_plugin.cpp msgid "Surface %d" -msgstr "" +msgstr "Oberfläche %d" #: tools/editor/io_plugins/editor_sample_import_plugin.cpp msgid "No samples to import!" @@ -2254,12 +2431,6 @@ msgid "Clips" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "" @@ -2358,7 +2529,7 @@ msgid "Couldn't load post-import script:" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" +msgid "Invalid/broken script for post-import (check console):" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -2435,7 +2606,7 @@ msgstr "" #: tools/editor/io_plugins/editor_texture_import_plugin.cpp msgid "Import Textures for Atlas (2D)" -msgstr "" +msgstr "Importiere Texturen für Atlas (2D)" #: tools/editor/io_plugins/editor_texture_import_plugin.cpp msgid "Cell Size:" @@ -2447,7 +2618,7 @@ msgstr "" #: tools/editor/io_plugins/editor_texture_import_plugin.cpp msgid "Import Large Textures (2D)" -msgstr "" +msgstr "Importiere Große Texturen (2D)" #: tools/editor/io_plugins/editor_texture_import_plugin.cpp msgid "Source Texture" @@ -2463,7 +2634,7 @@ msgstr "" #: tools/editor/io_plugins/editor_texture_import_plugin.cpp msgid "Import Textures for 2D" -msgstr "" +msgstr "Importiere Texturen für 2D" #: tools/editor/io_plugins/editor_texture_import_plugin.cpp msgid "Import Textures for 3D" @@ -2475,7 +2646,7 @@ msgstr "" #: tools/editor/io_plugins/editor_texture_import_plugin.cpp msgid "2D Texture" -msgstr "" +msgstr "2D-Textur" #: tools/editor/io_plugins/editor_texture_import_plugin.cpp msgid "3D Texture" @@ -2486,10 +2657,13 @@ msgid "Atlas Texture" msgstr "" #: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#, fuzzy msgid "" "NOTICE: Importing 2D textures is not mandatory. Just copy png/jpg files to " "the project." msgstr "" +"MERKE: Das importieren von 2D Texturen ist nicht zwingend notwendig. Kopiere " +"einfach png/jpg Dateien in das Projekt." #: tools/editor/io_plugins/editor_texture_import_plugin.cpp msgid "Crop empty space." @@ -2617,24 +2791,26 @@ msgid "Translation" msgstr "" #: tools/editor/multi_node_edit.cpp +#, fuzzy msgid "MultiNode Set" -msgstr "" +msgstr "MultiNode Set" #: tools/editor/node_dock.cpp msgid "Node" -msgstr "" +msgstr "Node" #: tools/editor/node_dock.cpp msgid "Groups" msgstr "" #: tools/editor/node_dock.cpp +#, fuzzy msgid "Select a Node to edit Signals and Groups." -msgstr "" +msgstr "Selektiere ein Node um deren Signale und Gruppen zu ändern." #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Toggle Autoplay" -msgstr "" +msgstr "Autoplay Umschalten" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "New Animation Name:" @@ -2708,24 +2884,28 @@ msgid "ERROR: No animation to edit!" msgstr "" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Play selected animation backwards from current pos. (A)" -msgstr "" +msgstr "Spiele ausgewählte Animation rückwärts von aktueller Position. (A)" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Play selected animation backwards from end. (Shift+A)" -msgstr "" +msgstr "Spiele ausgewählte Animation rückwärts vom Ende. (Shift+A)" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Stop animation playback. (S)" -msgstr "" +msgstr "Stoppe Animations-Wiedergabe. (S)" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Play selected animation from start. (Shift+D)" -msgstr "" +msgstr "Spiele ausgewählte Animation vom Start. (Shift+D)" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Play selected animation from current pos. (D)" -msgstr "" +msgstr "Ausgewählte Animation von der aktueller Position aus abspielen. (D)" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Animation position (in seconds)." @@ -2737,7 +2917,7 @@ msgstr "" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Create new animation in player." -msgstr "" +msgstr "Neue Animation erstellen." #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Load animation from disk." @@ -2757,11 +2937,11 @@ msgstr "" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Display list of animations in player." -msgstr "" +msgstr "Liste der Animationen anzeigen." #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Autoplay on Load" -msgstr "" +msgstr "Beim Laden automatisch abpielen" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Edit Target Blend Times" @@ -2904,39 +3084,39 @@ msgstr "" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Animation Node" -msgstr "" +msgstr "Animations-Node" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "OneShot Node" -msgstr "" +msgstr "OneShot-Node" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Mix Node" -msgstr "" +msgstr "Mix-Node" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Blend2 Node" -msgstr "" +msgstr "Blend2-Node" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Blend3 Node" -msgstr "" +msgstr "Blend3-Node" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Blend4 Node" -msgstr "" +msgstr "Blend4-Node" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "TimeScale Node" -msgstr "" +msgstr "TimeScale-Node" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "TimeSeek Node" -msgstr "" +msgstr "TimeSeek-Node" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Transition Node" -msgstr "" +msgstr "Transition-Node" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Import Animations.." @@ -2944,7 +3124,7 @@ msgstr "" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Edit Node Filters" -msgstr "" +msgstr "Node Filter editieren" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Filters.." @@ -3021,13 +3201,11 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "" @@ -3143,7 +3321,6 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "" @@ -3222,8 +3399,9 @@ msgid "Anchor" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" -msgstr "Bilder (innerhalb) einfügen" +#, fuzzy +msgid "Insert Keys" +msgstr "Bild einfügen" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" @@ -3396,6 +3574,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "" @@ -3453,19 +3635,20 @@ msgstr "" #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "No surface source specified." -msgstr "" +msgstr "Keine Oberflächen Quelle spezifiziert." #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "Surface source is invalid (invalid path)." -msgstr "" +msgstr "Oberflächen Quelle is invalid (invalider Pfad)." #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "Surface source is invalid (no geometry)." -msgstr "" +msgstr "Oberflächen Quelle is invalid (keine Form)." #: tools/editor/plugins/multimesh_editor_plugin.cpp +#, fuzzy msgid "Surface source is invalid (no faces)." -msgstr "" +msgstr "Oberflächen Quelle is invalid (kein Face)" #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "Parent has no solid faces to populate." @@ -3481,7 +3664,7 @@ msgstr "" #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "Select a Target Surface:" -msgstr "" +msgstr "Wähle eine Ziel Oberfläche aus:" #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "Populate Surface" @@ -3493,7 +3676,7 @@ msgstr "" #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "Target Surface:" -msgstr "" +msgstr "Ziel Oberfläche:" #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "Source Mesh:" @@ -3549,15 +3732,16 @@ msgstr "" #: tools/editor/plugins/particles_2d_editor_plugin.cpp msgid "Set Emission Mask" -msgstr "" +msgstr "Emissions-Maske setzen" #: tools/editor/plugins/particles_2d_editor_plugin.cpp +#, fuzzy msgid "Clear Emission Mask" -msgstr "" +msgstr "Inhalt der Emissions-Masken löschen" #: tools/editor/plugins/particles_2d_editor_plugin.cpp msgid "Load Emission Mask" -msgstr "" +msgstr "Emissions-Maske laden" #: tools/editor/plugins/particles_2d_editor_plugin.cpp msgid "Generated Point Count:" @@ -3569,15 +3753,15 @@ msgstr "" #: tools/editor/plugins/particles_editor_plugin.cpp msgid "Node does not contain geometry (faces)." -msgstr "" +msgstr "Node enthält keine Geometrie (Flächen)." #: tools/editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" -msgstr "" +msgstr "Flächen enthalten keinen Bereich!" #: tools/editor/plugins/particles_editor_plugin.cpp msgid "No faces!" -msgstr "" +msgstr "Keine Flächen!" #: tools/editor/plugins/particles_editor_plugin.cpp msgid "Generate AABB" @@ -3609,7 +3793,7 @@ msgstr "" #: tools/editor/plugins/particles_editor_plugin.cpp msgid "Surface" -msgstr "" +msgstr "Oberfläche" #: tools/editor/plugins/particles_editor_plugin.cpp msgid "Volume" @@ -3714,7 +3898,7 @@ msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp msgid "Polygon 2D UV Editor" -msgstr "" +msgstr "Polygon 2D UV Editor" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp msgid "Move Point" @@ -3757,17 +3941,15 @@ msgid "Clear UV" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "" @@ -3875,6 +4057,14 @@ msgid "Save Theme As.." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp +msgid "Next script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "" @@ -4060,10 +4250,6 @@ msgid "Search the class hierarchy." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "" @@ -4098,6 +4284,11 @@ msgstr "" msgid "Debugger" msgstr "" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "" @@ -4331,75 +4522,76 @@ msgid "Align with view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" +msgid "Environment" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" +msgid "Audio Listener" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" +msgid "Gizmos" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" +msgid "XForm Dialog" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" +msgid "No scene selected to instance!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" +msgid "Instance at Cursor" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" +msgid "Could not instance scene!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" +msgid "Scale Mode (R)" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" +msgid "Bottom View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" +msgid "Top View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" +msgid "Rear View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" +msgid "Front View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" +msgid "Left View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" +msgid "Right View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" +msgid "Switch Perspective/Orthogonal view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" -msgstr "" +#, fuzzy +msgid "Insert Animation Key" +msgstr "Bild einfügen" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" +msgid "Focus Selection" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" +msgid "Align Selection With View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp @@ -4528,7 +4720,7 @@ msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Transform Type" -msgstr "" +msgstr "Transformationstyp" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Pre" @@ -4603,17 +4795,43 @@ msgid "StyleBox Preview:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" +msgid "Snap Mode:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" +msgid "<None>" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" msgstr "" #: tools/editor/plugins/theme_editor_plugin.cpp @@ -5095,6 +5313,14 @@ msgid "Couldn't create engine.cfg in project path." msgstr "" #: tools/editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "" @@ -5115,6 +5341,14 @@ msgid "Project Path:" msgstr "" #: tools/editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "" @@ -5279,50 +5513,6 @@ msgid "Add Translation" msgstr "" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "" @@ -5347,10 +5537,6 @@ msgid "Remove Resource Remap Option" msgstr "" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "" @@ -5423,18 +5609,6 @@ msgid "AutoLoad" msgstr "" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "" @@ -5588,7 +5762,7 @@ msgstr "" #: tools/editor/scene_tree_dock.cpp msgid "Error instancing scene from %s" -msgstr "" +msgstr "Fehler beim Instanzieren der %s Szene" #: tools/editor/scene_tree_dock.cpp msgid "Ok" @@ -5602,11 +5776,12 @@ msgstr "" #: tools/editor/scene_tree_dock.cpp msgid "Instance Scene(s)" -msgstr "" +msgstr "Instanziere Szene(n)" #: tools/editor/scene_tree_dock.cpp +#, fuzzy msgid "This operation can't be done on the tree root." -msgstr "" +msgstr "Das funktioniert nicht beim obersten Node. (tree root)" #: tools/editor/scene_tree_dock.cpp msgid "Move Node In Parent" @@ -5618,27 +5793,27 @@ msgstr "" #: tools/editor/scene_tree_dock.cpp msgid "Duplicate Node(s)" -msgstr "" +msgstr "Node(s) duplizieren" #: tools/editor/scene_tree_dock.cpp msgid "Delete Node(s)?" -msgstr "" +msgstr "Node(s) löschen?" #: tools/editor/scene_tree_dock.cpp msgid "This operation can't be done without a scene." -msgstr "" +msgstr "Ohne eine Szene kann das nicht funktionieren." #: tools/editor/scene_tree_dock.cpp msgid "This operation requires a single selected node." -msgstr "" +msgstr "Bitte nur ein Node selektieren." #: tools/editor/scene_tree_dock.cpp msgid "This operation can't be done on instanced scenes." -msgstr "" +msgstr "Das funktioniert nicht bei einer instanzierten Szene." #: tools/editor/scene_tree_dock.cpp msgid "Save New Scene As.." -msgstr "" +msgstr "Neue Szene speichern als..." #: tools/editor/scene_tree_dock.cpp msgid "Makes Sense!" @@ -5654,11 +5829,11 @@ msgstr "" #: tools/editor/scene_tree_dock.cpp msgid "Remove Node(s)" -msgstr "" +msgstr "Node(s) entfernen" #: tools/editor/scene_tree_dock.cpp msgid "Create Node" -msgstr "" +msgstr "Node erstellen" #: tools/editor/scene_tree_dock.cpp msgid "" @@ -5668,19 +5843,23 @@ msgstr "" #: tools/editor/scene_tree_dock.cpp msgid "Error saving scene." -msgstr "" +msgstr "Szene kann nicht gespeichert werden." #: tools/editor/scene_tree_dock.cpp msgid "Error duplicating scene to save it." msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" +msgid "Edit Groups" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" -msgstr "" +msgid "Edit Connections" +msgstr "Connections editieren" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "Node(s) löschen" #: tools/editor/scene_tree_dock.cpp msgid "Add Child Node" @@ -5692,19 +5871,11 @@ msgstr "" #: tools/editor/scene_tree_dock.cpp msgid "Change Type" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" -msgstr "" +msgstr "Typ ändern" #: tools/editor/scene_tree_dock.cpp msgid "Add Script" -msgstr "" +msgstr "Script hinzufügen" #: tools/editor/scene_tree_dock.cpp msgid "Merge From Scene" @@ -5715,10 +5886,6 @@ msgid "Save Branch as Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "" @@ -5847,6 +6014,10 @@ msgid "Show In File Manager" msgstr "" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "" @@ -6105,3 +6276,6 @@ msgstr "" #: tools/editor/spatial_editor_gizmos.cpp msgid "Change Notifier Extents" msgstr "" + +#~ msgid "Insert Keys (Ins)" +#~ msgstr "Bilder (innerhalb) einfügen" diff --git a/tools/translations/es.po b/tools/translations/es.po index 3f727d18c3..ce2f8c1673 100644 --- a/tools/translations/es.po +++ b/tools/translations/es.po @@ -3,25 +3,25 @@ # This file is distributed under the same license as the Godot source code. # # Lisandro Lorea <lisandrolorea@gmail.com>, 2016. +# Sebastian Silva <sebastian@fuentelibre.org>, 2016. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-06-14 14:10+0000\n" -"Last-Translator: Lisandro Lorea <lisandrolorea@gmail.com>\n" -"Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/" -"godot/es/>\n" +"PO-Revision-Date: 2016-07-14 01:33-0500\n" +"Last-Translator: Sebastian Silva <sebastian@fuentelibre.org>\n" +"Language-Team: SomosAzucar.Org\n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.7-dev\n" +"X-Generator: Virtaal 0.7.1\n" #: modules/gdscript/gd_functions.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." -msgstr "Argumento de tipo inválido para convert(), usá constantes TYPE_*." +msgstr "Argumento de tipo inválido para convert(), use constantes TYPE_*." #: modules/gdscript/gd_functions.cpp msgid "Not enough bytes for decoding bytes, or invalid format." @@ -68,7 +68,7 @@ msgid "" "A SpriteFrames resource must be created or set in the 'Frames' property in " "order for AnimatedSprite to display frames." msgstr "" -"Un recurso SpriteFrames debe ser creado o seteado en la propiedad 'Frames' " +"Un recurso SpriteFrames debe ser creado o definido en la propiedad 'Frames' " "para que AnimatedSprite pueda mostrar frames." #: scene/2d/canvas_modulate.cpp @@ -123,7 +123,7 @@ msgstr "" msgid "" "An occluder polygon must be set (or drawn) for this occluder to take effect." msgstr "" -"Se debe setear(o dibujar) un polígono oclusor para que este oclusor tenga " +"Se debe definir(o dibujar) un polígono oclusor para que este oclusor tenga " "efecto." #: scene/2d/light_occluder_2d.cpp @@ -135,7 +135,7 @@ msgid "" "A NavigationPolygon resource must be set or created for this node to work. " "Please set a property or draw a polygon." msgstr "" -"Se debe crear o setear un recurso NavigationPolygon para que este nodo " +"Se debe crear o definir un recurso NavigationPolygon para que este nodo " "funcione. Por favor creá una propiedad o dibujá un polígono." #: scene/2d/navigation_polygon.cpp @@ -150,7 +150,7 @@ msgstr "" msgid "" "ParallaxLayer node only works when set as child of a ParallaxBackground node." msgstr "" -"ParallaxLayer node solo funciona cuando esta seteado como hijo de un nodo " +"ParallaxLayer node solo funciona cuando esta definido como hijo de un nodo " "ParallaxBackground." #: scene/2d/particles_2d.cpp @@ -161,7 +161,7 @@ msgstr "" #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." msgstr "" -"PathFollow2D solo funciona cuando está seteado como hijo de un nodo Path2D." +"PathFollow2D solo funciona cuando está definido como hijo de un nodo Path2D." #: scene/2d/remote_transform_2d.cpp msgid "Path property must point to a valid Node2D node to work." @@ -172,8 +172,8 @@ msgid "" "A SampleLibrary resource must be created or set in the 'samples' property in " "order for SamplePlayer to play sound." msgstr "" -"Un recurso SampleLibrary debe ser creado o seteado en la propiedad 'samples' " -"de modo que SamplePlayer pueda reproducir sonido." +"Un recurso SampleLibrary debe ser creado o definido en la propiedad " +"'samples' de modo que SamplePlayer pueda reproducir sonido." #: scene/2d/sprite.cpp msgid "" @@ -181,15 +181,15 @@ msgid "" "must be set to 'render target' mode." msgstr "" "La propiedad Path debe apuntar a un nodo Viewport válido para funcionar. " -"Dicho Viewport debe ser seteado a modo 'render target'." +"Dicho Viewport debe estar configurado a modo 'render target'." #: scene/2d/sprite.cpp msgid "" "The Viewport set in the path property must be set as 'render target' in " "order for this sprite to work." msgstr "" -"El Viewport seteado en la propiedad path debe ser seteado como 'render " -"target' para que este sprite funcione." +"El Viewport definido en la propiedad path debe estar configurado como " +"'render target' para que este sprite funcione." #: scene/2d/visibility_notifier_2d.cpp msgid "" @@ -234,7 +234,8 @@ msgstr "Un CollisionPolygon vacio no tiene ningún efecto en la colisión." #: scene/3d/navigation_mesh.cpp msgid "A NavigationMesh resource must be set or created for this node to work." msgstr "" -"Se debe crear o setear un recurso NavigationMesh para que este nodo funcione." +"Se debe crear o definir un recurso NavigationMesh para que este nodo " +"funcione." #: scene/3d/navigation_mesh.cpp msgid "" @@ -256,8 +257,8 @@ msgid "" "A SampleLibrary resource must be created or set in the 'samples' property in " "order for SpatialSamplePlayer to play sound." msgstr "" -"Un recurso SampleLibrary debe ser creado o seteado en la propiedad 'samples' " -"de modo que SpatialSamplePlayer puede reproducir sonido." +"Un recurso SampleLibrary debe ser creado o definido en la propiedad " +"'samples' de modo que SpatialSamplePlayer puede reproducir sonido." #: scene/3d/sprite_3d.cpp msgid "" @@ -281,7 +282,7 @@ msgstr "Alerta!" #: scene/gui/dialogs.cpp msgid "Please Confirm..." -msgstr "Confirmá, por favor..." +msgstr "Confirma, por favor..." #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp msgid "File Exists, Overwrite?" @@ -334,9 +335,10 @@ msgstr "Guardar un Archivo" msgid "Create Folder" msgstr "Crear Carpeta" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "Ruta:" @@ -478,9 +480,9 @@ msgid "" "obtain a size. Otherwise, make it a RenderTarget and assign its internal " "texture to some node for display." msgstr "" -"Este viewport no está seteado como render target. Si tenés intención de que " -"muestre contenidos directo a la pantalla, hacelo un hijo de un Control para " -"que pueda obtener un tamaño. Alternativamente, hacelo un RenderTarget y " +"Este viewport no está configurado como render target. Si tenés intención de " +"que muestre contenidos directo a la pantalla, hacelo un hijo de un Control " +"para que pueda obtener un tamaño. Alternativamente, hacelo un RenderTarget y " "asigná su textura interna a algún otro nodo para mostrar." #: scene/resources/dynamic_font.cpp @@ -536,6 +538,10 @@ msgid "Anim Add Track" msgstr "Agregar Track de Anim" #: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "Duplicar Claves de Anim" + +#: tools/editor/animation_editor.cpp msgid "Move Anim Track Up" msgstr "Subir Track de Anim" @@ -548,12 +554,8 @@ msgid "Remove Anim Track" msgstr "Quitar Track de Anim" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" -msgstr "Duplicar Claves de Anim" - -#: tools/editor/animation_editor.cpp msgid "Set Transitions to:" -msgstr "Setear Transiciones a:" +msgstr "Definir Transiciones a:" #: tools/editor/animation_editor.cpp msgid "Anim Track Rename" @@ -580,6 +582,20 @@ msgid "Anim Delete Keys" msgstr "Borrar Claves de Anim" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "Duplicar Selección" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "Duplicar Transpuesto" + +#: tools/editor/animation_editor.cpp +#, fuzzy +msgid "Remove Selection" +msgstr "Encuadrar Selección" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "Contínuo" @@ -608,15 +624,6 @@ msgid "Scale From Cursor" msgstr "Escalar Desde Cursor" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "Duplicar Selección" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "Duplicar Transpuesto" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "Ir a Paso Próximo" @@ -699,10 +706,6 @@ msgid "Change Anim Loop" msgstr "Cambiar Loop de Anim" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "Cambiar Interpolación de Loop de Anim" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "Crear Clave de Valor Tipado para Anim" @@ -743,10 +746,6 @@ msgid "Enable/Disable looping in animation." msgstr "Activar/Desactivar loopeo en la animación." #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "Activar/Desactivar interpolación al loopear animación." - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "Agregar nuevos tracks." @@ -895,7 +894,6 @@ msgid "Call" msgstr "Llamar" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -1011,10 +1009,11 @@ msgid "Method in target Node must be specified!" msgstr "El método en el Nodo objetivo debe ser especificado!" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" +msgid "Connect To Node:" msgstr "Conectar a Nodo:" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1120,8 +1119,8 @@ msgstr "Dependencias" msgid "Resource" msgstr "Recursos" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "Ruta" @@ -1210,6 +1209,100 @@ msgstr "Eliminar archivos seleccionados?" msgid "Delete" msgstr "Eliminar" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "Nombre inválido." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "Caracteres válidos:" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" +"Nombre inválido. No debe colisionar con un nombre existente de clases del " +"engine." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" +"Nombre inválido. No debe colisionar con un nombre existente de un tipo built-" +"in." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" +"Nombre inválido. No debe colisionar con un nombre de constante global " +"existente." + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid Path." +msgstr "Ruta inválida!" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "File does not exist." +msgstr "El archivo existe" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr "Ruta de Recursos" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Add AutoLoad" +msgstr "Agregar Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "Autocargar '%s' ya existe!" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "Renombrar Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "Act/Desact. AutoLoad Globals" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "Mover Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "Quitar Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "Activar" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Rearrange Autoloads" +msgstr "Renombrar Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "Nombre de Nodo:" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "Nombre" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "Singleton" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "Lista:" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "Actualizando Escena" @@ -1224,12 +1317,54 @@ msgstr "Actualizando escena.." #: tools/editor/editor_dir_dialog.cpp msgid "Choose a Directory" -msgstr "Elegí un Directorio" +msgstr "Elige un Directorio" #: tools/editor/editor_dir_dialog.cpp msgid "Choose" msgstr "Elegir" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "Retroceder" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "Avanzar" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "Subir" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "Refrescar" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "Act/Desact. Archivos Ocultos" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "Act/Desact. Favorito" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "Act/Desact. Modo" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "Foco en Ruta" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Up" +msgstr "Mover Favorito Hacia Arriba" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Down" +msgstr "Mover Favorito Hacia Abajo" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "Favoritos:" @@ -1250,14 +1385,18 @@ msgstr "No se puede acceder al subdir:" msgid "ScanSources" msgstr "EscanearFuentes" -#: tools/editor/editor_help.cpp -msgid "Search Classes" -msgstr "Buscar Clases" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "Ayuda de Búsqueda" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "Lista de Clases:" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "Buscar Clases" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "Clase:" @@ -1355,10 +1494,6 @@ msgstr "Importando:" msgid "Node From Scene" msgstr "Nodo desde Escena" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "Reimportando.." - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1412,7 +1547,7 @@ msgstr "Fallo al cargar recurso." #: tools/editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" -msgstr "No se puede cargar MeshLibrary para hacer merge!" +msgstr "No se puede cargar MeshLibrary para fusionar!" #: tools/editor/editor_node.cpp msgid "Error saving MeshLibrary!" @@ -1420,7 +1555,7 @@ msgstr "Error guardando MeshLibrary!" #: tools/editor/editor_node.cpp msgid "Can't load TileSet for merging!" -msgstr "No se puede cargar TileSet para hacer merge!" +msgstr "No se puede cargar TileSet para fusio!" #: tools/editor/editor_node.cpp msgid "Error saving TileSet!" @@ -1485,15 +1620,39 @@ msgstr "No hay escena definida para ejecutar." #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" +"No se ha definido ninguna escena principal, ¿elegir una?\n" +"Es posible cambiarla más tarde en \"Ajustes del Proyecto\" bajo la categoria " +"'aplicacion'." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"La escena '%s' seleccionada no existe, ¿seleccionar una válida?\n" +"Es posible cambiarla más tarde en \"Ajustes del Proyecto\" bajo la categoria " +"'aplicacion'." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" -"No se ha definido ninguna escena principal.\n" -"Seleccioná una de \"Ajustes del Proyecto\" bajo la categoria 'aplicacion'." +"La escena '%s' seleccionada no es un archivo de escena, ¿seleccionar uno " +"válido?\n" +"Es posible cambiarla más tarde en \"Ajustes del Proyecto\" bajo la categoria " +"'aplicacion'." #: tools/editor/editor_node.cpp msgid "Current scene was never saved, please save it prior to running." -msgstr "La escena actual nunca se guardó. Favor de guardarla antes de ejecutar." +msgstr "" +"La escena actual nunca se guardó. Favor de guardarla antes de ejecutar." #: tools/editor/editor_node.cpp msgid "Could not start subprocess!" @@ -1581,6 +1740,11 @@ msgid "" "(Unsaved changes will be lost)" msgstr "Abrir el Gestor de Proyectos? (Los cambios sin guardar se perderán)" +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Pick a Main Scene" +msgstr "Elegí una Escena Principal" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "Ugh" @@ -1607,18 +1771,14 @@ msgid "Save Layout" msgstr "Guardar Layout" #: tools/editor/editor_node.cpp -msgid "Load Layout" -msgstr "Cargar Layout" +msgid "Delete Layout" +msgstr "Eliminar Layout" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp msgid "Default" msgstr "Por Defecto" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "Eliminar Layout" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "Cambiar Pestaña de Escena" @@ -1648,6 +1808,14 @@ msgid "Distraction Free Mode" msgstr "Modo Sin Distracciones" #: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "Pestaña siguiente" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "Pestaña anterior" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "Operaciones con archivos de escena." @@ -1668,6 +1836,11 @@ msgid "Save Scene" msgstr "Guardar Escena" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "Guardar Escena" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "Cerrar Escena" @@ -1791,12 +1964,17 @@ msgid "Play custom scene" msgstr "Reproducir escena personalizada" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Play Custom Scene" +msgstr "Reproducir escena personalizada" + +#: tools/editor/editor_node.cpp msgid "Debug options" -msgstr "Opciones de debugueo" +msgstr "Opciones de depuración" #: tools/editor/editor_node.cpp msgid "Deploy with Remote Debug" -msgstr "Hacer Deploy con Debug Remoto" +msgstr "Transferir con Depuración Remota" #: tools/editor/editor_node.cpp msgid "" @@ -1804,7 +1982,7 @@ msgid "" "connect to the IP of this computer in order to be debugged." msgstr "" "Al exportar o hacer deploy, el ejecutable resultante tratara de contectarse " -"a la IP de esta computadora de manera de ser debugueado." +"a la IP de esta computadora de manera de ser depurado." #: tools/editor/editor_node.cpp msgid "Small Deploy with Network FS" @@ -1963,7 +2141,6 @@ msgid "Output" msgstr "Salida" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "Reimportar" @@ -1993,7 +2170,7 @@ msgstr "Exportar Libreria" #: tools/editor/editor_node.cpp msgid "Merge With Existing" -msgstr "Mergear Con Existentes" +msgstr "Fusionar Con Existentes" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp msgid "Password:" @@ -2137,10 +2314,6 @@ msgstr "Agregar al Grupo" msgid "Remove from Group" msgstr "Quitar del Grupo" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "Importar Recursos" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "Sin máscaras de bits para importar!" @@ -2212,6 +2385,14 @@ msgid "No target font resource!" msgstr "Sin recurso de tipografías de destino!" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" +"Extension de archivo inválida.\n" +"Usá .fnt, por favor." + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "No se puede cargar/procesar la tipografía de origen." @@ -2345,12 +2526,6 @@ msgid "Clips" msgstr "Clips" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "Nombre" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "Comienzo(s)" @@ -2451,8 +2626,8 @@ msgid "Couldn't load post-import script:" msgstr "No se pudo cargar el script post importación:" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" -msgstr "Script para post importación inválido/roto:" +msgid "Invalid/broken script for post-import (check console):" +msgstr "Script para post importación inválido/roto (revisá la consola):" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Error running post-import script:" @@ -2713,7 +2888,7 @@ msgstr "Traducción" #: tools/editor/multi_node_edit.cpp msgid "MultiNode Set" -msgstr "Setear MultiNodo" +msgstr "Definir MultiNodo" #: tools/editor/node_dock.cpp msgid "Node" @@ -2981,7 +3156,7 @@ msgstr "Limpiar Auto Avanzar" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Set Auto-Advance" -msgstr "Setear Auto Avanzar" +msgstr "Activa Auto-Avanzar" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Delete Input" @@ -3106,7 +3281,8 @@ msgstr "Hacer Bake!" #: tools/editor/plugins/baked_light_editor_plugin.cpp msgid "Reset the lightmap octree baking process (start over)." msgstr "" -"Resetear el proceso de bake del octree de mapa de luces (empezar de nuevo)." +"Reestablecer el proceso de bake del octree de mapa de luces (empezar de " +"nuevo)." #: tools/editor/plugins/camera_editor_plugin.cpp #: tools/editor/plugins/sample_library_editor_plugin.cpp @@ -3119,13 +3295,11 @@ msgstr "Configurar Snap" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "Offset de Grilla:" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "Setp de Grilla:" @@ -3245,7 +3419,6 @@ msgstr "Usar Snap" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "Mostrar la Grilla" @@ -3309,7 +3482,7 @@ msgstr "Resetear Zoom" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Zoom Set.." -msgstr "Setear Zoom.." +msgstr "Establecer Zoom.." #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Center Selection" @@ -3324,8 +3497,9 @@ msgid "Anchor" msgstr "Anchor" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" -msgstr "Insertar Claves (Ins)" +#, fuzzy +msgid "Insert Keys" +msgstr "Insertar Clave" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" @@ -3345,7 +3519,7 @@ msgstr "Reestablecer Pose" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Set a Value" -msgstr "Setear un Valor" +msgstr "Definir un Valor" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Snap (Pixels):" @@ -3388,7 +3562,7 @@ msgstr "Crear Poly3D" #: tools/editor/plugins/collision_shape_2d_editor_plugin.cpp msgid "Set Handle" -msgstr "Setear Handle" +msgstr "Definir Handle" #: tools/editor/plugins/color_ramp_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" @@ -3427,7 +3601,7 @@ msgstr "Importar desde Escena" #: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp msgid "Update from Scene" -msgstr "Acutalizar desde Escena" +msgstr "Actualizar desde Escena" #: tools/editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" @@ -3498,6 +3672,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "A MeshInstance le falta un Mesh!" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "El mesh no tiene una superficie de donde crear contornos(outlines)!" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "No se pudo crear el outline!" @@ -3536,7 +3714,7 @@ msgstr "Tamaño de Outline:" #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "No mesh source specified (and no MultiMesh set in node)." msgstr "" -"No se especificó mesh de origen (y no hay MultiMesh seteado en el nodo)." +"No se especificó mesh de origen (y no hay MultiMesh definido en el nodo)." #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "No mesh source specified (and MultiMesh contains no Mesh)." @@ -3652,7 +3830,7 @@ msgstr "Sin pixeles con transparencia > 128 en imagen.." #: tools/editor/plugins/particles_2d_editor_plugin.cpp msgid "Set Emission Mask" -msgstr "Setear Máscara de Emisión" +msgstr "Definir Máscara de Emisión" #: tools/editor/plugins/particles_2d_editor_plugin.cpp msgid "Clear Emission Mask" @@ -3789,15 +3967,15 @@ msgstr "Punto # de Curva" #: tools/editor/plugins/path_editor_plugin.cpp msgid "Set Curve Point Pos" -msgstr "Setear Pos. de Punto de Curva" +msgstr "Definir Pos. de Punto de Curva" #: tools/editor/plugins/path_editor_plugin.cpp msgid "Set Curve In Pos" -msgstr "Setear Pos. In de Curva" +msgstr "Definir Pos. In de Curva" #: tools/editor/plugins/path_editor_plugin.cpp msgid "Set Curve Out Pos" -msgstr "Setear Pos. Out de Curva" +msgstr "Definir Pos. Out de Curva" #: tools/editor/plugins/path_editor_plugin.cpp msgid "Split Path" @@ -3860,17 +4038,15 @@ msgid "Clear UV" msgstr "Limpiar UV" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "Esnapear" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "Activar Snap" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "Grilla" @@ -3978,6 +4154,16 @@ msgid "Save Theme As.." msgstr "Guardar Tema Como.." #: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "Crear Script" + +#: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Previous script" +msgstr "Pestaña anterior" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "Archivo" @@ -4084,7 +4270,7 @@ msgstr "Ir a Línea.." #: tools/editor/plugins/script_editor_plugin.cpp msgid "Debug" -msgstr "Debuguear" +msgstr "Depurar" #: tools/editor/plugins/script_editor_plugin.cpp msgid "Toggle Breakpoint" @@ -4124,7 +4310,7 @@ msgstr "Continuar" #: tools/editor/plugins/script_editor_plugin.cpp msgid "Keep Debugger Open" -msgstr "Mantener el Debugger Abierto" +msgstr "Mantener el Depurador Abierto" #: tools/editor/plugins/script_editor_plugin.cpp msgid "Window" @@ -4163,10 +4349,6 @@ msgid "Search the class hierarchy." msgstr "Buscar en la jerarquía de clases." #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "Ayuda de Búsqueda" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "Buscar en la documentación de referencia." @@ -4201,7 +4383,12 @@ msgstr "Volver a Guardar" #: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/script_editor_debugger.cpp msgid "Debugger" -msgstr "Debugger" +msgstr "Depurador" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" @@ -4373,7 +4560,7 @@ msgstr "Escalando a %s%%." #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Rotating %s degrees." -msgstr "Torando %s grados." +msgstr "Rotando %s grados." #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Bottom View." @@ -4436,76 +4623,85 @@ msgid "Align with view" msgstr "Alinear con vista" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" -msgstr "Cima (Num7)" +msgid "Environment" +msgstr "Entorno" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" -msgstr "Fondo (Shift+Num7)" +msgid "Audio Listener" +msgstr "Oyente de Audio" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" -msgstr "Izquierda (Num3)" +msgid "Gizmos" +msgstr "Gizmos" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" -msgstr "Derecha (Shift+Num3)" +msgid "XForm Dialog" +msgstr "Dialogo XForm" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" -msgstr "Frente (Num1)" +msgid "No scene selected to instance!" +msgstr "Ninguna escena seleccionada a la instancia!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" -msgstr "Detrás (Shift+Num1)" +msgid "Instance at Cursor" +msgstr "Instancia en Cursor" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" -msgstr "Perspectiva (Num5)" +msgid "Could not instance scene!" +msgstr "No se pudo instanciar la escena!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" -msgstr "Ortogonal (Num5)" +msgid "Scale Mode (R)" +msgstr "Modo de Escalado (R)" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" -msgstr "Entorno" +#, fuzzy +msgid "Bottom View" +msgstr "Vista Inferior." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" -msgstr "Oyente de Audio" +#, fuzzy +msgid "Top View" +msgstr "Vista Superior." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" -msgstr "Gizmos" +#, fuzzy +msgid "Rear View" +msgstr "Vista Anterior." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" -msgstr "Slección (F)" +#, fuzzy +msgid "Front View" +msgstr "Vista Frontal." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" -msgstr "Alinear con vista (Ctrl+Shift+F)" +#, fuzzy +msgid "Left View" +msgstr "Vista Izquierda." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" -msgstr "Dialogo XForm" +#, fuzzy +msgid "Right View" +msgstr "Vista Derecha." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" -msgstr "Ninguna escena seleccionada a la instancia!" +msgid "Switch Perspective/Orthogonal view" +msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" -msgstr "Instancia en Cursor" +#, fuzzy +msgid "Insert Animation Key" +msgstr "Pegar Animación" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" -msgstr "No se pudo instanciar la escena!" +#, fuzzy +msgid "Focus Selection" +msgstr "Escalar Selección" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" -msgstr "Modo de Escalado (R)" +#, fuzzy +msgid "Align Selection With View" +msgstr "Alinear con vista" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Transform" @@ -4708,20 +4904,44 @@ msgid "StyleBox Preview:" msgstr "Vista Previa de StyleBox:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" -msgstr "Editor de Regiones de Texturas" +msgid "Snap Mode:" +msgstr "Modo Snap:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" -msgstr "Editor de Regiones de Escalado" +msgid "<None>" +msgstr "<Ninguno>" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." -msgstr "" -"Sin textura en este nodo.\n" -"Asigná una textura para poder editar la región." +msgid "Pixel Snap" +msgstr "Pixel Snap" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "Snap de Grilla" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "Auto Rebanar" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "Offset:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "Paso:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "Separación:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "Región de Textura" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "Editor de Regiones de Texturas" #: tools/editor/plugins/theme_editor_plugin.cpp msgid "Can't save theme to file:" @@ -4901,7 +5121,7 @@ msgstr "¿Crear desde escena?" #: tools/editor/plugins/tile_set_editor_plugin.cpp msgid "Merge from scene?" -msgstr "¿Mergear desde escena?" +msgstr "¿Fusionar desde escena?" #: tools/editor/plugins/tile_set_editor_plugin.cpp msgid "Create from Scene" @@ -4909,7 +5129,7 @@ msgstr "Crear desde Escena" #: tools/editor/plugins/tile_set_editor_plugin.cpp msgid "Merge from Scene" -msgstr "Mergear desde Escena" +msgstr "Fusionar desde Escena" #: tools/editor/plugins/tile_set_editor_plugin.cpp #: tools/editor/script_editor_debugger.cpp @@ -4922,15 +5142,15 @@ msgstr "Editar Opciones de Script" #: tools/editor/project_export.cpp msgid "Please export outside the project folder!" -msgstr "Por favor exportá afuera de la carpeta de proyecto!" +msgstr "Por favor exporte afuera de la carpeta de proyecto!" #: tools/editor/project_export.cpp msgid "Error exporting project!" -msgstr "Error al exportar el proyecto!" +msgstr "¡Error al exportar el proyecto!" #: tools/editor/project_export.cpp msgid "Error writing the project PCK!" -msgstr "Error al escribir el PCK de proyecto!" +msgstr "¡Error al escribir el PCK de proyecto!" #: tools/editor/project_export.cpp msgid "No exporter for platform '%s' yet." @@ -5018,8 +5238,8 @@ msgstr "" #: tools/editor/project_export.cpp msgid "Filters to exclude from export (comma-separated, e.g.: *.json, *.txt):" msgstr "" -"Filtros para excluir de la exportación (separados por comas, ej: *.json, " -"*.txt):" +"Filtros para excluir de la exportación (separados por comas, ej: *.json, *." +"txt):" #: tools/editor/project_export.cpp msgid "Convert text scenes to binary on export." @@ -5206,6 +5426,17 @@ msgid "Couldn't create engine.cfg in project path." msgstr "No se pudo crear engine.cfg en la ruta de proyecto." #: tools/editor/project_manager.cpp +#, fuzzy +msgid "The following files failed extraction from package:" +msgstr "" +"Los siguientes archivos son nuevos en disco.\n" +"¿Qué acción se debería tomar?:" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "Importar Proyecto Existente" @@ -5226,6 +5457,16 @@ msgid "Project Path:" msgstr "Ruta del Proyecto:" #: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install Project:" +msgstr "Proyectos Recientes:" + +#: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install" +msgstr "Instancia" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "Examinar" @@ -5285,7 +5526,7 @@ msgstr "Tecla " #: tools/editor/project_settings.cpp msgid "Joy Button" -msgstr "Bottón de Joystick" +msgstr "Botón de Joystick" #: tools/editor/project_settings.cpp msgid "Joy Axis" @@ -5392,56 +5633,6 @@ msgid "Add Translation" msgstr "Agregar Traducción" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "Nombre inválido." - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "Caracteres válidos:" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" -"Nombre inválido. No debe colisionar con un nombre existente de clases del " -"engine." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" -"Nombre inválido. No debe colisionar con un nombre existente de un tipo built-" -"in." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" -"Nombre inválido. No debe colisionar con un nombre de constante global " -"existente." - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "Autocargar '%s' ya existe!" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "Renombrar Autoload" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "Act/Desact. AutoLoad Globals" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "Agregar Autoload" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "Quitar Autoload" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "Mover Autoload" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "Quitar Traducción" @@ -5466,10 +5657,6 @@ msgid "Remove Resource Remap Option" msgstr "Remover Opción de Remapeo de Recursos" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "Activar" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "Ajustes de Proyecto (engine.cfg)" @@ -5542,18 +5729,6 @@ msgid "AutoLoad" msgstr "AutoLoad" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "Nombre de Nodo:" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "Lista:" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "Singleton" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "Plugins" @@ -5615,7 +5790,7 @@ msgstr "On" #: tools/editor/property_editor.cpp msgid "Set" -msgstr "Setear" +msgstr "Definir" #: tools/editor/property_editor.cpp msgid "Properties:" @@ -5772,7 +5947,8 @@ msgstr "No se puede operar sobre los nodos de una escena externa!" #: tools/editor/scene_tree_dock.cpp msgid "Can't operate on nodes the current scene inherits from!" -msgstr "No se puede operar sobre los nodos de los cual hereda la escena actual!" +msgstr "" +"No se puede operar sobre los nodos de los cual hereda la escena actual!" #: tools/editor/scene_tree_dock.cpp msgid "Remove Node(s)" @@ -5799,12 +5975,16 @@ msgid "Error duplicating scene to save it." msgstr "Error al duplicar escena para guardarla." #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "Nueva Raíz de Escena" +msgid "Edit Groups" +msgstr "Editar Grupos" + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Connections" +msgstr "Editar Conexiones" #: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" -msgstr "Heredar Escena" +msgid "Delete Node(s)" +msgstr "Eliminar Nodo(s)" #: tools/editor/scene_tree_dock.cpp msgid "Add Child Node" @@ -5819,30 +5999,18 @@ msgid "Change Type" msgstr "Cambiar Tipo" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" -msgstr "Editar Grupos" - -#: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" -msgstr "Editar Conexiones" - -#: tools/editor/scene_tree_dock.cpp msgid "Add Script" msgstr "Agregar Script" #: tools/editor/scene_tree_dock.cpp msgid "Merge From Scene" -msgstr "Mergear Desde Escena" +msgstr "Fusionar Desde Escena" #: tools/editor/scene_tree_dock.cpp msgid "Save Branch as Scene" msgstr "Guardar Rama como Escena" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "Eliminar Nodo(s)" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "Agregar/Crear un Nuevo Nodo" @@ -5975,6 +6143,10 @@ msgid "Show In File Manager" msgstr "Mostrar en Gestor de Archivos" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "Reimportando.." + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "Directorio Previo" @@ -6193,7 +6365,7 @@ msgstr "Raíz de Edición en Vivo:" #: tools/editor/script_editor_debugger.cpp msgid "Set From Tree" -msgstr "Setear Desde Arbol" +msgstr "Definir Desde Arbol" #: tools/editor/settings_config_dialog.cpp msgid "Shortcuts" @@ -6235,6 +6407,67 @@ msgstr "Cambiar Largo de Shape Rayo" msgid "Change Notifier Extents" msgstr "Cambiar Alcances de Notificadores" +#~ msgid "Imported Resources" +#~ msgstr "Importar Recursos" + +#~ msgid "Insert Keys (Ins)" +#~ msgstr "Insertar Claves (Ins)" + +#~ msgid "Top (Num7)" +#~ msgstr "Cima (Num7)" + +#~ msgid "Bottom (Shift+Num7)" +#~ msgstr "Fondo (Shift+Num7)" + +#~ msgid "Left (Num3)" +#~ msgstr "Izquierda (Num3)" + +#~ msgid "Right (Shift+Num3)" +#~ msgstr "Derecha (Shift+Num3)" + +#~ msgid "Front (Num1)" +#~ msgstr "Frente (Num1)" + +#~ msgid "Rear (Shift+Num1)" +#~ msgstr "Detrás (Shift+Num1)" + +#~ msgid "Perspective (Num5)" +#~ msgstr "Perspectiva (Num5)" + +#~ msgid "Orthogonal (Num5)" +#~ msgstr "Ortogonal (Num5)" + +#~ msgid "Selection (F)" +#~ msgstr "Slección (F)" + +#~ msgid "Align with view (Ctrl+Shift+F)" +#~ msgstr "Alinear con vista (Ctrl+Shift+F)" + +#~ msgid "Change Anim Loop Interpolation" +#~ msgstr "Cambiar Interpolación de Loop de Anim" + +#~ msgid "Enable/Disable interpolation when looping animation." +#~ msgstr "Activar/Desactivar interpolación al loopear animación." + +#~ msgid "Load Layout" +#~ msgstr "Cargar Layout" + +#~ msgid "Scale Region Editor" +#~ msgstr "Editor de Regiones de Escalado" + +#~ msgid "" +#~ "No texture in this node.\n" +#~ "Set a texture to be able to edit region." +#~ msgstr "" +#~ "Sin textura en este nodo.\n" +#~ "Asigná una textura para poder editar la región." + +#~ msgid "New Scene Root" +#~ msgstr "Nueva Raíz de Escena" + +#~ msgid "Inherit Scene" +#~ msgstr "Heredar Escena" + #~ msgid "Binds (Extra Params):" #~ msgstr "Binds (Parametros Extra):" @@ -6268,8 +6501,5 @@ msgstr "Cambiar Alcances de Notificadores" #~ msgid "Set region_rect" #~ msgstr "Setear region_rect" -#~ msgid "Recent Projects:" -#~ msgstr "Proyectos Recientes:" - #~ msgid "Plugin List:" #~ msgstr "Lista de Plugins:" diff --git a/tools/translations/es_AR.po b/tools/translations/es_AR.po index e9dc591b98..1c2b697101 100644 --- a/tools/translations/es_AR.po +++ b/tools/translations/es_AR.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-06-19 12:39+0000\n" +"PO-Revision-Date: 2016-06-30 13:09+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" +"Language-Team: Spanish (Argentina) <https://hosted.weblate.org/projects/" +"godot-engine/godot/es_AR/>\n" "Language: es_AR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -334,9 +334,10 @@ msgstr "Guardar un Archivo" msgid "Create Folder" msgstr "Crear Carpeta" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "Ruta:" @@ -536,6 +537,10 @@ msgid "Anim Add Track" msgstr "Agregar Track de Anim" #: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "Duplicar Claves de Anim" + +#: tools/editor/animation_editor.cpp msgid "Move Anim Track Up" msgstr "Subir Track de Anim" @@ -548,10 +553,6 @@ msgid "Remove Anim Track" msgstr "Quitar Track de Anim" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" -msgstr "Duplicar Claves de Anim" - -#: tools/editor/animation_editor.cpp msgid "Set Transitions to:" msgstr "Setear Transiciones a:" @@ -580,6 +581,20 @@ msgid "Anim Delete Keys" msgstr "Borrar Claves de Anim" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "Duplicar Selección" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "Duplicar Transpuesto" + +#: tools/editor/animation_editor.cpp +#, fuzzy +msgid "Remove Selection" +msgstr "Encuadrar Selección" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "Contínuo" @@ -608,15 +623,6 @@ msgid "Scale From Cursor" msgstr "Escalar Desde Cursor" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "Duplicar Selección" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "Duplicar Transpuesto" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "Ir a Paso Próximo" @@ -699,10 +705,6 @@ msgid "Change Anim Loop" msgstr "Cambiar Loop de Anim" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "Cambiar Interpolación de Loop de Anim" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "Crear Clave de Valor Tipado para Anim" @@ -743,10 +745,6 @@ msgid "Enable/Disable looping in animation." msgstr "Activar/Desactivar loopeo en la animación." #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "Activar/Desactivar interpolación al loopear animación." - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "Agregar nuevos tracks." @@ -895,7 +893,6 @@ msgid "Call" msgstr "Llamar" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -1011,10 +1008,11 @@ msgid "Method in target Node must be specified!" msgstr "El método en el Nodo objetivo debe ser especificado!" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" +msgid "Connect To Node:" msgstr "Conectar a Nodo:" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1120,8 +1118,8 @@ msgstr "Dependencias" msgid "Resource" msgstr "Recursos" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "Ruta" @@ -1210,6 +1208,100 @@ msgstr "Eliminar archivos seleccionados?" msgid "Delete" msgstr "Eliminar" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "Nombre inválido." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "Caracteres válidos:" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" +"Nombre inválido. No debe colisionar con un nombre existente de clases del " +"engine." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" +"Nombre inválido. No debe colisionar con un nombre existente de un tipo built-" +"in." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" +"Nombre inválido. No debe colisionar con un nombre de constante global " +"existente." + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid Path." +msgstr "Ruta inválida!" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "File does not exist." +msgstr "El archivo existe" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr "Ruta de Recursos" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Add AutoLoad" +msgstr "Agregar Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "Autocargar '%s' ya existe!" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "Renombrar Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "Act/Desact. AutoLoad Globals" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "Mover Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "Quitar Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "Activar" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Rearrange Autoloads" +msgstr "Renombrar Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "Nombre de Nodo:" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "Nombre" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "Singleton" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "Lista:" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "Actualizando Escena" @@ -1230,6 +1322,48 @@ msgstr "Elegí un Directorio" msgid "Choose" msgstr "Elegir" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "Retroceder" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "Avanzar" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "Subir" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "Refrescar" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "Act/Desact. Archivos Ocultos" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "Act/Desact. Favorito" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "Act/Desact. Modo" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "Foco en Ruta" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Up" +msgstr "Mover Favorito Hacia Arriba" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Down" +msgstr "Mover Favorito Hacia Abajo" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "Favoritos:" @@ -1250,14 +1384,18 @@ msgstr "No se puede acceder al subdir:" msgid "ScanSources" msgstr "EscanearFuentes" -#: tools/editor/editor_help.cpp -msgid "Search Classes" -msgstr "Buscar Clases" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "Ayuda de Búsqueda" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "Lista de Clases:" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "Buscar Clases" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "Clase:" @@ -1355,10 +1493,6 @@ msgstr "Importando:" msgid "Node From Scene" msgstr "Nodo desde Escena" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "Reimportando.." - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1485,11 +1619,34 @@ msgstr "No hay escena definida para ejecutar." #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" +"No se ha definido ninguna escena principal, ¿elegir una?\n" +"Es posible cambiarla más tarde en \"Ajustes del Proyecto\" bajo la categoria " +"'aplicacion'." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" -"No se ha definido ninguna escena principal.\n" -"Seleccioná una de \"Ajustes del Proyecto\" bajo la categoria 'aplicacion'." +"La escena '%s' seleccionada no existe, ¿seleccionar una válida?\n" +"Es posible cambiarla más tarde en \"Ajustes del Proyecto\" bajo la categoria " +"'aplicacion'." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"La escena '%s' seleccionada no es un archivo de escena, ¿seleccionar uno " +"válido?\n" +"Es posible cambiarla más tarde en \"Ajustes del Proyecto\" bajo la categoria " +"'aplicacion'." #: tools/editor/editor_node.cpp msgid "Current scene was never saved, please save it prior to running." @@ -1582,6 +1739,11 @@ msgid "" "(Unsaved changes will be lost)" msgstr "Abrir el Gestor de Proyectos? (Los cambios sin guardar se perderán)" +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Pick a Main Scene" +msgstr "Elegí una Escena Principal" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "Ugh" @@ -1608,18 +1770,14 @@ msgid "Save Layout" msgstr "Guardar Layout" #: tools/editor/editor_node.cpp -msgid "Load Layout" -msgstr "Cargar Layout" +msgid "Delete Layout" +msgstr "Eliminar Layout" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp msgid "Default" msgstr "Por Defecto" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "Eliminar Layout" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "Cambiar Pestaña de Escena" @@ -1649,6 +1807,14 @@ msgid "Distraction Free Mode" msgstr "Modo Sin Distracciones" #: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "Pestaña siguiente" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "Pestaña anterior" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "Operaciones con archivos de escena." @@ -1669,6 +1835,11 @@ msgid "Save Scene" msgstr "Guardar Escena" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "Guardar Escena" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "Cerrar Escena" @@ -1792,6 +1963,11 @@ msgid "Play custom scene" msgstr "Reproducir escena personalizada" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Play Custom Scene" +msgstr "Reproducir escena personalizada" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "Opciones de debugueo" @@ -1964,7 +2140,6 @@ msgid "Output" msgstr "Salida" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "Reimportar" @@ -2138,10 +2313,6 @@ msgstr "Agregar al Grupo" msgid "Remove from Group" msgstr "Quitar del Grupo" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "Importar Recursos" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "Sin máscaras de bits para importar!" @@ -2213,6 +2384,14 @@ msgid "No target font resource!" msgstr "Sin recurso de tipografías de destino!" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" +"Extension de archivo inválida.\n" +"Usá .fnt, por favor." + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "No se puede cargar/procesar la tipografía de origen." @@ -2346,12 +2525,6 @@ msgid "Clips" msgstr "Clips" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "Nombre" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "Comienzo(s)" @@ -2452,8 +2625,8 @@ msgid "Couldn't load post-import script:" msgstr "No se pudo cargar el script post importación:" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" -msgstr "Script para post importación inválido/roto:" +msgid "Invalid/broken script for post-import (check console):" +msgstr "Script para post importación inválido/roto (revisá la consola):" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Error running post-import script:" @@ -3120,15 +3293,13 @@ msgstr "Configurar Snap" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "Offset de Grilla:" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" -msgstr "Setp de Grilla:" +msgstr "Step de Grilla:" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Rotation Offset:" @@ -3246,7 +3417,6 @@ msgstr "Usar Snap" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "Mostrar la Grilla" @@ -3325,8 +3495,9 @@ msgid "Anchor" msgstr "Anchor" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" -msgstr "Insertar Claves (Ins)" +#, fuzzy +msgid "Insert Keys" +msgstr "Insertar Clave" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" @@ -3499,6 +3670,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "A MeshInstance le falta un Mesh!" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "El mesh no tiene una superficie de donde crear contornos(outlines)!" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "No se pudo crear el outline!" @@ -3861,17 +4036,15 @@ msgid "Clear UV" msgstr "Limpiar UV" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "Esnapear" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "Activar Snap" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "Grilla" @@ -3979,6 +4152,16 @@ msgid "Save Theme As.." msgstr "Guardar Tema Como.." #: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "Crear Script" + +#: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Previous script" +msgstr "Pestaña anterior" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "Archivo" @@ -4164,10 +4347,6 @@ msgid "Search the class hierarchy." msgstr "Buscar en la jerarquía de clases." #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "Ayuda de Búsqueda" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "Buscar en la documentación de referencia." @@ -4204,6 +4383,11 @@ msgstr "Volver a Guardar" msgid "Debugger" msgstr "Debugger" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "Vértice" @@ -4437,76 +4621,85 @@ msgid "Align with view" msgstr "Alinear con vista" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" -msgstr "Cima (Num7)" +msgid "Environment" +msgstr "Entorno" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" -msgstr "Fondo (Shift+Num7)" +msgid "Audio Listener" +msgstr "Oyente de Audio" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" -msgstr "Izquierda (Num3)" +msgid "Gizmos" +msgstr "Gizmos" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" -msgstr "Derecha (Shift+Num3)" +msgid "XForm Dialog" +msgstr "Dialogo XForm" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" -msgstr "Frente (Num1)" +msgid "No scene selected to instance!" +msgstr "Ninguna escena seleccionada a la instancia!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" -msgstr "Detrás (Shift+Num1)" +msgid "Instance at Cursor" +msgstr "Instancia en Cursor" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" -msgstr "Perspectiva (Num5)" +msgid "Could not instance scene!" +msgstr "No se pudo instanciar la escena!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" -msgstr "Ortogonal (Num5)" +msgid "Scale Mode (R)" +msgstr "Modo de Escalado (R)" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" -msgstr "Entorno" +#, fuzzy +msgid "Bottom View" +msgstr "Vista Inferior." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" -msgstr "Oyente de Audio" +#, fuzzy +msgid "Top View" +msgstr "Vista Superior." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" -msgstr "Gizmos" +#, fuzzy +msgid "Rear View" +msgstr "Vista Anterior." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" -msgstr "Slección (F)" +#, fuzzy +msgid "Front View" +msgstr "Vista Frontal." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" -msgstr "Alinear con vista (Ctrl+Shift+F)" +#, fuzzy +msgid "Left View" +msgstr "Vista Izquierda." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" -msgstr "Dialogo XForm" +#, fuzzy +msgid "Right View" +msgstr "Vista Derecha." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" -msgstr "Ninguna escena seleccionada a la instancia!" +msgid "Switch Perspective/Orthogonal view" +msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" -msgstr "Instancia en Cursor" +#, fuzzy +msgid "Insert Animation Key" +msgstr "Pegar Animación" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" -msgstr "No se pudo instanciar la escena!" +#, fuzzy +msgid "Focus Selection" +msgstr "Escalar Selección" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" -msgstr "Modo de Escalado (R)" +#, fuzzy +msgid "Align Selection With View" +msgstr "Alinear con vista" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Transform" @@ -4709,20 +4902,44 @@ msgid "StyleBox Preview:" msgstr "Vista Previa de StyleBox:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" -msgstr "Editor de Regiones de Texturas" +msgid "Snap Mode:" +msgstr "Modo Snap:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" -msgstr "Editor de Regiones de Escalado" +msgid "<None>" +msgstr "<Ninguno>" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." -msgstr "" -"Sin textura en este nodo.\n" -"Asigná una textura para poder editar la región." +msgid "Pixel Snap" +msgstr "Pixel Snap" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "Snap de Grilla" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "Auto Rebanar" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "Offset:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "Paso:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "Separación:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "Región de Textura" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "Editor de Regiones de Texturas" #: tools/editor/plugins/theme_editor_plugin.cpp msgid "Can't save theme to file:" @@ -5207,6 +5424,17 @@ msgid "Couldn't create engine.cfg in project path." msgstr "No se pudo crear engine.cfg en la ruta de proyecto." #: tools/editor/project_manager.cpp +#, fuzzy +msgid "The following files failed extraction from package:" +msgstr "" +"Los siguientes archivos son nuevos en disco.\n" +"¿Qué acción se debería tomar?:" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "Importar Proyecto Existente" @@ -5227,6 +5455,16 @@ msgid "Project Path:" msgstr "Ruta del Proyecto:" #: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install Project:" +msgstr "Proyectos Recientes:" + +#: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install" +msgstr "Instancia" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "Examinar" @@ -5393,56 +5631,6 @@ msgid "Add Translation" msgstr "Agregar Traducción" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "Nombre inválido." - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "Caracteres válidos:" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" -"Nombre inválido. No debe colisionar con un nombre existente de clases del " -"engine." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" -"Nombre inválido. No debe colisionar con un nombre existente de un tipo built-" -"in." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" -"Nombre inválido. No debe colisionar con un nombre de constante global " -"existente." - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "Autocargar '%s' ya existe!" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "Renombrar Autoload" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "Act/Desact. AutoLoad Globals" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "Agregar Autoload" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "Quitar Autoload" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "Mover Autoload" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "Quitar Traducción" @@ -5467,10 +5655,6 @@ msgid "Remove Resource Remap Option" msgstr "Remover Opción de Remapeo de Recursos" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "Activar" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "Ajustes de Proyecto (engine.cfg)" @@ -5543,18 +5727,6 @@ msgid "AutoLoad" msgstr "AutoLoad" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "Nombre de Nodo:" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "Lista:" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "Singleton" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "Plugins" @@ -5801,12 +5973,16 @@ msgid "Error duplicating scene to save it." msgstr "Error al duplicar escena para guardarla." #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "Nueva Raíz de Escena" +msgid "Edit Groups" +msgstr "Editar Grupos" + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Connections" +msgstr "Editar Conexiones" #: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" -msgstr "Heredar Escena" +msgid "Delete Node(s)" +msgstr "Eliminar Nodo(s)" #: tools/editor/scene_tree_dock.cpp msgid "Add Child Node" @@ -5821,14 +5997,6 @@ msgid "Change Type" msgstr "Cambiar Tipo" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" -msgstr "Editar Grupos" - -#: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" -msgstr "Editar Conexiones" - -#: tools/editor/scene_tree_dock.cpp msgid "Add Script" msgstr "Agregar Script" @@ -5841,10 +6009,6 @@ msgid "Save Branch as Scene" msgstr "Guardar Rama como Escena" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "Eliminar Nodo(s)" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "Agregar/Crear un Nuevo Nodo" @@ -5977,6 +6141,10 @@ msgid "Show In File Manager" msgstr "Mostrar en Gestor de Archivos" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "Reimportando.." + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "Directorio Previo" @@ -6237,6 +6405,67 @@ msgstr "Cambiar Largo de Shape Rayo" msgid "Change Notifier Extents" msgstr "Cambiar Alcances de Notificadores" +#~ msgid "Imported Resources" +#~ msgstr "Importar Recursos" + +#~ msgid "Insert Keys (Ins)" +#~ msgstr "Insertar Claves (Ins)" + +#~ msgid "Top (Num7)" +#~ msgstr "Cima (Num7)" + +#~ msgid "Bottom (Shift+Num7)" +#~ msgstr "Fondo (Shift+Num7)" + +#~ msgid "Left (Num3)" +#~ msgstr "Izquierda (Num3)" + +#~ msgid "Right (Shift+Num3)" +#~ msgstr "Derecha (Shift+Num3)" + +#~ msgid "Front (Num1)" +#~ msgstr "Frente (Num1)" + +#~ msgid "Rear (Shift+Num1)" +#~ msgstr "Detrás (Shift+Num1)" + +#~ msgid "Perspective (Num5)" +#~ msgstr "Perspectiva (Num5)" + +#~ msgid "Orthogonal (Num5)" +#~ msgstr "Ortogonal (Num5)" + +#~ msgid "Selection (F)" +#~ msgstr "Slección (F)" + +#~ msgid "Align with view (Ctrl+Shift+F)" +#~ msgstr "Alinear con vista (Ctrl+Shift+F)" + +#~ msgid "Change Anim Loop Interpolation" +#~ msgstr "Cambiar Interpolación de Loop de Anim" + +#~ msgid "Enable/Disable interpolation when looping animation." +#~ msgstr "Activar/Desactivar interpolación al loopear animación." + +#~ msgid "Load Layout" +#~ msgstr "Cargar Layout" + +#~ msgid "Scale Region Editor" +#~ msgstr "Editor de Regiones de Escalado" + +#~ msgid "" +#~ "No texture in this node.\n" +#~ "Set a texture to be able to edit region." +#~ msgstr "" +#~ "Sin textura en este nodo.\n" +#~ "Asigná una textura para poder editar la región." + +#~ msgid "New Scene Root" +#~ msgstr "Nueva Raíz de Escena" + +#~ msgid "Inherit Scene" +#~ msgstr "Heredar Escena" + #~ msgid "Binds (Extra Params):" #~ msgstr "Binds (Parametros Extra):" @@ -6270,8 +6499,5 @@ msgstr "Cambiar Alcances de Notificadores" #~ msgid "Set region_rect" #~ msgstr "Setear region_rect" -#~ msgid "Recent Projects:" -#~ msgstr "Proyectos Recientes:" - #~ msgid "Plugin List:" #~ msgstr "Lista de Plugins:" diff --git a/tools/translations/fr.po b/tools/translations/fr.po index 386a7e6170..7067ae472c 100644 --- a/tools/translations/fr.po +++ b/tools/translations/fr.po @@ -2,33 +2,35 @@ # Copyright (C) 2016 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # +# Chenebel Dorian <LoubiTek54@gmail.com>, 2016. # derderder77 <derderder77380@gmail.com>, 2016. # finkiki <specialpopol@gmx.fr>, 2016. # Hugo Locurcio <hugo.l@openmailbox.org>, 2016. # Marc <marc.gilleron@gmail.com>, 2016. +# Onyx Steinheim <thevoxelmanonyx@gmail.com>, 2016. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-06-19 13:17+0000\n" -"Last-Translator: Rémi Verschelde <akien@godotengine.org>\n" -"Language-Team: French <https://hosted.weblate.org/projects/godot-" -"engine/godot/fr/>\n" +"PO-Revision-Date: 2016-07-13 18:14+0000\n" +"Last-Translator: Chenebel Dorian <LoubiTek54@gmail.com>\n" +"Language-Team: French <https://hosted.weblate.org/projects/godot-engine/" +"godot/fr/>\n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 2.7-dev\n" +"X-Generator: Weblate 2.8-dev\n" #: modules/gdscript/gd_functions.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." -msgstr "" +msgstr "Argument invalide de type convertir(), utiliser le TYPE * constantes." #: modules/gdscript/gd_functions.cpp msgid "Not enough bytes for decoding bytes, or invalid format." -msgstr "" +msgstr "Pas assez d'octets pour les octets de décodage, ou format non valide." #: modules/gdscript/gd_functions.cpp msgid "step argument is zero!" @@ -343,9 +345,10 @@ msgstr "Enregistrer un fichier" msgid "Create Folder" msgstr "Créer un dossier" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "Chemin :" @@ -523,43 +526,43 @@ msgstr "Toute la sélection" #: tools/editor/animation_editor.cpp msgid "Move Add Key" -msgstr "Déplacer Ajouter Clé" +msgstr "Mouvement Ajouter une clé" #: tools/editor/animation_editor.cpp msgid "Anim Change Transition" -msgstr "Anim Modifier Transition" +msgstr "Animation Changer la transition" #: tools/editor/animation_editor.cpp msgid "Anim Change Transform" -msgstr "Anim Modifier Transform" +msgstr "Animation Changer la transformation" #: tools/editor/animation_editor.cpp msgid "Anim Change Value" -msgstr "Anim Modifier Valeur" +msgstr "Animation Changer la valeur" #: tools/editor/animation_editor.cpp msgid "Anim Change Call" -msgstr "Anim Modifier Appel" +msgstr "Animation Changer l'appel" #: tools/editor/animation_editor.cpp msgid "Anim Add Track" -msgstr "Anim Ajouter Piste" +msgstr "Animation Ajouter une piste" + +#: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "Animation Dupliquer les clés" #: tools/editor/animation_editor.cpp msgid "Move Anim Track Up" -msgstr "Monter Piste Anim" +msgstr "Monter la piste d'animation" #: tools/editor/animation_editor.cpp msgid "Move Anim Track Down" -msgstr "Descendre Piste Anim" +msgstr "Descendre la piste d'animation" #: tools/editor/animation_editor.cpp msgid "Remove Anim Track" -msgstr "Supprimer Piste Anim" - -#: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" -msgstr "Anim Dupliquer Clés" +msgstr "Supprimer la piste d'animation" #: tools/editor/animation_editor.cpp msgid "Set Transitions to:" @@ -567,29 +570,43 @@ msgstr "Définir les transitions à :" #: tools/editor/animation_editor.cpp msgid "Anim Track Rename" -msgstr "" +msgstr "Renommer la piste d'animation" #: tools/editor/animation_editor.cpp msgid "Anim Track Change Interpolation" -msgstr "" +msgstr "Modifier l'interpolation de la piste d'animation" #: tools/editor/animation_editor.cpp msgid "Anim Track Change Value Mode" -msgstr "" +msgstr "Modifier le mode de valeur de la piste d'animation" #: tools/editor/animation_editor.cpp msgid "Edit Node Curve" -msgstr "" +msgstr "Modifier Courbe du Noeud" #: tools/editor/animation_editor.cpp msgid "Edit Selection Curve" -msgstr "" +msgstr "Modifier la courbe de sélection" #: tools/editor/animation_editor.cpp msgid "Anim Delete Keys" +msgstr "Animation Supprimer les clés" + +#: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "Dupliquer la sélection" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" msgstr "" #: tools/editor/animation_editor.cpp +#, fuzzy +msgid "Remove Selection" +msgstr "Mettre à l'échelle la sélection" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "Continu" @@ -598,16 +615,17 @@ msgid "Discrete" msgstr "Discret" #: tools/editor/animation_editor.cpp +#, fuzzy msgid "Trigger" -msgstr "" +msgstr "Déclencheur" #: tools/editor/animation_editor.cpp msgid "Anim Add Key" -msgstr "" +msgstr "Animation Ajouter une clé" #: tools/editor/animation_editor.cpp msgid "Anim Move Keys" -msgstr "" +msgstr "Animation Déplacer les clés" #: tools/editor/animation_editor.cpp msgid "Scale Selection" @@ -615,24 +633,16 @@ msgstr "Mettre à l'échelle la sélection" #: tools/editor/animation_editor.cpp msgid "Scale From Cursor" -msgstr "" - -#: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "Dupliquer la sélection" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "" +msgstr "Echelle Du Curseur" #: tools/editor/animation_editor.cpp msgid "Goto Next Step" -msgstr "" +msgstr "Aller à l'étape suivante" #: tools/editor/animation_editor.cpp +#, fuzzy msgid "Goto Prev Step" -msgstr "" +msgstr "Revenir à l'étape précédente" #: tools/editor/animation_editor.cpp tools/editor/property_editor.cpp msgid "Linear" @@ -690,44 +700,41 @@ msgstr "Créer" #: tools/editor/animation_editor.cpp msgid "Anim Create & Insert" -msgstr "" +msgstr "Animation Créer et insérer" #: tools/editor/animation_editor.cpp msgid "Anim Insert Track & Key" -msgstr "" +msgstr "Animation Insérer une piste et une clé" #: tools/editor/animation_editor.cpp msgid "Anim Insert Key" -msgstr "" +msgstr "Animation Inserer une clé" #: tools/editor/animation_editor.cpp +#, fuzzy msgid "Change Anim Len" -msgstr "" +msgstr "Change le format de l'animation" #: tools/editor/animation_editor.cpp msgid "Change Anim Loop" -msgstr "" - -#: tools/editor/animation_editor.cpp -#, fuzzy -msgid "Change Anim Loop Interpolation" -msgstr "Changer l'interpolation de l'animation bouclée" +msgstr "Changer l'animation de la boucle" #: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" -msgstr "" +msgstr "Animation Créer une clé pour une valeur typée" #: tools/editor/animation_editor.cpp msgid "Anim Insert" -msgstr "" +msgstr "Insérer une animation" #: tools/editor/animation_editor.cpp +#, fuzzy msgid "Anim Scale Keys" -msgstr "" +msgstr "Touches de l'échelle de l'animation" #: tools/editor/animation_editor.cpp msgid "Anim Add Call Track" -msgstr "" +msgstr "Animation ajouter une piste d'appel" #: tools/editor/animation_editor.cpp msgid "Animation zoom." @@ -747,15 +754,11 @@ msgstr "Pas (s) :" #: tools/editor/animation_editor.cpp msgid "Cursor step snap (in seconds)." -msgstr "" +msgstr "Pas du curseur (en secondes)." #: tools/editor/animation_editor.cpp msgid "Enable/Disable looping in animation." -msgstr "" - -#: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "" +msgstr "Activer/Désactiver le bouclage de l'animation." #: tools/editor/animation_editor.cpp msgid "Add new tracks." @@ -842,12 +845,14 @@ msgid "Resize Array" msgstr "Redimensionner le tableau" #: tools/editor/array_property_edit.cpp +#, fuzzy msgid "Change Array Value Type" -msgstr "" +msgstr "Changer les valeurs types d'un tableau" #: tools/editor/array_property_edit.cpp +#, fuzzy msgid "Change Array Value" -msgstr "" +msgstr "Changer la valeur d'un tableau" #: tools/editor/asset_library_editor_plugin.cpp tools/editor/create_dialog.cpp #: tools/editor/editor_help.cpp tools/editor/editor_node.cpp @@ -883,11 +888,11 @@ msgstr "Support…" #: tools/editor/asset_library_editor_plugin.cpp msgid "Official" -msgstr "" +msgstr "Officiel" #: tools/editor/asset_library_editor_plugin.cpp msgid "Community" -msgstr "" +msgstr "Communauté" #: tools/editor/asset_library_editor_plugin.cpp msgid "Testing" @@ -906,7 +911,6 @@ msgid "Call" msgstr "Appel" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -1022,10 +1026,12 @@ msgid "Method in target Node must be specified!" msgstr "La méthode du nœud cible doit être spécifiée !" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" +#, fuzzy +msgid "Connect To Node:" msgstr "Connecter au nœud :" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1133,8 +1139,8 @@ msgstr "Dépendances" msgid "Resource" msgstr "Ressource" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "Chemin" @@ -1152,26 +1158,34 @@ msgstr "Éditeur de dépendances" #: tools/editor/dependency_editor.cpp msgid "Search Replacement Resource:" -msgstr "" +msgstr "Recherche une ressource de remplacement:" #: tools/editor/dependency_editor.cpp msgid "Owners Of:" msgstr "Propriétaires de :" #: tools/editor/dependency_editor.cpp +#, fuzzy msgid "" "The files being removed are required by other resources in order for them to " "work.\n" "Remove them anyway? (no undo)" msgstr "" +"Les fichiers supprimés sont requis par d'autres ressources pour leur " +"fonctionnement.\n" +"Les supprimez-vous quand même ? (aucune annulation possible)" #: tools/editor/dependency_editor.cpp +#, fuzzy msgid "Remove selected files from the project? (no undo)" msgstr "" +"Supprimer les fichiers sélectionnés dans le projet ? (aucune annulation " +"possible)" #: tools/editor/dependency_editor.cpp +#, fuzzy msgid "Error loading:" -msgstr "" +msgstr "Erreur de chargement:" #: tools/editor/dependency_editor.cpp msgid "Scene failed to load due to missing dependencies:" @@ -1221,6 +1235,100 @@ msgstr "Supprimer les fichiers sélectionnés ?" msgid "Delete" msgstr "Supprimer" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "Nom invalide." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "Caractères valides :" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" +"Nom invalide. Le nom ne doit pas rentrer en conflit avec le nom d'une classe " +"moteur existante." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" +"Nom invalide. Le nom ne doit pas rentrer en conflit avec le nom d'un type " +"intégré au moteur." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" +"Nom invalide. Le nom ne doit pas rentrer en conflit avec le nom d'une " +"constante globale." + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid Path." +msgstr "Chemin invalide !" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "File does not exist." +msgstr "Le fichier existe" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr "Chemin de la ressource" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Add AutoLoad" +msgstr "Ajouter un AutoLoad" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "L'autoload « %s » existe déjà !" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "Renommer l'AutoLoad" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "Activer les variables globales AutoLoad" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "Déplacer l'AutoLoad" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "Supprimer l'AutoLoad" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "Activer" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Rearrange Autoloads" +msgstr "Renommer l'AutoLoad" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "Nom de nœud :" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "Nom" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "Singleton" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "Liste :" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "Mise à jour de la scène" @@ -1241,6 +1349,51 @@ msgstr "Choisir un répertoire" msgid "Choose" msgstr "Choisir" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "Revenir" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "Avancer" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "Monter" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "Rafraîchir" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "Basculer les fichiers cachés" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Toggle Favorite" +msgstr "Déplacer le favori vers le haut" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Toggle Mode" +msgstr "Commenter/décommenter" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Focus Path" +msgstr "Copier le chemin" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Up" +msgstr "Déplacer le favori vers le haut" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Down" +msgstr "Déplacer le favori vers le bas" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "Favoris :" @@ -1261,14 +1414,18 @@ msgstr "Impossible d'aller dans le sous-répertoire :" msgid "ScanSources" msgstr "Scanner les sources" -#: tools/editor/editor_help.cpp -msgid "Search Classes" -msgstr "Chercher dans les classes" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "Chercher dans l'aide" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "Liste des classes :" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "Chercher dans les classes" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "Classe :" @@ -1331,8 +1488,9 @@ msgid "Error saving atlas:" msgstr "Erreur de sauvegarde de l'atlas :" #: tools/editor/editor_import_export.cpp +#, fuzzy msgid "Could not save atlas subtexture:" -msgstr "" +msgstr "Impossible d'enregistrer la sous-texture atlas :" #: tools/editor/editor_import_export.cpp msgid "Storing File:" @@ -1366,10 +1524,6 @@ msgstr "Importation :" msgid "Node From Scene" msgstr "Nœud à partir d'une scène" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "Ré-importer…" - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1495,10 +1649,38 @@ msgid "There is no defined scene to run." msgstr "Il n'y a pas de scène définie pour être lancée." #: tools/editor/editor_node.cpp +#, fuzzy msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." msgstr "" +"Aucune scène principale n'a jamais été définie, en sélectionner une?\n" +"Vous pouvez modifier ultérieurement dans 'Paramètres du projet' dans la " +"catégorie «application»." + +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"La scène sélectionnée '%s' n'existe pas, en sélectionner une valide?\n" +"Vous pouvez modifier ultérieurement dans 'Paramètres du projet' dans la " +"catégorie «application»." + +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"La scène sélectionnée '%s' n'est pas un fichier de scène, en sélectionner " +"une valide?\n" +"Vous pouvez modifier ultérieurement dans 'Paramètres du projet' dans la " +"catégorie «application»." #: tools/editor/editor_node.cpp msgid "Current scene was never saved, please save it prior to running." @@ -1595,6 +1777,11 @@ msgstr "" "Ouvrir le gestionnaire de projets ?\n" "(les modifications non sauvegardées seront perdues)" +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Pick a Main Scene" +msgstr "Scène principale" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "Oups" @@ -1621,18 +1808,14 @@ msgid "Save Layout" msgstr "Enregistrer la disposition" #: tools/editor/editor_node.cpp -msgid "Load Layout" -msgstr "Charger la disposition" +msgid "Delete Layout" +msgstr "Supprimer la disposition" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp msgid "Default" msgstr "Par défaut" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "Supprimer la disposition" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "Basculer entre les onglets de scène" @@ -1655,11 +1838,22 @@ msgstr "Aller à la scène ouverte précédemment." #: tools/editor/editor_node.cpp msgid "Fullscreen Mode" -msgstr "" +msgstr "Mode plein écran" #: tools/editor/editor_node.cpp +#, fuzzy msgid "Distraction Free Mode" -msgstr "" +msgstr "Mode distraction libre" + +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Next tab" +msgstr "Suivant" + +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Previous tab" +msgstr "Répertoire précédent" #: tools/editor/editor_node.cpp msgid "Operations with scene files." @@ -1682,6 +1876,11 @@ msgid "Save Scene" msgstr "Enregistrer la scène" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "Enregistrer la scène" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "Fermer la scène" @@ -1805,6 +2004,11 @@ msgid "Play custom scene" msgstr "Jouer une scène personnalisée" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Play Custom Scene" +msgstr "Jouer une scène personnalisée" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "Options de débogage" @@ -1813,16 +2017,21 @@ msgid "Deploy with Remote Debug" msgstr "Déployer avec le débogage distant" #: tools/editor/editor_node.cpp +#, fuzzy msgid "" "When exporting or deploying, the resulting executable will attempt to " "connect to the IP of this computer in order to be debugged." msgstr "" +"Lors de l'exportation ou du déploiement, l'exécutable tentera de se " +"connecter à l'adresse IP de cet ordinateur afin de procéder au débogage." #: tools/editor/editor_node.cpp +#, fuzzy msgid "Small Deploy with Network FS" -msgstr "" +msgstr "Petit déploiement avec le réseau FS" #: tools/editor/editor_node.cpp +#, fuzzy msgid "" "When this option is enabled, export or deploy will produce a minimal " "executable.\n" @@ -1831,50 +2040,74 @@ msgid "" "On Android, deploy will use the USB cable for faster performance. This " "option speeds up testing for games with a large footprint." msgstr "" +"Lorsque cette option est activée, l'exportation ou le déploiement produira " +"un exécutable minimal.\n" +"Le système de fichiers sera fourni à partir du projet par l'éditeur sur le " +"réseau.\n" +"Sur Androïd, le déploiement va utiliser le câble USB pour une meilleure " +"performance. Cette option accélère les tests pour les jeux avec une grande " +"empreinte." #: tools/editor/editor_node.cpp msgid "Visible Collision Shapes" msgstr "Formes de collision visibles" #: tools/editor/editor_node.cpp +#, fuzzy msgid "" "Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " "running game if this option is turned on." msgstr "" +"Les formes de collision et les noeuds de raycast (pour 2D et 3D) seront " +"visibles en jeu si cette option est activée." #: tools/editor/editor_node.cpp msgid "Visible Navigation" msgstr "Navigation visible" #: tools/editor/editor_node.cpp +#, fuzzy msgid "" "Navigation meshes and polygons will be visible on the running game if this " "option is turned on." msgstr "" +"la navigation des maillages et des polygones sera visible en jeu si cette " +"option est activée." #: tools/editor/editor_node.cpp +#, fuzzy msgid "Sync Scene Changes" -msgstr "" +msgstr "Changement de synchronisation de scène" #: tools/editor/editor_node.cpp +#, fuzzy msgid "" "When this option is turned on, any changes made to the scene in the editor " "will be replicated in the running game.\n" "When used remotely on a device, this is more efficient with network " "filesystem." msgstr "" +"Lorsque cette option est activée, toutes les modifications apportées à la " +"scène dans l'éditeur seront reproduites en jeu.\n" +"Lorsque c'est utilisé à distance sur un périphérique, c'est plus efficace " +"avec le système de fichiers réseau." #: tools/editor/editor_node.cpp msgid "Sync Script Changes" msgstr "Synchroniser les modifications de script" #: tools/editor/editor_node.cpp +#, fuzzy msgid "" "When this option is turned on, any script that is saved will be reloaded on " "the running game.\n" "When used remotely on a device, this is more efficient with network " "filesystem." msgstr "" +"Lorsque cette option est activée, chaque script enregistré sera rechargé en " +"jeu.\n" +"Lorsque c'est utilisé à distance sur un périphérique, c'est plus efficace " +"avec le système de fichiers réseau." #: tools/editor/editor_node.cpp tools/editor/plugins/spatial_editor_plugin.cpp msgid "Settings" @@ -1957,7 +2190,6 @@ msgid "Output" msgstr "Sortie" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "Ré-importer" @@ -2018,32 +2250,39 @@ msgid "Status:" msgstr "État :" #: tools/editor/editor_profiler.cpp +#, fuzzy msgid "Stop Profiling" -msgstr "" +msgstr "Arrêt du profilage" #: tools/editor/editor_profiler.cpp +#, fuzzy msgid "Start Profiling" -msgstr "" +msgstr "Démarrage du profilage" #: tools/editor/editor_profiler.cpp +#, fuzzy msgid "Measure:" -msgstr "" +msgstr "Quantité:" #: tools/editor/editor_profiler.cpp +#, fuzzy msgid "Frame Time (sec)" -msgstr "" +msgstr "Image par seconde" #: tools/editor/editor_profiler.cpp +#, fuzzy msgid "Average Time (sec)" -msgstr "" +msgstr "Temps moyen (sec)" #: tools/editor/editor_profiler.cpp +#, fuzzy msgid "Frame %" -msgstr "" +msgstr "Image %" #: tools/editor/editor_profiler.cpp +#, fuzzy msgid "Fixed Frame %" -msgstr "" +msgstr "Cadre prédéfini %" #: tools/editor/editor_profiler.cpp tools/editor/script_editor_debugger.cpp msgid "Time:" @@ -2054,12 +2293,14 @@ msgid "Inclusive" msgstr "Inclusif" #: tools/editor/editor_profiler.cpp +#, fuzzy msgid "Self" -msgstr "" +msgstr "Soi-même" #: tools/editor/editor_profiler.cpp +#, fuzzy msgid "Frame #:" -msgstr "" +msgstr "Image #:" #: tools/editor/editor_reimport_dialog.cpp msgid "Please wait for scan to complete." @@ -2131,10 +2372,6 @@ msgstr "Ajouter au groupe" msgid "Remove from Group" msgstr "Supprimer du groupe" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "Ressources importées" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "Pas de masques de bits à importer !" @@ -2195,8 +2432,9 @@ msgid "Accept" msgstr "Accepter" #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#, fuzzy msgid "Bit Mask" -msgstr "" +msgstr "Masque de bits" #: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "No source font file!" @@ -2207,6 +2445,14 @@ msgid "No target font resource!" msgstr "Pas de ressource de police de destination !" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" +"Extension de fichier non valide.\n" +"Veuillez utiliser .fnt." + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "Impossible de charger ou traiter la police source." @@ -2281,7 +2527,7 @@ msgstr "Maillage(s) source :" #: tools/editor/io_plugins/editor_mesh_import_plugin.cpp #: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Mesh" -msgstr "" +msgstr "Maillage" #: tools/editor/io_plugins/editor_mesh_import_plugin.cpp msgid "Surface %d" @@ -2340,12 +2586,6 @@ msgid "Clips" msgstr "Séquences" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "Nom" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "Départ(s)" @@ -2403,8 +2643,9 @@ msgid "Post-Process Script:" msgstr "Script de post-traitement :" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#, fuzzy msgid "Custom Root Node Type:" -msgstr "" +msgstr "Type de racine de nœud personnalisé:" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Auto" @@ -2446,7 +2687,8 @@ msgid "Couldn't load post-import script:" msgstr "Impossible de charger le script de post-importation :" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" +#, fuzzy +msgid "Invalid/broken script for post-import (check console):" msgstr "Script de post-importation invalide ou cassé :" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -2707,20 +2949,22 @@ msgid "Translation" msgstr "Traduction" #: tools/editor/multi_node_edit.cpp +#, fuzzy msgid "MultiNode Set" -msgstr "" +msgstr "Réglage multi-nœuds" #: tools/editor/node_dock.cpp msgid "Node" -msgstr "" +msgstr "Nœud" #: tools/editor/node_dock.cpp msgid "Groups" msgstr "Groupes" #: tools/editor/node_dock.cpp +#, fuzzy msgid "Select a Node to edit Signals and Groups." -msgstr "" +msgstr "Sélectionnez un nœud pour modifier des signaux et des groupes." #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Toggle Autoplay" @@ -2762,12 +3006,14 @@ msgid "Add Animation" msgstr "Ajouter une animation" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Blend Next Changed" -msgstr "" +msgstr "Mélange Suivant Changé" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Change Blend Time" -msgstr "" +msgstr "Changer le temps de mélange" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Load Animation" @@ -2798,36 +3044,41 @@ msgid "ERROR: No animation to edit!" msgstr "ERREUR : Pas d'animation à modifier !" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Play selected animation backwards from current pos. (A)" -msgstr "" +msgstr "Lire l'animation sélectionnée à rebours de la position actuelle. (A)" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Play selected animation backwards from end. (Shift+A)" -msgstr "" +msgstr "Lire l'animation sélectionnée à rebours de la fin. (Maj + A)" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Stop animation playback. (S)" msgstr "Arrêter la lecture de l'animation. (S)" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Play selected animation from start. (Shift+D)" -msgstr "" +msgstr "Lire l'animation sélectionnée depuis le début. (Maj + D)" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Play selected animation from current pos. (D)" -msgstr "" +msgstr "Lire l'animation sélectionnée à sa position actuelle. (D)" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Animation position (in seconds)." msgstr "Position de l'animation (en secondes)." #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Scale animation playback globally for the node." -msgstr "" +msgstr "Echelle de lecture de l'animation dans sa globalité pour le noeud." #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Create new animation in player." -msgstr "" +msgstr "Créer une nouvelle animation dans le lecteur." #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Load animation from disk." @@ -2854,8 +3105,9 @@ msgid "Autoplay on Load" msgstr "Lecture automatique au chargement" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Edit Target Blend Times" -msgstr "" +msgstr "Modifier les temps de mélange des cibles" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Animation Tools" @@ -2863,7 +3115,7 @@ msgstr "Outils d'animation" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Copy Animation" -msgstr "" +msgstr "Copier l'animation" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Create New Animation" @@ -2882,16 +3134,18 @@ msgid "Error!" msgstr "Erreur !" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Blend Times:" -msgstr "" +msgstr "Temps de mélange" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Next (Auto Queue):" -msgstr "" +msgstr "Suivant (file d'attente automatique):" #: tools/editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy msgid "Cross-Animation Blend Times" -msgstr "" +msgstr "Temps de mélange des Cross-animation" #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp @@ -2925,15 +3179,15 @@ msgstr "Mixer" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Auto Restart:" -msgstr "" +msgstr "Redémarrage automatique:" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Restart (s):" -msgstr "" +msgstr "Redémarrer (s):" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Random Restart (s):" -msgstr "" +msgstr "Redémarrage aléatoire (s):" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Start!" @@ -3111,13 +3365,11 @@ msgstr "Configurer la grille" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "Décalage de la grille :" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "Pas de la grille :" @@ -3233,7 +3485,6 @@ msgstr "Aligner sur la grille" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "Afficher la grille" @@ -3312,8 +3563,9 @@ msgid "Anchor" msgstr "Ancre" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" -msgstr "" +#, fuzzy +msgid "Insert Keys" +msgstr "Animation Inserer une clé" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" @@ -3486,6 +3738,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "Le MeshInstance n'a pas de maillage !" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "Impossible de créer le contour !" @@ -3847,17 +4103,15 @@ msgid "Clear UV" msgstr "Effacer l'UV" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "Aligner" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "Activer l'alignement" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "Grille" @@ -3965,6 +4219,16 @@ msgid "Save Theme As.." msgstr "Enregistrer le thème sous…" #: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "Créer un script" + +#: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Previous script" +msgstr "Répertoire précédent" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "Fichier" @@ -4054,7 +4318,7 @@ msgstr "Trouver le suivant" #: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Find Previous" -msgstr "" +msgstr "trouver précédente" #: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/plugins/shader_editor_plugin.cpp @@ -4151,10 +4415,6 @@ msgid "Search the class hierarchy." msgstr "Cherche dans la hiérarchie des classes." #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "Chercher dans l'aide" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "Cherche dans la documentation de référence." @@ -4191,6 +4451,11 @@ msgstr "Ré-enregistrer" msgid "Debugger" msgstr "Débogueur" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "Vertex" @@ -4424,76 +4689,85 @@ msgid "Align with view" msgstr "Aligner avec la vue" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" -msgstr "Dessus (Pavé num. 7)" +msgid "Environment" +msgstr "Environnement" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" -msgstr "Dessous (Maj+Pavé num. 7)" +msgid "Audio Listener" +msgstr "Écouteur audio" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" -msgstr "Gauche (Pavé num. 3)" +msgid "Gizmos" +msgstr "Gizmos" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" -msgstr "Droite (Maj+Pavé num. 3)" +msgid "XForm Dialog" +msgstr "Dialogue XForm" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" -msgstr "Devant (Pavé num. 1)" +msgid "No scene selected to instance!" +msgstr "Pas de scène sélectionnée à instancier !" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" -msgstr "Arrière (Maj+Pavé num. 1)" +msgid "Instance at Cursor" +msgstr "Instancier sur le cursuer" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" -msgstr "Perspective (Pavé num. 5)" +msgid "Could not instance scene!" +msgstr "Impossible d'instancier la scène !" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" -msgstr "Orthogonale (Pavé num. 5)" +msgid "Scale Mode (R)" +msgstr "Mode de mise à l'échelle (R)" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" -msgstr "Environnement" +#, fuzzy +msgid "Bottom View" +msgstr "Vue de dessous." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" -msgstr "Écouteur audio" +#, fuzzy +msgid "Top View" +msgstr "Vue de dessus." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" -msgstr "Gizmos" +#, fuzzy +msgid "Rear View" +msgstr "Vue arrière." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" -msgstr "Sélection (F)" +#, fuzzy +msgid "Front View" +msgstr "Vue avant." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" -msgstr "Aligner avec la vue (Ctrl+Maj+F)" +#, fuzzy +msgid "Left View" +msgstr "Vue de gauche." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" -msgstr "Dialogue XForm" +#, fuzzy +msgid "Right View" +msgstr "Vue de droite." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" -msgstr "Pas de scène sélectionnée à instancier !" +msgid "Switch Perspective/Orthogonal view" +msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" -msgstr "Instancier sur le cursuer" +#, fuzzy +msgid "Insert Animation Key" +msgstr "Coller l'animation" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" -msgstr "Impossible d'instancier la scène !" +#, fuzzy +msgid "Focus Selection" +msgstr "Mettre à l'échelle la sélection" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" -msgstr "Mode de mise à l'échelle (R)" +#, fuzzy +msgid "Align Selection With View" +msgstr "Aligner avec la vue" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Transform" @@ -4696,19 +4970,52 @@ msgid "StyleBox Preview:" msgstr "Aperçu de la StyleBox :" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" -msgstr "Éditeur de région de texture" +#, fuzzy +msgid "Snap Mode:" +msgstr "Mode d'exécution :" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" +msgid "<None>" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." +#, fuzzy +msgid "Pixel Snap" +msgstr "Aligner au pixel près" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Grid Snap" +msgstr "Pas de la grille :" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" msgstr "" +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Offset:" +msgstr "Décalage de la grille :" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Step:" +msgstr "Pas (s) :" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Separation:" +msgstr "Sections :" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Texture Region" +msgstr "Éditeur de région de texture" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "Éditeur de région de texture" + #: tools/editor/plugins/theme_editor_plugin.cpp msgid "Can't save theme to file:" msgstr "Impossible d'enregistrer le thème dans le fichier :" @@ -5194,6 +5501,17 @@ msgstr "" "Impossible de créer le fichier engine.cfg dans le répertoire du projet." #: tools/editor/project_manager.cpp +#, fuzzy +msgid "The following files failed extraction from package:" +msgstr "" +"Les fichiers suivants sont plus récents sur le disque.\n" +"Quelle action doit être prise ? :" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "Importer un projet existant" @@ -5214,6 +5532,16 @@ msgid "Project Path:" msgstr "Chemin du projet :" #: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install Project:" +msgstr "Projets récents :" + +#: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install" +msgstr "Instance" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "Parcourir" @@ -5379,56 +5707,6 @@ msgid "Add Translation" msgstr "Ajouter une traduction" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "Nom invalide." - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "Caractères valides :" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" -"Nom invalide. Le nom ne doit pas rentrer en conflit avec le nom d'une classe " -"moteur existante." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" -"Nom invalide. Le nom ne doit pas rentrer en conflit avec le nom d'un type " -"intégré au moteur." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" -"Nom invalide. Le nom ne doit pas rentrer en conflit avec le nom d'une " -"constante globale." - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "L'autoload « %s » existe déjà !" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "Renommer l'AutoLoad" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "Activer les variables globales AutoLoad" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "Ajouter un AutoLoad" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "Supprimer l'AutoLoad" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "Déplacer l'AutoLoad" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "Supprimer la traduction" @@ -5453,10 +5731,6 @@ msgid "Remove Resource Remap Option" msgstr "" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "Activer" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "Paramètres du projet (engine.cfg)" @@ -5529,18 +5803,6 @@ msgid "AutoLoad" msgstr "AutoLoad" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "Nom de nœud :" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "Liste :" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "Singleton" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "Extensions" @@ -5783,12 +6045,16 @@ msgid "Error duplicating scene to save it." msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "Nouvelle racine de la scène" +msgid "Edit Groups" +msgstr "Modifier les groupes" #: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" -msgstr "Hériter la scène" +msgid "Edit Connections" +msgstr "Modifier les connexions" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "Supprimer nœud(s)" #: tools/editor/scene_tree_dock.cpp msgid "Add Child Node" @@ -5803,14 +6069,6 @@ msgid "Change Type" msgstr "Changer le type" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" -msgstr "Modifier les groupes" - -#: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" -msgstr "Modifier les connexions" - -#: tools/editor/scene_tree_dock.cpp msgid "Add Script" msgstr "Ajouter un script" @@ -5823,10 +6081,6 @@ msgid "Save Branch as Scene" msgstr "Sauvegarder la branche comme scène" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "Supprimer nœud(s)" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "Ajouter un nouveau nœud" @@ -5959,6 +6213,10 @@ msgid "Show In File Manager" msgstr "Montrer dans le gestionnaire de fichiers" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "Ré-importer…" + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "Répertoire précédent" @@ -6218,6 +6476,54 @@ msgstr "Changer la longueur d'une forme en rayon" msgid "Change Notifier Extents" msgstr "Changer les extents d'un notificateur" +#~ msgid "Imported Resources" +#~ msgstr "Ressources importées" + +#~ msgid "Top (Num7)" +#~ msgstr "Dessus (Pavé num. 7)" + +#~ msgid "Bottom (Shift+Num7)" +#~ msgstr "Dessous (Maj+Pavé num. 7)" + +#~ msgid "Left (Num3)" +#~ msgstr "Gauche (Pavé num. 3)" + +#~ msgid "Right (Shift+Num3)" +#~ msgstr "Droite (Maj+Pavé num. 3)" + +#~ msgid "Front (Num1)" +#~ msgstr "Devant (Pavé num. 1)" + +#~ msgid "Rear (Shift+Num1)" +#~ msgstr "Arrière (Maj+Pavé num. 1)" + +#~ msgid "Perspective (Num5)" +#~ msgstr "Perspective (Pavé num. 5)" + +#~ msgid "Orthogonal (Num5)" +#~ msgstr "Orthogonale (Pavé num. 5)" + +#~ msgid "Selection (F)" +#~ msgstr "Sélection (F)" + +#~ msgid "Align with view (Ctrl+Shift+F)" +#~ msgstr "Aligner avec la vue (Ctrl+Maj+F)" + +#~ msgid "Change Anim Loop Interpolation" +#~ msgstr "Changer l'interpolation de la boucle d'animation" + +#~ msgid "Enable/Disable interpolation when looping animation." +#~ msgstr "Activer/Désactiver l'interpolation lors de la boucle d'animation." + +#~ msgid "Load Layout" +#~ msgstr "Charger la disposition" + +#~ msgid "New Scene Root" +#~ msgstr "Nouvelle racine de la scène" + +#~ msgid "Inherit Scene" +#~ msgstr "Hériter la scène" + #~ msgid "Method In Node:" #~ msgstr "Méthode dans le nœud :" @@ -6242,9 +6548,6 @@ msgstr "Changer les extents d'un notificateur" #~ msgid "Node Group(s)" #~ msgstr "Groupes de nœuds" -#~ msgid "Recent Projects:" -#~ msgstr "Projets récents :" - #~ msgid "Plugin List:" #~ msgstr "Liste d'extensions :" @@ -6266,12 +6569,6 @@ msgstr "Changer les extents d'un notificateur" #~ msgid "Next Time:" #~ msgstr "Les prochaines fois :" -#~ msgid "Move Favorite Up" -#~ msgstr "Déplacer le favori vers le haut" - -#~ msgid "Move Favorite Down" -#~ msgstr "Déplacer le favori vers le bas" - #~ msgid "%d frames" #~ msgstr "%d images" diff --git a/tools/translations/it.po b/tools/translations/it.po index dfb0eb522a..83c9d85807 100644 --- a/tools/translations/it.po +++ b/tools/translations/it.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-06-19 09:39+0000\n" +"PO-Revision-Date: 2016-07-12 23:11+0000\n" "Last-Translator: Dario Bonfanti <bonfi.96@hotmail.it>\n" "Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/" "godot/it/>\n" @@ -17,49 +17,50 @@ 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 2.7-dev\n" +"X-Generator: Weblate 2.8-dev\n" #: modules/gdscript/gd_functions.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." -msgstr "" +msgstr "Argomento tipo invalido per convert(), usare le costanti TYPE_*." #: modules/gdscript/gd_functions.cpp msgid "Not enough bytes for decoding bytes, or invalid format." msgstr "" +"Non vi sono abbastanza bytes per i bytes di decodifica, oppure formato " +"invalido." #: modules/gdscript/gd_functions.cpp msgid "step argument is zero!" -msgstr "" +msgstr "step argument è zero!" #: modules/gdscript/gd_functions.cpp -#, fuzzy msgid "Not a script with an instance" -msgstr "Nessuna scena da istanziare selezionata!" +msgstr "Non è uno script con un istanza" #: modules/gdscript/gd_functions.cpp msgid "Not based on a script" -msgstr "" +msgstr "Non si basa su uno script" #: modules/gdscript/gd_functions.cpp -#, fuzzy msgid "Not based on a resource file" -msgstr "Nessuna risorsa font di destinazione!" +msgstr "Non si basa su un file risorsa" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (missing @path)" -msgstr "" +msgstr "Istanza invalida formato dizionario (manca @path)" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (can't load script at @path)" msgstr "" +"Istanza invalida formato dizionario (impossibile caricare script in @path)" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (invalid script at @path)" -msgstr "" +msgstr "Istanza invalida formato dizionario (script invalido in @path)" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary (invalid subclasses)" -msgstr "" +msgstr "Istanza invalida formato dizionario (sottoclassi invalide)" #: scene/2d/animated_sprite.cpp msgid "" @@ -343,9 +344,10 @@ msgstr "Salva un File" msgid "Create Folder" msgstr "Crea Cartella" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "Percorso:" @@ -545,6 +547,10 @@ msgid "Anim Add Track" msgstr "Anim Aggiungi Traccia" #: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "Duplica Key Animazione" + +#: tools/editor/animation_editor.cpp msgid "Move Anim Track Up" msgstr "Muovi Traccia Animazione Su" @@ -557,10 +563,6 @@ msgid "Remove Anim Track" msgstr "Rimuovi Traccia Animazione" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" -msgstr "Duplica Key Animazione" - -#: tools/editor/animation_editor.cpp msgid "Set Transitions to:" msgstr "Imposta Transizione a:" @@ -589,18 +591,30 @@ msgid "Anim Delete Keys" msgstr "Anim Elimina Key" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "Duplica Selezione" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "Duplica Transposto" + +#: tools/editor/animation_editor.cpp #, fuzzy +msgid "Remove Selection" +msgstr "Selezione Frame" + +#: tools/editor/animation_editor.cpp msgid "Continuous" -msgstr "Continua" +msgstr "Continuo" #: tools/editor/animation_editor.cpp -#, fuzzy msgid "Discrete" -msgstr "Disconnetti" +msgstr "Discreto" #: tools/editor/animation_editor.cpp msgid "Trigger" -msgstr "" +msgstr "Attivazione" #: tools/editor/animation_editor.cpp msgid "Anim Add Key" @@ -619,15 +633,6 @@ msgid "Scale From Cursor" msgstr "Scala da Cursore" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "Duplica Selezione" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "Duplica Transposto" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "Vai a Step Successivo" @@ -710,11 +715,6 @@ msgid "Change Anim Loop" msgstr "Cambia Loop Animazione" #: tools/editor/animation_editor.cpp -#, fuzzy -msgid "Change Anim Loop Interpolation" -msgstr "Cambia Loop Animazione" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "Anim Crea Typed Value Key" @@ -755,11 +755,6 @@ msgid "Enable/Disable looping in animation." msgstr "Attiva/Disattiva loop animazione." #: tools/editor/animation_editor.cpp -#, fuzzy -msgid "Enable/Disable interpolation when looping animation." -msgstr "Attiva/Disattiva loop animazione." - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "Aggiungi nuova traccia." @@ -908,7 +903,6 @@ msgid "Call" msgstr "Chiama" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -1024,11 +1018,11 @@ msgid "Method in target Node must be specified!" msgstr "Il Metodo nel nodo di target deve essere specificato!" #: tools/editor/connections_dialog.cpp -#, fuzzy -msgid "Conect To Node:" -msgstr "Collega A Nodo:" +msgid "Connect To Node:" +msgstr "Connetti A Nodo:" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1044,17 +1038,15 @@ msgstr "Rimuovi" #: tools/editor/connections_dialog.cpp msgid "Add Extra Call Argument:" -msgstr "" +msgstr "Aggiungi Argomento Extra di Chiamata:" #: tools/editor/connections_dialog.cpp -#, fuzzy msgid "Extra Call Arguments:" -msgstr "Argomenti:" +msgstr "Argomenti Chiamata Extra:" #: tools/editor/connections_dialog.cpp -#, fuzzy msgid "Path to Node:" -msgstr "Percorso Al Nodo:" +msgstr "Percorso a Nodo:" #: tools/editor/connections_dialog.cpp msgid "Make Function" @@ -1077,9 +1069,8 @@ msgid "Connect '%s' to '%s'" msgstr "Connetti '%s' a '%s'" #: tools/editor/connections_dialog.cpp -#, fuzzy msgid "Connecting Signal:" -msgstr "Connessioni:" +msgstr "Connessione Segnali:" #: tools/editor/connections_dialog.cpp msgid "Create Subscription" @@ -1139,8 +1130,8 @@ msgstr "Dipendenze" msgid "Resource" msgstr "Risorsa" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "Percorso" @@ -1216,7 +1207,7 @@ msgstr "Risorse Senza Proprietà Esplicita:" #: tools/editor/dependency_editor.cpp tools/editor/editor_node.cpp msgid "Orphan Resource Explorer" -msgstr "Explorer Risorse Orfano" +msgstr "Esplora Risorse Orfane" #: tools/editor/dependency_editor.cpp msgid "Delete selected files?" @@ -1228,6 +1219,100 @@ msgstr "Eliminare i file selezionati?" msgid "Delete" msgstr "Elimina" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "Nome Invalido." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "Caratteri validi:" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" +"Nome invalido. Non deve essere in conflitto con un nome di classe di engine " +"esistente." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" +"Nome invalido. Non deve essere in conflitto con un nome di tipo built-in " +"esistente." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" +"Nome invalido. Non deve essere in conflitto con un nome di una costante " +"globale esistente." + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid Path." +msgstr "Percorso Invalido!" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "File does not exist." +msgstr "File esistente" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr "Percorso Risosa" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Add AutoLoad" +msgstr "Aggiungi Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "Autoload '%s' esiste già!" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "Rinomina Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "Abilita AutoLoad Globals" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "Sposta Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "Rimuovi Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "Abilita" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Rearrange Autoloads" +msgstr "Rinomina Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "Nome Nodo:" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "Nome" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "Singleton" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "Lista:" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "Aggiornamento Scena" @@ -1248,6 +1333,48 @@ msgstr "Scegli una Directory" msgid "Choose" msgstr "Scegli" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "Torna Indietro" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "Vai Avanti" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "Vai Su" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "Aggiorna" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "Abilita File Nascosti" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "Attiva Preferito" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "Modalità Attivazione" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "Percorso Di Fuoco" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Up" +msgstr "Modalità Preferito Su" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Down" +msgstr "Modalità Preferito Giù" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "Preferiti:" @@ -1268,14 +1395,18 @@ msgstr "Impossibile accedere alla subdirectory:" msgid "ScanSources" msgstr "ScansionaSorgenti" -#: tools/editor/editor_help.cpp -msgid "Search Classes" -msgstr "Cerca Classi" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "Cerca Aiuto" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "Lista Classi:" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "Cerca Classi" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "Classe:" @@ -1373,10 +1504,6 @@ msgstr "Importo:" msgid "Node From Scene" msgstr "Nodo Da Scena" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "Re-Importa.." - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1503,12 +1630,33 @@ msgstr "Non c'è nessuna scena definita da eseguire." #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" +"Nessuna scena principale è mai stata definita, selezionarne una?\n" +"Puoi cambiarla successivamente da \"Impostazioni Progetto\" sotto la " +"categoria 'applicazioni'." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" -"Nessuna scena principale è mai stata definita.\n" -"Selezionane una da \"Impostazioni Progetto\" sotto la categoria " -"'applicazioni'." +"La scena selezionata '%s' non esiste, sceglierne una valida?\n" +"Puoi cambiarla successivamente da \"Impostazioni Progetto\" sotto la " +"categoria 'applicazioni'." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"Las cena selezionata '%s non è un file scena, sceglierne una valida?\n" +"Puoi cambiarla successivamente da \"Impostazioni Progetto\" sotto la " +"categoria 'applicazioni'." #: tools/editor/editor_node.cpp msgid "Current scene was never saved, please save it prior to running." @@ -1604,6 +1752,11 @@ msgstr "" "Aprire la Gestione Progetti?\n" "(I cambiamenti non salvati saranno persi)" +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Pick a Main Scene" +msgstr "Scegli una Scena Principale" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "Ugh" @@ -1630,18 +1783,14 @@ msgid "Save Layout" msgstr "Salva layout" #: tools/editor/editor_node.cpp -msgid "Load Layout" -msgstr "Carica Layout" +msgid "Delete Layout" +msgstr "Elimina Layout" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp msgid "Default" msgstr "Default" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "Elimina Layout" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "Cambia Tab di Scena" @@ -1664,11 +1813,19 @@ msgstr "Vai alla scena precedentemente aperta." #: tools/editor/editor_node.cpp msgid "Fullscreen Mode" -msgstr "" +msgstr "Modalità Fullscreen" #: tools/editor/editor_node.cpp msgid "Distraction Free Mode" -msgstr "" +msgstr "Modalità Senza Distrazioni" + +#: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "Scheda successiva" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "Scheda precedente" #: tools/editor/editor_node.cpp msgid "Operations with scene files." @@ -1691,6 +1848,11 @@ msgid "Save Scene" msgstr "Salva Scena" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "Salva Scena" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "Chiudi Scena" @@ -1814,6 +1976,11 @@ msgid "Play custom scene" msgstr "Esegui scena personalizzata" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Play Custom Scene" +msgstr "Esegui scena personalizzata" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "Opzioni di Debug" @@ -1985,7 +2152,6 @@ msgid "Output" msgstr "Output" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "Re-Importa" @@ -2159,10 +2325,6 @@ msgstr "Aggiungi a Gruppo" msgid "Remove from Group" msgstr "Rimuovi da Gruppo" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "Risorse Importate" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "Nessuna bit mask da importare!" @@ -2235,6 +2397,14 @@ msgid "No target font resource!" msgstr "Nessuna risorsa font di destinazione!" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" +"Estensione file invalida.\n" +"Si prega di usare .fnt." + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "Impossibile caricare/processare il font sorgente." @@ -2368,12 +2538,6 @@ msgid "Clips" msgstr "Clips" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "Nome" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "Inizio(i)" @@ -2473,8 +2637,8 @@ msgid "Couldn't load post-import script:" msgstr "Impossibile caricare lo script di post-import:" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" -msgstr "Script di post-import invalido/non funzionante:" +msgid "Invalid/broken script for post-import (check console):" +msgstr "Script di post-import invalido/non funzionante (controllare console):" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Error running post-import script:" @@ -2858,9 +3022,8 @@ msgid "Create new animation in player." msgstr "Crea nuova animazione nel player." #: tools/editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Load animation from disk." -msgstr "Carica un'animazione da disco." +msgstr "Carica animazione da disco." #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Load an animation from disk." @@ -2871,9 +3034,8 @@ msgid "Save the current animation" msgstr "Salva l'animazione corrente" #: tools/editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Save As" -msgstr "Salva Come.." +msgstr "Salva Come" #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Display list of animations in player." @@ -3141,13 +3303,11 @@ msgstr "Configura Snap" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "Offset Griglia:" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "Step Griglia:" @@ -3267,7 +3427,6 @@ msgstr "Usa lo Snap" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "Mostra Griglia" @@ -3346,8 +3505,9 @@ msgid "Anchor" msgstr "Ancora" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" -msgstr "Inserisci Keys (Ins)" +#, fuzzy +msgid "Insert Keys" +msgstr "Inserisci Key" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" @@ -3520,6 +3680,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "MeshInstance manca di una Mesh!" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "La mesh non ha superficie dalla quale creare un'outline!" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "Impossiblile creare outline!" @@ -3883,17 +4047,15 @@ msgid "Clear UV" msgstr "Cancella UV" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "Snap" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "Abilita Snap" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "Griglia" @@ -4001,6 +4163,16 @@ msgid "Save Theme As.." msgstr "Salva Tema Come.." #: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "Crea Script" + +#: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Previous script" +msgstr "Scheda precedente" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "File" @@ -4073,9 +4245,8 @@ msgid "Auto Indent" msgstr "Auto Indenta" #: tools/editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Soft Reload Script" -msgstr "Ricarica Tool Script" +msgstr "Ricarica Script Soft" #: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/plugins/shader_editor_plugin.cpp @@ -4167,9 +4338,8 @@ msgid "Help" msgstr "Aiuto" #: tools/editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Contextual Help" -msgstr "Contestuale" +msgstr "Aiuto Contestuale" #: tools/editor/plugins/script_editor_plugin.cpp msgid "Tutorials" @@ -4188,10 +4358,6 @@ msgid "Search the class hierarchy." msgstr "Cerca nella gerarchia delle classi." #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "Cerca Aiuto" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "Cerca Riferimenti nella documentazione." @@ -4228,6 +4394,11 @@ msgstr "Risalva" msgid "Debugger" msgstr "Debugger" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "Vertice" @@ -4461,76 +4632,85 @@ msgid "Align with view" msgstr "Allinea a vista" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" -msgstr "Alto (Num7)" +msgid "Environment" +msgstr "Ambientazione" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" -msgstr "Basso (Shift+Num7)" +msgid "Audio Listener" +msgstr "Audio Listener" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" -msgstr "Sinistra (Num3)" +msgid "Gizmos" +msgstr "Gizmos" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" -msgstr "Destra (Shift+Num3)" +msgid "XForm Dialog" +msgstr "Finestra di XForm" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" -msgstr "Fronte (Num1)" +msgid "No scene selected to instance!" +msgstr "Nessuna scena da istanziare selezionata!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" -msgstr "Retro (Shift+Num1)" +msgid "Instance at Cursor" +msgstr "Istanzia a Cursore" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" -msgstr "Prospettiva (Num5)" +msgid "Could not instance scene!" +msgstr "Impossibile istanziare la scena!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" -msgstr "Ortogonale (Num5)" +msgid "Scale Mode (R)" +msgstr "Modalità Scala (R)" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" -msgstr "Ambientazione" +#, fuzzy +msgid "Bottom View" +msgstr "Vista dal Basso." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" -msgstr "Audio Listener" +#, fuzzy +msgid "Top View" +msgstr "Vista dall'Alto." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" -msgstr "Gizmos" +#, fuzzy +msgid "Rear View" +msgstr "Vista dal Retro." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" -msgstr "Selezione (F)" +#, fuzzy +msgid "Front View" +msgstr "Vista Frontale." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" -msgstr "Allinea con vista (Ctrl+Shift+F)" +#, fuzzy +msgid "Left View" +msgstr "Vista Sinistra." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" -msgstr "Finestra di XForm" +#, fuzzy +msgid "Right View" +msgstr "Vista Destra." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" -msgstr "Nessuna scena da istanziare selezionata!" +msgid "Switch Perspective/Orthogonal view" +msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" -msgstr "Istanzia a Cursore" +#, fuzzy +msgid "Insert Animation Key" +msgstr "Incolla Animazione" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" -msgstr "Impossibile istanziare la scena!" +#, fuzzy +msgid "Focus Selection" +msgstr "Scala Selezione" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" -msgstr "Modalità Scala (R)" +#, fuzzy +msgid "Align Selection With View" +msgstr "Allinea a vista" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Transform" @@ -4733,20 +4913,44 @@ msgid "StyleBox Preview:" msgstr "Anteprima StyleBox:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" -msgstr "Editor Regioni Texture" +msgid "Snap Mode:" +msgstr "Modalità Snap:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" -msgstr "Scala Editor Regioni" +msgid "<None>" +msgstr "<Nessuno>" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." -msgstr "" -"Nessuna texture in questo nodo.\n" -"Imposta una texture per poter modificare la regione." +msgid "Pixel Snap" +msgstr "Snap a Pixel" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "Snap Griglia" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "Auto Divisione" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "Offset:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "Step:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "Separazione:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "Regione Texture" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "Editor Regioni Texture" #: tools/editor/plugins/theme_editor_plugin.cpp msgid "Can't save theme to file:" @@ -4774,14 +4978,12 @@ msgid "Remove Class Items" msgstr "Rimuovi Elementi di Classe" #: tools/editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Create Empty Template" -msgstr "Crea Template" +msgstr "Crea Template Vuota" #: tools/editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Create Empty Editor Template" -msgstr "Crea Template" +msgstr "Crea Template Editor Vuota" #: tools/editor/plugins/theme_editor_plugin.cpp msgid "CheckBox Radio1" @@ -4867,28 +5069,24 @@ msgid "Erase TileMap" msgstr "Cancella TileMap" #: tools/editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Erase selection" -msgstr "Elimina Selezione" +msgstr "Cancella selezione" #: tools/editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Find tile" -msgstr "Trova Successivo" +msgstr "Trova tile" #: tools/editor/plugins/tile_map_editor_plugin.cpp msgid "Transpose" msgstr "Trasponi" #: tools/editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Mirror X" -msgstr "Specchia X (A)" +msgstr "Specchia X" #: tools/editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Mirror Y" -msgstr "Specchia Y (A)" +msgstr "Specchia Y" #: tools/editor/plugins/tile_map_editor_plugin.cpp msgid "Bucket" @@ -5237,6 +5435,17 @@ msgid "Couldn't create engine.cfg in project path." msgstr "Impossibile creare engine.cfg nel percorso di progetto." #: tools/editor/project_manager.cpp +#, fuzzy +msgid "The following files failed extraction from package:" +msgstr "" +"I file seguenti sono più recenti su disco.\n" +"Che azione deve essere intrapresa?:" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "Importa Progetto Esistente" @@ -5257,6 +5466,16 @@ msgid "Project Path:" msgstr "Percorso Progetto:" #: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install Project:" +msgstr "Progetti Recenti:" + +#: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install" +msgstr "Istanza" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "Sfoglia" @@ -5423,56 +5642,6 @@ msgid "Add Translation" msgstr "Aggiungi Traduzione" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "Nome Invalido." - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "Caratteri validi:" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" -"Nome invalido. Non deve essere in conflitto con un nome di classe di engine " -"esistente." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" -"Nome invalido. Non deve essere in conflitto con un nome di tipo built-in " -"esistente." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" -"Nome invalido. Non deve essere in conflitto con un nome di una costante " -"globale esistente." - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "Autoload '%s' esiste già!" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "Rinomina Autoload" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "Abilita AutoLoad Globals" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "Aggiungi Autoload" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "Rimuovi Autoload" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "Sposta Autoload" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "Rimuovi Traduzione" @@ -5497,10 +5666,6 @@ msgid "Remove Resource Remap Option" msgstr "Rimuovi Opzione di Remap Rimorse" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "Abilita" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "Impostazioni Progetto (engine.cfg)" @@ -5573,18 +5738,6 @@ msgid "AutoLoad" msgstr "AutoLoad" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "Nome Nodo:" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "Lista:" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "Singleton" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "Plugins" @@ -5829,12 +5982,16 @@ msgid "Error duplicating scene to save it." msgstr "Errore duplicando la scena per salvarla." #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "Nuova Scena di Root" +msgid "Edit Groups" +msgstr "Modifica Gruppi" #: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" -msgstr "Eredita Scena" +msgid "Edit Connections" +msgstr "Modifica Connessioni" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "Elimina Nodo(i)" #: tools/editor/scene_tree_dock.cpp msgid "Add Child Node" @@ -5849,14 +6006,6 @@ msgid "Change Type" msgstr "Cambia Tipo" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" -msgstr "Modifica Gruppi" - -#: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" -msgstr "Modifica Connessioni" - -#: tools/editor/scene_tree_dock.cpp msgid "Add Script" msgstr "Aggiungi Script" @@ -5869,10 +6018,6 @@ msgid "Save Branch as Scene" msgstr "Salva Ramo come Scena" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "Elimina Nodo(i)" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "Aggiungi/Crea un Nuovo Nodo" @@ -5926,7 +6071,7 @@ msgstr "Carica come placeholder" #: tools/editor/scene_tree_editor.cpp msgid "Discard Instancing" -msgstr "" +msgstr "Scarta Istanziamento" #: tools/editor/scene_tree_editor.cpp msgid "Open in Editor" @@ -6007,6 +6152,10 @@ msgid "Show In File Manager" msgstr "Mostra nel File Manager" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "Re-Importa.." + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "Directory Precedente" @@ -6266,6 +6415,67 @@ msgstr "Cambia lunghezza Ray Shape" msgid "Change Notifier Extents" msgstr "Cambia Estensione di Notifier" +#~ msgid "Imported Resources" +#~ msgstr "Risorse Importate" + +#~ msgid "Insert Keys (Ins)" +#~ msgstr "Inserisci Keys (Ins)" + +#~ msgid "Top (Num7)" +#~ msgstr "Alto (Num7)" + +#~ msgid "Bottom (Shift+Num7)" +#~ msgstr "Basso (Shift+Num7)" + +#~ msgid "Left (Num3)" +#~ msgstr "Sinistra (Num3)" + +#~ msgid "Right (Shift+Num3)" +#~ msgstr "Destra (Shift+Num3)" + +#~ msgid "Front (Num1)" +#~ msgstr "Fronte (Num1)" + +#~ msgid "Rear (Shift+Num1)" +#~ msgstr "Retro (Shift+Num1)" + +#~ msgid "Perspective (Num5)" +#~ msgstr "Prospettiva (Num5)" + +#~ msgid "Orthogonal (Num5)" +#~ msgstr "Ortogonale (Num5)" + +#~ msgid "Selection (F)" +#~ msgstr "Selezione (F)" + +#~ msgid "Align with view (Ctrl+Shift+F)" +#~ msgstr "Allinea con vista (Ctrl+Shift+F)" + +#~ msgid "Change Anim Loop Interpolation" +#~ msgstr "Cambia Interpolazione Loop Animazione" + +#~ msgid "Enable/Disable interpolation when looping animation." +#~ msgstr "Attiva/Disattiva interpolazione durante loop animazione." + +#~ msgid "Load Layout" +#~ msgstr "Carica Layout" + +#~ msgid "Scale Region Editor" +#~ msgstr "Scala Editor Regioni" + +#~ msgid "" +#~ "No texture in this node.\n" +#~ "Set a texture to be able to edit region." +#~ msgstr "" +#~ "Nessuna texture in questo nodo.\n" +#~ "Imposta una texture per poter modificare la regione." + +#~ msgid "New Scene Root" +#~ msgstr "Nuova Scena di Root" + +#~ msgid "Inherit Scene" +#~ msgstr "Eredita Scena" + #~ msgid "Binds (Extra Params):" #~ msgstr "Lega (Parametri Extra):" @@ -6299,18 +6509,9 @@ msgstr "Cambia Estensione di Notifier" #~ msgid "Set region_rect" #~ msgstr "Imposta region_rect" -#~ msgid "Recent Projects:" -#~ msgstr "Progetti Recenti:" - #~ msgid "Plugin List:" #~ msgstr "Lista Plugin:" -#~ msgid "Move Favorite Up" -#~ msgstr "Sposta Preferito Su" - -#~ msgid "Move Favorite Down" -#~ msgstr "Sposta Preferito Giù" - #~ msgid "%d frames" #~ msgstr "%d frames" diff --git a/tools/translations/ja.po b/tools/translations/ja.po new file mode 100644 index 0000000000..244f0790e4 --- /dev/null +++ b/tools/translations/ja.po @@ -0,0 +1,6238 @@ +# Japanese translation of the Godot Engine editor +# Copyright (C) 2016 Juan Linietsky, Ariel Manzur and the Godot community +# This file is distributed under the same license as the Godot source code. +# +# hopping tappy (たっぴさん) <hopping.tappy@gmail.com>, 2016. +# +msgid "" +msgstr "" +"Project-Id-Version: Godot Engine editor\n" +"PO-Revision-Date: 2016-06-20 19:30+0000\n" +"Last-Translator: hopping tappy (たっぴさん) <hopping.tappy@gmail.com>\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 2.7-dev\n" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Invalid type argument to convert(), use TYPE_* constants." +msgstr "Convert()に対して無効な型の引数です。TYPE_* 定数を使ってください。" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Not enough bytes for decoding bytes, or invalid format." +msgstr "デコードバイトのバイトは十分ではありません。または無効な形式です。" + +#: modules/gdscript/gd_functions.cpp +msgid "step argument is zero!" +msgstr "ステップ引数はゼロです!" + +#: modules/gdscript/gd_functions.cpp +msgid "Not a script with an instance" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Not based on a script" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Not based on a resource file" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Invalid instance dictionary format (missing @path)" +msgstr "無効なインスタンス辞書形式です ( @path が見つかりません)" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Invalid instance dictionary format (can't load script at @path)" +msgstr "無効なインスタンス辞書形式です (@path でスクリプトを読み込めません)" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Invalid instance dictionary format (invalid script at @path)" +msgstr "無効なインスタンス辞書形式です (@path で無効なスクリプト)" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Invalid instance dictionary (invalid subclasses)" +msgstr "無効なインスタンス辞書です (無効なサブクラス)" + +#: scene/2d/animated_sprite.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite to display frames." +msgstr "" + +#: scene/2d/canvas_modulate.cpp +msgid "" +"Only one visible CanvasModulate is allowed per scene (or set of instanced " +"scenes). The first created one will work, while the rest will be ignored." +msgstr "" + +#: scene/2d/collision_polygon_2d.cpp +msgid "" +"CollisionPolygon2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" + +#: scene/2d/collision_polygon_2d.cpp +msgid "An empty CollisionPolygon2D has no effect on collision." +msgstr "" + +#: scene/2d/collision_shape_2d.cpp +msgid "" +"CollisionShape2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" + +#: scene/2d/collision_shape_2d.cpp +msgid "" +"A shape must be provided for CollisionShape2D to function. Please create a " +"shape resource for it!" +msgstr "" + +#: scene/2d/light_2d.cpp +msgid "" +"A texture with the shape of the light must be supplied to the 'texture' " +"property." +msgstr "" + +#: scene/2d/light_occluder_2d.cpp +msgid "" +"An occluder polygon must be set (or drawn) for this occluder to take effect." +msgstr "" + +#: scene/2d/light_occluder_2d.cpp +msgid "The occluder polygon for this occluder is empty. Please draw a polygon!" +msgstr "" + +#: scene/2d/navigation_polygon.cpp +msgid "" +"A NavigationPolygon resource must be set or created for this node to work. " +"Please set a property or draw a polygon." +msgstr "" + +#: scene/2d/navigation_polygon.cpp +msgid "" +"NavigationPolygonInstance must be a child or grandchild to a Navigation2D " +"node. It only provides navigation data." +msgstr "" + +#: scene/2d/parallax_layer.cpp +msgid "" +"ParallaxLayer node only works when set as child of a ParallaxBackground node." +msgstr "" + +#: scene/2d/particles_2d.cpp +msgid "Path property must point to a valid Particles2D node to work." +msgstr "" + +#: scene/2d/path_2d.cpp +msgid "PathFollow2D only works when set as a child of a Path2D node." +msgstr "" + +#: scene/2d/remote_transform_2d.cpp +msgid "Path property must point to a valid Node2D node to work." +msgstr "" + +#: scene/2d/sample_player_2d.cpp scene/audio/sample_player.cpp +msgid "" +"A SampleLibrary resource must be created or set in the 'samples' property in " +"order for SamplePlayer to play sound." +msgstr "" + +#: scene/2d/sprite.cpp +msgid "" +"Path property must point to a valid Viewport node to work. Such Viewport " +"must be set to 'render target' mode." +msgstr "" + +#: scene/2d/sprite.cpp +msgid "" +"The Viewport set in the path property must be set as 'render target' in " +"order for this sprite to work." +msgstr "" + +#: scene/2d/visibility_notifier_2d.cpp +msgid "" +"VisibilityEnable2D works best when used with the edited scene root directly " +"as parent." +msgstr "" + +#: scene/3d/body_shape.cpp +msgid "" +"CollisionShape only serves to provide a collision shape to a CollisionObject " +"derived node. Please only use it as a child of Area, StaticBody, RigidBody, " +"KinematicBody, etc. to give them a shape." +msgstr "" + +#: scene/3d/body_shape.cpp +msgid "" +"A shape must be provided for CollisionShape to function. Please create a " +"shape resource for it!" +msgstr "" + +#: scene/3d/collision_polygon.cpp +msgid "" +"CollisionPolygon only serves to provide a collision shape to a " +"CollisionObject derived node. Please only use it as a child of Area, " +"StaticBody, RigidBody, KinematicBody, etc. to give them a shape." +msgstr "" + +#: scene/3d/collision_polygon.cpp +msgid "An empty CollisionPolygon has no effect on collision." +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 "" +"NavigationMeshInstance must be a child or grandchild to a Navigation node. " +"It only provides navigation data." +msgstr "" + +#: scene/3d/scenario_fx.cpp +msgid "" +"Only one WorldEnvironment is allowed per scene (or set of instanced scenes)." +msgstr "" + +#: scene/3d/spatial_sample_player.cpp +msgid "" +"A SampleLibrary resource must be created or set in the 'samples' property in " +"order for SpatialSamplePlayer to play sound." +msgstr "" + +#: scene/3d/sprite_3d.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite3D to display frames." +msgstr "" + +#: scene/gui/dialogs.cpp tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Cancel" +msgstr "キャンセル" + +#: scene/gui/dialogs.cpp +msgid "OK" +msgstr "決定" + +#: scene/gui/dialogs.cpp +msgid "Alert!" +msgstr "警告!" + +#: scene/gui/dialogs.cpp +msgid "Please Confirm..." +msgstr "確認してください。" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "File Exists, Overwrite?" +msgstr "ファイルが既に存在します。上書きしますか?" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "All Recognized" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "All Files (*)" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/editor_help.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +#: tools/editor/scenes_dock.cpp +msgid "Open" +msgstr "開く" + +#: scene/gui/file_dialog.cpp +msgid "Open a File" +msgstr "ファイルを開く" + +#: scene/gui/file_dialog.cpp +msgid "Open File(s)" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open a Directory" +msgstr "ディレクトリを開く" + +#: scene/gui/file_dialog.cpp +msgid "Open a File or Directory" +msgstr "ファイルまたはディレクトリを開く" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save" +msgstr "保存" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Save a File" +msgstr "ファイルを保存" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp +msgid "Create Folder" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Path:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Directories & Files:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "File:" +msgstr "ファイル:" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Filter:" +msgstr "フィルター:" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp tools/editor/editor_plugin_settings.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Name:" +msgstr "名前:" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp +msgid "Could not create folder." +msgstr "フォルダを作成できませんでした。" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Must use a valid extension." +msgstr "有効な拡張子を使用する必要があります。" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Shift+" +msgstr "Shift+" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Alt+" +msgstr "Alt+" + +#: scene/gui/input_action.cpp +msgid "Ctrl+" +msgstr "Ctrl+" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Meta+" +msgstr "Meta+" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Device" +msgstr "デバイス" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Button" +msgstr "ボタン" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Left Button." +msgstr "左クリック" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Right Button." +msgstr "右クリック" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Middle Button." +msgstr "中クリック" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Wheel Up." +msgstr "ホイール上" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Wheel Down." +msgstr "ホイール下" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Axis" +msgstr "アナログ" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Cut" +msgstr "切り取り" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/resources_dock.cpp +msgid "Copy" +msgstr "コピー" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/resources_dock.cpp +msgid "Paste" +msgstr "貼り付け" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_export.cpp +msgid "Select All" +msgstr "すべて選択" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp tools/editor/editor_log.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/rich_text_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/script_editor_debugger.cpp +msgid "Clear" +msgstr "削除" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Undo" +msgstr "元に戻す" + +#: scene/gui/popup.cpp +msgid "" +"Popups will hide by default unless you call popup() or any of the popup*() " +"functions. Making them visible for editing is fine though, but they will " +"hide upon running." +msgstr "" + +#: scene/main/viewport.cpp +msgid "" +"This viewport is not set as render target. If you intend for it to display " +"its contents directly to the screen, make it a child of a Control so it can " +"obtain a size. Otherwise, make it a RenderTarget and assign its internal " +"texture to some node for display." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Error initializing FreeType." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Unknown font format." +msgstr "不明なフォント形式です。" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Error loading font." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Invalid font size." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Disabled" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "All Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move Add Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Transition" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Transform" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Value" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Call" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move Anim Track Up" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move Anim Track Down" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Anim Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Set Transitions to:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Rename" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Change Interpolation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Change Value Mode" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Edit Node Curve" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Edit Selection Curve" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Delete Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Continuous" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Discrete" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Trigger" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Move Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale From Cursor" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Goto Next Step" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Goto Prev Step" +msgstr "" + +#: tools/editor/animation_editor.cpp tools/editor/property_editor.cpp +msgid "Linear" +msgstr "" + +#: tools/editor/animation_editor.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Constant" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "In" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Out" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "In-Out" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Out-In" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Transitions" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Optimize Animation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up Animation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Create NEW track for %s and insert key?" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Create %d NEW tracks and insert keys?" +msgstr "" + +#: tools/editor/animation_editor.cpp tools/editor/create_dialog.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/particles_editor_plugin.cpp +#: tools/editor/project_manager.cpp tools/editor/script_create_dialog.cpp +msgid "Create" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Create & Insert" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert Track & Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Change Anim Len" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Change Anim Loop" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Create Typed Value Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Scale Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Call Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Animation zoom." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Length (s):" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Animation length (in seconds)." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Step (s):" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Cursor step snap (in seconds)." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Enable/Disable looping in animation." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Add new tracks." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move current track up." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move current track down." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove selected track." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Track tools" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Enable editing of individual keys by clicking them." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim. Optimizer" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max. Linear Error:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max. Angular Error:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max Optimizable Angle:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Optimize" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Transition" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale Ratio:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Call Functions in Which Node?" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove invalid keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove unresolved and empty tracks" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-up all animations" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up Animation(s) (NO UNDO!)" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Resize Array" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Change Array Value Type" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Change Array Value" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp tools/editor/create_dialog.cpp +#: tools/editor/editor_help.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Search:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Sort:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Reverse" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Category:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "All" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Site:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Support.." +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Official" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Community" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Testing" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Assets ZIP File" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Method List For '%s':" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Call" +msgstr "" + +#: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/project_settings.cpp tools/editor/property_editor.cpp +#: tools/editor/run_settings_dialog.cpp tools/editor/settings_config_dialog.cpp +msgid "Close" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Method List:" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Arguments:" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Return:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Go to Line" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Line Number:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "No Matches" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replaced %d Ocurrence(s)." +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace All" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Match Case" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Whole Words" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Selection Only" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/editor_help.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Search" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/editor_help.cpp +msgid "Find" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Next" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replaced %d ocurrence(s)." +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Not found!" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace By" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Case Sensitive" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Backwards" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Prompt On Replace" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Skip" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/script_editor_debugger.cpp +msgid "Line:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Col:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Method in target Node must be specified!" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect To Node:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp +#: tools/editor/plugins/item_list_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Add" +msgstr "" + +#: tools/editor/connections_dialog.cpp tools/editor/dependency_editor.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Remove" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Add Extra Call Argument:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Extra Call Arguments:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Path to Node:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Make Function" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Deferred" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Oneshot" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect '%s' to '%s'" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connecting Signal:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Create Subscription" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect.." +msgstr "" + +#: tools/editor/connections_dialog.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Disconnect" +msgstr "" + +#: tools/editor/connections_dialog.cpp tools/editor/node_dock.cpp +msgid "Signals" +msgstr "" + +#: tools/editor/create_dialog.cpp +msgid "Create New" +msgstr "" + +#: tools/editor/create_dialog.cpp tools/editor/editor_help.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +msgid "Matches:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Search Replacement For:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies For:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"Scene '%s' is currently being edited.\n" +"Changes will not take effect unless reloaded." +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"Resource '%s' is in use.\n" +"Changes will take effect when reloaded." +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Resource" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp +msgid "Path" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Fix Broken" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependency Editor" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Search Replacement Resource:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Owners Of:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"The files being removed are required by other resources in order for them to " +"work.\n" +"Remove them anyway? (no undo)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Remove selected files from the project? (no undo)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Error loading:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Scene failed to load due to missing dependencies:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Open Anyway" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Which action should be taken?" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Fix Dependencies" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Errors loading!" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Permanently delete %d item(s)? (No undo!)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Owns" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Resources Without Explicit Ownership:" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_node.cpp +msgid "Orphan Resource Explorer" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Delete selected files?" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/item_list_editor_plugin.cpp +#: tools/editor/scenes_dock.cpp +msgid "Delete" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Not in resource path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Updating Scene" +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Storing local changes.." +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Updating scene.." +msgstr "" + +#: tools/editor/editor_dir_dialog.cpp +msgid "Choose a Directory" +msgstr "" + +#: tools/editor/editor_dir_dialog.cpp +msgid "Choose" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp +msgid "Favorites:" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Recent:" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Preview:" +msgstr "" + +#: tools/editor/editor_file_system.cpp +msgid "Cannot go into subdir:" +msgstr "" + +#: tools/editor/editor_file_system.cpp +msgid "ScanSources" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Class List:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/property_editor.cpp +msgid "Class:" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/scene_tree_editor.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Inherits:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Inherited by:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Brief Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Public Methods:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Members:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "GUI Theme Items:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Signals:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Constants:" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/script_editor_debugger.cpp +msgid "Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Method Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Search Text" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Added:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Removed:" +msgstr "" + +#: tools/editor/editor_import_export.cpp tools/editor/project_export.cpp +msgid "Error saving atlas:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Could not save atlas subtexture:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Storing File:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Packing" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Exporting for %s" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Setting Up.." +msgstr "" + +#: tools/editor/editor_log.cpp +msgid " Output:" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp +msgid "Re-Importing" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Importing:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Node From Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/resources_dock.cpp +msgid "Error saving resource!" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/resources_dock.cpp +msgid "Save Resource As.." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp +msgid "I see.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't open file for writing:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Requested file format unknown:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error while saving." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Saving Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Analyzing" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Creating Thumbnail" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Couldn't save scene. Likely dependencies (instances) couldn't be satisfied." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Failed to load resource." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't load MeshLibrary for merging!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error saving MeshLibrary!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't load TileSet for merging!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error saving TileSet!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't open export templates zip." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Loading Export Templates" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error trying to save layout!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Default editor layout overridden." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Layout name not found!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Restored default layout to base settings." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Copy Params" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Paste Params" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Paste Resource" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Copy Resource" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Make Built-In" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Make Sub-Resources Unique" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open in Help" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "There is no defined scene to run." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Current scene was never saved, please save it prior to running." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Could not start subprocess!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Base Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Open Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Open Script.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Yes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Close scene? (Unsaved changes will be lost)" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Scene As.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "This scene has never been saved. Save before running?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Please save the scene first." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Translatable Strings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Mesh Library" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Tile Set" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quit" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Exit the editor?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Current scene not saved. Open anyway?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't reload a scene that was never saved." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Revert" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "This action cannot be undone. Revert anyway?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Run Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Open Project Manager? \n" +"(Unsaved changes will be lost)" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp +msgid "Ugh" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Error loading scene, it must be inside the project path. Use 'Import' to " +"open the scene, then save it inside the project path." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error loading scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Scene '%s' has broken dependencies:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Layout" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Delete Layout" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Default" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Switch Scene Tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "%d more file(s)" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "%d more file(s) or folder(s)" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to previously opened scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Fullscreen Mode" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Distraction Free Mode" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Operations with scene files." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "New Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "New Inherited Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "ファイルを保存" + +#: tools/editor/editor_node.cpp +msgid "Close Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Close Goto Prev. Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Recent" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Filter Files.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Convert To.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Translatable Strings.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "MeshLibrary.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "TileSet.." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Redo" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Run Script" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Project Settings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Revert Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quit to Project List" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Import assets to the project." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Import" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Miscellaneous project or scene-wide tools." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Tools" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export the project to many platforms." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Export" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play the project." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Play" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Pause the scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Pause Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Stop the scene." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Stop" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play the edited scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play custom scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Debug options" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Deploy with Remote Debug" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When exporting or deploying, the resulting executable will attempt to " +"connect to the IP of this computer in order to be debugged." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Small Deploy with Network FS" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is enabled, export or deploy will produce a minimal " +"executable.\n" +"The filesystem will be provided from the project by the editor over the " +"network.\n" +"On Android, deploy will use the USB cable for faster performance. This " +"option speeds up testing for games with a large footprint." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Visible Collision Shapes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " +"running game if this option is turned on." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Visible Navigation" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Navigation meshes and polygons will be visible on the running game if this " +"option is turned on." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Sync Scene Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is turned on, any changes made to the scene in the editor " +"will be replicated in the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Sync Script Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is turned on, any script that is saved will be reloaded on " +"the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Settings" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/settings_config_dialog.cpp +msgid "Editor Settings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Editor Layout" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Install Export Templates" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "About" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Alerts when an external resource has changed." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Spins when the editor window repaints!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Update Always" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Update Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Inspector" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Create a new resource in memory and edit it." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Load an existing resource from disk and edit it." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save the currently edited resource." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Save As.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to the previous edited object in history." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to the next edited object in history." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "History of recently edited objects." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Object properties." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "FileSystem" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Output" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp +msgid "Re-Import" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_plugin_settings.cpp +msgid "Update" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Thanks from the Godot community!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Thanks!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Import Templates From ZIP File" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Export Project" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Library" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Merge With Existing" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Password:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open & Run a Script" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Load Errors" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Installed Plugins:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Version:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Author:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Status:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Stop Profiling" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Start Profiling" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Measure:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame Time (sec)" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Average Time (sec)" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame %" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Fixed Frame %" +msgstr "" + +#: tools/editor/editor_profiler.cpp tools/editor/script_editor_debugger.cpp +msgid "Time:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Inclusive" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Self" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame #:" +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Please wait for scan to complete." +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Current scene must be saved to re-import." +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Save & Re-Import" +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Re-Import Changed Resources" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Write your logic in the _run() method." +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "There is an edited scene already." +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Couldn't instance script:" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Did you forget the 'tool' keyword?" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Couldn't run script:" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Did you forget the '_run' method?" +msgstr "" + +#: tools/editor/editor_settings.cpp +msgid "Default (Same as Editor)" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Select Node(s) to Import" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Scene Path:" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Import From Node:" +msgstr "" + +#: tools/editor/file_type_cache.cpp +msgid "Can't open file_type_cache.cch for writing, not saving file type cache!" +msgstr "" + +#: tools/editor/groups_editor.cpp +msgid "Add to Group" +msgstr "" + +#: tools/editor/groups_editor.cpp +msgid "Remove from Group" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "No bit masks to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path is empty." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must be a complete resource path." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must exist." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Save path is empty!" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Import BitMasks" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s):" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Target Path:" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Accept" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Bit Mask" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "No source font file!" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "No target font resource!" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Can't load/process source font." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Couldn't save font." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Dest Resource:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "The quick brown fox jumps over the lazy dog." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Test:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Options:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Font Import" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"This file is already a Godot font file, please supply a BMFont type file " +"instead." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Failed opening as BMFont file." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Invalid font custom source." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Font" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "No meshes to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Single Mesh Import" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Source Mesh(es):" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Surface %d" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "No samples to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Import Audio Samples" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Source Sample(s):" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Audio Sample" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "New Clip" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Animation Options" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Flags" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Bake FPS:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Optimizer" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Linear Error" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angular Error" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angle" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Clips" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Start(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "End(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Loop" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Filters" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source path is empty." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error importing scene." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import 3D Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source Scene:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Same as Target Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Shared" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Target Texture Folder:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Post-Process Script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Custom Root Node Type:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Auto" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "The Following Files are Missing:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Anyway" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import & Open" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Edited scene has not been saved, open imported scene anyway?" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Importing Scene.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Running Custom Script.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import (check console):" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error running post-import script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Image:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Can't import a file over itself:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't localize path: %s (already local)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Saving.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "3D Scene Animation" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Uncompressed" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossless (PNG)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossy (WebP)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress (VRAM)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Format" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Compression Quality (WebP):" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Options" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Please specify some files!" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "At least one file needed for Atlas." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Error importing:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Only one file is required for large texture." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Max Texture Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for Atlas (2D)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cell Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Large Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Textures (2D)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Base Atlas Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 2D" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 3D" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "2D Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "3D Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Atlas Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "" +"NOTICE: Importing 2D textures is not mandatory. Just copy png/jpg files to " +"the project." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Crop empty space." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Load Source Image" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Slicing" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Inserting" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Saving" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save large texture:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Build Atlas For:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Loading Image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't load image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Converting Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cropping Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Blitting Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save atlas image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save converted texture:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid source!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid translation source!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Column" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Language" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No items to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No target path!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translations" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Couldn't import!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translation" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Source CSV:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Ignore First Row" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Compress" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Add to Project (engine.cfg)" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Languages:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Translation" +msgstr "" + +#: tools/editor/multi_node_edit.cpp +msgid "MultiNode Set" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Node" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Groups" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Select a Node to edit Signals and Groups." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Toggle Autoplay" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "New Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "New Anim" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Remove Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Invalid animation name!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Animation name already exists!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Rename Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Next Changed" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Blend Time" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Duplicate Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to copy!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation resource on clipboard!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Pasted Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Paste Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to edit!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from current pos. (A)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from end. (Shift+A)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Stop animation playback. (S)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from start. (Shift+D)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from current pos. (D)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation position (in seconds)." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Scale animation playback globally for the node." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Create new animation in player." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load animation from disk." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load an animation from disk." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Save the current animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Save As" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Display list of animations in player." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Autoplay on Load" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Edit Target Blend Times" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Tools" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Copy Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Create New Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/script_create_dialog.cpp +msgid "Error!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Times:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Next (Auto Queue):" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Cross-Animation Blend Times" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Animation" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "New name:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Scale:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade In (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade Out (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Auto Restart:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Restart (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Random Restart (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Start!" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Amount:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 0:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 1:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "X-Fade Time (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Current:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Add Input" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Clear Auto-Advance" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Set Auto-Advance" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Delete Input" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Rename" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is valid." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is invalid." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "OneShot Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend2 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend3 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend4 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeScale Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeSeek Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Transition Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Import Animations.." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Edit Node Filters" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Filters.." +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Parsing %d Triangles:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Triangle #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Light Baker Setup:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Parsing Geometry" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Fixing Lights" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Making BVH" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Creating Light Octree" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Creating Octree Texture" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Transfer to Lightmaps:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Allocating Texture #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Baking Triangle #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Post-Processing Texture #" +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "BakedLightInstance does not contain a BakedLight resource." +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "Bake!" +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "Reset the lightmap octree baking process (start over)." +msgstr "" + +#: tools/editor/plugins/camera_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Preview" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Configure Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Offset:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Step:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Offset:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Step:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Pivot" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Action" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit CanvasItem" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Change Anchors" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom (%):" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Paste Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Select Mode (Q)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Drag: Rotate" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+Drag: Move" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Press 'v' to Change Pivot, 'Shift+v' to Drag Pivot (while moving)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+RMB: Depth list selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Move Mode (W)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Mode (E)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "" +"Show a list of all objects at the position clicked\n" +"(same as Alt+RMB in select mode)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Click to change object's rotation pivot." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Pan Mode" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Lock the selected object in place (can't be moved)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Unlock the selected object (can be moved)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Makes sure the object's children are not selectable." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Restores the object's children's ability to be selected." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Edit" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Show Grid" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Rotation Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap Relative" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Configure Snap.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Pixel Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Expand to Parent" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Skeleton.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make Bones" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Bones" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom In" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Out" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Reset" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Set.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Center Selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Frame Selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Anchor" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Keys" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key (Existing Tracks)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Copy Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Set a Value" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap (Pixels):" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create Poly" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly (Remove Point)" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create a new polygon from scratch." +msgstr "" + +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +msgid "Create Poly3D" +msgstr "" + +#: tools/editor/plugins/collision_shape_2d_editor_plugin.cpp +msgid "Set Handle" +msgstr "" + +#: tools/editor/plugins/color_ramp_editor_plugin.cpp +msgid "Add/Remove Color Ramp Point" +msgstr "" + +#: tools/editor/plugins/color_ramp_editor_plugin.cpp +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Color Ramp" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Creating Mesh Library" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Thumbnail.." +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove item %d?" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Add Item" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove Selected Item" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import from Scene" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Update from Scene" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Item %d" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Items" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Item List Editor" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +msgid "Create Occluder Polygon" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Edit existing polygon:" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "LMB: Move Point." +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Ctrl+LMB: Split Segment." +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "RMB: Erase Point." +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh is empty!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Trimesh Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Convex Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "This doesn't work on scene root!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Shape" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Shape" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Navigation Mesh" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "MeshInstance lacks a Mesh!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Could not create outline!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Static Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Static Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Collision Sibling" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Collision Sibling" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh.." +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Outline Size:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and no MultiMesh set in node)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and MultiMesh contains no Mesh)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (invalid path)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (not a MeshInstance)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (contains no Mesh resource)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No surface source specified." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (invalid path)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no geometry)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no faces)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Parent has no solid faces to populate." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Couldn't map area." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Source Mesh:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Target Surface:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate Surface" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate MultiMesh" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Target Surface:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Source Mesh:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "X-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Y-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Z-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh Up Axis:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Rotation:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Tilt:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Scale:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate" +msgstr "" + +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create Navigation Polygon" +msgstr "" + +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Remove Poly And Point" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Error loading image:" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "No pixels with transparency > 128 in image.." +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Set Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Clear Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Load Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Generated Point Count:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry." +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry (faces)." +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Faces contain no area!" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "No faces!" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Generate AABB" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter From Mesh" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter From Node" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Clear Emitter" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Emission Positions:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Emission Fill:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Surface" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Volume" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Remove Point from Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Add Point to Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Point in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move In-Control in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Out-Control in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Select Points" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Shift+Drag: Select Control Points" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Click: Add Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Right Click: Delete Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Select Control Points (Shift+Drag)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Add Point (in empty space)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Split Segment (in curve)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Delete Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Close Curve" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Curve Point #" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Point Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve In Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Out Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Split Path" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Remove Path Point" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create UV Map" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Transform UV Map" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon 2D UV Editor" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Point" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Ctrl: Rotate" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift: Move All" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift+Ctrl: Scale" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Rotate Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Scale Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon->UV" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "UV->Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Clear UV" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Snap" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Enable Snap" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "ERROR: Couldn't load resource!" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Add Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Rename Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Delete Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Resource clipboard is empty!" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Load Resource" +msgstr "" + +#: tools/editor/plugins/rich_text_editor_plugin.cpp +msgid "Parse BBCode" +msgstr "" + +#: tools/editor/plugins/sample_editor_plugin.cpp +msgid "Length:" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Open Sample File(s)" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "ERROR: Couldn't load sample!" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Add Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Rename Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Delete Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "16 Bits" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "8 Bits" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Stereo" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Mono" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Format" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Pitch" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error while saving theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error saving" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error importing theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error importing" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Import Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Next script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/project_export.cpp +msgid "File" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/property_editor.cpp +msgid "New" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save All" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "History Prev" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "History Next" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Reload Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Move Up" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Move Down" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Indent Left" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Indent Right" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Toggle Comment" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Clone Down" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Complete Symbol" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Trim Trailing Whitespace" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Auto Indent" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Soft Reload Script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find Next" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find Previous" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Replace.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Function.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Goto Line.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Debug" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Toggle Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Remove All Breakpoints" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Next Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Previous Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Step Over" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Step Into" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Break" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Continue" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Keep Debugger Open" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Window" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Move Left" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Move Right" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Help" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Contextual Help" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Tutorials" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Open https://godotengine.org at tutorials section." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Classes" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Search the class hierarchy." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Search the reference documentation." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Go to previous edited document." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Go to next edited document." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Create Script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"The following files are newer on disk.\n" +"What action should be taken?:" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Reload" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Resave" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Debugger" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Vertex" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Fragment" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Lighting" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Scalar Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Toggle Rot Only" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Function" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Function" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Default Value" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change XForm Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Texture Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Cubemap Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Comment" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Color Ramp" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Curve Map" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Curve Map" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Input Name" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Connect Graph Nodes" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Disconnect Graph Nodes" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Remove Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Move Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Duplicate Graph Node(s)" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Delete Shader Graph Node(s)" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Cyclic Connection Link" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Missing Input Connections" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Orthogonal" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Aborted." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "X-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Y-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Z-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Plane Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scaling to %s%%." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotating %s degrees." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Keying is disabled (no key inserted)." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Animation Key Inserted." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Align with view" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Environment" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Audio Listener" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Gizmos" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "XForm Dialog" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "No scene selected to instance!" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Instance at Cursor" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Could not instance scene!" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Mode (R)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Switch Perspective/Orthogonal view" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Insert Animation Key" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Focus Selection" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Align Selection With View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Local Coords" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Dialog.." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default Light" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default sRGB" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "1 Viewport" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports (Alt)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports (Alt)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "4 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Normal" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Wireframe" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Overdraw" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Shadeless" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Origin" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Grid" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Snap Settings" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Translate Snap:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Snap (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Snap (%):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Viewport Settings" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Default Light Normal:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Ambient Light Color:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective FOV (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Near:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Far:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Change" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Translate:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale (ratio):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Type" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Pre" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Post" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "ERROR: Couldn't load frame resource!" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Frame" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Resource clipboard is empty or not a texture!" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Paste Frame" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Empty" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation Loop" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation FPS" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "(empty)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animations" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Speed (FPS):" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animation Frames" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (Before)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (After)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Up" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Down" +msgstr "" + +#: tools/editor/plugins/style_box_editor_plugin.cpp +msgid "StyleBox Preview:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Snap Mode:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "<None>" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Can't save theme to file:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add All Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add All" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Remove Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add Class Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Remove Class Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Template" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Editor Template" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio1" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio2" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Check Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Checked Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Has" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Many" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp tools/editor/project_export.cpp +msgid "Options" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Have,Many,Several,Options!" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 1" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 2" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 3" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_settings.cpp tools/editor/scene_tree_editor.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Type:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Data Type:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Icon" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Style" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Color" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Paint TileMap" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Duplicate" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase TileMap" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase selection" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Find tile" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Transpose" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror X" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror Y" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Bucket" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Pick Tile" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Select" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 0 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 90 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 180 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 270 degrees" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Could not find tile:" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Item name or ID:" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from scene?" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from scene?" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from Scene" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from Scene" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Error" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Edit Script Options" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Please export outside the project folder!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Error exporting project!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Error writing the project PCK!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "No exporter for platform '%s' yet." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Include" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Change Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group name can't be empty!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Invalid character in group name!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group name already exists!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Add Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Delete Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Atlas Preview" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Project Export Settings" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Target" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export to Platform" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Resources" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export selected resources (including dependencies)." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export all resources in the project." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export all files in the project directory." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Resources to Export:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Action" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "" +"Filters to export non-resource files (comma-separated, e.g.: *.json, *.txt):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Filters to exclude from export (comma-separated, e.g.: *.json, *.txt):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Convert text scenes to binary on export." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Images" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Keep Original" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for Disk (Lossy, WebP)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for RAM (BC/PVRTC/ETC)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Convert Images (*.png):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for Disk (Lossy) Quality:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Shrink All Images:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Formats:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Image Groups" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Groups:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Disk" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress RAM" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Lossy Quality:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Atlas:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Shrink By:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Preview Atlas" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Image Filter:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Images:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Select None" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Samples" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Sample Conversion Mode: (.wav files):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Keep" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress (RAM - IMA-ADPCM)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Sampling Rate Limit (Hz):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Trim" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Trailing Silence:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script Export Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Text" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compiled" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Encrypted (Provide Key Below)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script Encryption Key (256-bits as hex):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export PCK/Zip" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Project PCK" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export.." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Project Export" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Preset:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, the path must exist!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, engine.cfg must not exist." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, engine.cfg must exist." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Imported Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path (changed anything?)." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Couldn't create engine.cfg in project path." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Import Existing Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Path (Must Exist):" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Name:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Create New Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Path:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Browse" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "New Game Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "That's a BINGO!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Unnamed Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Are you sure to open more than one projects?" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Are you sure to run more than one projects?" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Remove project from the list? (Folder contents will not be modified)" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Manager" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project List" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Run" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Scan" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "New Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Exit" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Key " +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joy Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joy Axis" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Mouse Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Invalid action (anything goes but '/' or ':')." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Action '%s' already exists!" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Rename Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "Control+" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "Press a Key.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Mouse Button Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Left Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Right Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Middle Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Wheel Up Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Wheel Down Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 6" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 7" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 8" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 9" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joystick Axis Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joystick Button Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Input Action" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Erase Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Toggle Persisting" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Error saving settings." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Settings saved OK." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Translation" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Translation" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Remapped Path" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Resource Remap Add Remap" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Change Resource Remap Language" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Resource Remap" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Resource Remap Option" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Project Settings (engine.cfg)" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "General" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/property_editor.cpp +msgid "Property:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Del" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Copy To Platform.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Input Map" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Action:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Device:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Localization" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Translations" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Translations:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remaps" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Resources:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remaps by Locale:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Locale" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "AutoLoad" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Plugins" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Preset.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Ease In" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Ease Out" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Zero" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Easing In-Out" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Easing Out-In" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "File.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Dir.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Load" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Assign" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Error loading file: Not a resource!" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Couldn't load image" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Bit %d, val %d." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "On" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Set" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Properties:" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Global" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Sections:" +msgstr "" + +#: tools/editor/pvrtc_compress.cpp +msgid "Could not execute PVRTC tool:" +msgstr "" + +#: tools/editor/pvrtc_compress.cpp +msgid "Can't load back converted image using PVRTC tool:" +msgstr "" + +#: tools/editor/reparent_dialog.cpp tools/editor/scene_tree_dock.cpp +msgid "Reparent Node" +msgstr "" + +#: tools/editor/reparent_dialog.cpp +msgid "Reparent Location (Select new Parent):" +msgstr "" + +#: tools/editor/reparent_dialog.cpp +msgid "Keep Global Transform" +msgstr "" + +#: tools/editor/reparent_dialog.cpp tools/editor/scene_tree_dock.cpp +msgid "Reparent" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Create New Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Open Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Save Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Resource Tools" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Make Local" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Run Mode:" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Current Scene" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Main Scene" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Main Scene Arguments:" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Scene Run Settings" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "OK :(" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "No parent to instance a child at." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error loading scene from %s" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error instancing scene from %s" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Ok" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Cannot instance the scene '%s' because the current scene exists within one " +"of its nodes." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Instance Scene(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done on the tree root." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Move Node In Parent" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Move Nodes In Parent" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Duplicate Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)?" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done without a scene." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation requires a single selected node." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done on instanced scenes." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Save New Scene As.." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Makes Sense!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Can't operate on nodes from a foreign scene!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Can't operate on nodes the current scene inherits from!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Remove Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Create Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Couldn't save new scene. Likely dependencies (instances) couldn't be " +"satisfied." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error saving scene." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error duplicating scene to save it." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Groups" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Connections" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add Child Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Instance Child Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Change Type" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add Script" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Merge From Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Save Branch as Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add/Create a New Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Instance a scene file as a Node. Creates an inherited scene if no root node " +"exists." +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "" +"This item cannot be made visible because the parent is hidden. Unhide the " +"parent first." +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Toggle Spatial Visible" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Toggle CanvasItem Visible" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Instance:" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Invalid node name, the following characters are not allowed:" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Rename Node" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Scene Tree (Nodes):" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Editable Children" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Load As Placeholder" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Discard Instancing" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Open in Editor" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear Inheritance" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear Inheritance? (No Undo!)" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear!" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Select a Node" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Same source and destination files, doing nothing." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Same source and destination paths, doing nothing." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Can't move directories to within themselves." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Can't operate on '..'" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Pick New Name and Location For:" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "No files selected!" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Instance" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Edit Dependencies.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "View Owners.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Copy Path" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Rename or Move.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Move To.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Info" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Show In File Manager" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Previous Directory" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Next Directory" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Re-Scan Filesystem" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Toggle folder status as Favorite" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Instance the selected scene(s) as child of the selected node." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Move" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid parent class name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid chars:" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid class name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "N/A" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Class name is invalid!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Parent class name is invalid!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid path!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Could not create script in filesystem." +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Path is empty" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Path is not local" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid base path" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "File exists" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid extension" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid path" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Class Name:" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Built-In Script" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Create Node Script" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Bytes:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Warning" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Error:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Source:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Function:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Errors" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Child Process Connected" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Inspect Previous Instance" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Inspect Next Instance" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Stack Frames" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Variable" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Errors:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Stack Trace (if applicable):" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Remote Inspector" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Live Scene Tree:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Remote Object Properties: " +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Profiler" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Monitor" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Value" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Monitors" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "List of Video Memory Usage by Resource:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Total:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Video Mem" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Resource Path" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Type" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Usage" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Misc" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Clicked Control:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Clicked Control Type:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Live Edit Root:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Set From Tree" +msgstr "" + +#: tools/editor/settings_config_dialog.cpp +msgid "Shortcuts" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Light Radius" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Camera FOV" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Camera Size" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Sphere Shape Radius" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Box Shape Extents" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Radius" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Height" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Ray Shape Length" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Notifier Extents" +msgstr "" diff --git a/tools/translations/ko.po b/tools/translations/ko.po index 990a9aba82..0e174ea054 100644 --- a/tools/translations/ko.po +++ b/tools/translations/ko.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-06-19 13:30+0000\n" +"PO-Revision-Date: 2016-06-28 11:49+0000\n" "Last-Translator: 박한얼 <volzhs@gmail.com>\n" -"Language-Team: Korean <https://hosted.weblate.org/projects/godot-" -"engine/godot/ko/>\n" +"Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/" +"godot/ko/>\n" "Language: ko\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,7 +21,8 @@ msgstr "" #: modules/gdscript/gd_functions.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." -msgstr "convert()하기 위한 인자 타입이 유효하지 않습니다, TYPE_* 상수를 사용하세요." +msgstr "" +"convert()하기 위한 인자 타입이 유효하지 않습니다, TYPE_* 상수를 사용하세요." #: modules/gdscript/gd_functions.cpp msgid "Not enough bytes for decoding bytes, or invalid format." @@ -49,11 +50,13 @@ msgstr "유효하지 않은 인스턴스 Dictionary 형식 (@path 없음)" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (can't load script at @path)" -msgstr "유효하지 않은 인스턴스 Dictionary 형식 (@path 에서 스크립트를 로드할 수 없음)" +msgstr "" +"유효하지 않은 인스턴스 Dictionary 형식 (@path 에서 스크립트를 로드할 수 없음)" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (invalid script at @path)" -msgstr "유효하지 않은 인스턴스 Dictionary 형식 (@path의 스크립트가 유효하지 않음)" +msgstr "" +"유효하지 않은 인스턴스 Dictionary 형식 (@path의 스크립트가 유효하지 않음)" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary (invalid subclasses)" @@ -323,9 +326,10 @@ msgstr "파일로 저장하기" msgid "Create Folder" msgstr "폴더 생성" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "경로:" @@ -524,6 +528,10 @@ msgid "Anim Add Track" msgstr "트랙 추가" #: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "키 복제" + +#: tools/editor/animation_editor.cpp msgid "Move Anim Track Up" msgstr "트랙 위로 이동" @@ -536,10 +544,6 @@ msgid "Remove Anim Track" msgstr "트랙 삭제" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" -msgstr "키 복제" - -#: tools/editor/animation_editor.cpp msgid "Set Transitions to:" msgstr "전환 설정:" @@ -568,6 +572,20 @@ msgid "Anim Delete Keys" msgstr "키 삭제" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "선택키 복제" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "선택된 트랙에 복제" + +#: tools/editor/animation_editor.cpp +#, fuzzy +msgid "Remove Selection" +msgstr "선택항목 화면 꽉차게 표시" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "연속적인" @@ -596,15 +614,6 @@ msgid "Scale From Cursor" msgstr "커서 위치에서 스케일 조절" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "선택키 복제" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "선택된 트랙에 복제" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "다음 스텝으로 이동" @@ -687,10 +696,6 @@ msgid "Change Anim Loop" msgstr "애니메이션 루프 변경" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "애니메이션 루프 보간 변경" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "애니메이션 타입지정 값 키 만들기" @@ -731,10 +736,6 @@ msgid "Enable/Disable looping in animation." msgstr "애니메이션 루프 활성화/비활성화." #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "애니메이션 루프 시 보간 활성화/비활성화." - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "새 트랙 추가." @@ -883,7 +884,6 @@ msgid "Call" msgstr "호출" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -999,10 +999,11 @@ msgid "Method in target Node must be specified!" msgstr "대상 노드의 함수를 명시해야합니다!" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" +msgid "Connect To Node:" msgstr "연결할 노드:" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1110,8 +1111,8 @@ msgstr "종속 관계" msgid "Resource" msgstr "리소스" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "경로" @@ -1198,6 +1199,96 @@ msgstr "선택된 파일들을 삭제하시겠습니까?" msgid "Delete" msgstr "삭제" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "유효하지 않은 이름." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "유효한 문자:" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" +"유효하지 않은 이름입니다. 엔진에 존재하는 클래스 이름과 충돌하지 않아야 합니" +"다." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "유효하지 않은 이름입니다. 내장 타입 이름과 충돌하지 않아야 합니다." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "유효하지 않은 이름입니다. 전역 상수 이름과 충돌하지 않아야 합니다." + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid Path." +msgstr "경로가 유효하지 않습니다!" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "File does not exist." +msgstr "파일이 존재함" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr "리소스 경로" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Add AutoLoad" +msgstr "자동 로드 추가" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "자동로드에 '%s'이(가) 이미 존재합니다!" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "자동 로드 이름 변경" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "자동로드 글로벌 토글" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "자동 로드 이동" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "자동 로드 삭제" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "활성화" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Rearrange Autoloads" +msgstr "자동 로드 이름 변경" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "노드 이름:" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "이름" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "싱글톤" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "목록:" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "씬 업데이트 중" @@ -1218,6 +1309,48 @@ msgstr "디렉토리 선택" msgid "Choose" msgstr "선택" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "뒤로 가기" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "앞으로 가기" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "위로 가기" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "새로고침" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "숨김 파일 토글" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "즐겨찾기 토글" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "모드 토글" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "경로 포커스" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Up" +msgstr "즐겨찾기 위로" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Down" +msgstr "즐겨찾기 아래로" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "즐겨찾기:" @@ -1238,14 +1371,18 @@ msgstr "하위 디렉토리로 이동할 수 없습니다:" msgid "ScanSources" msgstr "소스 조사" -#: tools/editor/editor_help.cpp -msgid "Search Classes" -msgstr "클래스 검색" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "도움말 검색" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "클래스 목록:" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "클래스 검색" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "클래스:" @@ -1343,10 +1480,6 @@ msgstr "가져오는 중:" msgid "Node From Scene" msgstr "씬으로부터 노드 가져오기" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "다시 가져오기.." - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1472,11 +1605,30 @@ msgstr "실행하기 위해 정의된 씬이 없습니다." #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" +"메인 씬이 지정되지 않았습니다. 선택하시겠습니까?\n" +"나중에 \"프로젝트 설정\"의 'Application' 항목에서 변경할 수 있습니다." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"선택한 '%s' 씬이 존재하지 않습니다. 다시 선택하시겠습니까?\n" +"나중에 \"프로젝트 설정\"의 'Application' 항목에서 변경할 수 있습니다." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" -"메인 씬이 지정되지 않았습니다.\n" -"\"프로젝트 설정\"의 'Application' 항목에서 씬을 하나 선택해 주세요." +"선택한 '%s' 씬이 씬 파일이 아닙니다. 다시 선택하시겠습니까?\n" +"나중에 \"프로젝트 설정\"의 'Application' 항목에서 변경할 수 있습니다." #: tools/editor/editor_node.cpp msgid "Current scene was never saved, please save it prior to running." @@ -1570,6 +1722,11 @@ msgstr "" "프로젝트 매니저를 실행하시겠습니까?\n" "(저장하지 않은 변경사항은 사라집니다.)" +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Pick a Main Scene" +msgstr "메인 씬 선택" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "오우" @@ -1595,18 +1752,14 @@ msgid "Save Layout" msgstr "레이아웃 저장" #: tools/editor/editor_node.cpp -msgid "Load Layout" -msgstr "레이아웃 로드" +msgid "Delete Layout" +msgstr "레이아웃 삭제" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp msgid "Default" msgstr "Default" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "레이아웃 삭제" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "씬 탭 전환" @@ -1636,6 +1789,14 @@ msgid "Distraction Free Mode" msgstr "초집중 모드" #: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "다음 탭" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "이전 탭" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "씬 파일 동작." @@ -1656,6 +1817,11 @@ msgid "Save Scene" msgstr "씬 저장" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "씬 저장" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "씬 닫기" @@ -1779,6 +1945,11 @@ msgid "Play custom scene" msgstr "다른 씬 실행" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Play Custom Scene" +msgstr "다른 씬 실행" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "디버그 옵션" @@ -1951,7 +2122,6 @@ msgid "Output" msgstr "출력" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "다시 가져오기" @@ -2123,10 +2293,6 @@ msgstr "그룹에 추가" msgid "Remove from Group" msgstr "그룹에서 제거" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "가져온 리소스" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "가져올 비트 마스크가 없습니다!" @@ -2198,6 +2364,14 @@ msgid "No target font resource!" msgstr "폰트 리소스 경로가 없습니다!" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" +"유효하지 않은 파일 확장자.\n" +".fnt 를 사용하세요." + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "소스 폰트를 로드/처리할 수 없습니다." @@ -2329,12 +2503,6 @@ msgid "Clips" msgstr "클립" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "이름" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "시작(초)" @@ -2433,8 +2601,9 @@ msgid "Couldn't load post-import script:" msgstr "가져오기 후 실행할 스크립트를 로드할 수 없습니다:" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" -msgstr "가져오기 후 실행할 스크립트가 유효하지 않거나 깨져있습니다:" +msgid "Invalid/broken script for post-import (check console):" +msgstr "" +"가져오기 후 실행할 스크립트가 유효하지 않거나 깨져있습니다 (콘솔 확인):" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Error running post-import script:" @@ -3098,13 +3267,11 @@ msgstr "스냅 설정" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "그리드 오프셋:" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "그리드 스텝:" @@ -3222,7 +3389,6 @@ msgstr "스냅 사용" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "그리드 보이기" @@ -3301,8 +3467,9 @@ msgid "Anchor" msgstr "앵커" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" -msgstr "키 삽입 (Ins 키)" +#, fuzzy +msgid "Insert Keys" +msgstr "키 삽입" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" @@ -3475,6 +3642,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "MeshInstance에 메쉬가 없습니다!" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "메쉬에 아웃라인을 만들기 위한 서피스가 없습니다!" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "외곽선을 만들수 없습니다!" @@ -3836,17 +4007,15 @@ msgid "Clear UV" msgstr "UV 정리" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "스냅" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "스냅 활성화" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "그리드" @@ -3954,6 +4123,16 @@ msgid "Save Theme As.." msgstr "테마 다른 이름으로 저장.." #: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "스크립트 만들기" + +#: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Previous script" +msgstr "이전 탭" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "파일" @@ -4026,9 +4205,8 @@ msgid "Auto Indent" msgstr "자동 들여쓰기" #: tools/editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Soft Reload Script" -msgstr "툴 스크립트 다시 로드" +msgstr "스크립트 다시 로드" #: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/plugins/shader_editor_plugin.cpp @@ -4140,10 +4318,6 @@ msgid "Search the class hierarchy." msgstr "클래스 계층 검색." #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "도움말 검색" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "레퍼런스 문서 검색." @@ -4180,6 +4354,11 @@ msgstr "다시 저장" msgid "Debugger" msgstr "디버거" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "버텍스" @@ -4413,76 +4592,85 @@ msgid "Align with view" msgstr "뷰에 정렬" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" -msgstr "윗면 (넘버패드7)" +msgid "Environment" +msgstr "환경" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" -msgstr "아랫면 (쉬프트+넘버패드7)" +msgid "Audio Listener" +msgstr "오디오 리스너" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" -msgstr "왼쪽면 (넘버패드3)" +msgid "Gizmos" +msgstr "기즈모" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" -msgstr "오른쪽면 (쉬프트+넘버패드3)" +msgid "XForm Dialog" +msgstr "변환 다이얼로그" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" -msgstr "정면 (넘버패드1)" +msgid "No scene selected to instance!" +msgstr "인스턴스할 씬이 선택되지 않았습니다!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" -msgstr "뒷면 (쉬프트+넘버패드1)" +msgid "Instance at Cursor" +msgstr "커서에 인스턴스 만들기" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" -msgstr "원근보기 (넘버패드5)" +msgid "Could not instance scene!" +msgstr "씬을 인스턴스 할 수 없습니다!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" -msgstr "직교보기 (넘버패드5)" +msgid "Scale Mode (R)" +msgstr "크기조절 모드 (R)" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" -msgstr "환경" +#, fuzzy +msgid "Bottom View" +msgstr "아랫면 보기." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" -msgstr "오디오 리스너" +#, fuzzy +msgid "Top View" +msgstr "윗면 보기." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" -msgstr "기즈모" +#, fuzzy +msgid "Rear View" +msgstr "뒷면 보기." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" -msgstr "선택 (F)" +#, fuzzy +msgid "Front View" +msgstr "정면 보기." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" -msgstr "뷰에 정렬 (컨트롤+쉬프트+F)" +#, fuzzy +msgid "Left View" +msgstr "왼쪽면 보기." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" -msgstr "변환 다이얼로그" +#, fuzzy +msgid "Right View" +msgstr "오른쪽면 보기." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" -msgstr "인스턴스할 씬이 선택되지 않았습니다!" +msgid "Switch Perspective/Orthogonal view" +msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" -msgstr "커서에 인스턴스 만들기" +#, fuzzy +msgid "Insert Animation Key" +msgstr "애니메이션 붙여넣기" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" -msgstr "씬을 인스턴스 할 수 없습니다!" +#, fuzzy +msgid "Focus Selection" +msgstr "선택키 스케일 조절" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" -msgstr "크기조절 모드 (R)" +#, fuzzy +msgid "Align Selection With View" +msgstr "뷰에 정렬" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Transform" @@ -4685,20 +4873,44 @@ msgid "StyleBox Preview:" msgstr "StyleBox 미리보기:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" -msgstr "텍스쳐 구역 편집기" +msgid "Snap Mode:" +msgstr "스냅 모드:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" -msgstr "스케일 구역 편집기" +msgid "<None>" +msgstr "<없음>" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." -msgstr "" -"이 노드에 텍스쳐가 없습니다.\n" -"구역을 편집하기 위해서는 텍스쳐를 지정해야합니다." +msgid "Pixel Snap" +msgstr "픽셀 스냅" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "그리드 스냅" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "자동 자르기" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "오프셋:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "단계:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "간격:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "텍스쳐 영역" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "텍스쳐 구역 편집기" #: tools/editor/plugins/theme_editor_plugin.cpp msgid "Can't save theme to file:" @@ -5179,6 +5391,17 @@ msgid "Couldn't create engine.cfg in project path." msgstr "프로젝트 경로에 engine.cfg를 생성할 수 없습니다." #: tools/editor/project_manager.cpp +#, fuzzy +msgid "The following files failed extraction from package:" +msgstr "" +"다음의 파일들이 디스크상 더 최신입니다.\n" +"어떤 작업을 수행하시겠습니까?:" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "기존 프로젝트 가져오기" @@ -5199,6 +5422,16 @@ msgid "Project Path:" msgstr "프로젝트 경로:" #: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install Project:" +msgstr "최근 프로젝트:" + +#: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install" +msgstr "인스턴스" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "찾아보기" @@ -5364,52 +5597,6 @@ msgid "Add Translation" msgstr "번역 추가" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "유효하지 않은 이름." - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "유효한 문자:" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" -"유효하지 않은 이름입니다. 엔진에 존재하는 클래스 이름과 충돌하지 않아야 합니" -"다." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "유효하지 않은 이름입니다. 내장 타입 이름과 충돌하지 않아야 합니다." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "유효하지 않은 이름입니다. 전역 상수 이름과 충돌하지 않아야 합니다." - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "자동로드에 '%s'이(가) 이미 존재합니다!" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "자동 로드 이름 변경" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "자동로드 글로벌 토글" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "자동 로드 추가" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "자동 로드 삭제" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "자동 로드 이동" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "번역 삭제" @@ -5434,10 +5621,6 @@ msgid "Remove Resource Remap Option" msgstr "리소스 리맵핑 옵션 제거" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "활성화" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "프로젝트 설정 (engine.cfg)" @@ -5510,18 +5693,6 @@ msgid "AutoLoad" msgstr "자동 로드" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "노드 이름:" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "목록:" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "싱글톤" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "플러그인" @@ -5763,12 +5934,16 @@ msgid "Error duplicating scene to save it." msgstr "저장하기 위해 씬을 복제하는 중에 에러가 발생했습니다." #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "새로운 씬 루트" +msgid "Edit Groups" +msgstr "그룹 편집" #: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" -msgstr "상속 씬" +msgid "Edit Connections" +msgstr "연결 편집" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "노드 삭제" #: tools/editor/scene_tree_dock.cpp msgid "Add Child Node" @@ -5783,14 +5958,6 @@ msgid "Change Type" msgstr "타입 변경" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" -msgstr "그룹 편집" - -#: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" -msgstr "연결 편집" - -#: tools/editor/scene_tree_dock.cpp msgid "Add Script" msgstr "스크립트 추가" @@ -5803,10 +5970,6 @@ msgid "Save Branch as Scene" msgstr "선택 노드를 다른 씬으로 저장" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "노드 삭제" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "새 노드 추가/생성" @@ -5938,6 +6101,10 @@ msgid "Show In File Manager" msgstr "파일 매니저에서 보기" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "다시 가져오기.." + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "이전 디렉토리" @@ -6197,6 +6364,67 @@ msgstr "Ray Shape 길이 변경" msgid "Change Notifier Extents" msgstr "Notifier 범위 변경" +#~ msgid "Imported Resources" +#~ msgstr "가져온 리소스" + +#~ msgid "Insert Keys (Ins)" +#~ msgstr "키 삽입 (Ins 키)" + +#~ msgid "Top (Num7)" +#~ msgstr "윗면 (넘버패드7)" + +#~ msgid "Bottom (Shift+Num7)" +#~ msgstr "아랫면 (쉬프트+넘버패드7)" + +#~ msgid "Left (Num3)" +#~ msgstr "왼쪽면 (넘버패드3)" + +#~ msgid "Right (Shift+Num3)" +#~ msgstr "오른쪽면 (쉬프트+넘버패드3)" + +#~ msgid "Front (Num1)" +#~ msgstr "정면 (넘버패드1)" + +#~ msgid "Rear (Shift+Num1)" +#~ msgstr "뒷면 (쉬프트+넘버패드1)" + +#~ msgid "Perspective (Num5)" +#~ msgstr "원근보기 (넘버패드5)" + +#~ msgid "Orthogonal (Num5)" +#~ msgstr "직교보기 (넘버패드5)" + +#~ msgid "Selection (F)" +#~ msgstr "선택 (F)" + +#~ msgid "Align with view (Ctrl+Shift+F)" +#~ msgstr "뷰에 정렬 (컨트롤+쉬프트+F)" + +#~ msgid "Change Anim Loop Interpolation" +#~ msgstr "애니메이션 루프 보간 변경" + +#~ msgid "Enable/Disable interpolation when looping animation." +#~ msgstr "애니메이션 루프 시 보간 활성화/비활성화." + +#~ msgid "Load Layout" +#~ msgstr "레이아웃 로드" + +#~ msgid "Scale Region Editor" +#~ msgstr "스케일 구역 편집기" + +#~ msgid "" +#~ "No texture in this node.\n" +#~ "Set a texture to be able to edit region." +#~ msgstr "" +#~ "이 노드에 텍스쳐가 없습니다.\n" +#~ "구역을 편집하기 위해서는 텍스쳐를 지정해야합니다." + +#~ msgid "New Scene Root" +#~ msgstr "새로운 씬 루트" + +#~ msgid "Inherit Scene" +#~ msgstr "상속 씬" + #~ msgid "Binds (Extra Params):" #~ msgstr "바인드 (추가 파라미터):" @@ -6230,8 +6458,5 @@ msgstr "Notifier 범위 변경" #~ msgid "Set region_rect" #~ msgstr "구역 설정" -#~ msgid "Recent Projects:" -#~ msgstr "최근 프로젝트:" - #~ msgid "Plugin List:" #~ msgstr "플러그인 목록:" diff --git a/tools/translations/pt_BR.po b/tools/translations/pt_BR.po index dadd54d273..bca193bdf8 100644 --- a/tools/translations/pt_BR.po +++ b/tools/translations/pt_BR.po @@ -9,16 +9,16 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: 2016-05-30\n" -"PO-Revision-Date: 2016-06-20 01:48+0000\n" -"Last-Translator: George Marques <georgemjesus@gmail.com>\n" -"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects" -"/godot-engine/godot/pt_BR/>\n" +"PO-Revision-Date: 2016-07-12 12:59+0000\n" +"Last-Translator: Danilo Castro <danilo.moreira94@gmail.com>\n" +"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/" +"godot-engine/godot/pt_BR/>\n" "Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 2.7-dev\n" +"X-Generator: Weblate 2.8-dev\n" #: modules/gdscript/gd_functions.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." @@ -336,9 +336,10 @@ msgstr "Salvar um Arquivo" msgid "Create Folder" msgstr "Criar Pasta" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "Caminho:" @@ -538,6 +539,10 @@ msgid "Anim Add Track" msgstr "Adicionar Trilha na Anim" #: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "Duplicar Chave na Anim" + +#: tools/editor/animation_editor.cpp msgid "Move Anim Track Up" msgstr "Mover Trilha para cima" @@ -550,10 +555,6 @@ msgid "Remove Anim Track" msgstr "Remover Trilha da Anim" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" -msgstr "Duplicar Chave na Anim" - -#: tools/editor/animation_editor.cpp msgid "Set Transitions to:" msgstr "Definir Transições para:" @@ -582,6 +583,20 @@ msgid "Anim Delete Keys" msgstr "Excluir Chaves da Anim" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "Duplicar Seleção" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "Duplicar Transposto" + +#: tools/editor/animation_editor.cpp +#, fuzzy +msgid "Remove Selection" +msgstr "Seleção de Quadros" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "Contínuo" @@ -610,15 +625,6 @@ msgid "Scale From Cursor" msgstr "Mudar Escala a partir do Cursor" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "Duplicar Seleção" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "Duplicar Transposto" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "Ir ao Próximo Passo" @@ -701,10 +707,6 @@ msgid "Change Anim Loop" msgstr "Mudar Loop da Animação" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "Mudar Interpolação do Loop da Animação" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "Criar Chave com Valor Definido" @@ -745,10 +747,6 @@ msgid "Enable/Disable looping in animation." msgstr "Habilitar/Desabilitar loop de animação." #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "Habilitar/Desabilitar interpolação quando repetindo a animação." - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "Adicionar novas trilhas." @@ -897,7 +895,6 @@ msgid "Call" msgstr "Chamar" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -1013,10 +1010,11 @@ msgid "Method in target Node must be specified!" msgstr "O método no Nó destino precisa ser especificado!" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" +msgid "Connect To Node:" msgstr "Conectar ao Nó:" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1124,8 +1122,8 @@ msgstr "Dependências" msgid "Resource" msgstr "Recurso" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "Caminho" @@ -1213,6 +1211,97 @@ msgstr "Excluir os arquivos selecionados?" msgid "Delete" msgstr "Excluir" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "Nome Inválido." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "Caracteres válidos:" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "Nome inválido. Não é permitido utilizar nomes de classes da engine." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" +"Nome inválido. Não é permitido utilizar nomes de tipos internos da engine." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" +"Nome inválido. Não é permitido utilizar nomes de constantes globais da " +"engine." + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid Path." +msgstr "Caminho inválido!" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "File does not exist." +msgstr "O arquivo existe" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr "Caminho do recurso" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Add AutoLoad" +msgstr "Adicionar Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "Autoload \"%s\" já existe!" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "Renomear Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "Alternar Auto Carregamentos de Globais" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "Mover Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "Remover Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "Habilitar" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Rearrange Autoloads" +msgstr "Renomear Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "Nome do Nó:" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "Nome" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "Singleton" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "Lista:" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "Atualizando Cena" @@ -1233,6 +1322,48 @@ msgstr "Escolha um Diretório" msgid "Choose" msgstr "Escolher" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "Voltar" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "Avançar" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "Acima" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "Atualizar" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "Alternar Arquivos Ocultos" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "Alternar Favorito" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "Alternar Modo" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "Focar no Caminho" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Up" +msgstr "Mover Favorito Acima" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Down" +msgstr "Mover Favorito Abaixo" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "Favoritos:" @@ -1253,14 +1384,18 @@ msgstr "Não é possível ir ao subdiretório:" msgid "ScanSources" msgstr "BuscarFontes" -#: tools/editor/editor_help.cpp -msgid "Search Classes" -msgstr "Pesquisar Classes" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "Pesquisar Ajuda" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "Lista de Classes:" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "Pesquisar Classes" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "Classe:" @@ -1358,10 +1493,6 @@ msgstr "Importando:" msgid "Node From Scene" msgstr "Nó a Partir de Cena" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "Re-importar..." - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1488,11 +1619,33 @@ msgstr "Não há cena definida para rodar." #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" +"A cena principal não foi definida, selecionar uma?\n" +"Você pode alterá-la mais tarde nas \"Configurações do Projeto\" na categoria " +"\"application\"." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"A cena selecionada \"%s\" não existe, selecionar uma válida?\n" +"Você pode alterá-la mais tarde nas \"Configurações do Projeto\" na categoria " +"\"application\"." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" -"A cena principal não foi definida.\n" -"Selecione uma nas \"Configurações do Projeto\" na categoria \"application\"." +"A cena selecionada \"%s\" não é um arquivo de cena, selecionar uma válida?\n" +"Você pode alterá-la mais tarde nas \"Configurações do Projeto\" na categoria " +"\"application\"." #: tools/editor/editor_node.cpp msgid "Current scene was never saved, please save it prior to running." @@ -1586,6 +1739,11 @@ msgstr "" "Abrir Gerenciador de Projetos?\n" "(Mudanças não salvas serão perdidas)" +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Pick a Main Scene" +msgstr "Escolha uma Cena Principal" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "Ugh" @@ -1611,18 +1769,14 @@ msgid "Save Layout" msgstr "Salvar Layout" #: tools/editor/editor_node.cpp -msgid "Load Layout" -msgstr "Carregar Layout" +msgid "Delete Layout" +msgstr "Excluir Layout" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp msgid "Default" msgstr "Padrão" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "Excluir Layout" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "Trocar Guia de Cena" @@ -1652,6 +1806,14 @@ msgid "Distraction Free Mode" msgstr "Modo Sem Distrações" #: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "Próxima guia" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "Guia anterior" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "Operações com arquivos de cena." @@ -1672,6 +1834,11 @@ msgid "Save Scene" msgstr "Salvar Cena" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "Salvar Cena" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "Fechar Cena" @@ -1795,6 +1962,11 @@ msgid "Play custom scene" msgstr "Rodar outra cena" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Play Custom Scene" +msgstr "Rodar outra cena" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "Opções de depuração" @@ -1966,7 +2138,6 @@ msgid "Output" msgstr "Saída" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "Reimportar" @@ -2140,10 +2311,6 @@ msgstr "Adicionar ao Grupo" msgid "Remove from Group" msgstr "Remover do Grupo" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "Recursos Importados" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "Sem máscaras de bits para importar!" @@ -2215,6 +2382,14 @@ msgid "No target font resource!" msgstr "Falta recurso de fonte destino!" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" +"Extensão de arquivo inválida.\n" +"Por favor use .fnt." + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "Não se pôde carregar/processar fonte de origem." @@ -2350,12 +2525,6 @@ msgid "Clips" msgstr "Clipes" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "Nome" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "Início(s)" @@ -2454,8 +2623,8 @@ msgid "Couldn't load post-import script:" msgstr "Não se pôde carregar script pós-importação:" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" -msgstr "Script pós-importação inválido/quebrado:" +msgid "Invalid/broken script for post-import (check console):" +msgstr "Script pós-importação inválido/quebrado (verifique o console):" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Error running post-import script:" @@ -3122,13 +3291,11 @@ msgstr "Configurar o Snap" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "Deslocamento da grade:" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "Passo de grade:" @@ -3248,7 +3415,6 @@ msgstr "Usar Snap" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "Mostrar Grade" @@ -3327,8 +3493,9 @@ msgid "Anchor" msgstr "Âncora" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" -msgstr "Inserir Chaves (Ins)" +#, fuzzy +msgid "Insert Keys" +msgstr "Inserir Chave" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" @@ -3501,6 +3668,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "Falta uma MeshInstance na Mesh!" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "Mesh não tem superfície para criar contornos!" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "Não se pôde criar contorno!" @@ -3863,17 +4034,15 @@ msgid "Clear UV" msgstr "Limpar UV" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "Snap" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "Ativar Snap" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "Grade" @@ -3981,6 +4150,16 @@ msgid "Save Theme As.." msgstr "Salvar Tema Como..." #: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "Criar Script" + +#: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Previous script" +msgstr "Guia anterior" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "Arquivo" @@ -4166,10 +4345,6 @@ msgid "Search the class hierarchy." msgstr "Pesquise na hierarquia da classe." #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "Pesquisar Ajuda" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "Pesquise a documentação de referência." @@ -4206,6 +4381,11 @@ msgstr "Salve novamente" msgid "Debugger" msgstr "Depurador" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "Vértice" @@ -4439,76 +4619,85 @@ msgid "Align with view" msgstr "Alinhar com Visão" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" -msgstr "Cima (Num7)" +msgid "Environment" +msgstr "Ambiente" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" -msgstr "Baixo (Shift+Num7)" +msgid "Audio Listener" +msgstr "Ouvinte de Áudio" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" -msgstr "Esquerda (Num3)" +msgid "Gizmos" +msgstr "Gizmos" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" -msgstr "Direita (Shift+Num3)" +msgid "XForm Dialog" +msgstr "Diálogo XForm" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" -msgstr "Frente (Num1)" +msgid "No scene selected to instance!" +msgstr "Nenhuma cena selecionada para instanciar!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" -msgstr "Traseira (Shift+Num1)" +msgid "Instance at Cursor" +msgstr "Instanciar no Cursor" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" -msgstr "Perspectiva (Num5)" +msgid "Could not instance scene!" +msgstr "Não foi possível instanciar cena!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" -msgstr "Ortogonal (Num5)" +msgid "Scale Mode (R)" +msgstr "Modo Escala (R)" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" -msgstr "Ambiente" +#, fuzzy +msgid "Bottom View" +msgstr "Visão inferior." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" -msgstr "Ouvinte de Áudio" +#, fuzzy +msgid "Top View" +msgstr "Visão Superior." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" -msgstr "Gizmos" +#, fuzzy +msgid "Rear View" +msgstr "Visão Traseira." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" -msgstr "Seleção (F)" +#, fuzzy +msgid "Front View" +msgstr "Visão Frontal." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" -msgstr "Alinhar com Visão (Ctrl+Shift+F)" +#, fuzzy +msgid "Left View" +msgstr "Visão Esquerda." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" -msgstr "Diálogo XForm" +#, fuzzy +msgid "Right View" +msgstr "Visão Direita." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" -msgstr "Nenhuma cena selecionada para instanciar!" +msgid "Switch Perspective/Orthogonal view" +msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" -msgstr "Instanciar no Cursor" +#, fuzzy +msgid "Insert Animation Key" +msgstr "Colar Animação" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" -msgstr "Não foi possível instanciar cena!" +#, fuzzy +msgid "Focus Selection" +msgstr "Mudar Escala da Seleção" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" -msgstr "Modo Escala (R)" +#, fuzzy +msgid "Align Selection With View" +msgstr "Alinhar com Visão" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Transform" @@ -4711,20 +4900,44 @@ msgid "StyleBox Preview:" msgstr "Pré-Visualização do StyleBox:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" -msgstr "Editor de Região da Textura" +msgid "Snap Mode:" +msgstr "Modo Snap:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" -msgstr "Editor de Região de Escala" +msgid "<None>" +msgstr "<Nenhum>" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." -msgstr "" -"Sem textura nesse nó.\n" -"Defina uma textura para poder editar essa região." +msgid "Pixel Snap" +msgstr "Snap de Pixel" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "Snap de Grade" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "Auto Fatiar" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "Deslocamento:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "Passo:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "Separação:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "Região da Textura" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "Editor de Região da Textura" #: tools/editor/plugins/theme_editor_plugin.cpp msgid "Can't save theme to file:" @@ -5209,6 +5422,17 @@ msgid "Couldn't create engine.cfg in project path." msgstr "Não se pôde criar engine.cfg no caminho do projeto." #: tools/editor/project_manager.cpp +#, fuzzy +msgid "The following files failed extraction from package:" +msgstr "" +"Os seguintes arquivos são mais recentes no disco.\n" +"Que ação deve ser tomada?:" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "Importar Projeto Existente" @@ -5229,6 +5453,16 @@ msgid "Project Path:" msgstr "Caminho do Projeto:" #: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install Project:" +msgstr "Projetos Recentes:" + +#: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install" +msgstr "Instanciar" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "Navegar" @@ -5393,53 +5627,6 @@ msgid "Add Translation" msgstr "Adicionar Tradução" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "Nome Inválido." - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "Caracteres válidos:" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "Nome inválido. Não é permitido utilizar nomes de classes da engine." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" -"Nome inválido. Não é permitido utilizar nomes de tipos internos da engine." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" -"Nome inválido. Não é permitido utilizar nomes de constantes globais da " -"engine." - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "Autoload \"%s\" já existe!" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "Renomear Autoload" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "Alternar Auto Carregamentos de Globais" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "Adicionar Autoload" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "Remover Autoload" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "Mover Autoload" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "Remover Tradução" @@ -5464,10 +5651,6 @@ msgid "Remove Resource Remap Option" msgstr "Remover Opção de Remapeamento de Recurso" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "Habilitar" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "Configurações do Projeto (engine.cfg)" @@ -5540,18 +5723,6 @@ msgid "AutoLoad" msgstr "AutoLoad" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "Nome do Nó:" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "Lista:" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "Singleton" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "Plugins" @@ -5796,12 +5967,16 @@ msgid "Error duplicating scene to save it." msgstr "Erro duplicando cena ao salvar." #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "Nova Raiz de Cena" +msgid "Edit Groups" +msgstr "Editar Grupos" + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Connections" +msgstr "Editar Conexões" #: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" -msgstr "Herdar Cena" +msgid "Delete Node(s)" +msgstr "Excluir Nó(s)" #: tools/editor/scene_tree_dock.cpp msgid "Add Child Node" @@ -5816,14 +5991,6 @@ msgid "Change Type" msgstr "Alterar Tipo" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" -msgstr "Editar Grupos" - -#: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" -msgstr "Editar Conexões" - -#: tools/editor/scene_tree_dock.cpp msgid "Add Script" msgstr "Adicionar Script" @@ -5836,10 +6003,6 @@ msgid "Save Branch as Scene" msgstr "Salvar Ramo como Cena" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "Excluir Nó(s)" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "Adicionar/Criar um Novo Nó" @@ -5972,6 +6135,10 @@ msgid "Show In File Manager" msgstr "Mostrar no Gerenciador de Arquivos" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "Re-importar..." + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "Diretório Anterior" @@ -6231,6 +6398,67 @@ msgstr "Mudar o tamanho do Shape Ray" msgid "Change Notifier Extents" msgstr "Alterar a Extensão do Notificador" +#~ msgid "Imported Resources" +#~ msgstr "Recursos Importados" + +#~ msgid "Insert Keys (Ins)" +#~ msgstr "Inserir Chaves (Ins)" + +#~ msgid "Top (Num7)" +#~ msgstr "Cima (Num7)" + +#~ msgid "Bottom (Shift+Num7)" +#~ msgstr "Baixo (Shift+Num7)" + +#~ msgid "Left (Num3)" +#~ msgstr "Esquerda (Num3)" + +#~ msgid "Right (Shift+Num3)" +#~ msgstr "Direita (Shift+Num3)" + +#~ msgid "Front (Num1)" +#~ msgstr "Frente (Num1)" + +#~ msgid "Rear (Shift+Num1)" +#~ msgstr "Traseira (Shift+Num1)" + +#~ msgid "Perspective (Num5)" +#~ msgstr "Perspectiva (Num5)" + +#~ msgid "Orthogonal (Num5)" +#~ msgstr "Ortogonal (Num5)" + +#~ msgid "Selection (F)" +#~ msgstr "Seleção (F)" + +#~ msgid "Align with view (Ctrl+Shift+F)" +#~ msgstr "Alinhar com Visão (Ctrl+Shift+F)" + +#~ msgid "Change Anim Loop Interpolation" +#~ msgstr "Mudar Interpolação do Loop da Animação" + +#~ msgid "Enable/Disable interpolation when looping animation." +#~ msgstr "Habilitar/Desabilitar interpolação quando repetindo a animação." + +#~ msgid "Load Layout" +#~ msgstr "Carregar Layout" + +#~ msgid "Scale Region Editor" +#~ msgstr "Editor de Região de Escala" + +#~ msgid "" +#~ "No texture in this node.\n" +#~ "Set a texture to be able to edit region." +#~ msgstr "" +#~ "Sem textura nesse nó.\n" +#~ "Defina uma textura para poder editar essa região." + +#~ msgid "New Scene Root" +#~ msgstr "Nova Raiz de Cena" + +#~ msgid "Inherit Scene" +#~ msgstr "Herdar Cena" + #~ msgid "Binds (Extra Params):" #~ msgstr "Ligações (Parâmetros Extra):" @@ -6264,9 +6492,6 @@ msgstr "Alterar a Extensão do Notificador" #~ msgid "Set region_rect" #~ msgstr "Definir region_rect" -#~ msgid "Recent Projects:" -#~ msgstr "Projetos Recentes:" - #~ msgid "Plugin List:" #~ msgstr "Lista de Plugins:" @@ -6288,12 +6513,6 @@ msgstr "Alterar a Extensão do Notificador" #~ msgid "Next Time:" #~ msgstr "Next Time:" -#~ msgid "Move Favorite Up" -#~ msgstr "Mover Favorito Acima" - -#~ msgid "Move Favorite Down" -#~ msgstr "Mover Favorito Abaixo" - #~ msgid "%d frames" #~ msgstr "%d quadros" diff --git a/tools/translations/ru.po b/tools/translations/ru.po index 63fb6c4177..6575252a3f 100644 --- a/tools/translations/ru.po +++ b/tools/translations/ru.po @@ -3,23 +3,24 @@ # This file is distributed under the same license as the Godot source code. # # DimOkGamer <dimokgamer@gmail.com>, 2016. +# Maxim Kim <habamax@gmail.com>, 2016. # Maxim toby3d Lebedev <mail@toby3d.ru>, 2016. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-06-19 17:29+0300\n" +"PO-Revision-Date: 2016-07-01 17:28+0000\n" "Last-Translator: DimOkGamer <dimokgamer@gmail.com>\n" -"Language-Team: Russian <https://hosted.weblate.org/projects/godot-" -"engine/godot/ru/>\n" +"Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/" +"godot/ru/>\n" "Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "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: Poedit 1.8.8\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 2.7-dev\n" #: modules/gdscript/gd_functions.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." @@ -109,15 +110,15 @@ msgid "" "A shape must be provided for CollisionShape2D to function. Please create a " "shape resource for it!" msgstr "" -"Шэйп должен быть предусмотрен для функций CollisionShape2D. Пожалуйста, " -"создайте шэйп- ресурс для этого!" +"Shape должен быть предусмотрен для функций CollisionShape2D. Пожалуйста, " +"создайте shape-ресурс для этого!" #: scene/2d/light_2d.cpp msgid "" "A texture with the shape of the light must be supplied to the 'texture' " "property." msgstr "" -"Текстуры с формой света должна быть предоставлена параметру \"texture\"." +"Текстуры с формой света должны быть предоставлены параметру \"texture\"." #: scene/2d/light_occluder_2d.cpp msgid "" @@ -136,7 +137,7 @@ msgid "" "A NavigationPolygon resource must be set or created for this node to work. " "Please set a property or draw a polygon." msgstr "" -"Ресурс NavigationPolygon должен быть установлен или создан для этого нода. " +"Ресурс NavigationPolygon должен быть установлен или создан для этого узла. " "Пожалуйста, установите свойство или нарисуйте многоугольник." #: scene/2d/navigation_polygon.cpp @@ -144,20 +145,21 @@ msgid "" "NavigationPolygonInstance must be a child or grandchild to a Navigation2D " "node. It only provides navigation data." msgstr "" -"NavigationPolygonInstance должен быть ребёнком или внуком нода Navigation2D. " -"Он обеспечивает только навигационные данные." +"NavigationPolygonInstance должен быть ребёнком или внуком узла Navigation2D. " +"Он предоставляет только навигационные данные." #: scene/2d/parallax_layer.cpp msgid "" "ParallaxLayer node only works when set as child of a ParallaxBackground node." msgstr "" -"Нод ParallaxLayer работает только при установке его в качестве дочернего " +"Узел ParallaxLayer работает только при установке его в качестве дочернего " "узла ParallaxBackground." #: scene/2d/particles_2d.cpp msgid "Path property must point to a valid Particles2D node to work." msgstr "" -"Свойство Path должен указывать на действительный нод Particles2D для работы." +"Для корректной работы свойство Path должно указывать на действующий узел " +"Particles2D." #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." @@ -167,7 +169,9 @@ msgstr "" #: scene/2d/remote_transform_2d.cpp msgid "Path property must point to a valid Node2D node to work." -msgstr "Свойство Path должен указывать на действительный нод Node2D для работы." +msgstr "" +"Для корректной работы свойство Path должно указывать на действующий узел " +"Node2D." #: scene/2d/sample_player_2d.cpp scene/audio/sample_player.cpp msgid "" @@ -182,24 +186,24 @@ msgid "" "Path property must point to a valid Viewport node to work. Such Viewport " "must be set to 'render target' mode." msgstr "" -"Для работы, параметр Path должен указывать на действительный Нод Viewport. " -"Такой Viewport должен быть установлен в качестве цели рендеринга." +"Для корректной работы свойство Path должно указывать на действующий узел " +"Viewport. Такой Viewport должен быть установлен в режим 'цель рендеринга'." #: scene/2d/sprite.cpp msgid "" "The Viewport set in the path property must be set as 'render target' in " "order for this sprite to work." msgstr "" -"Области просмотра установленная в свойстве path должна быть назначена \"" -"целью визуализации\" для того, чтобы этот спрайт работал." +"Области просмотра установленная в свойстве path должна быть назначена " +"\"целью визуализации\" для того, чтобы этот спрайт работал." #: scene/2d/visibility_notifier_2d.cpp msgid "" "VisibilityEnable2D works best when used with the edited scene root directly " "as parent." msgstr "" -"VisibilityEnable2D работает лучше, когда используется, как дочерний нод " -"корня." +"VisibilityEnable2D работает наилучшим образом при использовании корня " +"редактируемой сцены, как прямого родителя." #: scene/3d/body_shape.cpp msgid "" @@ -216,8 +220,8 @@ msgid "" "A shape must be provided for CollisionShape to function. Please create a " "shape resource for it!" msgstr "" -"Шэйп должен быть предусмотрен для функций CollisionShape. Пожалуйста, " -"создайте шэйп-ресурс для этого!" +"Shape должен быть предусмотрен для функций CollisionShape. Пожалуйста, " +"создайте shape-ресурс для этого!" #: scene/3d/collision_polygon.cpp msgid "" @@ -235,15 +239,16 @@ msgstr "Пустой CollisionPolygon не влияет на столкнове #: scene/3d/navigation_mesh.cpp msgid "A NavigationMesh resource must be set or created for this node to work." -msgstr "Ресурс NavigationMesh должен быть установлен или создан для этого нода." +msgstr "" +"Ресурс NavigationMesh должен быть установлен или создан для этого узла." #: scene/3d/navigation_mesh.cpp msgid "" "NavigationMeshInstance must be a child or grandchild to a Navigation node. " "It only provides navigation data." msgstr "" -"NavigationMeshInstance должен быть ребёнком или внуком нода Navigation. Он " -"обеспечивает только навигационные данные." +"NavigationMeshInstance должен быть дочерним или под-дочерним узлом " +"Navigation. Он предоставляет только навигационные данные." #: scene/3d/scenario_fx.cpp msgid "" @@ -335,9 +340,10 @@ msgstr "Сохранить файл" msgid "Create Folder" msgstr "Создать папку" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "Путь:" @@ -483,7 +489,7 @@ msgstr "" "использовать его, чтобы отобразить его содержимое прямо на экране, сделать " "его потомком Control'а, чтобы он мог получить размер. В противном случае, " "сделайте его целью рендеринга и передайте его внутренние текстуры какому-то " -"другому Ноду для отображения." +"другому узлу для отображения." #: scene/resources/dynamic_font.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp @@ -538,6 +544,10 @@ msgid "Anim Add Track" msgstr "Добавлен новый трек" #: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "Дублированы ключи анимации" + +#: tools/editor/animation_editor.cpp msgid "Move Anim Track Up" msgstr "Трек передвинут вверх" @@ -550,10 +560,6 @@ msgid "Remove Anim Track" msgstr "Трек удалён" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" -msgstr "Дублированы ключи анимации" - -#: tools/editor/animation_editor.cpp msgid "Set Transitions to:" msgstr "Установлен переход на:" @@ -582,6 +588,20 @@ msgid "Anim Delete Keys" msgstr "Ключ удалён" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "Дублировать выделенное" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "Дублировать перемещённый" + +#: tools/editor/animation_editor.cpp +#, fuzzy +msgid "Remove Selection" +msgstr "Кадрировать выбранное" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "Непрерывная" @@ -610,15 +630,6 @@ msgid "Scale From Cursor" msgstr "Масштаб относительно курсора" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "Дублировать выделенное" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "Дублировать перемещённый" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "Перейти к следующему шагу" @@ -701,10 +712,6 @@ msgid "Change Anim Loop" msgstr "Изменено зацикливание анимации" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "Изменена интерполяция анимации" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "Создан ключ с вводимым значением" @@ -745,10 +752,6 @@ msgid "Enable/Disable looping in animation." msgstr "Включить/отключить зацикливание в анимации." #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "Включить/отключить интерполяцию при зацикливании анимации." - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "Добавить новые дорожки." @@ -806,7 +809,7 @@ msgstr "Коэффициент масштабирования:" #: tools/editor/animation_editor.cpp msgid "Call Functions in Which Node?" -msgstr "Вызвать функцию в каком ноде?" +msgstr "Вызвать функции в каком узле?" #: tools/editor/animation_editor.cpp msgid "Remove invalid keys" @@ -897,7 +900,6 @@ msgid "Call" msgstr "Вызов" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -1010,13 +1012,14 @@ msgstr "Стлб:" #: tools/editor/connections_dialog.cpp msgid "Method in target Node must be specified!" -msgstr "Метод должен быть указан в целевом Ноде!" +msgstr "Метод должен быть указан в целевом Узле!" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" -msgstr "Присоединить к ноду:" +msgid "Connect To Node:" +msgstr "Присоединить к узлу:" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1040,7 +1043,7 @@ msgstr "Дополнительные параметры вызова:" #: tools/editor/connections_dialog.cpp msgid "Path to Node:" -msgstr "Путь к ноду:" +msgstr "Путь к Узлу:" #: tools/editor/connections_dialog.cpp msgid "Make Function" @@ -1124,8 +1127,8 @@ msgstr "Зависимости" msgid "Resource" msgstr "Ресурс" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "Путь" @@ -1212,6 +1215,100 @@ msgstr "Удалить выбранные файлы?" msgid "Delete" msgstr "Удалить" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "Недопустимое имя." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "Допустимые символы:" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" +"Недопустимое имя. Не должно конфликтовать с существующим именем класса " +"движка." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" +"Недопустимое имя. Не должно конфликтовать с существующим встроенным именем " +"типа." + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" +"Недопустимое имя. Не должно конфликтовать с существующим глобальным именем " +"константы." + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid Path." +msgstr "Недопустимый путь!" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "File does not exist." +msgstr "Файл существует" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr "Путь ресурса" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Add AutoLoad" +msgstr "Добавлена автозагрузка" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "Автозагрузка '%s' уже существует!" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "Переименовать автозагрузку" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "Переключена автозагрузка глобальных скриптов" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "Передвинута автозагрузка" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "Удалена автозагрузка" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "Включить" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Rearrange Autoloads" +msgstr "Переименовать автозагрузку" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "Имя Узла:" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "Имя" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "Синглтон" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "Список:" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "Обновление сцены" @@ -1232,6 +1329,48 @@ msgstr "Выбрать каталог" msgid "Choose" msgstr "Выбрать" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "Назад" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "Вперёд" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "Вверх" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "Обновить" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "Скрыть файлы" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "Добавить в избранное" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "Переключить режим отображения" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "Фокус на пути" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Up" +msgstr "Избранное по порядку" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Down" +msgstr "Избранное в обратном порядке" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "Избранное:" @@ -1252,14 +1391,18 @@ msgstr "Невозможно перейти в подпапку:" msgid "ScanSources" msgstr "Просканировать исходники" -#: tools/editor/editor_help.cpp -msgid "Search Classes" -msgstr "Поиск классов" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "Поиск внутри классов" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "Список классов:" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "Поиск классов" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "Класс:" @@ -1355,11 +1498,7 @@ msgstr "Импортируется:" #: tools/editor/editor_node.cpp msgid "Node From Scene" -msgstr "Нод со сцены" - -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "Переимпортировать.." +msgstr "Узел со сцены" #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp @@ -1487,11 +1626,32 @@ msgstr "Нет определённой сцены, чтобы работать. #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" +"Не назначена главная сцена. Хотите выбрать?\n" +"Позже вы можете указать её в параметре \"main_scene\" расположенном\n" +"в \"Настройки проекта - Основное - application\"." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" -"Не назначена главная сцена.\n" -"Укажите её в параметре \"main_scene\" расположенном\n" +"Выбранная сцена '%s' не существует. Хотите выбрать другую?\n" +"Позже вы можете указать её в параметре \"main_scene\" расположенном\n" +"в \"Настройки проекта - Основное - application\"." + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"Выбранный файл '%s' не является файлом сцены. Хотите выбрать другой файл?\n" +"Позже вы можете указать её в параметре \"main_scene\" расположенном\n" "в \"Настройки проекта - Основное - application\"." #: tools/editor/editor_node.cpp @@ -1586,6 +1746,11 @@ msgstr "" "Открыть менеджер проектов? \n" "(Несохранённые изменения будут потеряны.)" +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Pick a Main Scene" +msgstr "Выберите главную сцену" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "Ясно" @@ -1612,18 +1777,14 @@ msgid "Save Layout" msgstr "Сохранить макет" #: tools/editor/editor_node.cpp -msgid "Load Layout" -msgstr "Загрузить макет" +msgid "Delete Layout" +msgstr "Удалить макет" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp msgid "Default" msgstr "По-умолчанию" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "Удалить макет" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "Смена вкладки со сценой" @@ -1653,6 +1814,14 @@ msgid "Distraction Free Mode" msgstr "Свободный режим" #: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "Следующая вкладка" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "Предыдущая вкладка" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "Операции с файлами сцены." @@ -1673,6 +1842,11 @@ msgid "Save Scene" msgstr "Сохранить сцену" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "Сохранить сцену" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "Закрыть сцену" @@ -1796,6 +1970,11 @@ msgid "Play custom scene" msgstr "Запустить выборочную сцену" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Play Custom Scene" +msgstr "Запустить выборочную сцену" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "Параметры отладки" @@ -1839,7 +2018,7 @@ msgid "" "Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " "running game if this option is turned on." msgstr "" -"Когда эта опция включена, области соприкосновений и ноды Raycast(в 2D и 3D) " +"Когда эта опция включена, области соприкосновений и узлы Raycast(в 2D и 3D) " "будут видимыми в запущенной игре." #: tools/editor/editor_node.cpp @@ -1967,7 +2146,6 @@ msgid "Output" msgstr "Вывод" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "Импортировать снова" @@ -2117,7 +2295,7 @@ msgstr "По-умолчанию (как редактор)" #: tools/editor/editor_sub_scene.cpp msgid "Select Node(s) to Import" -msgstr "Выберите нод(ы) для импорта" +msgstr "Выберите Узел(узлы) для импорта" #: tools/editor/editor_sub_scene.cpp msgid "Scene Path:" @@ -2125,7 +2303,7 @@ msgstr "Путь к сцене:" #: tools/editor/editor_sub_scene.cpp msgid "Import From Node:" -msgstr "Импортировать из нода:" +msgstr "Импортировать из Узла:" #: tools/editor/file_type_cache.cpp msgid "Can't open file_type_cache.cch for writing, not saving file type cache!" @@ -2141,10 +2319,6 @@ msgstr "Добавить в группу" msgid "Remove from Group" msgstr "Удалить из группы" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "Импортированные ресурсы" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "Нет битовой маски для импорта!" @@ -2216,6 +2390,14 @@ msgid "No target font resource!" msgstr "Нет целевого ресурса шрифта!" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" +"Недопустимое расширение файла.\n" +"Пожалуйста, используйте .fnt." + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "Не удалось загрузить/исполнить исходный шрифт." @@ -2351,12 +2533,6 @@ msgid "Clips" msgstr "Клипы" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "Имя" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "Нач(с.)" @@ -2415,7 +2591,7 @@ msgstr "Скрипт пост-процесса:" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Custom Root Node Type:" -msgstr "Настраиваемый тип корневого нода:" +msgstr "Настраиваемый тип корневого узла:" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Auto" @@ -2457,8 +2633,8 @@ msgid "Couldn't load post-import script:" msgstr "Не могу загрузить скрипт для пост-импорта:" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" -msgstr "Повреждённый/сломанный скрипт для пост-импорта:" +msgid "Invalid/broken script for post-import (check console):" +msgstr "Повреждённый/сломанный скрипт для пост-импорта (проверьте консоль):" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Error running post-import script:" @@ -2719,11 +2895,11 @@ msgstr "Перевод" #: tools/editor/multi_node_edit.cpp msgid "MultiNode Set" -msgstr "Мульти нодовый набор" +msgstr "Мульти-узловый набор" #: tools/editor/node_dock.cpp msgid "Node" -msgstr "Нод" +msgstr "Узел" #: tools/editor/node_dock.cpp msgid "Groups" @@ -2731,9 +2907,7 @@ msgstr "Группы" #: tools/editor/node_dock.cpp msgid "Select a Node to edit Signals and Groups." -msgstr "" -"Выберите нод для редактирования\n" -"сигналов и групп." +msgstr "Выберите узел для редактирования сигналов и групп." #: tools/editor/plugins/animation_player_editor_plugin.cpp msgid "Toggle Autoplay" @@ -3010,39 +3184,39 @@ msgstr "Дерево анимации не действительно." #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Animation Node" -msgstr "Animation нод" +msgstr "Animation узел" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "OneShot Node" -msgstr "OneShot нод" +msgstr "OneShot узел" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Mix Node" -msgstr "Mix нод" +msgstr "Mix узел" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Blend2 Node" -msgstr "Blend2 нод" +msgstr "Blend2 узел" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Blend3 Node" -msgstr "Blend3 нод" +msgstr "Blend3 узел" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Blend4 Node" -msgstr "Blend4 нод" +msgstr "Blend4 узел" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "TimeScale Node" -msgstr "TimeScale нод" +msgstr "TimeScale узел" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "TimeSeek Node" -msgstr "TimeSeek нод" +msgstr "TimeSeek узел" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Transition Node" -msgstr "Transition нод" +msgstr "Transition узел" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Import Animations.." @@ -3050,7 +3224,7 @@ msgstr "Импортировать анимации.." #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Edit Node Filters" -msgstr "Редактировать фильтры нода" +msgstr "Редактировать фильтры узла" #: tools/editor/plugins/animation_tree_editor_plugin.cpp msgid "Filters.." @@ -3127,13 +3301,11 @@ msgstr "Настроить привязку" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "Отступ сетку:" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "Шаг сетки:" @@ -3253,7 +3425,6 @@ msgstr "Использовать привязку" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "Показать сетку" @@ -3332,8 +3503,9 @@ msgid "Anchor" msgstr "Привязка" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" -msgstr "Вставить ключи (Ins)" +#, fuzzy +msgid "Insert Keys" +msgstr "Вставить ключ" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" @@ -3506,6 +3678,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "В MeshInstance нет полисетки!" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "Полиcетка не имеет поверхности для создания контура!" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "Невозможно создать контур!" @@ -3543,7 +3719,7 @@ msgstr "Размер обводки:" #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "No mesh source specified (and no MultiMesh set in node)." -msgstr "Не указана исходная полисетка (и мульти полисетка не указана в ноде)." +msgstr "Не указан источник полисетки (и мульти полисетка не указана в узле)." #: tools/editor/plugins/multimesh_editor_plugin.cpp msgid "No mesh source specified (and MultiMesh contains no Mesh)." @@ -3675,11 +3851,11 @@ msgstr "Количество создаваемых точек:" #: tools/editor/plugins/particles_editor_plugin.cpp msgid "Node does not contain geometry." -msgstr "Нод не содержит геометрии." +msgstr "Узел не содержит геометрии." #: tools/editor/plugins/particles_editor_plugin.cpp msgid "Node does not contain geometry (faces)." -msgstr "Нод не содержит геометрии (грани)." +msgstr "Узел не содержит геометрии (грани)." #: tools/editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" @@ -3699,7 +3875,7 @@ msgstr "Создать излучатель из полисетки" #: tools/editor/plugins/particles_editor_plugin.cpp msgid "Create Emitter From Node" -msgstr "Создать излучатель из нода" +msgstr "Создать излучатель из узла" #: tools/editor/plugins/particles_editor_plugin.cpp msgid "Clear Emitter" @@ -3867,17 +4043,15 @@ msgid "Clear UV" msgstr "Очистить UV" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "Привязка" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "Активировать привязку" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "Сетка" @@ -3985,6 +4159,16 @@ msgid "Save Theme As.." msgstr "Сохранить тему как.." #: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "Создать скрипт" + +#: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Previous script" +msgstr "Предыдущая вкладка" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "Файл" @@ -4170,10 +4354,6 @@ msgid "Search the class hierarchy." msgstr "Поиск в классовой иерархии." #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "Поиск внутри классов" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "Поиск справочной документации." @@ -4210,6 +4390,11 @@ msgstr "Пересохранить" msgid "Debugger" msgstr "Отладчик" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "Вертекс" @@ -4443,76 +4628,85 @@ msgid "Align with view" msgstr "Совместить с видом" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" -msgstr "Вид сверху (Num 7)" +msgid "Environment" +msgstr "Окружение" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" -msgstr "Вид снизу (Shift+Num7)" +msgid "Audio Listener" +msgstr "Прослушиватель звука" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" -msgstr "Вид слева (Num3)" +msgid "Gizmos" +msgstr "Вещицы" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" -msgstr "Вид справа (Shift+)" +msgid "XForm Dialog" +msgstr "XForm диалоговое окно" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" -msgstr "Вид спереди (Num1)" +msgid "No scene selected to instance!" +msgstr "Не выбрана сцена!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" -msgstr "Вид сзади (Shift+Num1)" +msgid "Instance at Cursor" +msgstr "Экземпляр на курсор" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" -msgstr "Перспектива (Num5)" +msgid "Could not instance scene!" +msgstr "Не возможно добавить сцену!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" -msgstr "Ортогонально (Num5)" +msgid "Scale Mode (R)" +msgstr "Режим масштабирования (R)" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" -msgstr "Окружение" +#, fuzzy +msgid "Bottom View" +msgstr "Вид Снизу." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" -msgstr "Прослушиватель звука" +#, fuzzy +msgid "Top View" +msgstr "Вид сверху." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" -msgstr "Вещицы" +#, fuzzy +msgid "Rear View" +msgstr "Вид сзади." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" -msgstr "Показать выбранный нод (F)" +#, fuzzy +msgid "Front View" +msgstr "Вид спереди." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" -msgstr "Совместите с видом (Ctrl+Shift+F)" +#, fuzzy +msgid "Left View" +msgstr "Вид слева." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" -msgstr "XForm диалоговое окно" +#, fuzzy +msgid "Right View" +msgstr "Вид справа." #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" -msgstr "Не выбрана сцена!" +msgid "Switch Perspective/Orthogonal view" +msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" -msgstr "Экземпляр на курсор" +#, fuzzy +msgid "Insert Animation Key" +msgstr "Вставить анимацию" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" -msgstr "Не возможно добавить сцену!" +#, fuzzy +msgid "Focus Selection" +msgstr "Масштаб выбранного промежутка" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" -msgstr "Режим масштабирования (R)" +#, fuzzy +msgid "Align Selection With View" +msgstr "Совместить с видом" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Transform" @@ -4715,20 +4909,44 @@ msgid "StyleBox Preview:" msgstr "StyleBox предпросмотр:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" -msgstr "Редактор области текстуры" +msgid "Snap Mode:" +msgstr "Режим привязки:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" -msgstr "Редактор масштабируемой области текстуры" +msgid "<None>" +msgstr "<Нет>" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." -msgstr "" -"В этом ноде нет текстуры.\n" -"Выберите текстуру, чтобы редактировать область." +msgid "Pixel Snap" +msgstr "Попиксельная привязка" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "Привязка по сетке" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "Автоматически" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "Отступ:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "Шаг:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "Разделение:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "Область текстуры" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "Редактор области текстуры" #: tools/editor/plugins/theme_editor_plugin.cpp msgid "Can't save theme to file:" @@ -5019,8 +5237,8 @@ msgstr "Действие" msgid "" "Filters to export non-resource files (comma-separated, e.g.: *.json, *.txt):" msgstr "" -"Фильтр для экспорта не ресурсных файлов (через запятую, например: *.json, " -"*.txt):" +"Фильтр для экспорта не ресурсных файлов (через запятую, например: *.json, *." +"txt):" #: tools/editor/project_export.cpp msgid "Filters to exclude from export (comma-separated, e.g.: *.json, *.txt):" @@ -5211,6 +5429,17 @@ msgid "Couldn't create engine.cfg in project path." msgstr "Не могу создать engine.cfg в папке проекта." #: tools/editor/project_manager.cpp +#, fuzzy +msgid "The following files failed extraction from package:" +msgstr "" +"Следующие файлы новее на диске.\n" +"Какие меры должны быть приняты?:" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "Импортировать существующий проект" @@ -5231,6 +5460,16 @@ msgid "Project Path:" msgstr "Путь к проекту:" #: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install Project:" +msgstr "Последние проекты:" + +#: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install" +msgstr "Добавить экземпляр" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "Обзор" @@ -5395,56 +5634,6 @@ msgid "Add Translation" msgstr "Добавлен перевод" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "Недопустимое имя." - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "Допустимые символы:" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" -"Недопустимое имя. Не должно конфликтовать с существующим именем класса " -"движка." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" -"Недопустимое имя. Не должно конфликтовать с существующим встроенным именем " -"типа." - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" -"Недопустимое имя. Не должно конфликтовать с существующим глобальным именем " -"константы." - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "Автозагрузка '%s' уже существует!" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "Переименовать автозагрузку" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "Переключена автозагрузка глобальных скриптов" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "Добавлена автозагрузка" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "Удалена автозагрузка" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "Передвинута автозагрузка" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "Перевод удалён" @@ -5469,10 +5658,6 @@ msgid "Remove Resource Remap Option" msgstr "Удалён параметр ресурса перенаправления" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "Включить" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "Настройки проекта (engine.cfg)" @@ -5545,18 +5730,6 @@ msgid "AutoLoad" msgstr "Автозагрузка" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "Имя Нода:" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "Список:" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "Синглтон" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "Плагины" @@ -5644,7 +5817,7 @@ msgstr "" #: tools/editor/reparent_dialog.cpp tools/editor/scene_tree_dock.cpp msgid "Reparent Node" -msgstr "Переподчинить нод" +msgstr "Переподчинить узел" #: tools/editor/reparent_dialog.cpp msgid "Reparent Location (Select new Parent):" @@ -5724,7 +5897,7 @@ msgid "" "of its nodes." msgstr "" "Невозможно добавить сцену %s, потому что текущая сцена существует в одном из " -"его нодов." +"его узлов." #: tools/editor/scene_tree_dock.cpp msgid "Instance Scene(s)" @@ -5736,19 +5909,19 @@ msgstr "Эта операция не может быть произведена #: tools/editor/scene_tree_dock.cpp msgid "Move Node In Parent" -msgstr "Перемещение нода в Родительский" +msgstr "Перемещение узла в Родительский" #: tools/editor/scene_tree_dock.cpp msgid "Move Nodes In Parent" -msgstr "Перемещение нодов в родительский" +msgstr "Перемещение узлов в Родительский" #: tools/editor/scene_tree_dock.cpp msgid "Duplicate Node(s)" -msgstr "Дублирован нод(ы)" +msgstr "Дублировать узел(узлы)" #: tools/editor/scene_tree_dock.cpp msgid "Delete Node(s)?" -msgstr "Удалить нод(ы)?" +msgstr "Удалить узел(узлы)?" #: tools/editor/scene_tree_dock.cpp msgid "This operation can't be done without a scene." @@ -5756,7 +5929,7 @@ msgstr "Эта операция не может быть выполнена бе #: tools/editor/scene_tree_dock.cpp msgid "This operation requires a single selected node." -msgstr "Эта операция требует одного выбранного нода." +msgstr "Эта операция требует одного выбранного узла." #: tools/editor/scene_tree_dock.cpp msgid "This operation can't be done on instanced scenes." @@ -5772,19 +5945,19 @@ msgstr "Уууу круто!" #: tools/editor/scene_tree_dock.cpp msgid "Can't operate on nodes from a foreign scene!" -msgstr "Не могу работать с нодами из внешней сцены!" +msgstr "Не могу работать с узлами из внешней сцены!" #: tools/editor/scene_tree_dock.cpp msgid "Can't operate on nodes the current scene inherits from!" -msgstr "Невозможно работать с нодами текущей сцены, наследуемой откуда-то!" +msgstr "Невозможно работать с узлами, от которых унаследована текущая сцена!" #: tools/editor/scene_tree_dock.cpp msgid "Remove Node(s)" -msgstr "Удалён нод(ы)" +msgstr "Удалить узел(узлы)" #: tools/editor/scene_tree_dock.cpp msgid "Create Node" -msgstr "Создан нод" +msgstr "Создать узел" #: tools/editor/scene_tree_dock.cpp msgid "" @@ -5800,19 +5973,23 @@ msgstr "Ошибка сохранения сцены." #: tools/editor/scene_tree_dock.cpp msgid "Error duplicating scene to save it." -msgstr "Ошибка дублирования сцены, чтобы сохранить её." +msgstr "Ошибка дублирования сцены, при её сохранении." + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Groups" +msgstr "Редактировать группы" #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "Новый корень сцены" +msgid "Edit Connections" +msgstr "Редактировать связи" #: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" -msgstr "Унаследовать сцену" +msgid "Delete Node(s)" +msgstr "Удалить узел(узлы)" #: tools/editor/scene_tree_dock.cpp msgid "Add Child Node" -msgstr "Добавить дочерний нод" +msgstr "Добавить дочерний узел" #: tools/editor/scene_tree_dock.cpp msgid "Instance Child Scene" @@ -5823,14 +6000,6 @@ msgid "Change Type" msgstr "Изменить тип" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" -msgstr "Редактировать группы" - -#: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" -msgstr "Редактировать связи" - -#: tools/editor/scene_tree_dock.cpp msgid "Add Script" msgstr "Добавить скрипт" @@ -5843,10 +6012,6 @@ msgid "Save Branch as Scene" msgstr "Сохранить ветку, как сцену" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "Удалить нод(ы)" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "Добавить/создать новый узел" @@ -5855,7 +6020,7 @@ msgid "" "Instance a scene file as a Node. Creates an inherited scene if no root node " "exists." msgstr "" -"Добавить файл сцены как нод. Создаёт наследуемую сцену, если корневой узел " +"Добавить файл сцены как узел. Создаёт наследуемую сцену, если корневой узел " "не существует." #: tools/editor/scene_tree_editor.cpp @@ -5864,7 +6029,7 @@ msgid "" "parent first." msgstr "" "Этот объект не может быть отображён, потому что его родитель скрыт. " -"Отобразите сначала родительский нод." +"Отобразите сначала родительский узел." #: tools/editor/scene_tree_editor.cpp msgid "Toggle Spatial Visible" @@ -5880,15 +6045,15 @@ msgstr "Экземпляр:" #: tools/editor/scene_tree_editor.cpp msgid "Invalid node name, the following characters are not allowed:" -msgstr "Недопустимые символы в названии нода:" +msgstr "Некорректное имя узла, следующие символы недопустимы:" #: tools/editor/scene_tree_editor.cpp msgid "Rename Node" -msgstr "Нод переименован" +msgstr "Переименовать узел" #: tools/editor/scene_tree_editor.cpp msgid "Scene Tree (Nodes):" -msgstr "Дерево сцены (ноды):" +msgstr "Дерево сцены (Узлы):" #: tools/editor/scene_tree_editor.cpp msgid "Editable Children" @@ -5920,7 +6085,7 @@ msgstr "Очистить!" #: tools/editor/scene_tree_editor.cpp msgid "Select a Node" -msgstr "Выберете нод" +msgstr "Выбрать узел" #: tools/editor/scenes_dock.cpp msgid "Same source and destination files, doing nothing." @@ -5979,6 +6144,10 @@ msgid "Show In File Manager" msgstr "Просмотреть в проводнике" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "Переимпортировать.." + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "Предыдущий каталог" @@ -5996,7 +6165,7 @@ msgstr "Переключить статус папки как избранной #: tools/editor/scenes_dock.cpp msgid "Instance the selected scene(s) as child of the selected node." -msgstr "Добавить выбранную сцену(сцены), как потомка выбранного нода." +msgstr "Добавить выбранную сцену(сцены), как потомка выбранного узла." #: tools/editor/scenes_dock.cpp msgid "Move" @@ -6072,7 +6241,7 @@ msgstr "Встроенный Скрипт" #: tools/editor/script_create_dialog.cpp msgid "Create Node Script" -msgstr "Создать скрипт для нода" +msgstr "Создать скрипт для узла" #: tools/editor/script_editor_debugger.cpp msgid "Bytes:" @@ -6184,11 +6353,11 @@ msgstr "Прочее" #: tools/editor/script_editor_debugger.cpp msgid "Clicked Control:" -msgstr "Нажатый нод:" +msgstr "Нажатый элемент управления:" #: tools/editor/script_editor_debugger.cpp msgid "Clicked Control Type:" -msgstr "Тип нажатого нода:" +msgstr "Тип нажатого элемента управления:" #: tools/editor/script_editor_debugger.cpp msgid "Live Edit Root:" @@ -6196,7 +6365,7 @@ msgstr "Редактирование корня в реальном времен #: tools/editor/script_editor_debugger.cpp msgid "Set From Tree" -msgstr "Установить из дерева нодов" +msgstr "Установить из дерева" #: tools/editor/settings_config_dialog.cpp msgid "Shortcuts" @@ -6238,6 +6407,67 @@ msgstr "Изменена длинна луча" msgid "Change Notifier Extents" msgstr "Изменены границы уведомителя" +#~ msgid "Imported Resources" +#~ msgstr "Импортированные ресурсы" + +#~ msgid "Insert Keys (Ins)" +#~ msgstr "Вставить ключи (Ins)" + +#~ msgid "Top (Num7)" +#~ msgstr "Вид сверху (Num 7)" + +#~ msgid "Bottom (Shift+Num7)" +#~ msgstr "Вид снизу (Shift+Num7)" + +#~ msgid "Left (Num3)" +#~ msgstr "Вид слева (Num3)" + +#~ msgid "Right (Shift+Num3)" +#~ msgstr "Вид справа (Shift+)" + +#~ msgid "Front (Num1)" +#~ msgstr "Вид спереди (Num1)" + +#~ msgid "Rear (Shift+Num1)" +#~ msgstr "Вид сзади (Shift+Num1)" + +#~ msgid "Perspective (Num5)" +#~ msgstr "Перспектива (Num5)" + +#~ msgid "Orthogonal (Num5)" +#~ msgstr "Ортогонально (Num5)" + +#~ msgid "Selection (F)" +#~ msgstr "Показать выбранный узел (F)" + +#~ msgid "Align with view (Ctrl+Shift+F)" +#~ msgstr "Совместите с видом (Ctrl+Shift+F)" + +#~ msgid "Change Anim Loop Interpolation" +#~ msgstr "Изменена интерполяция анимации" + +#~ msgid "Enable/Disable interpolation when looping animation." +#~ msgstr "Включить/отключить интерполяцию при зацикливании анимации." + +#~ msgid "Load Layout" +#~ msgstr "Загрузить макет" + +#~ msgid "Scale Region Editor" +#~ msgstr "Редактор масштабируемой области текстуры" + +#~ msgid "" +#~ "No texture in this node.\n" +#~ "Set a texture to be able to edit region." +#~ msgstr "" +#~ "В этом узле нет текстуры.\n" +#~ "Выберите текстуру, чтобы редактировать область." + +#~ msgid "New Scene Root" +#~ msgstr "Новый корень сцены" + +#~ msgid "Inherit Scene" +#~ msgstr "Унаследовать сцену" + #~ msgid "Binds (Extra Params):" #~ msgstr "Связи (необязательные параметры):" @@ -6271,9 +6501,6 @@ msgstr "Изменены границы уведомителя" #~ msgid "Set region_rect" #~ msgstr "Установить прямоугольник региона" -#~ msgid "Recent Projects:" -#~ msgstr "Последние проекты:" - #~ msgid "Plugin List:" #~ msgstr "Список плагинов:" diff --git a/tools/translations/sk.po b/tools/translations/sk.po index b21333b7f8..eaba6f1752 100644 --- a/tools/translations/sk.po +++ b/tools/translations/sk.po @@ -2,13 +2,13 @@ # Copyright (C) 2016 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # -# lablazer <avojtus@centrum.sk>, 2016. +# J08nY <johnenter@gmail.com>, 2016. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2016-06-11 11:23+0000\n" -"Last-Translator: lablazer <avojtus@centrum.sk>\n" +"PO-Revision-Date: 2016-06-25 14:16+0000\n" +"Last-Translator: J08nY <johnenter@gmail.com>\n" "Language-Team: Slovak <https://hosted.weblate.org/projects/godot-engine/" "godot/sk/>\n" "Language: sk\n" @@ -19,15 +19,15 @@ msgstr "" #: modules/gdscript/gd_functions.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." -msgstr "" +msgstr "Chybný argument convert(), použite TYPE_* konštanty." #: modules/gdscript/gd_functions.cpp msgid "Not enough bytes for decoding bytes, or invalid format." -msgstr "" +msgstr "Nedostatok bajtov na dekódovanie, možný chybný formát." #: modules/gdscript/gd_functions.cpp msgid "step argument is zero!" -msgstr "" +msgstr "argument \"step\"/krok je nulový!" #: modules/gdscript/gd_functions.cpp msgid "Not a script with an instance" @@ -241,7 +241,7 @@ msgstr "" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp msgid "All Recognized" -msgstr "" +msgstr "Všetko rozpoznané" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp msgid "All Files (*)" @@ -252,64 +252,65 @@ msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp #: tools/editor/scenes_dock.cpp msgid "Open" -msgstr "" +msgstr "Otvoriť" #: scene/gui/file_dialog.cpp msgid "Open a File" -msgstr "" +msgstr "Otvoriť súbor" #: scene/gui/file_dialog.cpp msgid "Open File(s)" -msgstr "" +msgstr "Otvoriť súbor(y)" #: scene/gui/file_dialog.cpp msgid "Open a Directory" -msgstr "" +msgstr "Otvorit priečinok" #: scene/gui/file_dialog.cpp msgid "Open a File or Directory" -msgstr "" +msgstr "Otvoriť súbor / priečinok" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/script_editor_plugin.cpp msgid "Save" -msgstr "" +msgstr "Uložiť" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp msgid "Save a File" -msgstr "" +msgstr "Uložiť súbor" #: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp #: tools/editor/editor_file_dialog.cpp msgid "Create Folder" -msgstr "" +msgstr "Vytvoriť adresár" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" -msgstr "" +msgstr "Cesta:" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp msgid "Directories & Files:" -msgstr "" +msgstr "Priečinky a Súbory:" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp #: tools/editor/script_editor_debugger.cpp msgid "File:" -msgstr "" +msgstr "Súbor:" #: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp msgid "Filter:" -msgstr "" +msgstr "Filter:" #: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp #: tools/editor/editor_file_dialog.cpp tools/editor/editor_plugin_settings.cpp #: tools/editor/plugins/theme_editor_plugin.cpp msgid "Name:" -msgstr "" +msgstr "Meno:" #: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp #: tools/editor/editor_file_dialog.cpp @@ -323,29 +324,29 @@ msgstr "" #: scene/gui/input_action.cpp tools/editor/project_settings.cpp #: tools/editor/settings_config_dialog.cpp msgid "Shift+" -msgstr "" +msgstr "Shift+" #: scene/gui/input_action.cpp tools/editor/project_settings.cpp #: tools/editor/settings_config_dialog.cpp msgid "Alt+" -msgstr "" +msgstr "Alt+" #: scene/gui/input_action.cpp msgid "Ctrl+" -msgstr "" +msgstr "Ctrl+" #: scene/gui/input_action.cpp tools/editor/project_settings.cpp #: tools/editor/settings_config_dialog.cpp msgid "Meta+" -msgstr "" +msgstr "Meta+" #: scene/gui/input_action.cpp tools/editor/project_settings.cpp msgid "Device" -msgstr "" +msgstr "Zariadenie" #: scene/gui/input_action.cpp tools/editor/project_settings.cpp msgid "Button" -msgstr "" +msgstr "Tlačidlo" #: scene/gui/input_action.cpp tools/editor/project_settings.cpp msgid "Left Button." @@ -369,7 +370,7 @@ msgstr "" #: scene/gui/input_action.cpp tools/editor/project_settings.cpp msgid "Axis" -msgstr "" +msgstr "Os" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp #: tools/editor/plugins/script_editor_plugin.cpp @@ -382,7 +383,7 @@ msgstr "" #: tools/editor/plugins/shader_editor_plugin.cpp #: tools/editor/property_editor.cpp tools/editor/resources_dock.cpp msgid "Copy" -msgstr "" +msgstr "Kopírovať" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -391,7 +392,7 @@ msgstr "" #: tools/editor/plugins/sprite_frames_editor_plugin.cpp #: tools/editor/property_editor.cpp tools/editor/resources_dock.cpp msgid "Paste" -msgstr "" +msgstr "Vložiť" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp #: tools/editor/plugins/script_editor_plugin.cpp @@ -411,7 +412,7 @@ msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Undo" -msgstr "" +msgstr "Späť" #: scene/gui/popup.cpp msgid "" @@ -454,7 +455,7 @@ msgstr "" #: tools/editor/animation_editor.cpp msgid "All Selection" -msgstr "" +msgstr "Všetky vybrané" #: tools/editor/animation_editor.cpp msgid "Move Add Key" @@ -481,19 +482,19 @@ msgid "Anim Add Track" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Up" +msgid "Anim Duplicate Keys" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Down" +msgid "Move Anim Track Up" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Remove Anim Track" +msgid "Move Anim Track Down" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" +msgid "Remove Anim Track" msgstr "" #: tools/editor/animation_editor.cpp @@ -525,6 +526,20 @@ msgid "Anim Delete Keys" msgstr "" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp +#, fuzzy +msgid "Remove Selection" +msgstr "Všetky vybrané" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "" @@ -553,15 +568,6 @@ msgid "Scale From Cursor" msgstr "" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "" @@ -644,10 +650,6 @@ msgid "Change Anim Loop" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "" @@ -688,10 +690,6 @@ msgid "Enable/Disable looping in animation." msgstr "" #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "" @@ -809,7 +807,7 @@ msgstr "" #: tools/editor/asset_library_editor_plugin.cpp msgid "Site:" -msgstr "" +msgstr "Stránka:" #: tools/editor/asset_library_editor_plugin.cpp msgid "Support.." @@ -821,7 +819,7 @@ msgstr "" #: tools/editor/asset_library_editor_plugin.cpp msgid "Community" -msgstr "" +msgstr "Komunita" #: tools/editor/asset_library_editor_plugin.cpp msgid "Testing" @@ -840,7 +838,6 @@ msgid "Call" msgstr "" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -956,10 +953,11 @@ msgid "Method in target Node must be specified!" msgstr "" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" +msgid "Connect To Node:" msgstr "" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1063,8 +1061,8 @@ msgstr "" msgid "Resource" msgstr "" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "" @@ -1149,6 +1147,89 @@ msgstr "" msgid "Delete" msgstr "" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Not in resource path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "" @@ -1169,6 +1250,46 @@ msgstr "" msgid "Choose" msgstr "" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "" @@ -1189,17 +1310,21 @@ msgstr "" msgid "ScanSources" msgstr "" -#: tools/editor/editor_help.cpp -msgid "Search Classes" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" msgstr "" #: tools/editor/editor_help.cpp msgid "Class List:" +msgstr "Zoznam tried:" + +#: tools/editor/editor_help.cpp +msgid "Search Classes" msgstr "" #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" -msgstr "" +msgstr "Trieda:" #: tools/editor/editor_help.cpp tools/editor/scene_tree_editor.cpp #: tools/editor/script_create_dialog.cpp @@ -1228,15 +1353,15 @@ msgstr "" #: tools/editor/editor_help.cpp msgid "Signals:" -msgstr "" +msgstr "Signály:" #: tools/editor/editor_help.cpp msgid "Constants:" -msgstr "" +msgstr "Konštanty:" #: tools/editor/editor_help.cpp tools/editor/script_editor_debugger.cpp msgid "Description:" -msgstr "" +msgstr "Popis:" #: tools/editor/editor_help.cpp msgid "Method Description:" @@ -1294,10 +1419,6 @@ msgstr "" msgid "Node From Scene" msgstr "" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "" - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1422,8 +1543,23 @@ msgstr "" #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" #: tools/editor/editor_node.cpp @@ -1516,6 +1652,10 @@ msgid "" "(Unsaved changes will be lost)" msgstr "" +#: tools/editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "" @@ -1539,7 +1679,7 @@ msgid "Save Layout" msgstr "" #: tools/editor/editor_node.cpp -msgid "Load Layout" +msgid "Delete Layout" msgstr "" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp @@ -1547,10 +1687,6 @@ msgid "Default" msgstr "" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "" @@ -1580,6 +1716,14 @@ msgid "Distraction Free Mode" msgstr "" #: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "" @@ -1600,6 +1744,11 @@ msgid "Save Scene" msgstr "" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "Uložiť súbor" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "" @@ -1723,6 +1872,10 @@ msgid "Play custom scene" msgstr "" #: tools/editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "" @@ -1875,7 +2028,6 @@ msgid "Output" msgstr "" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "" @@ -2047,10 +2199,6 @@ msgstr "" msgid "Remove from Group" msgstr "" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "" @@ -2122,6 +2270,12 @@ msgid "No target font resource!" msgstr "" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "" @@ -2253,12 +2407,6 @@ msgid "Clips" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "" @@ -2357,7 +2505,7 @@ msgid "Couldn't load post-import script:" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" +msgid "Invalid/broken script for post-import (check console):" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -3020,13 +3168,11 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "" @@ -3142,7 +3288,6 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "" @@ -3221,7 +3366,7 @@ msgid "Anchor" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" +msgid "Insert Keys" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp @@ -3395,6 +3540,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "" @@ -3756,17 +3905,15 @@ msgid "Clear UV" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "" @@ -3874,6 +4021,15 @@ msgid "Save Theme As.." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "Popis:" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "" @@ -4059,10 +4215,6 @@ msgid "Search the class hierarchy." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "" @@ -4097,6 +4249,11 @@ msgstr "" msgid "Debugger" msgstr "" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "" @@ -4330,76 +4487,78 @@ msgid "Align with view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" +msgid "Environment" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" +msgid "Audio Listener" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" +msgid "Gizmos" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" +msgid "XForm Dialog" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" +msgid "No scene selected to instance!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" +msgid "Instance at Cursor" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" +msgid "Could not instance scene!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" +msgid "Scale Mode (R)" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" +msgid "Bottom View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" +msgid "Top View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" +msgid "Rear View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" +msgid "Front View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" +msgid "Left View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" +msgid "Right View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" +msgid "Switch Perspective/Orthogonal view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" +msgid "Insert Animation Key" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" -msgstr "" +#, fuzzy +msgid "Focus Selection" +msgstr "Všetky vybrané" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" -msgstr "" +#, fuzzy +msgid "Align Selection With View" +msgstr "Všetky vybrané" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Transform" @@ -4602,17 +4761,44 @@ msgid "StyleBox Preview:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" +msgid "Snap Mode:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" +msgid "<None>" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Separation:" +msgstr "Popis:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" msgstr "" #: tools/editor/plugins/theme_editor_plugin.cpp @@ -5094,6 +5280,14 @@ msgid "Couldn't create engine.cfg in project path." msgstr "" #: tools/editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "" @@ -5114,6 +5308,14 @@ msgid "Project Path:" msgstr "" #: tools/editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "" @@ -5278,50 +5480,6 @@ msgid "Add Translation" msgstr "" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "" @@ -5346,10 +5504,6 @@ msgid "Remove Resource Remap Option" msgstr "" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "" @@ -5422,18 +5576,6 @@ msgid "AutoLoad" msgstr "" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "" @@ -5674,31 +5816,27 @@ msgid "Error duplicating scene to save it." msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" +msgid "Edit Groups" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Add Child Node" +msgid "Edit Connections" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Instance Child Scene" +msgid "Delete Node(s)" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Change Type" +msgid "Add Child Node" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" +msgid "Instance Child Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" +msgid "Change Type" msgstr "" #: tools/editor/scene_tree_dock.cpp @@ -5714,10 +5852,6 @@ msgid "Save Branch as Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "" @@ -5846,6 +5980,10 @@ msgid "Show In File Manager" msgstr "" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "" diff --git a/tools/translations/tools.pot b/tools/translations/tools.pot index 854f8fef78..383f22afd6 100644 --- a/tools/translations/tools.pot +++ b/tools/translations/tools.pot @@ -273,9 +273,10 @@ msgstr "" msgid "Create Folder" msgstr "" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "" @@ -468,19 +469,19 @@ msgid "Anim Add Track" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Up" +msgid "Anim Duplicate Keys" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Down" +msgid "Move Anim Track Up" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Remove Anim Track" +msgid "Move Anim Track Down" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" +msgid "Remove Anim Track" msgstr "" #: tools/editor/animation_editor.cpp @@ -512,6 +513,19 @@ msgid "Anim Delete Keys" msgstr "" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "" @@ -540,15 +554,6 @@ msgid "Scale From Cursor" msgstr "" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "" @@ -631,10 +636,6 @@ msgid "Change Anim Loop" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "" @@ -675,10 +676,6 @@ msgid "Enable/Disable looping in animation." msgstr "" #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "" @@ -827,7 +824,6 @@ msgid "Call" msgstr "" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -946,7 +942,8 @@ msgstr "" msgid "Connect To Node:" msgstr "" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1050,8 +1047,8 @@ msgstr "" msgid "Resource" msgstr "" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "" @@ -1136,6 +1133,89 @@ msgstr "" msgid "Delete" msgstr "" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Not in resource path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "" @@ -1156,6 +1236,46 @@ msgstr "" msgid "Choose" msgstr "" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "" @@ -1176,14 +1296,18 @@ msgstr "" msgid "ScanSources" msgstr "" -#: tools/editor/editor_help.cpp -msgid "Search Classes" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" msgstr "" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "" @@ -1281,10 +1405,6 @@ msgstr "" msgid "Node From Scene" msgstr "" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "" - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1409,8 +1529,23 @@ msgstr "" #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" #: tools/editor/editor_node.cpp @@ -1503,6 +1638,10 @@ msgid "" "(Unsaved changes will be lost)" msgstr "" +#: tools/editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "" @@ -1563,6 +1702,14 @@ msgid "Distraction Free Mode" msgstr "" #: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "" @@ -1583,6 +1730,10 @@ msgid "Save Scene" msgstr "" #: tools/editor/editor_node.cpp +msgid "Save all Scenes" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "" @@ -1706,6 +1857,10 @@ msgid "Play custom scene" msgstr "" #: tools/editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "" @@ -1858,7 +2013,6 @@ msgid "Output" msgstr "" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "" @@ -2030,10 +2184,6 @@ msgstr "" msgid "Remove from Group" msgstr "" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "" @@ -2242,12 +2392,6 @@ msgid "Clips" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "" @@ -2346,7 +2490,7 @@ msgid "Couldn't load post-import script:" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" +msgid "Invalid/broken script for post-import (check console):" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -3009,13 +3153,11 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "" @@ -3131,7 +3273,6 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "" @@ -3210,7 +3351,7 @@ msgid "Anchor" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" +msgid "Insert Keys" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp @@ -3384,6 +3525,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "" @@ -3745,17 +3890,15 @@ msgid "Clear UV" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "" @@ -3863,6 +4006,14 @@ msgid "Save Theme As.." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp +msgid "Next script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "" @@ -4048,10 +4199,6 @@ msgid "Search the class hierarchy." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "" @@ -4086,6 +4233,11 @@ msgstr "" msgid "Debugger" msgstr "" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "" @@ -4319,75 +4471,75 @@ msgid "Align with view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" +msgid "Environment" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" +msgid "Audio Listener" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" +msgid "Gizmos" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" +msgid "XForm Dialog" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" +msgid "No scene selected to instance!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" +msgid "Instance at Cursor" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" +msgid "Could not instance scene!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" +msgid "Scale Mode (R)" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" +msgid "Bottom View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" +msgid "Top View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" +msgid "Rear View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" +msgid "Front View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" +msgid "Left View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" +msgid "Right View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" +msgid "Switch Perspective/Orthogonal view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" +msgid "Insert Animation Key" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" +msgid "Focus Selection" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" +msgid "Align Selection With View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp @@ -4591,17 +4743,43 @@ msgid "StyleBox Preview:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" +msgid "Snap Mode:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" +msgid "<None>" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" msgstr "" #: tools/editor/plugins/theme_editor_plugin.cpp @@ -5083,6 +5261,14 @@ msgid "Couldn't create engine.cfg in project path." msgstr "" #: tools/editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "" @@ -5103,6 +5289,14 @@ msgid "Project Path:" msgstr "" #: tools/editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "" @@ -5267,50 +5461,6 @@ msgid "Add Translation" msgstr "" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "" @@ -5335,10 +5485,6 @@ msgid "Remove Resource Remap Option" msgstr "" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "" @@ -5411,18 +5557,6 @@ msgid "AutoLoad" msgstr "" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "" @@ -5827,6 +5961,10 @@ msgid "Show In File Manager" msgstr "" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "" diff --git a/tools/translations/ur_PK.po b/tools/translations/ur_PK.po new file mode 100644 index 0000000000..ae35068cb1 --- /dev/null +++ b/tools/translations/ur_PK.po @@ -0,0 +1,6240 @@ +# Urdu (Pakistan) translation of the Godot Engine editor +# Copyright (C) 2016 Juan Linietsky, Ariel Manzur and the Godot community +# This file is distributed under the same license as the Godot source code. +# +# Muhammad Ali <ali@codeonion.com>, 2016. +# +msgid "" +msgstr "" +"Project-Id-Version: Godot Engine editor\n" +"PO-Revision-Date: 2016-07-01 05:14+0000\n" +"Last-Translator: Muhammad Ali <ali@codeonion.com>\n" +"Language-Team: Urdu (Pakistan) <https://hosted.weblate.org/projects/godot-" +"engine/godot/ur_PK/>\n" +"Language: ur_PK\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 2.7-dev\n" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid type argument to convert(), use TYPE_* constants." +msgstr "" +".استمال کیجۓ TYPE_* constants .کے لیے غلط ہیں convert() دیے گئے ارگمنٹس." + +#: modules/gdscript/gd_functions.cpp +msgid "Not enough bytes for decoding bytes, or invalid format." +msgstr "یا تو ڈیکوڈ کرنے کے لئے بائیٹس کم ہیں یا پھر ناقص فارمیٹ ھے." + +#: modules/gdscript/gd_functions.cpp +msgid "step argument is zero!" +msgstr "سٹیپ کے ارگمنٹس سفر ہیں!" + +#: modules/gdscript/gd_functions.cpp +msgid "Not a script with an instance" +msgstr ".یہ انسٹینس کے بغیر سکرپٹ نہی ہوتی" + +#: modules/gdscript/gd_functions.cpp +msgid "Not based on a script" +msgstr ".یہ سکرپٹ پر مبنی نہی ہے" + +#: modules/gdscript/gd_functions.cpp +msgid "Not based on a resource file" +msgstr ".یہ ریسورس فائل پر مبنی نہی ہے" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (missing @path)" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (can't load script at @path)" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (invalid script at @path)" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary (invalid subclasses)" +msgstr "" + +#: scene/2d/animated_sprite.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite to display frames." +msgstr "" + +#: scene/2d/canvas_modulate.cpp +msgid "" +"Only one visible CanvasModulate is allowed per scene (or set of instanced " +"scenes). The first created one will work, while the rest will be ignored." +msgstr "" + +#: scene/2d/collision_polygon_2d.cpp +msgid "" +"CollisionPolygon2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" + +#: scene/2d/collision_polygon_2d.cpp +msgid "An empty CollisionPolygon2D has no effect on collision." +msgstr "" + +#: scene/2d/collision_shape_2d.cpp +msgid "" +"CollisionShape2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" + +#: scene/2d/collision_shape_2d.cpp +msgid "" +"A shape must be provided for CollisionShape2D to function. Please create a " +"shape resource for it!" +msgstr "" + +#: scene/2d/light_2d.cpp +msgid "" +"A texture with the shape of the light must be supplied to the 'texture' " +"property." +msgstr "" + +#: scene/2d/light_occluder_2d.cpp +msgid "" +"An occluder polygon must be set (or drawn) for this occluder to take effect." +msgstr "" + +#: scene/2d/light_occluder_2d.cpp +msgid "The occluder polygon for this occluder is empty. Please draw a polygon!" +msgstr "" + +#: scene/2d/navigation_polygon.cpp +msgid "" +"A NavigationPolygon resource must be set or created for this node to work. " +"Please set a property or draw a polygon." +msgstr "" + +#: scene/2d/navigation_polygon.cpp +msgid "" +"NavigationPolygonInstance must be a child or grandchild to a Navigation2D " +"node. It only provides navigation data." +msgstr "" + +#: scene/2d/parallax_layer.cpp +msgid "" +"ParallaxLayer node only works when set as child of a ParallaxBackground node." +msgstr "" + +#: scene/2d/particles_2d.cpp +msgid "Path property must point to a valid Particles2D node to work." +msgstr "" + +#: scene/2d/path_2d.cpp +msgid "PathFollow2D only works when set as a child of a Path2D node." +msgstr "" + +#: scene/2d/remote_transform_2d.cpp +msgid "Path property must point to a valid Node2D node to work." +msgstr "" + +#: scene/2d/sample_player_2d.cpp scene/audio/sample_player.cpp +msgid "" +"A SampleLibrary resource must be created or set in the 'samples' property in " +"order for SamplePlayer to play sound." +msgstr "" + +#: scene/2d/sprite.cpp +msgid "" +"Path property must point to a valid Viewport node to work. Such Viewport " +"must be set to 'render target' mode." +msgstr "" + +#: scene/2d/sprite.cpp +msgid "" +"The Viewport set in the path property must be set as 'render target' in " +"order for this sprite to work." +msgstr "" + +#: scene/2d/visibility_notifier_2d.cpp +msgid "" +"VisibilityEnable2D works best when used with the edited scene root directly " +"as parent." +msgstr "" + +#: scene/3d/body_shape.cpp +msgid "" +"CollisionShape only serves to provide a collision shape to a CollisionObject " +"derived node. Please only use it as a child of Area, StaticBody, RigidBody, " +"KinematicBody, etc. to give them a shape." +msgstr "" + +#: scene/3d/body_shape.cpp +msgid "" +"A shape must be provided for CollisionShape to function. Please create a " +"shape resource for it!" +msgstr "" + +#: scene/3d/collision_polygon.cpp +msgid "" +"CollisionPolygon only serves to provide a collision shape to a " +"CollisionObject derived node. Please only use it as a child of Area, " +"StaticBody, RigidBody, KinematicBody, etc. to give them a shape." +msgstr "" + +#: scene/3d/collision_polygon.cpp +msgid "An empty CollisionPolygon has no effect on collision." +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 "" +"NavigationMeshInstance must be a child or grandchild to a Navigation node. " +"It only provides navigation data." +msgstr "" + +#: scene/3d/scenario_fx.cpp +msgid "" +"Only one WorldEnvironment is allowed per scene (or set of instanced scenes)." +msgstr "" + +#: scene/3d/spatial_sample_player.cpp +msgid "" +"A SampleLibrary resource must be created or set in the 'samples' property in " +"order for SpatialSamplePlayer to play sound." +msgstr "" + +#: scene/3d/sprite_3d.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite3D to display frames." +msgstr "" + +#: scene/gui/dialogs.cpp tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Cancel" +msgstr "" + +#: scene/gui/dialogs.cpp +msgid "OK" +msgstr "" + +#: scene/gui/dialogs.cpp +msgid "Alert!" +msgstr "" + +#: scene/gui/dialogs.cpp +msgid "Please Confirm..." +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "File Exists, Overwrite?" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "All Recognized" +msgstr ".سب کچھ تسلیم ہوچکا ہے" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "All Files (*)" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/editor_help.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +#: tools/editor/scenes_dock.cpp +msgid "Open" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open a File" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open File(s)" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open a Directory" +msgstr "" + +#: scene/gui/file_dialog.cpp +msgid "Open a File or Directory" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Save a File" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp +msgid "Create Folder" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Path:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Directories & Files:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "File:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Filter:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp tools/editor/editor_plugin_settings.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Name:" +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_dir_dialog.cpp +#: tools/editor/editor_file_dialog.cpp +msgid "Could not create folder." +msgstr "" + +#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +msgid "Must use a valid extension." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Shift+" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Alt+" +msgstr "" + +#: scene/gui/input_action.cpp +msgid "Ctrl+" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Meta+" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Device" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Button" +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Left Button." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Right Button." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Middle Button." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Wheel Up." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Wheel Down." +msgstr "" + +#: scene/gui/input_action.cpp tools/editor/project_settings.cpp +msgid "Axis" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Cut" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/resources_dock.cpp +msgid "Copy" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/resources_dock.cpp +msgid "Paste" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_export.cpp +msgid "Select All" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp tools/editor/editor_log.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/rich_text_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/script_editor_debugger.cpp +msgid "Clear" +msgstr "" + +#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Undo" +msgstr "" + +#: scene/gui/popup.cpp +msgid "" +"Popups will hide by default unless you call popup() or any of the popup*() " +"functions. Making them visible for editing is fine though, but they will " +"hide upon running." +msgstr "" + +#: scene/main/viewport.cpp +msgid "" +"This viewport is not set as render target. If you intend for it to display " +"its contents directly to the screen, make it a child of a Control so it can " +"obtain a size. Otherwise, make it a RenderTarget and assign its internal " +"texture to some node for display." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Error initializing FreeType." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Unknown font format." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Error loading font." +msgstr "" + +#: scene/resources/dynamic_font.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Invalid font size." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Disabled" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "All Selection" +msgstr ".تمام کا انتخاب" + +#: tools/editor/animation_editor.cpp +msgid "Move Add Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Transition" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Transform" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Value" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Change Call" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move Anim Track Up" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move Anim Track Down" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Anim Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Set Transitions to:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Rename" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Change Interpolation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Track Change Value Mode" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Edit Node Curve" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Edit Selection Curve" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Delete Keys" +msgstr ".اینیمیشن کی کیز کو ڈیلیٹ کرو" + +#: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp +#, fuzzy +msgid "Remove Selection" +msgstr ".تمام کا انتخاب" + +#: tools/editor/animation_editor.cpp +msgid "Continuous" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Discrete" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Trigger" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Move Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale From Cursor" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Goto Next Step" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Goto Prev Step" +msgstr "" + +#: tools/editor/animation_editor.cpp tools/editor/property_editor.cpp +msgid "Linear" +msgstr "" + +#: tools/editor/animation_editor.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Constant" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "In" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Out" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "In-Out" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Out-In" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Transitions" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Optimize Animation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up Animation" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Create NEW track for %s and insert key?" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Create %d NEW tracks and insert keys?" +msgstr "" + +#: tools/editor/animation_editor.cpp tools/editor/create_dialog.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/particles_editor_plugin.cpp +#: tools/editor/project_manager.cpp tools/editor/script_create_dialog.cpp +msgid "Create" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Create & Insert" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert Track & Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Change Anim Len" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Change Anim Loop" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Create Typed Value Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Insert" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Scale Keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim Add Call Track" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Animation zoom." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Length (s):" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Animation length (in seconds)." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Step (s):" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Cursor step snap (in seconds)." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Enable/Disable looping in animation." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Add new tracks." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move current track up." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Move current track down." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove selected track." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Track tools" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Enable editing of individual keys by clicking them." +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Anim. Optimizer" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max. Linear Error:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max. Angular Error:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Max Optimizable Angle:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Optimize" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Key" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Transition" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Scale Ratio:" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Call Functions in Which Node?" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove invalid keys" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove unresolved and empty tracks" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-up all animations" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up Animation(s) (NO UNDO!)" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Clean-Up" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Resize Array" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Change Array Value Type" +msgstr "" + +#: tools/editor/array_property_edit.cpp +msgid "Change Array Value" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp tools/editor/create_dialog.cpp +#: tools/editor/editor_help.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +#: tools/editor/settings_config_dialog.cpp +msgid "Search:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Sort:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Reverse" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Category:" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "All" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Site:" +msgstr "سائٹ:" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Support.." +msgstr ".سپورٹ" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Official" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Community" +msgstr "کمیونٹی" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Testing" +msgstr "" + +#: tools/editor/asset_library_editor_plugin.cpp +msgid "Assets ZIP File" +msgstr "اثاثہ کی زپ فائل" + +#: tools/editor/call_dialog.cpp +msgid "Method List For '%s':" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Call" +msgstr "" + +#: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/project_settings.cpp tools/editor/property_editor.cpp +#: tools/editor/run_settings_dialog.cpp tools/editor/settings_config_dialog.cpp +msgid "Close" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Method List:" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Arguments:" +msgstr "" + +#: tools/editor/call_dialog.cpp +msgid "Return:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Go to Line" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Line Number:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "No Matches" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replaced %d Ocurrence(s)." +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace All" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Match Case" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Whole Words" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Selection Only" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/editor_help.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Search" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/editor_help.cpp +msgid "Find" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Next" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replaced %d ocurrence(s)." +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Not found!" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Replace By" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Case Sensitive" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Backwards" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Prompt On Replace" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Skip" +msgstr "" + +#: tools/editor/code_editor.cpp tools/editor/script_editor_debugger.cpp +msgid "Line:" +msgstr "" + +#: tools/editor/code_editor.cpp +msgid "Col:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Method in target Node must be specified!" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect To Node:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp +#: tools/editor/plugins/item_list_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_settings.cpp +msgid "Add" +msgstr "" + +#: tools/editor/connections_dialog.cpp tools/editor/dependency_editor.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Remove" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Add Extra Call Argument:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Extra Call Arguments:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Path to Node:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Make Function" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Deferred" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Oneshot" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connect '%s' to '%s'" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Connecting Signal:" +msgstr "" + +#: tools/editor/connections_dialog.cpp +msgid "Create Subscription" +msgstr "سب سکریپشن بنائیں" + +#: tools/editor/connections_dialog.cpp +msgid "Connect.." +msgstr "" + +#: tools/editor/connections_dialog.cpp +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Disconnect" +msgstr "" + +#: tools/editor/connections_dialog.cpp tools/editor/node_dock.cpp +msgid "Signals" +msgstr "" + +#: tools/editor/create_dialog.cpp +msgid "Create New" +msgstr "" + +#: tools/editor/create_dialog.cpp tools/editor/editor_help.cpp +#: tools/editor/plugins/script_editor_plugin.cpp tools/editor/quick_open.cpp +msgid "Matches:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Search Replacement For:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies For:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"Scene '%s' is currently being edited.\n" +"Changes will not take effect unless reloaded." +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"Resource '%s' is in use.\n" +"Changes will take effect when reloaded." +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Resource" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp +msgid "Path" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependencies:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Fix Broken" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Dependency Editor" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Search Replacement Resource:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Owners Of:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "" +"The files being removed are required by other resources in order for them to " +"work.\n" +"Remove them anyway? (no undo)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Remove selected files from the project? (no undo)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Error loading:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Scene failed to load due to missing dependencies:" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Open Anyway" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Which action should be taken?" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Fix Dependencies" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Errors loading!" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Permanently delete %d item(s)? (No undo!)" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Owns" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Resources Without Explicit Ownership:" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_node.cpp +msgid "Orphan Resource Explorer" +msgstr "" + +#: tools/editor/dependency_editor.cpp +msgid "Delete selected files?" +msgstr "" + +#: tools/editor/dependency_editor.cpp tools/editor/editor_node.cpp +#: tools/editor/plugins/item_list_editor_plugin.cpp +#: tools/editor/scenes_dock.cpp +msgid "Delete" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr ".یہ ریسورس فائل پر مبنی نہی ہے" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Updating Scene" +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Storing local changes.." +msgstr "" + +#: tools/editor/editor_data.cpp +msgid "Updating scene.." +msgstr "" + +#: tools/editor/editor_dir_dialog.cpp +msgid "Choose a Directory" +msgstr "" + +#: tools/editor/editor_dir_dialog.cpp +msgid "Choose" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Up" +msgstr "پسندیدہ اوپر منتقل کریں" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Down" +msgstr "پسندیدہ نیچے منتقل کریں" + +#: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp +msgid "Favorites:" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Recent:" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Preview:" +msgstr "" + +#: tools/editor/editor_file_system.cpp +msgid "Cannot go into subdir:" +msgstr "" + +#: tools/editor/editor_file_system.cpp +msgid "ScanSources" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Class List:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/property_editor.cpp +msgid "Class:" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/scene_tree_editor.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Inherits:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Inherited by:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Brief Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Public Methods:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Members:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "GUI Theme Items:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Signals:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Constants:" +msgstr "" + +#: tools/editor/editor_help.cpp tools/editor/script_editor_debugger.cpp +msgid "Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Method Description:" +msgstr "" + +#: tools/editor/editor_help.cpp +msgid "Search Text" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Added:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Removed:" +msgstr "" + +#: tools/editor/editor_import_export.cpp tools/editor/project_export.cpp +msgid "Error saving atlas:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Could not save atlas subtexture:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Storing File:" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Packing" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Exporting for %s" +msgstr "" + +#: tools/editor/editor_import_export.cpp +msgid "Setting Up.." +msgstr "" + +#: tools/editor/editor_log.cpp +msgid " Output:" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp +msgid "Re-Importing" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Importing:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Node From Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/resources_dock.cpp +msgid "Error saving resource!" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/resources_dock.cpp +msgid "Save Resource As.." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp +msgid "I see.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't open file for writing:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Requested file format unknown:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error while saving." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Saving Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Analyzing" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Creating Thumbnail" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Couldn't save scene. Likely dependencies (instances) couldn't be satisfied." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Failed to load resource." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't load MeshLibrary for merging!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error saving MeshLibrary!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't load TileSet for merging!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error saving TileSet!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't open export templates zip." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Loading Export Templates" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error trying to save layout!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Default editor layout overridden." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Layout name not found!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Restored default layout to base settings." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Copy Params" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Paste Params" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Paste Resource" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Copy Resource" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Make Built-In" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Make Sub-Resources Unique" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open in Help" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "There is no defined scene to run." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Current scene was never saved, please save it prior to running." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Could not start subprocess!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Base Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Open Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Open Script.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Yes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Close scene? (Unsaved changes will be lost)" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Scene As.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "This scene has never been saved. Save before running?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Please save the scene first." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Translatable Strings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Mesh Library" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Tile Set" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quit" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Exit the editor?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Current scene not saved. Open anyway?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Can't reload a scene that was never saved." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Revert" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "This action cannot be undone. Revert anyway?" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Run Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Open Project Manager? \n" +"(Unsaved changes will be lost)" +msgstr "" + +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Pick a Main Scene" +msgstr "ایک مینو منظر چنیں" + +#: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp +msgid "Ugh" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Error loading scene, it must be inside the project path. Use 'Import' to " +"open the scene, then save it inside the project path." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Error loading scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Scene '%s' has broken dependencies:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Layout" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Delete Layout" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Default" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Switch Scene Tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "%d more file(s)" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "%d more file(s) or folder(s)" +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to previously opened scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Fullscreen Mode" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Distraction Free Mode" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Operations with scene files." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "New Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "New Inherited Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Scene.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save all Scenes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Close Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Close Goto Prev. Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open Recent" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quick Filter Files.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Convert To.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Translatable Strings.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "MeshLibrary.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "TileSet.." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Redo" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Run Script" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Project Settings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Revert Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Quit to Project List" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Import assets to the project." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Import" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Miscellaneous project or scene-wide tools." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Tools" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export the project to many platforms." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Export" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play the project." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Play" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Pause the scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Pause Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Stop the scene." +msgstr "" + +#: tools/editor/editor_node.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Stop" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play the edited scene." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play custom scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Debug options" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Deploy with Remote Debug" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When exporting or deploying, the resulting executable will attempt to " +"connect to the IP of this computer in order to be debugged." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Small Deploy with Network FS" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is enabled, export or deploy will produce a minimal " +"executable.\n" +"The filesystem will be provided from the project by the editor over the " +"network.\n" +"On Android, deploy will use the USB cable for faster performance. This " +"option speeds up testing for games with a large footprint." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Visible Collision Shapes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " +"running game if this option is turned on." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Visible Navigation" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Navigation meshes and polygons will be visible on the running game if this " +"option is turned on." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Sync Scene Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is turned on, any changes made to the scene in the editor " +"will be replicated in the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Sync Script Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"When this option is turned on, any script that is saved will be reloaded on " +"the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Settings" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/settings_config_dialog.cpp +msgid "Editor Settings" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Editor Layout" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Install Export Templates" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "About" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Alerts when an external resource has changed." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Spins when the editor window repaints!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Update Always" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Update Changes" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Inspector" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Create a new resource in memory and edit it." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Load an existing resource from disk and edit it." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Save the currently edited resource." +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Save As.." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to the previous edited object in history." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Go to the next edited object in history." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "History of recently edited objects." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Object properties." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "FileSystem" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Output" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp +msgid "Re-Import" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/editor_plugin_settings.cpp +msgid "Update" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Thanks from the Godot community!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Thanks!" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Import Templates From ZIP File" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Export Project" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Export Library" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Merge With Existing" +msgstr "" + +#: tools/editor/editor_node.cpp tools/editor/project_export.cpp +msgid "Password:" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Open & Run a Script" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Load Errors" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Installed Plugins:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Version:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Author:" +msgstr "" + +#: tools/editor/editor_plugin_settings.cpp +msgid "Status:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Stop Profiling" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Start Profiling" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Measure:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame Time (sec)" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Average Time (sec)" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame %" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Fixed Frame %" +msgstr "" + +#: tools/editor/editor_profiler.cpp tools/editor/script_editor_debugger.cpp +msgid "Time:" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Inclusive" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Self" +msgstr "" + +#: tools/editor/editor_profiler.cpp +msgid "Frame #:" +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Please wait for scan to complete." +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Current scene must be saved to re-import." +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Save & Re-Import" +msgstr "" + +#: tools/editor/editor_reimport_dialog.cpp +msgid "Re-Import Changed Resources" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Write your logic in the _run() method." +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "There is an edited scene already." +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Couldn't instance script:" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Did you forget the 'tool' keyword?" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Couldn't run script:" +msgstr "" + +#: tools/editor/editor_run_script.cpp +msgid "Did you forget the '_run' method?" +msgstr "" + +#: tools/editor/editor_settings.cpp +msgid "Default (Same as Editor)" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Select Node(s) to Import" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Scene Path:" +msgstr "" + +#: tools/editor/editor_sub_scene.cpp +msgid "Import From Node:" +msgstr "" + +#: tools/editor/file_type_cache.cpp +msgid "Can't open file_type_cache.cch for writing, not saving file type cache!" +msgstr "" + +#: tools/editor/groups_editor.cpp +msgid "Add to Group" +msgstr "" + +#: tools/editor/groups_editor.cpp +msgid "Remove from Group" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "No bit masks to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path is empty." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must be a complete resource path." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must exist." +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Save path is empty!" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Import BitMasks" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s):" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Target Path:" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Accept" +msgstr "" + +#: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Bit Mask" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "No source font file!" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "No target font resource!" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Can't load/process source font." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Couldn't save font." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Dest Resource:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "The quick brown fox jumps over the lazy dog." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Test:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Options:" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Font Import" +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"This file is already a Godot font file, please supply a BMFont type file " +"instead." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Failed opening as BMFont file." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "Invalid font custom source." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Font" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "No meshes to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Single Mesh Import" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Source Mesh(es):" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh" +msgstr "" + +#: tools/editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Surface %d" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "No samples to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Import Audio Samples" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Source Sample(s):" +msgstr "" + +#: tools/editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Audio Sample" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "New Clip" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Animation Options" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Flags" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Bake FPS:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Optimizer" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Linear Error" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angular Error" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angle" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Clips" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Start(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "End(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Loop" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Filters" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source path is empty." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error importing scene." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import 3D Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source Scene:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Same as Target Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Shared" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Target Texture Folder:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Post-Process Script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Custom Root Node Type:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Auto" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "The Following Files are Missing:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Anyway" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import & Open" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Edited scene has not been saved, open imported scene anyway?" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import Scene" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Importing Scene.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Running Custom Script.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import (check console):" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error running post-import script:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Image:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Can't import a file over itself:" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't localize path: %s (already local)" +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Saving.." +msgstr "" + +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +msgid "3D Scene Animation" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Uncompressed" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossless (PNG)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossy (WebP)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress (VRAM)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Format" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Compression Quality (WebP):" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Options" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Please specify some files!" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "At least one file needed for Atlas." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Error importing:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Only one file is required for large texture." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Max Texture Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for Atlas (2D)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cell Size:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Large Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Textures (2D)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Base Atlas Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s)" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 2D" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 3D" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "2D Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "3D Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Atlas Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "" +"NOTICE: Importing 2D textures is not mandatory. Just copy png/jpg files to " +"the project." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Crop empty space." +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Texture" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Load Source Image" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Slicing" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Inserting" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Saving" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save large texture:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Build Atlas For:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Loading Image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't load image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Converting Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cropping Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Blitting Images" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save atlas image:" +msgstr "" + +#: tools/editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save converted texture:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid source!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid translation source!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Column" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +#: tools/editor/script_create_dialog.cpp +msgid "Language" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No items to import!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No target path!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translations" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Couldn't import!" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translation" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Source CSV:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Ignore First Row" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Compress" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Add to Project (engine.cfg)" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Languages:" +msgstr "" + +#: tools/editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Translation" +msgstr "" + +#: tools/editor/multi_node_edit.cpp +msgid "MultiNode Set" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Node" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Groups" +msgstr "" + +#: tools/editor/node_dock.cpp +msgid "Select a Node to edit Signals and Groups." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Toggle Autoplay" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "New Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "New Anim" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Remove Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Invalid animation name!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Animation name already exists!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Rename Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Next Changed" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Blend Time" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Duplicate Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to copy!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation resource on clipboard!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Pasted Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Paste Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to edit!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from current pos. (A)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from end. (Shift+A)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Stop animation playback. (S)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from start. (Shift+D)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from current pos. (D)" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation position (in seconds)." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Scale animation playback globally for the node." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Create new animation in player." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load animation from disk." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Load an animation from disk." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Save the current animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Save As" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Display list of animations in player." +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Autoplay on Load" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Edit Target Blend Times" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Tools" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Copy Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Create New Animation" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Name:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +#: tools/editor/property_editor.cpp tools/editor/script_create_dialog.cpp +msgid "Error!" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Times:" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Next (Auto Queue):" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +msgid "Cross-Animation Blend Times" +msgstr "" + +#: tools/editor/plugins/animation_player_editor_plugin.cpp +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Animation" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "New name:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Scale:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade In (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade Out (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Auto Restart:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Restart (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Random Restart (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Start!" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Amount:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 0:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 1:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "X-Fade Time (s):" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Current:" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Add Input" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Clear Auto-Advance" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Set Auto-Advance" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Delete Input" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Rename" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is valid." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is invalid." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "OneShot Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend2 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend3 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend4 Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeScale Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeSeek Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Transition Node" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Import Animations.." +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Edit Node Filters" +msgstr "" + +#: tools/editor/plugins/animation_tree_editor_plugin.cpp +msgid "Filters.." +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Parsing %d Triangles:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Triangle #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Light Baker Setup:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Parsing Geometry" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Fixing Lights" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Making BVH" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Creating Light Octree" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Creating Octree Texture" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Transfer to Lightmaps:" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Allocating Texture #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Baking Triangle #" +msgstr "" + +#: tools/editor/plugins/baked_light_baker.cpp +msgid "Post-Processing Texture #" +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "BakedLightInstance does not contain a BakedLight resource." +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "Bake!" +msgstr "" + +#: tools/editor/plugins/baked_light_editor_plugin.cpp +msgid "Reset the lightmap octree baking process (start over)." +msgstr "" + +#: tools/editor/plugins/camera_editor_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Preview" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Configure Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Offset:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Step:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Offset:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Step:" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Pivot" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Action" +msgstr "ایکشن منتقل کریں" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit CanvasItem" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Change Anchors" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom (%):" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Paste Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Select Mode (Q)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Drag: Rotate" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+Drag: Move" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Press 'v' to Change Pivot, 'Shift+v' to Drag Pivot (while moving)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+RMB: Depth list selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Move Mode (W)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Mode (E)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "" +"Show a list of all objects at the position clicked\n" +"(same as Alt+RMB in select mode)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Click to change object's rotation pivot." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Pan Mode" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Lock the selected object in place (can't be moved)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Unlock the selected object (can be moved)." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Makes sure the object's children are not selectable." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Restores the object's children's ability to be selected." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Edit" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Show Grid" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Rotation Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap Relative" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Configure Snap.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Pixel Snap" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Expand to Parent" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Skeleton.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make Bones" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Bones" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear IK Chain" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom In" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Out" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Reset" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Set.." +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Center Selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Frame Selection" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Anchor" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Keys" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key (Existing Tracks)" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Copy Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Pose" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Set a Value" +msgstr "" + +#: tools/editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap (Pixels):" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create Poly" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly (Remove Point)" +msgstr "" + +#: tools/editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create a new polygon from scratch." +msgstr "" + +#: tools/editor/plugins/collision_polygon_editor_plugin.cpp +msgid "Create Poly3D" +msgstr "" + +#: tools/editor/plugins/collision_shape_2d_editor_plugin.cpp +msgid "Set Handle" +msgstr "" + +#: tools/editor/plugins/color_ramp_editor_plugin.cpp +msgid "Add/Remove Color Ramp Point" +msgstr "" + +#: tools/editor/plugins/color_ramp_editor_plugin.cpp +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Color Ramp" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Creating Mesh Library" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Thumbnail.." +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove item %d?" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Add Item" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove Selected Item" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import from Scene" +msgstr "" + +#: tools/editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Update from Scene" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Item %d" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Items" +msgstr "" + +#: tools/editor/plugins/item_list_editor_plugin.cpp +msgid "Item List Editor" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +msgid "Create Occluder Polygon" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Edit existing polygon:" +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "LMB: Move Point." +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Ctrl+LMB: Split Segment." +msgstr "" + +#: tools/editor/plugins/light_occluder_2d_editor_plugin.cpp +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "RMB: Erase Point." +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh is empty!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Trimesh Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Convex Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "This doesn't work on scene root!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Shape" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Shape" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Navigation Mesh" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "MeshInstance lacks a Mesh!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Could not create outline!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Static Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Static Body" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Collision Sibling" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Collision Sibling" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh.." +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Outline Size:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and no MultiMesh set in node)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and MultiMesh contains no Mesh)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (invalid path)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (not a MeshInstance)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (contains no Mesh resource)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "No surface source specified." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (invalid path)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no geometry)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no faces)." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Parent has no solid faces to populate." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Couldn't map area." +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Source Mesh:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Target Surface:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate Surface" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate MultiMesh" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Target Surface:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Source Mesh:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "X-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Y-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Z-Axis" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh Up Axis:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Rotation:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Tilt:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Scale:" +msgstr "" + +#: tools/editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate" +msgstr "" + +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create Navigation Polygon" +msgstr "" + +#: tools/editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Remove Poly And Point" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Error loading image:" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "No pixels with transparency > 128 in image.." +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Set Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Clear Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Load Emission Mask" +msgstr "" + +#: tools/editor/plugins/particles_2d_editor_plugin.cpp +msgid "Generated Point Count:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry." +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry (faces)." +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Faces contain no area!" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "No faces!" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Generate AABB" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter From Mesh" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter From Node" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Clear Emitter" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Emission Positions:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Emission Fill:" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Surface" +msgstr "" + +#: tools/editor/plugins/particles_editor_plugin.cpp +msgid "Volume" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Remove Point from Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Add Point to Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Point in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move In-Control in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Out-Control in Curve" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Select Points" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Shift+Drag: Select Control Points" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Click: Add Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Right Click: Delete Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +msgid "Select Control Points (Shift+Drag)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Add Point (in empty space)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Split Segment (in curve)" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Delete Point" +msgstr "" + +#: tools/editor/plugins/path_2d_editor_plugin.cpp +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Close Curve" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Curve Point #" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Point Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve In Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Out Pos" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Split Path" +msgstr "" + +#: tools/editor/plugins/path_editor_plugin.cpp +msgid "Remove Path Point" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create UV Map" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Transform UV Map" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon 2D UV Editor" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Point" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Ctrl: Rotate" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift: Move All" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift+Ctrl: Scale" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Rotate Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Scale Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon->UV" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "UV->Polygon" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Clear UV" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Snap" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Enable Snap" +msgstr "" + +#: tools/editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "ERROR: Couldn't load resource!" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Add Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Rename Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Delete Resource" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Resource clipboard is empty!" +msgstr "" + +#: tools/editor/plugins/resource_preloader_editor_plugin.cpp +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Load Resource" +msgstr "" + +#: tools/editor/plugins/rich_text_editor_plugin.cpp +msgid "Parse BBCode" +msgstr "" + +#: tools/editor/plugins/sample_editor_plugin.cpp +msgid "Length:" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Open Sample File(s)" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "ERROR: Couldn't load sample!" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Add Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Rename Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Delete Sample" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "16 Bits" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "8 Bits" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Stereo" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Mono" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Format" +msgstr "" + +#: tools/editor/plugins/sample_library_editor_plugin.cpp +msgid "Pitch" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error while saving theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error saving" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error importing theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Error importing" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Import Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "سب سکریپشن بنائیں" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/project_export.cpp +msgid "File" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/property_editor.cpp +msgid "New" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save All" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "History Prev" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "History Next" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Reload Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Move Up" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Move Down" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Indent Left" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Indent Right" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Toggle Comment" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Clone Down" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Complete Symbol" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Trim Trailing Whitespace" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Auto Indent" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Soft Reload Script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find Next" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Find Previous" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Replace.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Function.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Goto Line.." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Debug" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Toggle Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Remove All Breakpoints" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Next Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Goto Previous Breakpoint" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Step Over" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Step Into" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Break" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Continue" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Keep Debugger Open" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Window" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Move Left" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Move Right" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Help" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Contextual Help" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Tutorials" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Open https://godotengine.org at tutorials section." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Classes" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Search the class hierarchy." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Search the reference documentation." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Go to previous edited document." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Go to next edited document." +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Create Script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"The following files are newer on disk.\n" +"What action should be taken?:" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Reload" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Resave" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Debugger" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Vertex" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Fragment" +msgstr "" + +#: tools/editor/plugins/shader_editor_plugin.cpp +msgid "Lighting" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Constant" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Scalar Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Operator" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Toggle Rot Only" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Function" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Function" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Default Value" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change XForm Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Texture Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Cubemap Uniform" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Comment" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Color Ramp" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Curve Map" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Curve Map" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Input Name" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Connect Graph Nodes" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Disconnect Graph Nodes" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Remove Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Move Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Duplicate Graph Node(s)" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Delete Shader Graph Node(s)" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Cyclic Connection Link" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Missing Input Connections" +msgstr "" + +#: tools/editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add Shader Graph Node" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Orthogonal" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Aborted." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "X-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Y-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Z-Axis Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Plane Transform." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scaling to %s%%." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotating %s degrees." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right View." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Keying is disabled (no key inserted)." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Animation Key Inserted." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Align with view" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Environment" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Audio Listener" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Gizmos" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "XForm Dialog" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "No scene selected to instance!" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Instance at Cursor" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Could not instance scene!" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Mode (R)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Top View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Front View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Left View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Right View" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Switch Perspective/Orthogonal view" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Insert Animation Key" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +#, fuzzy +msgid "Focus Selection" +msgstr ".تمام کا انتخاب" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +#, fuzzy +msgid "Align Selection With View" +msgstr ".تمام کا انتخاب" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Local Coords" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Dialog.." +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default Light" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default sRGB" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "1 Viewport" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports (Alt)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports (Alt)" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "4 Viewports" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Normal" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Wireframe" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Overdraw" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Display Shadeless" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Origin" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Grid" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Snap Settings" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Translate Snap:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Snap (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Snap (%):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Viewport Settings" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Default Light Normal:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Ambient Light Color:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective FOV (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Near:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Far:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Change" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Translate:" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate (deg.):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Scale (ratio):" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Type" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Pre" +msgstr "" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +msgid "Post" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "ERROR: Couldn't load frame resource!" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Frame" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Resource clipboard is empty or not a texture!" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Paste Frame" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Empty" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation Loop" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation FPS" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "(empty)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animations" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Speed (FPS):" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animation Frames" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (Before)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (After)" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Up" +msgstr "" + +#: tools/editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Down" +msgstr "" + +#: tools/editor/plugins/style_box_editor_plugin.cpp +msgid "StyleBox Preview:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Snap Mode:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "<None>" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Can't save theme to file:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add All Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add All" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Remove Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Add Class Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Remove Class Items" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Template" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Editor Template" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio1" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio2" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Check Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Checked Item" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Has" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Many" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp tools/editor/project_export.cpp +msgid "Options" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Have,Many,Several,Options!" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 1" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 2" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Tab 3" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +#: tools/editor/project_settings.cpp tools/editor/scene_tree_editor.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Type:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Data Type:" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Icon" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Style" +msgstr "" + +#: tools/editor/plugins/theme_editor_plugin.cpp +msgid "Color" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Paint TileMap" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +#: tools/editor/scene_tree_dock.cpp +msgid "Duplicate" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase TileMap" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase selection" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Find tile" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Transpose" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror X" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror Y" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Bucket" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Pick Tile" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Select" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 0 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 90 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 180 degrees" +msgstr "" + +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 270 degrees" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Could not find tile:" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Item name or ID:" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from scene?" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from scene?" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from Scene" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from Scene" +msgstr "" + +#: tools/editor/plugins/tile_set_editor_plugin.cpp +#: tools/editor/script_editor_debugger.cpp +msgid "Error" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Edit Script Options" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Please export outside the project folder!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Error exporting project!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Error writing the project PCK!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "No exporter for platform '%s' yet." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Include" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Change Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group name can't be empty!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Invalid character in group name!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group name already exists!" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Add Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Delete Image Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Atlas Preview" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Project Export Settings" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Target" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export to Platform" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Resources" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export selected resources (including dependencies)." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export all resources in the project." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export all files in the project directory." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Resources to Export:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Action" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "" +"Filters to export non-resource files (comma-separated, e.g.: *.json, *.txt):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Filters to exclude from export (comma-separated, e.g.: *.json, *.txt):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Convert text scenes to binary on export." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Images" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Keep Original" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for Disk (Lossy, WebP)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for RAM (BC/PVRTC/ETC)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Convert Images (*.png):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress for Disk (Lossy) Quality:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Shrink All Images:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Formats:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Image Groups" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Groups:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Disk" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress RAM" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Lossy Quality:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Atlas:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Shrink By:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Preview Atlas" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Image Filter:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Images:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Select None" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Group" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Samples" +msgstr "نمونے" + +#: tools/editor/project_export.cpp +msgid "Sample Conversion Mode: (.wav files):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Keep" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compress (RAM - IMA-ADPCM)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Sampling Rate Limit (Hz):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Trim" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Trailing Silence:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script Export Mode:" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Text" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Compiled" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Encrypted (Provide Key Below)" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Script Encryption Key (256-bits as hex):" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export PCK/Zip" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Project PCK" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export.." +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Project Export" +msgstr "" + +#: tools/editor/project_export.cpp +msgid "Export Preset:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, the path must exist!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, engine.cfg must not exist." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path, engine.cfg must exist." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Imported Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Invalid project path (changed anything?)." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Couldn't create engine.cfg in project path." +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Import Existing Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Path (Must Exist):" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Name:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Create New Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Path:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Browse" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "New Game Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "That's a BINGO!" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Unnamed Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Are you sure to open more than one projects?" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Are you sure to run more than one projects?" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Remove project from the list? (Folder contents will not be modified)" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project Manager" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Project List" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Run" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Scan" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "New Project" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Exit" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Key " +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joy Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joy Axis" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Mouse Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Invalid action (anything goes but '/' or ':')." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Action '%s' already exists!" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Rename Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "Control+" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "Press a Key.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Mouse Button Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Left Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Right Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Middle Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Wheel Up Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Wheel Down Button" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 6" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 7" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 8" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Button 9" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joystick Axis Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Joystick Button Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Input Action" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Erase Input Action Event" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Toggle Persisting" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Error saving settings." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Settings saved OK." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Translation" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Translation" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add Remapped Path" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Resource Remap Add Remap" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Change Resource Remap Language" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Resource Remap" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remove Resource Remap Option" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Project Settings (engine.cfg)" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/settings_config_dialog.cpp +msgid "General" +msgstr "" + +#: tools/editor/project_settings.cpp tools/editor/property_editor.cpp +msgid "Property:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Del" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Copy To Platform.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Input Map" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Action:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Device:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Index:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Localization" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Translations" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Translations:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Add.." +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remaps" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Resources:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Remaps by Locale:" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Locale" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "AutoLoad" +msgstr "" + +#: tools/editor/project_settings.cpp +msgid "Plugins" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Preset.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Ease In" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Ease Out" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Zero" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Easing In-Out" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Easing Out-In" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "File.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Dir.." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Load" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Assign" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Error loading file: Not a resource!" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Couldn't load image" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Bit %d, val %d." +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "On" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Set" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Properties:" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Global" +msgstr "" + +#: tools/editor/property_editor.cpp +msgid "Sections:" +msgstr "" + +#: tools/editor/pvrtc_compress.cpp +msgid "Could not execute PVRTC tool:" +msgstr "" + +#: tools/editor/pvrtc_compress.cpp +msgid "Can't load back converted image using PVRTC tool:" +msgstr "" + +#: tools/editor/reparent_dialog.cpp tools/editor/scene_tree_dock.cpp +msgid "Reparent Node" +msgstr "" + +#: tools/editor/reparent_dialog.cpp +msgid "Reparent Location (Select new Parent):" +msgstr "" + +#: tools/editor/reparent_dialog.cpp +msgid "Keep Global Transform" +msgstr "" + +#: tools/editor/reparent_dialog.cpp tools/editor/scene_tree_dock.cpp +msgid "Reparent" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Create New Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Open Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Save Resource" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Resource Tools" +msgstr "" + +#: tools/editor/resources_dock.cpp +msgid "Make Local" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Run Mode:" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Current Scene" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Main Scene" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Main Scene Arguments:" +msgstr "" + +#: tools/editor/run_settings_dialog.cpp +msgid "Scene Run Settings" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "OK :(" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "No parent to instance a child at." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error loading scene from %s" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error instancing scene from %s" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Ok" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Cannot instance the scene '%s' because the current scene exists within one " +"of its nodes." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Instance Scene(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done on the tree root." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Move Node In Parent" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Move Nodes In Parent" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Duplicate Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)?" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done without a scene." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation requires a single selected node." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "This operation can't be done on instanced scenes." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Save New Scene As.." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Makes Sense!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Can't operate on nodes from a foreign scene!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Can't operate on nodes the current scene inherits from!" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Remove Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Create Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Couldn't save new scene. Likely dependencies (instances) couldn't be " +"satisfied." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error saving scene." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Error duplicating scene to save it." +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Groups" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Edit Connections" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add Child Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Instance Child Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Change Type" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add Script" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Merge From Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Save Branch as Scene" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "Add/Create a New Node" +msgstr "" + +#: tools/editor/scene_tree_dock.cpp +msgid "" +"Instance a scene file as a Node. Creates an inherited scene if no root node " +"exists." +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "" +"This item cannot be made visible because the parent is hidden. Unhide the " +"parent first." +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Toggle Spatial Visible" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Toggle CanvasItem Visible" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Instance:" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Invalid node name, the following characters are not allowed:" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Rename Node" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Scene Tree (Nodes):" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Editable Children" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Load As Placeholder" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Discard Instancing" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Open in Editor" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear Inheritance" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear Inheritance? (No Undo!)" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Clear!" +msgstr "" + +#: tools/editor/scene_tree_editor.cpp +msgid "Select a Node" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Same source and destination files, doing nothing." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Same source and destination paths, doing nothing." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Can't move directories to within themselves." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Can't operate on '..'" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Pick New Name and Location For:" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "No files selected!" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Instance" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Edit Dependencies.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "View Owners.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Copy Path" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Rename or Move.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Move To.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Info" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Show In File Manager" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Previous Directory" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Next Directory" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Re-Scan Filesystem" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Toggle folder status as Favorite" +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Instance the selected scene(s) as child of the selected node." +msgstr "" + +#: tools/editor/scenes_dock.cpp +msgid "Move" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid parent class name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid chars:" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid class name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid name" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "N/A" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Class name is invalid!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Parent class name is invalid!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid path!" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Could not create script in filesystem." +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Path is empty" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Path is not local" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid base path" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "File exists" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Invalid extension" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Valid path" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Class Name:" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Built-In Script" +msgstr "" + +#: tools/editor/script_create_dialog.cpp +msgid "Create Node Script" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Bytes:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Warning" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Error:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Source:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Function:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Errors" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Child Process Connected" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Inspect Previous Instance" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Inspect Next Instance" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Stack Frames" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Variable" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Errors:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Stack Trace (if applicable):" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Remote Inspector" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Live Scene Tree:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Remote Object Properties: " +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Profiler" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Monitor" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Value" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Monitors" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "List of Video Memory Usage by Resource:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Total:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Video Mem" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Resource Path" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Type" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Usage" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Misc" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Clicked Control:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Clicked Control Type:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Live Edit Root:" +msgstr "" + +#: tools/editor/script_editor_debugger.cpp +msgid "Set From Tree" +msgstr "" + +#: tools/editor/settings_config_dialog.cpp +msgid "Shortcuts" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Light Radius" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Camera FOV" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Camera Size" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Sphere Shape Radius" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Box Shape Extents" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Radius" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Height" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Ray Shape Length" +msgstr "" + +#: tools/editor/spatial_editor_gizmos.cpp +msgid "Change Notifier Extents" +msgstr ".نوٹفئر کے اکسٹنٹ کو تبدیل کیجیۓ" diff --git a/tools/translations/zh_CN.po b/tools/translations/zh_CN.po index 70b7845f9d..e852bac75f 100644 --- a/tools/translations/zh_CN.po +++ b/tools/translations/zh_CN.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the Godot source code. # # Geequlim <geequlim@gmail.com>, 2016. +# 纯洁的坏蛋 <tqj.zyy@gmail.com>, 2016. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-06-11 11:37+0000\n" -"Last-Translator: Geequlim <geequlim@gmail.com>\n" +"PO-Revision-Date: 2016-06-25 17:02+0000\n" +"Last-Translator: 纯洁的坏蛋 <tqj.zyy@gmail.com>\n" "Language-Team: Chinese (China) <https://hosted.weblate.org/projects/godot-" "engine/godot/zh_CN/>\n" "Language: zh_CN\n" @@ -29,29 +30,28 @@ msgstr "" #: modules/gdscript/gd_functions.cpp msgid "step argument is zero!" -msgstr "" +msgstr "step参数为0!" #: modules/gdscript/gd_functions.cpp -#, fuzzy msgid "Not a script with an instance" -msgstr "没有选用要实例化的场景!" +msgstr "脚本没有实例化" #: modules/gdscript/gd_functions.cpp msgid "Not based on a script" -msgstr "" +msgstr "没有基于脚本" #: modules/gdscript/gd_functions.cpp -#, fuzzy msgid "Not based on a resource file" -msgstr "请设置目标字体资源!" +msgstr "不是一个资源文件" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (missing @path)" -msgstr "" +msgstr "实例字典格式不正确(缺少@path)" #: modules/gdscript/gd_functions.cpp +#, fuzzy msgid "Invalid instance dictionary format (can't load script at @path)" -msgstr "" +msgstr "实例字典格式不正确(无法加载脚本@path)" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (invalid script at @path)" @@ -311,9 +311,10 @@ msgstr "保存文件" msgid "Create Folder" msgstr "新建目录" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "路径:" @@ -511,6 +512,10 @@ msgid "Anim Add Track" msgstr "添加轨道" #: tools/editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "复制关键帧" + +#: tools/editor/animation_editor.cpp msgid "Move Anim Track Up" msgstr "上移轨道" @@ -523,10 +528,6 @@ msgid "Remove Anim Track" msgstr "移除轨道" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" -msgstr "复制关键帧" - -#: tools/editor/animation_editor.cpp msgid "Set Transitions to:" msgstr "设置过渡效果:" @@ -555,6 +556,20 @@ msgid "Anim Delete Keys" msgstr "删除关键帧" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "复制选中项" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "复制并转置" + +#: tools/editor/animation_editor.cpp +#, fuzzy +msgid "Remove Selection" +msgstr "最大化显示选中节点" + +#: tools/editor/animation_editor.cpp #, fuzzy msgid "Continuous" msgstr "继续" @@ -585,15 +600,6 @@ msgid "Scale From Cursor" msgstr "通过光标缩放" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "复制选中项" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "复制并转置" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "前往下一步" @@ -676,11 +682,6 @@ msgid "Change Anim Loop" msgstr "修改动画循环" #: tools/editor/animation_editor.cpp -#, fuzzy -msgid "Change Anim Loop Interpolation" -msgstr "修改动画循环" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "" @@ -721,11 +722,6 @@ msgid "Enable/Disable looping in animation." msgstr "启用/禁用循环" #: tools/editor/animation_editor.cpp -#, fuzzy -msgid "Enable/Disable interpolation when looping animation." -msgstr "启用/禁用循环" - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "新建轨道" @@ -874,7 +870,6 @@ msgid "Call" msgstr "调用" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -991,10 +986,11 @@ msgstr "必须设置方法的对象节点!" #: tools/editor/connections_dialog.cpp #, fuzzy -msgid "Conect To Node:" +msgid "Connect To Node:" msgstr "连接到节点:" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1101,8 +1097,8 @@ msgstr "依赖" msgid "Resource" msgstr "资源" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "路径" @@ -1187,6 +1183,94 @@ msgstr "删除选中的文件?" msgid "Delete" msgstr "删除" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "名称非法:" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "字符合法:" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "名称非法,与引擎内置类型名称冲突。" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "名称非法,与引擎内置类型名称冲突。" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "名称非法,与已存在的全局常量名称冲突。" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid Path." +msgstr "路径非法!" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "File does not exist." +msgstr "文件已存在" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr "资源路径" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Add AutoLoad" +msgstr "添加Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "Autoload %s已存在!" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "移除Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "切换全局AutoLoad" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "移动Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "移除Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "启用" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Rearrange Autoloads" +msgstr "移除Autoload" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "节点名称:" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "名称" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "单例" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "列表:" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "更新场景" @@ -1207,6 +1291,51 @@ msgstr "选择目录" msgid "Choose" msgstr "选择" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Toggle Favorite" +msgstr "切换断点" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Toggle Mode" +msgstr "切换注释" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Focus Path" +msgstr "拷贝路径" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Up" +msgstr "收藏:" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Down" +msgstr "向下移动" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "收藏:" @@ -1227,14 +1356,18 @@ msgstr "无法打开目录:" msgid "ScanSources" msgstr "" -#: tools/editor/editor_help.cpp -msgid "Search Classes" -msgstr "搜索类型" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "搜索帮助" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "类型列表" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "搜索类型" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "类:" @@ -1332,10 +1465,6 @@ msgstr "导入:" msgid "Node From Scene" msgstr "" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "重新导入.." - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1459,9 +1588,31 @@ msgid "There is no defined scene to run." msgstr "没有设置要执行的场景。" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "" +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" +"尚未定义主场景。\n" +"请在项目设置的application分类下设置选择主场景。" + +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"尚未定义主场景。\n" +"请在项目设置的application分类下设置选择主场景。" + +#: tools/editor/editor_node.cpp +#, fuzzy msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" "尚未定义主场景。\n" "请在项目设置的application分类下设置选择主场景。" @@ -1556,6 +1707,11 @@ msgid "" "(Unsaved changes will be lost)" msgstr "退出到项目管理窗口(未保存的修改将丢失)?" +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Pick a Main Scene" +msgstr "主场景" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "额" @@ -1580,18 +1736,14 @@ msgid "Save Layout" msgstr "保存布局" #: tools/editor/editor_node.cpp -msgid "Load Layout" -msgstr "加载布局" +msgid "Delete Layout" +msgstr "删除布局" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp msgid "Default" msgstr "默认" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "删除布局" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "切换场景标签页" @@ -1621,6 +1773,16 @@ msgid "Distraction Free Mode" msgstr "" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Next tab" +msgstr "下一项" + +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Previous tab" +msgstr "上一个目录:" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "操作场景文件。" @@ -1641,6 +1803,11 @@ msgid "Save Scene" msgstr "保存场景" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "保存场景" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "关闭场景" @@ -1764,6 +1931,11 @@ msgid "Play custom scene" msgstr "运行自定义场景" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Play Custom Scene" +msgstr "运行自定义场景" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "调试选项" @@ -1925,7 +2097,6 @@ msgid "Output" msgstr "输出" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "重新导入" @@ -2097,10 +2268,6 @@ msgstr "添加到分组" msgid "Remove from Group" msgstr "从分组中移除" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "已导入的资源" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "没有要导入的bit masks!" @@ -2172,6 +2339,12 @@ msgid "No target font resource!" msgstr "请设置目标字体资源!" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "无法加载/处理源字体。" @@ -2305,12 +2478,6 @@ msgid "Clips" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "名称" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "" @@ -2409,7 +2576,7 @@ msgid "Couldn't load post-import script:" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" +msgid "Invalid/broken script for post-import (check console):" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -3075,13 +3242,11 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "网格偏移量:" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "网格大小:" @@ -3197,7 +3362,6 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "显示网格" @@ -3276,8 +3440,9 @@ msgid "Anchor" msgstr "锚点" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" -msgstr "插入关键帧( 创建轨道)" +#, fuzzy +msgid "Insert Keys" +msgstr "插入关键帧" #: tools/editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" @@ -3450,6 +3615,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "" @@ -3811,17 +3980,15 @@ msgid "Clear UV" msgstr "清除UV" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "吸附" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "启用吸附" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "网格" @@ -3929,6 +4096,16 @@ msgid "Save Theme As.." msgstr "主题另存为" #: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "创建脚本" + +#: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Previous script" +msgstr "上一个目录:" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "文件" @@ -4116,10 +4293,6 @@ msgid "Search the class hierarchy." msgstr "搜索类" #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "搜索帮助" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "搜索文档" @@ -4156,6 +4329,11 @@ msgstr "重新保存" msgid "Debugger" msgstr "调试器" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "顶点" @@ -4389,76 +4567,82 @@ msgid "Align with view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" -msgstr "" +msgid "Environment" +msgstr "环境" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" +msgid "Audio Listener" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" +msgid "Gizmos" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" -msgstr "" +msgid "XForm Dialog" +msgstr "XForm对话框" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" -msgstr "" +msgid "No scene selected to instance!" +msgstr "没有选用要实例化的场景!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" +msgid "Instance at Cursor" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" -msgstr "透视(Num5)" - -#: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" -msgstr "正交(Num5)" +msgid "Could not instance scene!" +msgstr "无法实例化场景!" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" -msgstr "环境" +msgid "Scale Mode (R)" +msgstr "缩放模式(R)" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" +msgid "Bottom View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" -msgstr "" +#, fuzzy +msgid "Top View" +msgstr "视图" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" -msgstr "选中项(F)" +#, fuzzy +msgid "Rear View" +msgstr "视图" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" +msgid "Front View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" -msgstr "XForm对话框" +#, fuzzy +msgid "Left View" +msgstr "视图" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" -msgstr "没有选用要实例化的场景!" +msgid "Right View" +msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" +msgid "Switch Perspective/Orthogonal view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" -msgstr "无法实例化场景!" +#, fuzzy +msgid "Insert Animation Key" +msgstr "粘贴动画" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" -msgstr "缩放模式(R)" +#, fuzzy +msgid "Focus Selection" +msgstr "缩放选中项" + +#: tools/editor/plugins/spatial_editor_plugin.cpp +#, fuzzy +msgid "Align Selection With View" +msgstr "所有选项" #: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Transform" @@ -4661,18 +4845,50 @@ msgid "StyleBox Preview:" msgstr "StyleBox预览:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" -msgstr "纹理区域编辑" +#, fuzzy +msgid "Snap Mode:" +msgstr "运行模式:" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" -msgstr "缩放区域编辑" +msgid "<None>" +msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." -msgstr "此节点没有贴图,请先为它设置贴图后再试。" +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Grid Snap" +msgstr "网格大小:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Offset:" +msgstr "网格偏移量:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Step:" +msgstr "步长(秒)" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Separation:" +msgstr "选项:" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +#, fuzzy +msgid "Texture Region" +msgstr "纹理区域编辑" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "纹理区域编辑" #: tools/editor/plugins/theme_editor_plugin.cpp msgid "Can't save theme to file:" @@ -5159,6 +5375,17 @@ msgid "Couldn't create engine.cfg in project path." msgstr "无法在项目目录下创建engine.cfg文件。" #: tools/editor/project_manager.cpp +#, fuzzy +msgid "The following files failed extraction from package:" +msgstr "" +"磁盘中的下列文件已更新。\n" +"请选择执行那项操作?:" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "导入现有项目" @@ -5179,6 +5406,16 @@ msgid "Project Path:" msgstr "项目目录" #: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install Project:" +msgstr "最近打开的项目:" + +#: tools/editor/project_manager.cpp +#, fuzzy +msgid "Install" +msgstr "创建实例节点" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "浏览" @@ -5343,50 +5580,6 @@ msgid "Add Translation" msgstr "添加语言" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "名称非法:" - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "字符合法:" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "名称非法,与引擎内置类型名称冲突。" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "名称非法,与引擎内置类型名称冲突。" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "名称非法,与已存在的全局常量名称冲突。" - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "Autoload %s已存在!" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "移除Autoload" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "切换全局AutoLoad" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "添加Autoload" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "移除Autoload" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "移动Autoload" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "移除语言" @@ -5411,10 +5604,6 @@ msgid "Remove Resource Remap Option" msgstr "移除资源重定向选项" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "启用" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "项目设置(engine.cfg)" @@ -5487,18 +5676,6 @@ msgid "AutoLoad" msgstr "AutoLoad" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "节点名称:" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "列表:" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "单例" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "插件" @@ -5739,12 +5916,16 @@ msgid "Error duplicating scene to save it." msgstr "复制场景出错。" #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "创建场景根节点" +msgid "Edit Groups" +msgstr "编辑分组" #: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" -msgstr "继承场景" +msgid "Edit Connections" +msgstr "编辑事件连接" + +#: tools/editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "删除节点" #: tools/editor/scene_tree_dock.cpp msgid "Add Child Node" @@ -5759,14 +5940,6 @@ msgid "Change Type" msgstr "更改类型" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" -msgstr "编辑分组" - -#: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" -msgstr "编辑事件连接" - -#: tools/editor/scene_tree_dock.cpp msgid "Add Script" msgstr "添加脚本" @@ -5779,10 +5952,6 @@ msgid "Save Branch as Scene" msgstr "将分支保存为场景" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "删除节点" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "添加/创建节点" @@ -5911,6 +6080,10 @@ msgid "Show In File Manager" msgstr "在资源管理器中打开" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "重新导入.." + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "上一个目录:" @@ -6170,6 +6343,46 @@ msgstr "" msgid "Change Notifier Extents" msgstr "" +#~ msgid "Imported Resources" +#~ msgstr "已导入的资源" + +#~ msgid "Insert Keys (Ins)" +#~ msgstr "插入关键帧( 创建轨道)" + +#~ msgid "Perspective (Num5)" +#~ msgstr "透视(Num5)" + +#~ msgid "Orthogonal (Num5)" +#~ msgstr "正交(Num5)" + +#~ msgid "Selection (F)" +#~ msgstr "选中项(F)" + +#, fuzzy +#~ msgid "Change Anim Loop Interpolation" +#~ msgstr "修改动画循环" + +#, fuzzy +#~ msgid "Enable/Disable interpolation when looping animation." +#~ msgstr "启用/禁用循环" + +#~ msgid "Load Layout" +#~ msgstr "加载布局" + +#~ msgid "Scale Region Editor" +#~ msgstr "缩放区域编辑" + +#~ msgid "" +#~ "No texture in this node.\n" +#~ "Set a texture to be able to edit region." +#~ msgstr "此节点没有贴图,请先为它设置贴图后再试。" + +#~ msgid "New Scene Root" +#~ msgstr "创建场景根节点" + +#~ msgid "Inherit Scene" +#~ msgstr "继承场景" + #~ msgid "Binds (Extra Params):" #~ msgstr "绑定(附加参数):" @@ -6203,9 +6416,6 @@ msgstr "" #~ msgid "Set region_rect" #~ msgstr "设置纹理区域" -#~ msgid "Recent Projects:" -#~ msgstr "最近打开的项目:" - #~ msgid "Plugin List:" #~ msgstr "插件列表" diff --git a/tools/translations/zh_HK.po b/tools/translations/zh_HK.po index 8f6476594b..8f98ab1f1e 100644 --- a/tools/translations/zh_HK.po +++ b/tools/translations/zh_HK.po @@ -280,9 +280,10 @@ msgstr "儲存檔案" msgid "Create Folder" msgstr "新增資料夾" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "路徑" @@ -475,19 +476,19 @@ msgid "Anim Add Track" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Up" +msgid "Anim Duplicate Keys" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Down" +msgid "Move Anim Track Up" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Remove Anim Track" +msgid "Move Anim Track Down" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" +msgid "Remove Anim Track" msgstr "" #: tools/editor/animation_editor.cpp @@ -519,6 +520,20 @@ msgid "Anim Delete Keys" msgstr "" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp +#, fuzzy +msgid "Remove Selection" +msgstr "只限選中" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "" @@ -548,15 +563,6 @@ msgid "Scale From Cursor" msgstr "" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "" @@ -639,10 +645,6 @@ msgid "Change Anim Loop" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "" @@ -683,10 +685,6 @@ msgid "Enable/Disable looping in animation." msgstr "" #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "" @@ -836,7 +834,6 @@ msgid "Call" msgstr "" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -952,10 +949,12 @@ msgid "Method in target Node must be specified!" msgstr "" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" -msgstr "" +#, fuzzy +msgid "Connect To Node:" +msgstr "連到" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1060,8 +1059,8 @@ msgstr "" msgid "Resource" msgstr "資源" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "路徑" @@ -1146,6 +1145,91 @@ msgstr "要刪除選中檔案?" msgid "Delete" msgstr "刪除" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid Path." +msgstr "有效路徑" + +#: tools/editor/editor_autoload_settings.cpp +#, fuzzy +msgid "File does not exist." +msgstr "檔案已存在" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Not in resource path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "" @@ -1166,6 +1250,49 @@ msgstr "選擇資料夾" msgid "Choose" msgstr "選擇" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Focus Path" +msgstr "複製" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Up" +msgstr "上移" + +#: tools/editor/editor_file_dialog.cpp +#, fuzzy +msgid "Move Favorite Down" +msgstr "下移" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "" @@ -1186,14 +1313,18 @@ msgstr "無法進入次要資料夾" msgid "ScanSources" msgstr "" -#: tools/editor/editor_help.cpp -msgid "Search Classes" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" msgstr "" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "" @@ -1291,10 +1422,6 @@ msgstr "導入中" msgid "Node From Scene" msgstr "" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "" - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1420,8 +1547,23 @@ msgstr "" #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" #: tools/editor/editor_node.cpp @@ -1514,6 +1656,11 @@ msgid "" "(Unsaved changes will be lost)" msgstr "" +#: tools/editor/editor_node.cpp +#, fuzzy +msgid "Pick a Main Scene" +msgstr "儲存場景" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "" @@ -1537,7 +1684,7 @@ msgid "Save Layout" msgstr "" #: tools/editor/editor_node.cpp -msgid "Load Layout" +msgid "Delete Layout" msgstr "" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp @@ -1545,10 +1692,6 @@ msgid "Default" msgstr "預設" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "" @@ -1578,6 +1721,15 @@ msgid "Distraction Free Mode" msgstr "" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Next tab" +msgstr "下一個" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "" @@ -1598,6 +1750,11 @@ msgid "Save Scene" msgstr "儲存場景" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Save all Scenes" +msgstr "儲存場景" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "關閉場景" @@ -1724,6 +1881,11 @@ msgid "Play custom scene" msgstr "" #: tools/editor/editor_node.cpp +#, fuzzy +msgid "Play Custom Scene" +msgstr "儲存場景" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "" @@ -1877,7 +2039,6 @@ msgid "Output" msgstr "" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "" @@ -2049,10 +2210,6 @@ msgstr "" msgid "Remove from Group" msgstr "" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "" @@ -2124,6 +2281,12 @@ msgid "No target font resource!" msgstr "" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "" @@ -2255,12 +2418,6 @@ msgid "Clips" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "" @@ -2359,7 +2516,7 @@ msgid "Couldn't load post-import script:" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" +msgid "Invalid/broken script for post-import (check console):" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -3023,13 +3180,11 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "" @@ -3145,7 +3300,6 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "" @@ -3224,7 +3378,7 @@ msgid "Anchor" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" +msgid "Insert Keys" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp @@ -3398,6 +3552,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "" @@ -3759,17 +3917,15 @@ msgid "Clear UV" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "" @@ -3877,6 +4033,15 @@ msgid "Save Theme As.." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Next script" +msgstr "下一個" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "檔案" @@ -4062,10 +4227,6 @@ msgid "Search the class hierarchy." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "" @@ -4100,6 +4261,11 @@ msgstr "" msgid "Debugger" msgstr "" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "" @@ -4333,75 +4499,76 @@ msgid "Align with view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" +msgid "Environment" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" +msgid "Audio Listener" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" +msgid "Gizmos" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" +msgid "XForm Dialog" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" +msgid "No scene selected to instance!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" +msgid "Instance at Cursor" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" +msgid "Could not instance scene!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" +msgid "Scale Mode (R)" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" +msgid "Bottom View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" +msgid "Top View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" +msgid "Rear View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" +msgid "Front View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" +msgid "Left View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" +msgid "Right View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" +msgid "Switch Perspective/Orthogonal view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" +msgid "Insert Animation Key" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" -msgstr "" +#, fuzzy +msgid "Focus Selection" +msgstr "只限選中" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" +msgid "Align Selection With View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp @@ -4605,17 +4772,43 @@ msgid "StyleBox Preview:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" +msgid "Snap Mode:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" +msgid "<None>" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" msgstr "" #: tools/editor/plugins/theme_editor_plugin.cpp @@ -5097,6 +5290,14 @@ msgid "Couldn't create engine.cfg in project path." msgstr "" #: tools/editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "" @@ -5117,6 +5318,14 @@ msgid "Project Path:" msgstr "" #: tools/editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "瀏覽" @@ -5281,50 +5490,6 @@ msgid "Add Translation" msgstr "" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "" @@ -5349,10 +5514,6 @@ msgid "Remove Resource Remap Option" msgstr "" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "" @@ -5425,18 +5586,6 @@ msgid "AutoLoad" msgstr "" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "插件" @@ -5677,31 +5826,27 @@ msgid "Error duplicating scene to save it." msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" +msgid "Edit Groups" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Add Child Node" +msgid "Edit Connections" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Instance Child Scene" +msgid "Delete Node(s)" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Change Type" +msgid "Add Child Node" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" +msgid "Instance Child Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" +msgid "Change Type" msgstr "" #: tools/editor/scene_tree_dock.cpp @@ -5717,10 +5862,6 @@ msgid "Save Branch as Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "" @@ -5850,6 +5991,10 @@ msgid "Show In File Manager" msgstr "" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "" diff --git a/tools/translations/zh_TW.po b/tools/translations/zh_TW.po index 64399c4826..1119997c22 100644 --- a/tools/translations/zh_TW.po +++ b/tools/translations/zh_TW.po @@ -285,9 +285,10 @@ msgstr "" msgid "Create Folder" msgstr "" -#: scene/gui/file_dialog.cpp tools/editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/editor_file_dialog.cpp #: tools/editor/io_plugins/editor_font_import_plugin.cpp -#: tools/editor/project_settings.cpp tools/editor/script_create_dialog.cpp +#: tools/editor/script_create_dialog.cpp msgid "Path:" msgstr "" @@ -480,19 +481,19 @@ msgid "Anim Add Track" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Up" +msgid "Anim Duplicate Keys" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Move Anim Track Down" +msgid "Move Anim Track Up" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Remove Anim Track" +msgid "Move Anim Track Down" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Anim Duplicate Keys" +msgid "Remove Anim Track" msgstr "" #: tools/editor/animation_editor.cpp @@ -524,6 +525,19 @@ msgid "Anim Delete Keys" msgstr "" #: tools/editor/animation_editor.cpp +#: tools/editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "" + +#: tools/editor/animation_editor.cpp +msgid "Remove Selection" +msgstr "" + +#: tools/editor/animation_editor.cpp msgid "Continuous" msgstr "" @@ -552,15 +566,6 @@ msgid "Scale From Cursor" msgstr "" #: tools/editor/animation_editor.cpp -#: tools/editor/plugins/tile_map_editor_plugin.cpp -msgid "Duplicate Selection" -msgstr "" - -#: tools/editor/animation_editor.cpp -msgid "Duplicate Transposed" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Goto Next Step" msgstr "" @@ -643,10 +648,6 @@ msgid "Change Anim Loop" msgstr "" #: tools/editor/animation_editor.cpp -msgid "Change Anim Loop Interpolation" -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Anim Create Typed Value Key" msgstr "" @@ -687,10 +688,6 @@ msgid "Enable/Disable looping in animation." msgstr "" #: tools/editor/animation_editor.cpp -msgid "Enable/Disable interpolation when looping animation." -msgstr "" - -#: tools/editor/animation_editor.cpp msgid "Add new tracks." msgstr "" @@ -839,7 +836,6 @@ msgid "Call" msgstr "" #: tools/editor/call_dialog.cpp tools/editor/connections_dialog.cpp -#: tools/editor/import_settings.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/resource_preloader_editor_plugin.cpp @@ -955,10 +951,11 @@ msgid "Method in target Node must be specified!" msgstr "" #: tools/editor/connections_dialog.cpp -msgid "Conect To Node:" +msgid "Connect To Node:" msgstr "" -#: tools/editor/connections_dialog.cpp tools/editor/groups_editor.cpp +#: tools/editor/connections_dialog.cpp +#: tools/editor/editor_autoload_settings.cpp tools/editor/groups_editor.cpp #: tools/editor/plugins/item_list_editor_plugin.cpp #: tools/editor/plugins/theme_editor_plugin.cpp #: tools/editor/project_settings.cpp @@ -1062,8 +1059,8 @@ msgstr "" msgid "Resource" msgstr "" -#: tools/editor/dependency_editor.cpp tools/editor/project_manager.cpp -#: tools/editor/project_settings.cpp +#: tools/editor/dependency_editor.cpp tools/editor/editor_autoload_settings.cpp +#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp msgid "Path" msgstr "" @@ -1148,6 +1145,89 @@ msgstr "" msgid "Delete" msgstr "" +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Not in resource path." +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +#: tools/editor/io_plugins/editor_scene_import_plugin.cpp +#: tools/editor/plugins/sample_library_editor_plugin.cpp +#: tools/editor/project_manager.cpp +msgid "Name" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "" + +#: tools/editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "" + #: tools/editor/editor_data.cpp msgid "Updating Scene" msgstr "" @@ -1168,6 +1248,46 @@ msgstr "" msgid "Choose" msgstr "" +#: tools/editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "" + +#: tools/editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "" + #: tools/editor/editor_file_dialog.cpp tools/editor/scenes_dock.cpp msgid "Favorites:" msgstr "" @@ -1188,14 +1308,18 @@ msgstr "" msgid "ScanSources" msgstr "" -#: tools/editor/editor_help.cpp -msgid "Search Classes" +#: tools/editor/editor_help.cpp tools/editor/plugins/script_editor_plugin.cpp +msgid "Search Help" msgstr "" #: tools/editor/editor_help.cpp msgid "Class List:" msgstr "" +#: tools/editor/editor_help.cpp +msgid "Search Classes" +msgstr "" + #: tools/editor/editor_help.cpp tools/editor/property_editor.cpp msgid "Class:" msgstr "" @@ -1293,10 +1417,6 @@ msgstr "" msgid "Node From Scene" msgstr "" -#: tools/editor/editor_node.cpp tools/editor/scenes_dock.cpp -msgid "Re-Import.." -msgstr "" - #: tools/editor/editor_node.cpp #: tools/editor/plugins/animation_player_editor_plugin.cpp #: tools/editor/resources_dock.cpp @@ -1421,8 +1541,23 @@ msgstr "" #: tools/editor/editor_node.cpp msgid "" -"No main scene has ever been defined.\n" -"Select one from \"Project Settings\" under the 'application' category." +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." msgstr "" #: tools/editor/editor_node.cpp @@ -1515,6 +1650,10 @@ msgid "" "(Unsaved changes will be lost)" msgstr "" +#: tools/editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "" + #: tools/editor/editor_node.cpp tools/editor/scene_tree_dock.cpp msgid "Ugh" msgstr "" @@ -1538,7 +1677,7 @@ msgid "Save Layout" msgstr "" #: tools/editor/editor_node.cpp -msgid "Load Layout" +msgid "Delete Layout" msgstr "" #: tools/editor/editor_node.cpp tools/editor/project_export.cpp @@ -1546,10 +1685,6 @@ msgid "Default" msgstr "" #: tools/editor/editor_node.cpp -msgid "Delete Layout" -msgstr "" - -#: tools/editor/editor_node.cpp msgid "Switch Scene Tab" msgstr "" @@ -1579,6 +1714,14 @@ msgid "Distraction Free Mode" msgstr "" #: tools/editor/editor_node.cpp +msgid "Next tab" +msgstr "" + +#: tools/editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Operations with scene files." msgstr "" @@ -1599,6 +1742,10 @@ msgid "Save Scene" msgstr "" #: tools/editor/editor_node.cpp +msgid "Save all Scenes" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Close Scene" msgstr "" @@ -1722,6 +1869,10 @@ msgid "Play custom scene" msgstr "" #: tools/editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "" + +#: tools/editor/editor_node.cpp msgid "Debug options" msgstr "" @@ -1874,7 +2025,6 @@ msgid "Output" msgstr "" #: tools/editor/editor_node.cpp tools/editor/editor_reimport_dialog.cpp -#: tools/editor/import_settings.cpp msgid "Re-Import" msgstr "" @@ -2046,10 +2196,6 @@ msgstr "" msgid "Remove from Group" msgstr "" -#: tools/editor/import_settings.cpp -msgid "Imported Resources" -msgstr "" - #: tools/editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "No bit masks to import!" msgstr "" @@ -2121,6 +2267,12 @@ msgid "No target font resource!" msgstr "" #: tools/editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: tools/editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." msgstr "" @@ -2252,12 +2404,6 @@ msgid "Clips" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -#: tools/editor/plugins/sample_library_editor_plugin.cpp -#: tools/editor/project_manager.cpp tools/editor/project_settings.cpp -msgid "Name" -msgstr "" - -#: tools/editor/io_plugins/editor_scene_import_plugin.cpp msgid "Start(s)" msgstr "" @@ -2356,7 +2502,7 @@ msgid "Couldn't load post-import script:" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp -msgid "Invalid/broken script for post-import:" +msgid "Invalid/broken script for post-import (check console):" msgstr "" #: tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -3019,13 +3165,11 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Offset:" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Step:" msgstr "" @@ -3141,7 +3285,6 @@ msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Show Grid" msgstr "" @@ -3220,7 +3363,7 @@ msgid "Anchor" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp -msgid "Insert Keys (Ins)" +msgid "Insert Keys" msgstr "" #: tools/editor/plugins/canvas_item_editor_plugin.cpp @@ -3394,6 +3537,10 @@ msgid "MeshInstance lacks a Mesh!" msgstr "" #: tools/editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: tools/editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" msgstr "" @@ -3755,17 +3902,15 @@ msgid "Clear UV" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp +#: tools/editor/plugins/spatial_editor_plugin.cpp msgid "Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Enable Snap" msgstr "" #: tools/editor/plugins/polygon_2d_editor_plugin.cpp -#: tools/editor/plugins/texture_region_editor_plugin.cpp msgid "Grid" msgstr "" @@ -3873,6 +4018,14 @@ msgid "Save Theme As.." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp +msgid "Next script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: tools/editor/plugins/script_editor_plugin.cpp #: tools/editor/project_export.cpp msgid "File" msgstr "" @@ -4058,10 +4211,6 @@ msgid "Search the class hierarchy." msgstr "" #: tools/editor/plugins/script_editor_plugin.cpp -msgid "Search Help" -msgstr "" - -#: tools/editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." msgstr "" @@ -4096,6 +4245,11 @@ msgstr "" msgid "Debugger" msgstr "" +#: tools/editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + #: tools/editor/plugins/shader_editor_plugin.cpp msgid "Vertex" msgstr "" @@ -4329,75 +4483,75 @@ msgid "Align with view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Top (Num7)" +msgid "Environment" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Bottom (Shift+Num7)" +msgid "Audio Listener" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Left (Num3)" +msgid "Gizmos" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Right (Shift+Num3)" +msgid "XForm Dialog" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Front (Num1)" +msgid "No scene selected to instance!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Rear (Shift+Num1)" +msgid "Instance at Cursor" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Perspective (Num5)" +msgid "Could not instance scene!" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Orthogonal (Num5)" +msgid "Scale Mode (R)" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Environment" +msgid "Bottom View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Audio Listener" +msgid "Top View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Gizmos" +msgid "Rear View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Selection (F)" +msgid "Front View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Align with view (Ctrl+Shift+F)" +msgid "Left View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "XForm Dialog" +msgid "Right View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "No scene selected to instance!" +msgid "Switch Perspective/Orthogonal view" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Instance at Cursor" +msgid "Insert Animation Key" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Could not instance scene!" +msgid "Focus Selection" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp -msgid "Scale Mode (R)" +msgid "Align Selection With View" msgstr "" #: tools/editor/plugins/spatial_editor_plugin.cpp @@ -4601,17 +4755,43 @@ msgid "StyleBox Preview:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Texture Region Editor" +msgid "Snap Mode:" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "Scale Region Editor" +msgid "<None>" msgstr "" #: tools/editor/plugins/texture_region_editor_plugin.cpp -msgid "" -"No texture in this node.\n" -"Set a texture to be able to edit region." +msgid "Pixel Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: tools/editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" msgstr "" #: tools/editor/plugins/theme_editor_plugin.cpp @@ -5093,6 +5273,14 @@ msgid "Couldn't create engine.cfg in project path." msgstr "" #: tools/editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Import Existing Project" msgstr "" @@ -5113,6 +5301,14 @@ msgid "Project Path:" msgstr "" #: tools/editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: tools/editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: tools/editor/project_manager.cpp msgid "Browse" msgstr "" @@ -5277,50 +5473,6 @@ msgid "Add Translation" msgstr "" #: tools/editor/project_settings.cpp -msgid "Invalid name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Valid characters:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing engine class name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing buit-in type name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Invalid name. Must not collide with an existing global constant name." -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Autoload '%s' already exists!" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Rename Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Toggle AutoLoad Globals" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Add Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Remove Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Move Autoload" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Remove Translation" msgstr "" @@ -5345,10 +5497,6 @@ msgid "Remove Resource Remap Option" msgstr "" #: tools/editor/project_settings.cpp -msgid "Enable" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Project Settings (engine.cfg)" msgstr "" @@ -5421,18 +5569,6 @@ msgid "AutoLoad" msgstr "" #: tools/editor/project_settings.cpp -msgid "Node Name:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "List:" -msgstr "" - -#: tools/editor/project_settings.cpp -msgid "Singleton" -msgstr "" - -#: tools/editor/project_settings.cpp msgid "Plugins" msgstr "" @@ -5673,31 +5809,27 @@ msgid "Error duplicating scene to save it." msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "New Scene Root" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp -msgid "Inherit Scene" +msgid "Edit Groups" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Add Child Node" +msgid "Edit Connections" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Instance Child Scene" +msgid "Delete Node(s)" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Change Type" +msgid "Add Child Node" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Groups" +msgid "Instance Child Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Edit Connections" +msgid "Change Type" msgstr "" #: tools/editor/scene_tree_dock.cpp @@ -5713,10 +5845,6 @@ msgid "Save Branch as Scene" msgstr "" #: tools/editor/scene_tree_dock.cpp -msgid "Delete Node(s)" -msgstr "" - -#: tools/editor/scene_tree_dock.cpp msgid "Add/Create a New Node" msgstr "" @@ -5845,6 +5973,10 @@ msgid "Show In File Manager" msgstr "" #: tools/editor/scenes_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: tools/editor/scenes_dock.cpp msgid "Previous Directory" msgstr "" |