Path: blob/master/core/extension/gdextension_special_compat_hashes.cpp
9898 views
/**************************************************************************/1/* gdextension_special_compat_hashes.cpp */2/**************************************************************************/3/* This file is part of: */4/* GODOT ENGINE */5/* https://godotengine.org */6/**************************************************************************/7/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */8/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */9/* */10/* Permission is hereby granted, free of charge, to any person obtaining */11/* a copy of this software and associated documentation files (the */12/* "Software"), to deal in the Software without restriction, including */13/* without limitation the rights to use, copy, modify, merge, publish, */14/* distribute, sublicense, and/or sell copies of the Software, and to */15/* permit persons to whom the Software is furnished to do so, subject to */16/* the following conditions: */17/* */18/* The above copyright notice and this permission notice shall be */19/* included in all copies or substantial portions of the Software. */20/* */21/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */22/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */23/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */24/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */25/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */26/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */27/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */28/**************************************************************************/2930#include "gdextension_special_compat_hashes.h"3132#ifndef DISABLE_DEPRECATED3334#include "core/object/class_db.h"35#include "core/variant/variant.h"3637bool GDExtensionSpecialCompatHashes::lookup_current_hash(const StringName &p_class, const StringName &p_method, uint32_t p_legacy_hash, uint32_t *r_current_hash) {38LocalVector<Mapping> *methods = mappings.getptr(p_class);39if (!methods) {40return false;41}4243for (const Mapping &mapping : *methods) {44if (mapping.method == p_method && mapping.legacy_hash == p_legacy_hash) {45*r_current_hash = mapping.current_hash;46return true;47}48}4950return false;51}5253bool GDExtensionSpecialCompatHashes::get_legacy_hashes(const StringName &p_class, const StringName &p_method, Array &r_hashes, bool p_check_valid) {54LocalVector<Mapping> *methods = mappings.getptr(p_class);55if (!methods) {56return false;57}5859bool found = false;60for (const Mapping &mapping : *methods) {61if (mapping.method == p_method) {62if (p_check_valid) {63MethodBind *mb = ClassDB::get_method_with_compatibility(p_class, p_method, mapping.current_hash);64if (!mb) {65WARN_PRINT(vformat("Compatibility hash %d for %s::%s() mapped to non-existent hash %d. Please update gdextension_special_compat_hashes.cpp.", mapping.legacy_hash, p_class, p_method, mapping.current_hash));66continue;67}68}69r_hashes.push_back(mapping.legacy_hash);70found = true;71}72}7374return found;75}7677void GDExtensionSpecialCompatHashes::initialize() {78// clang-format off79mappings.insert("AESContext", {80{ "start", 3167574919, 3122411423 },81});82mappings.insert("AStar2D", {83{ "add_point", 3370185124, 4074201818 },84{ "set_point_disabled", 4023243586, 972357352 },85{ "connect_points", 3785370599, 3710494224 },86{ "disconnect_points", 3785370599, 3710494224 },87{ "are_points_connected", 4063588998, 2288175859 },88});89mappings.insert("AStar3D", {90{ "add_point", 2920922839, 1038703438 },91{ "set_point_disabled", 4023243586, 972357352 },92{ "connect_points", 3785370599, 3710494224 },93{ "disconnect_points", 3785370599, 3710494224 },94{ "are_points_connected", 4063588998, 2288175859 },95});96mappings.insert("AStarGrid2D", {97{ "set_point_solid", 2825551965, 1765703753 },98{ "fill_solid_region", 1152863744, 2261970063 },99});100mappings.insert("AcceptDialog", {101{ "add_button", 4158837846, 3328440682 },102});103mappings.insert("AnimatedSprite2D", {104{ "play", 2372066587, 3269405555 },105{ "play_backwards", 1421762485, 3323268493 },106});107mappings.insert("AnimatedSprite3D", {108{ "play", 2372066587, 3269405555 },109{ "play_backwards", 1421762485, 3323268493 },110});111mappings.insert("Animation", {112{ "add_track", 2393815928, 3843682357 },113{ "track_insert_key", 1985425300, 808952278 },114{ "track_find_key", 3898229885, 3245197284 },115#ifdef REAL_T_IS_DOUBLE116{ "bezier_track_insert_key", 1057544502, 3767441357 },117#else118{ "bezier_track_insert_key", 1057544502, 3656773645 },119#endif120{ "bezier_track_set_key_in_handle", 1028302688, 1719223284 },121{ "bezier_track_set_key_out_handle", 1028302688, 1719223284 },122{ "audio_track_insert_key", 3489962123, 4021027286 },123});124mappings.insert("AnimationNode", {125{ "blend_animation", 11797022, 1630801826 },126{ "blend_node", 263389446, 1746075988 },127{ "blend_input", 2709059328, 1361527350 },128});129mappings.insert("AnimationNodeBlendSpace1D", {130{ "add_blend_point", 4069484420, 285050433 },131});132mappings.insert("AnimationNodeBlendSpace2D", {133{ "add_blend_point", 1533588937, 402261981 },134{ "add_triangle", 642454959, 753017335 },135});136mappings.insert("AnimationNodeBlendTree", {137#ifdef REAL_T_IS_DOUBLE138{ "add_node", 2055804584, 1407702499 },139#else140{ "add_node", 2055804584, 1980270704 },141#endif142});143mappings.insert("AnimationNodeStateMachine", {144#ifdef REAL_T_IS_DOUBLE145{ "add_node", 2055804584, 1407702499 },146#else147{ "add_node", 2055804584, 1980270704 },148#endif149});150mappings.insert("AnimationNodeStateMachinePlayback", {151{ "travel", 3683006648, 3823612587 },152{ "start", 3683006648, 3823612587 },153});154mappings.insert("AnimationPlayer", {155{ "play", 3697947785, 3118260607 },156{ "play", 2221377757, 3118260607 },157{ "play_backwards", 3890664824, 2787282401 },158{ "play_with_capture", 3180464118, 1572969103 },159});160mappings.insert("ArrayMesh", {161{ "add_surface_from_arrays", 172284304, 1796411378 },162});163mappings.insert("AudioEffectSpectrumAnalyzerInstance", {164{ "get_magnitude_for_frequency_range", 2693213071, 797993915 },165});166mappings.insert("AudioServer", {167{ "add_bus_effect", 4147765248, 4068819785 },168{ "get_bus_effect_instance", 2887144608, 1829771234 },169});170mappings.insert("AudioStreamPlaybackPolyphonic", {171{ "play_stream", 3792189967, 604492179 },172});173mappings.insert("AudioStreamRandomizer", {174{ "add_stream", 3197802065, 1892018854 },175});176mappings.insert("BitMap", {177{ "create_from_image_alpha", 505265891, 106271684 },178{ "opaque_to_polygons", 876132484, 48478126 },179});180mappings.insert("CanvasItem", {181{ "draw_line", 2516941890, 1562330099 },182{ "draw_dashed_line", 2175215884, 684651049 },183{ "draw_polyline", 4175878946, 3797364428 },184{ "draw_polyline_colors", 2239164197, 2311979562 },185{ "draw_arc", 3486841771, 4140652635 },186{ "draw_multiline", 4230657331, 2239075205 },187{ "draw_multiline_colors", 235933050, 4072951537 },188{ "draw_rect", 84391229, 2417231121 },189{ "draw_texture", 1695860435, 520200117 },190{ "draw_texture_rect", 3204081724, 3832805018 },191{ "draw_texture_rect_region", 3196597532, 3883821411 },192{ "draw_msdf_texture_rect_region", 2672026175, 4219163252 },193{ "draw_lcd_texture_rect_region", 169610548, 3212350954 },194{ "draw_primitive", 2248678295, 3288481815 },195{ "draw_polygon", 2683625537, 974537912 },196{ "draw_colored_polygon", 1659099617, 15245644 },197{ "draw_string", 2552080639, 728290553 },198{ "draw_multiline_string", 4002645436, 1927038192 },199{ "draw_string_outline", 850005221, 340562381 },200{ "draw_multiline_string_outline", 3717870722, 1912318525 },201{ "draw_char", 2329089032, 3339793283 },202{ "draw_char_outline", 419453826, 3302344391 },203#ifdef REAL_T_IS_DOUBLE204{ "draw_mesh", 1634855856, 4036154158 },205{ "draw_set_transform", 3283884939, 156553079 },206#else207{ "draw_mesh", 1634855856, 153818295 },208{ "draw_set_transform", 3283884939, 288975085 },209#endif210{ "draw_animation_slice", 2295343543, 3112831842 },211});212mappings.insert("CodeEdit", {213{ "is_in_string", 3294126239, 688195400 },214{ "is_in_comment", 3294126239, 688195400 },215{ "add_code_completion_option", 1629240608, 947964390 },216});217mappings.insert("Control", {218{ "set_offsets_preset", 3651818904, 3724524307 },219{ "set_anchors_and_offsets_preset", 3651818904, 3724524307 },220{ "set_anchor", 2589937826, 2302782885 },221{ "get_theme_icon", 2336455395, 3163973443 },222{ "get_theme_stylebox", 2759935355, 604739069 },223{ "get_theme_font", 387378635, 2826986490 },224{ "get_theme_font_size", 229578101, 1327056374 },225{ "get_theme_color", 2377051548, 2798751242 },226{ "get_theme_constant", 229578101, 1327056374 },227{ "has_theme_icon", 1187511791, 866386512 },228{ "has_theme_stylebox", 1187511791, 866386512 },229{ "has_theme_font", 1187511791, 866386512 },230{ "has_theme_font_size", 1187511791, 866386512 },231{ "has_theme_color", 1187511791, 866386512 },232{ "has_theme_constant", 1187511791, 866386512 },233});234mappings.insert("Crypto", {235{ "generate_self_signed_certificate", 947314696, 492266173 },236});237mappings.insert("Curve", {238{ "add_point", 2766148617, 434072736 },239});240mappings.insert("Curve2D", {241#ifdef REAL_T_IS_DOUBLE242{ "add_point", 529706502, 3343370600 },243#else244{ "add_point", 2437345566, 4175465202 },245#endif246});247mappings.insert("Curve3D", {248#ifdef REAL_T_IS_DOUBLE249{ "add_point", 3544159631, 917388502 },250#else251{ "add_point", 3836314258, 2931053748 },252#endif253});254mappings.insert("DirAccess", {255{ "list_dir_begin", 2018049411, 166280745 },256{ "list_dir_begin", 2610976713, 166280745 },257{ "copy", 198434953, 1063198817 },258{ "copy_absolute", 198434953, 1063198817 },259});260mappings.insert("DisplayServer", {261{ "global_menu_add_submenu_item", 3806306913, 2828985934 },262{ "global_menu_add_item", 3415468211, 3616842746 },263{ "global_menu_add_item", 3401266716, 3616842746 },264{ "global_menu_add_check_item", 3415468211, 3616842746 },265{ "global_menu_add_check_item", 3401266716, 3616842746 },266{ "global_menu_add_icon_item", 1700867534, 3867083847 },267{ "global_menu_add_icon_item", 4245856523, 3867083847 },268{ "global_menu_add_icon_check_item", 1700867534, 3867083847 },269{ "global_menu_add_icon_check_item", 4245856523, 3867083847 },270{ "global_menu_add_radio_check_item", 3415468211, 3616842746 },271{ "global_menu_add_radio_check_item", 3401266716, 3616842746 },272{ "global_menu_add_icon_radio_check_item", 1700867534, 3867083847 },273{ "global_menu_add_icon_radio_check_item", 4245856523, 3867083847 },274{ "global_menu_add_multistate_item", 635750054, 3297554655 },275{ "global_menu_add_multistate_item", 3431222859, 3297554655 },276{ "global_menu_add_separator", 1041533178, 3214812433 },277{ "tts_speak", 3741216677, 903992738 },278{ "is_touchscreen_available", 4162880507, 36873697 },279{ "is_touchscreen_available", 3323674545, 36873697 },280{ "screen_set_orientation", 2629526904, 2211511631 },281{ "window_get_native_handle", 2709193271, 1096425680 },282{ "window_set_title", 3043792800, 441246282 },283{ "window_set_mouse_passthrough", 3958815166, 1993637420 },284{ "window_set_current_screen", 3023605688, 2230941749 },285{ "window_set_position", 3614040015, 2019273902 },286{ "window_set_size", 3614040015, 2019273902 },287{ "window_set_rect_changed_callback", 3653650673, 1091192925 },288{ "window_set_window_event_callback", 3653650673, 1091192925 },289{ "window_set_input_event_callback", 3653650673, 1091192925 },290{ "window_set_input_text_callback", 3653650673, 1091192925 },291{ "window_set_drop_files_callback", 3653650673, 1091192925 },292{ "window_set_max_size", 3614040015, 2019273902 },293{ "window_set_min_size", 3614040015, 2019273902 },294{ "window_set_mode", 2942569511, 1319965401 },295{ "window_set_flag", 3971592565, 254894155 },296{ "window_get_flag", 2662949986, 802816991 },297{ "window_set_window_buttons_offset", 3614040015, 2019273902 },298{ "window_set_ime_active", 450484987, 1661950165 },299{ "window_set_ime_position", 3614040015, 2019273902 },300{ "window_set_vsync_mode", 1708924624, 2179333492 },301#ifdef REAL_T_IS_DOUBLE302{ "cursor_set_custom_image", 1358907026, 4163678968 },303{ "virtual_keyboard_show", 384539973, 1323934605 },304#else305{ "cursor_set_custom_image", 1358907026, 1816663697 },306{ "virtual_keyboard_show", 860410478, 3042891259 },307#endif308});309mappings.insert("EditorExportPlatform", {310{ "export_project_files", 425454869, 1063735070 },311});312mappings.insert("EditorProperty", {313{ "emit_changed", 3069422438, 1822500399 },314});315mappings.insert("ENetConnection", {316{ "create_host_bound", 866250949, 1515002313 },317{ "connect_to_host", 385984708, 2171300490 },318{ "dtls_client_setup", 3097527179, 1966198364 },319});320mappings.insert("ENetMultiplayerPeer", {321{ "create_server", 1616151701, 2917761309 },322{ "create_client", 920217784, 2327163476 },323});324mappings.insert("EditorCommandPalette", {325{ "add_command", 3664614892, 864043298 },326});327mappings.insert("EditorDebuggerSession", {328{ "send_message", 3780025912, 85656714 },329{ "toggle_profiler", 35674246, 1198443697 },330});331mappings.insert("EditorFileDialog", {332{ "add_filter", 233059325, 3388804757 },333});334mappings.insert("EditorImportPlugin", {335{ "append_import_external_resource", 3645925746, 320493106 },336});337mappings.insert("EditorInterface", {338{ "popup_dialog", 2478844058, 2015770942 },339{ "popup_dialog_centered", 1723337679, 346557367 },340{ "popup_dialog_centered_ratio", 1310934579, 2093669136 },341{ "popup_dialog_centered_clamped", 3433759678, 3763385571 },342{ "inspect_object", 2564140749, 127962172 },343{ "edit_script", 3664508569, 219829402 },344{ "save_scene_as", 1168363258, 3647332257 },345});346mappings.insert("EditorNode3DGizmo", {347{ "add_lines", 302451090, 2910971437 },348#ifdef REAL_T_IS_DOUBLE349{ "add_mesh", 3332776472, 2161761131 },350#else351{ "add_mesh", 1868867708, 1579955111 },352#endif353{ "add_unscaled_billboard", 3719733075, 520007164 },354});355mappings.insert("EditorNode3DGizmoPlugin", {356{ "create_icon_material", 2976007329, 3804976916 },357{ "get_material", 3501703615, 974464017 },358});359mappings.insert("EditorScenePostImportPlugin", {360{ "add_import_option_advanced", 3774155785, 3674075649 },361});362mappings.insert("EditorUndoRedoManager", {363{ "create_action", 3577985681, 2107025470 },364});365mappings.insert("EngineDebugger", {366{ "profiler_enable", 438160728, 3192561009 },367});368mappings.insert("Expression", {369{ "parse", 3658149758, 3069722906 },370});371mappings.insert("FileAccess", {372{ "open_compressed", 2874458257, 3686439335 },373{ "store_csv_line", 2217842308, 2173791505 },374});375mappings.insert("FileDialog", {376{ "add_filter", 233059325, 3388804757 },377});378mappings.insert("Font", {379{ "get_string_size", 3678918099, 1868866121 },380{ "get_multiline_string_size", 2427690650, 519636710 },381{ "draw_string", 2565402639, 1983721962 },382{ "draw_multiline_string", 348869189, 1171506176 },383{ "draw_string_outline", 657875837, 623754045 },384{ "draw_multiline_string_outline", 1649790182, 3206388178 },385{ "draw_char", 1462476057, 3815617597 },386{ "draw_char_outline", 4161008124, 209525354 },387#ifdef REAL_T_IS_DOUBLE388{ "find_variation", 625117670, 2196349508 },389#else390{ "find_variation", 1222433716, 3344325384 },391// Pre-existing compatibility hash.392{ "find_variation", 1149405976, 1851767612 },393#endif394});395mappings.insert("GLTFDocument", {396{ "append_from_file", 1862991421, 866380864 },397{ "append_from_buffer", 2818062664, 1616081266 },398{ "append_from_scene", 374125375, 1622574258 },399{ "generate_scene", 2770277081, 596118388 },400});401mappings.insert("Geometry2D", {402{ "offset_polygon", 3837618924, 1275354010 },403{ "offset_polyline", 328033063, 2328231778 },404});405mappings.insert("Geometry3D", {406{ "build_cylinder_planes", 3142160516, 449920067 },407{ "build_capsule_planes", 410870045, 2113592876 },408});409mappings.insert("GraphNode", {410{ "set_slot", 902131739, 2873310869 },411});412mappings.insert("GridMap", {413{ "set_cell_item", 4177201334, 3449088946 },414});415mappings.insert("HTTPClient", {416{ "connect_to_host", 1970282951, 504540374 },417{ "request", 3249905507, 3778990155 },418});419mappings.insert("HTTPRequest", {420{ "request", 2720304520, 3215244323 },421{ "request_raw", 4282724657, 2714829993 },422});423mappings.insert("IP", {424{ "resolve_hostname", 396864159, 4283295457 },425{ "resolve_hostname_addresses", 3462780090, 773767525 },426{ "resolve_hostname_queue_item", 3936392508, 1749894742 },427});428mappings.insert("Image", {429{ "resize", 2461393748, 994498151 },430{ "save_jpg", 578836491, 2800019068 },431{ "save_webp", 3594949219, 2781156876 },432{ "compress", 4094210332, 2975424957 },433{ "compress_from_channels", 279105990, 4212890953 },434{ "load_svg_from_buffer", 1822513750, 311853421 },435{ "load_svg_from_string", 1461766635, 3254053600 },436});437mappings.insert("ImmediateMesh", {438{ "surface_begin", 3716480242, 2794442543 },439});440mappings.insert("ImporterMesh", {441{ "add_surface", 4122361985, 1740448849 },442});443mappings.insert("Input", {444{ "get_vector", 1517139831, 2479607902 },445{ "start_joy_vibration", 1890603622, 2576575033 },446{ "action_press", 573731101, 1713091165 },447#ifdef REAL_T_IS_DOUBLE448{ "set_custom_mouse_cursor", 3489634142, 1277868338 },449#else450{ "set_custom_mouse_cursor", 3489634142, 703945977 },451#endif452});453mappings.insert("InputEvent", {454{ "is_match", 3392494811, 1754951977 },455#ifdef REAL_T_IS_DOUBLE456{ "xformed_by", 2747409789, 3242949850 },457#else458{ "xformed_by", 2747409789, 1282766827 },459#endif460});461mappings.insert("InputMap", {462{ "add_action", 573731101, 4100757082 },463});464mappings.insert("ItemList", {465{ "add_item", 4086250691, 359861678 },466{ "add_icon_item", 3332687421, 4256579627 },467{ "get_item_rect", 1501513492, 159227807 },468{ "select", 4023243586, 972357352 },469});470mappings.insert("JSON", {471{ "stringify", 2656701787, 462733549 },472});473mappings.insert("JavaScriptBridge", {474{ "download_buffer", 4123979296, 3352272093 },475});476mappings.insert("Line2D", {477{ "add_point", 468506575, 2654014372 },478});479mappings.insert("MultiplayerAPI", {480{ "rpc", 1833408346, 2077486355 },481});482mappings.insert("NativeMenu", {483{ "add_item", 2553375659, 980552939 },484{ "add_check_item", 2553375659, 980552939 },485{ "add_icon_item", 2987595282, 1372188274 },486{ "add_icon_check_item", 2987595282, 1372188274 },487{ "add_radio_check_item", 2553375659, 980552939 },488{ "add_icon_radio_check_item", 2987595282, 1372188274 },489{ "add_multistate_item", 1558592568, 2674635658 },490});491mappings.insert("NavigationMeshGenerator", {492{ "parse_source_geometry_data", 3703028813, 3172802542 },493{ "parse_source_geometry_data", 685862123, 3172802542 },494{ "bake_from_source_geometry_data", 3669016597, 1286748856 },495{ "bake_from_source_geometry_data", 2469318639, 1286748856 },496});497mappings.insert("NavigationServer2D", {498{ "map_get_path", 56240621, 3146466012 },499{ "parse_source_geometry_data", 1176164995, 1766905497 },500{ "bake_from_source_geometry_data", 2909414286, 2179660022 },501{ "bake_from_source_geometry_data_async", 2909414286, 2179660022 },502});503mappings.insert("NavigationServer3D", {504{ "map_get_path", 2121045993, 1187418690 },505{ "parse_source_geometry_data", 3703028813, 3172802542 },506{ "parse_source_geometry_data", 685862123, 3172802542 },507{ "bake_from_source_geometry_data", 3669016597, 1286748856 },508{ "bake_from_source_geometry_data", 2469318639, 1286748856 },509{ "bake_from_source_geometry_data_async", 3669016597, 1286748856 },510{ "bake_from_source_geometry_data_async", 2469318639, 1286748856 },511});512mappings.insert("Node", {513{ "add_child", 3070154285, 3863233950 },514{ "reparent", 2570952461, 3685795103 },515{ "find_child", 4253159453, 2008217037 },516{ "find_children", 1585018254, 2560337219 },517{ "propagate_call", 1667910434, 1871007965 },518{ "set_multiplayer_authority", 4023243586, 972357352 },519});520mappings.insert("Node3D", {521#ifdef REAL_T_IS_DOUBLE522{ "look_at", 136915519, 819337406 },523{ "look_at_from_position", 4067663783, 1809580162 },524#else525{ "look_at", 3123400617, 2882425029 },526{ "look_at_from_position", 4067663783, 2086826090 },527#endif528});529mappings.insert("Noise", {530{ "get_image", 2569233413, 3180683109 },531{ "get_seamless_image", 2210827790, 2770743602 },532{ "get_image_3d", 2358868431, 3977814329 },533{ "get_seamless_image_3d", 3328694319, 451006340 },534});535mappings.insert("OS", {536{ "alert", 233059325, 1783970740 },537{ "get_system_font_path", 2262142305, 626580860 },538{ "get_system_font_path_for_text", 3824042574, 197317981 },539{ "execute", 2881709059, 1488299882 },540{ "shell_show_in_file_manager", 885841341, 3565188097 },541{ "set_restart_on_exit", 611198603, 3331453935 },542{ "get_system_dir", 1965199849, 3073895123 },543});544mappings.insert("Object", {545{ "add_user_signal", 3780025912, 85656714 },546{ "connect", 1469446357, 1518946055 },547{ "tr", 2475554935, 1195764410 },548{ "tr_n", 4021311862, 162698058 },549});550mappings.insert("OpenXRAPIExtension", {551{ "transform_from_pose", 3255299855, 2963875352 },552});553mappings.insert("OptionButton", {554{ "add_item", 3043792800, 2697778442 },555{ "add_icon_item", 3944051090, 3781678508 },556});557mappings.insert("PCKPacker", {558{ "pck_start", 3232891339, 508410629 },559});560mappings.insert("PacketPeerDTLS", {561{ "connect_to_peer", 1801538152, 2880188099 },562});563mappings.insert("PacketPeerUDP", {564{ "bind", 4290438434, 4051239242 },565});566mappings.insert("Performance", {567{ "add_custom_monitor", 2865980031, 4099036814 },568});569mappings.insert("PhysicalBone3D", {570#ifdef REAL_T_IS_DOUBLE571{ "apply_impulse", 1002852006, 2485728502 },572#else573{ "apply_impulse", 1002852006, 2754756483 },574#endif575});576mappings.insert("PhysicsBody2D", {577{ "move_and_collide", 1529961754, 3681923724 },578{ "test_move", 1369208982, 3324464701 },579});580mappings.insert("PhysicsBody3D", {581{ "move_and_collide", 2825704414, 3208792678 },582{ "test_move", 680299713, 2481691619 },583});584mappings.insert("PhysicsDirectBodyState2D", {585#ifdef REAL_T_IS_DOUBLE586{ "apply_impulse", 496058220, 1271588277 },587{ "apply_force", 496058220, 1271588277 },588{ "add_constant_force", 496058220, 1271588277 },589#else590{ "apply_impulse", 496058220, 4288681949 },591{ "apply_force", 496058220, 4288681949 },592{ "add_constant_force", 496058220, 4288681949 },593#endif594});595mappings.insert("PhysicsDirectBodyState3D", {596#ifdef REAL_T_IS_DOUBLE597{ "apply_impulse", 1002852006, 2485728502 },598{ "apply_force", 1002852006, 2485728502 },599{ "add_constant_force", 1002852006, 2485728502 },600#else601{ "apply_impulse", 1002852006, 2754756483 },602{ "apply_force", 1002852006, 2754756483 },603{ "add_constant_force", 1002852006, 2754756483 },604#endif605});606mappings.insert("PhysicsDirectSpaceState2D", {607{ "intersect_point", 3278207904, 2118456068 },608{ "intersect_shape", 3803848594, 2488867228 },609{ "collide_shape", 3803848594, 2488867228 },610});611mappings.insert("PhysicsDirectSpaceState3D", {612{ "intersect_point", 45993382, 975173756 },613{ "intersect_shape", 550215980, 3762137681 },614{ "collide_shape", 550215980, 3762137681 },615});616mappings.insert("PhysicsRayQueryParameters2D", {617{ "create", 1118143851, 3196569324 },618});619mappings.insert("PhysicsRayQueryParameters3D", {620{ "create", 680321959, 3110599579 },621});622mappings.insert("PhysicsServer2D", {623#ifdef REAL_T_IS_DOUBLE624{ "area_add_shape", 754862190, 3597527023 },625{ "body_add_shape", 754862190, 3597527023 },626{ "body_apply_impulse", 34330743, 1124035137 },627{ "body_apply_force", 34330743, 1124035137 },628{ "body_add_constant_force", 34330743, 1124035137 },629#else630{ "area_add_shape", 754862190, 339056240 },631{ "body_add_shape", 754862190, 339056240 },632{ "body_apply_impulse", 34330743, 205485391 },633{ "body_apply_force", 34330743, 205485391 },634{ "body_add_constant_force", 34330743, 205485391 },635#endif636{ "joint_make_pin", 2288600450, 1612646186 },637{ "joint_make_groove", 3573265764, 481430435 },638{ "joint_make_damped_spring", 206603952, 1994657646 },639});640mappings.insert("PhysicsServer3D", {641#ifdef REAL_T_IS_DOUBLE642{ "area_add_shape", 4040559639, 183938777 },643{ "body_add_shape", 4040559639, 183938777 },644{ "body_apply_impulse", 110375048, 2238283471 },645{ "body_apply_force", 110375048, 2238283471 },646{ "body_add_constant_force", 110375048, 2238283471 },647#else648{ "area_add_shape", 4040559639, 3711419014 },649{ "body_add_shape", 4040559639, 3711419014 },650{ "body_apply_impulse", 110375048, 390416203 },651{ "body_apply_force", 110375048, 390416203 },652{ "body_add_constant_force", 110375048, 390416203 },653#endif654});655mappings.insert("PopupMenu", {656{ "add_item", 3224536192, 3674230041 },657{ "add_icon_item", 1200674553, 1086190128 },658{ "add_check_item", 3224536192, 3674230041 },659{ "add_icon_check_item", 1200674553, 1086190128 },660{ "add_radio_check_item", 3224536192, 3674230041 },661{ "add_icon_radio_check_item", 1200674553, 1086190128 },662{ "add_multistate_item", 1585218420, 150780458 },663{ "add_shortcut", 2482211467, 3451850107 },664{ "add_icon_shortcut", 3060251822, 2997871092 },665{ "add_check_shortcut", 2168272394, 1642193386 },666{ "add_icon_check_shortcut", 68101841, 3856247530 },667{ "add_radio_check_shortcut", 2168272394, 1642193386 },668{ "add_icon_radio_check_shortcut", 68101841, 3856247530 },669{ "add_submenu_item", 3728518296, 2979222410 },670// Pre-existing compatibility hashes.671{ "add_icon_shortcut", 68101841, 3856247530 },672{ "add_shortcut", 2168272394, 1642193386 },673});674mappings.insert("PortableCompressedTexture2D", {675{ "create_from_image", 97251393, 3679243433 },676});677mappings.insert("ProjectSettings", {678{ "load_resource_pack", 3001721055, 708980503 },679});680mappings.insert("RDShaderFile", {681{ "bake_from_source_geometry_data_async", 2469318639, 1286748856 },682{ "set_bytecode", 1558064255, 1526857008 },683{ "get_spirv", 3340165340, 2689310080 },684});685mappings.insert("RegEx", {686{ "search", 4087180739, 3365977994 },687{ "search_all", 3354100289, 849021363 },688{ "sub", 758293621, 54019702 },689});690mappings.insert("RenderingDevice", {691{ "texture_create", 3011278298, 3709173589 },692{ "texture_create_shared_from_slice", 864132525, 1808971279 },693{ "texture_update", 2736912341, 2096463824 },694{ "texture_copy", 3741367532, 2339493201 },695{ "texture_clear", 3423681478, 3396867530 },696{ "texture_resolve_multisample", 2126834943, 594679454 },697{ "framebuffer_format_create", 2635475316, 697032759 },698{ "framebuffer_format_create_multipass", 1992489524, 2647479094 },699{ "framebuffer_format_get_texture_samples", 1036806638, 4223391010 },700{ "framebuffer_create", 1884747791, 3284231055 },701{ "framebuffer_create_multipass", 452534725, 1750306695 },702{ "framebuffer_create_empty", 382373098, 3058360618 },703{ "vertex_buffer_create", 3491282828, 3410049843 },704{ "vertex_array_create", 3137892244, 3799816279 },705{ "index_buffer_create", 975915977, 3935920523 },706{ "shader_compile_spirv_from_source", 3459523685, 1178973306 },707{ "shader_compile_binary_from_spirv", 1395027180, 134910450 },708{ "shader_create_from_spirv", 3297482566, 342949005 },709{ "shader_create_from_bytecode", 2078349841, 1687031350 },710{ "uniform_buffer_create", 1453158401, 34556762 },711{ "storage_buffer_create", 1173156076, 2316365934 },712{ "texture_buffer_create", 2344087557, 1470338698 },713{ "buffer_update", 652628289, 3793150683 },714{ "buffer_clear", 1645170096, 2797041220 },715{ "buffer_get_data", 125363422, 3101830688 },716{ "render_pipeline_create", 2911419500, 2385451958 },717{ "compute_pipeline_create", 403593840, 1448838280 },718{ "draw_list_draw", 3710874499, 4230067973 },719#ifdef REAL_T_IS_DOUBLE720{ "draw_list_begin", 4252992020, 848735039 },721{ "draw_list_begin_split", 832527510, 2228306807 },722{ "draw_list_enable_scissor", 338791288, 730833978 },723#else724{ "draw_list_begin", 4252992020, 2468082605 },725{ "draw_list_begin_split", 832527510, 2406300660 },726{ "draw_list_enable_scissor", 338791288, 244650101 },727#endif728});729mappings.insert("RenderingServer", {730{ "texture_rd_create", 3291180269, 1434128712 },731{ "shader_set_default_texture_parameter", 3864903085, 4094001817 },732{ "shader_get_default_texture_parameter", 2523186822, 1464608890 },733{ "mesh_create_from_surfaces", 4007581507, 4291747531 },734{ "mesh_add_surface_from_arrays", 1247008646, 2342446560 },735{ "environment_set_ambient_light", 491659071, 1214961493 },736{ "instances_cull_aabb", 2031554939, 2570105777 },737{ "instances_cull_ray", 3388524336, 2208759584 },738{ "instances_cull_convex", 3690700105, 2488539944 },739{ "canvas_item_add_line", 2843922985, 1819681853 },740{ "canvas_item_add_polyline", 3438017257, 3098767073 },741{ "canvas_item_add_multiline", 3176074788, 2088642721 },742{ "canvas_item_add_texture_rect", 3205360868, 324864032 },743{ "canvas_item_add_msdf_texture_rect_region", 349157222, 97408773 },744{ "canvas_item_add_texture_rect_region", 2782979504, 485157892 },745{ "canvas_item_add_nine_patch", 904428547, 389957886 },746{ "canvas_item_add_polygon", 2907936855, 3580000528 },747{ "canvas_item_add_triangle_array", 749685193, 660261329 },748{ "canvas_item_add_multimesh", 1541595251, 2131855138 },749{ "canvas_item_add_animation_slice", 4107531031, 2646834499 },750{ "canvas_item_set_canvas_group_mode", 41973386, 3973586316 },751{ "set_boot_image", 2244367877, 3759744527 },752#ifdef REAL_T_IS_DOUBLE753{ "viewport_attach_to_screen", 1410474027, 2248302004 },754{ "canvas_item_set_custom_rect", 2180266943, 1134449082 },755{ "canvas_item_add_mesh", 3877492181, 3024949314 },756#else757{ "viewport_attach_to_screen", 1278520651, 1062245816 },758{ "canvas_item_set_custom_rect", 2180266943, 1333997032 },759{ "canvas_item_add_mesh", 3548053052, 316450961 },760#endif761});762mappings.insert("ResourceLoader", {763{ "load_threaded_request", 1939848623, 3614384323 },764{ "load_threaded_get_status", 3931021148, 4137685479 },765{ "load", 2622212233, 3358495409 },766{ "exists", 2220807150, 4185558881 },767});768mappings.insert("ResourceSaver", {769{ "save", 2303056517, 2983274697 },770});771mappings.insert("RichTextLabel", {772{ "push_font", 814287596, 2347424842 },773{ "push_paragraph", 3218895358, 3089306873 },774{ "push_list", 4036303897, 3017143144 },775{ "push_table", 1125058220, 2623499273 },776{ "set_table_column_expand", 4258957458, 2185176273 },777#ifdef REAL_T_IS_DOUBLE778{ "add_image", 3346058748, 1507062345 },779{ "push_dropcap", 981432822, 763534173 },780#else781{ "add_image", 3346058748, 3580801207 },782{ "push_dropcap", 311501835, 4061635501 },783#endif784});785mappings.insert("RigidBody2D", {786#ifdef REAL_T_IS_DOUBLE787{ "apply_impulse", 496058220, 1271588277 },788{ "apply_force", 496058220, 1271588277 },789{ "add_constant_force", 496058220, 1271588277 },790#else791{ "apply_impulse", 496058220, 4288681949 },792{ "apply_force", 496058220, 4288681949 },793{ "add_constant_force", 496058220, 4288681949 },794#endif795});796mappings.insert("RigidBody3D", {797#ifdef REAL_T_IS_DOUBLE798{ "apply_impulse", 1002852006, 2485728502 },799{ "apply_force", 1002852006, 2485728502 },800{ "add_constant_force", 1002852006, 2485728502 },801#else802{ "apply_impulse", 1002852006, 2754756483 },803{ "apply_force", 1002852006, 2754756483 },804{ "add_constant_force", 1002852006, 2754756483 },805#endif806});807mappings.insert("SceneMultiplayer", {808{ "send_bytes", 2742700601, 1307428718 },809});810mappings.insert("SceneReplicationConfig", {811{ "add_property", 3818401521, 4094619021 },812});813mappings.insert("SceneTree", {814{ "create_timer", 1780978058, 2709170273 },815});816mappings.insert("ScriptCreateDialog", {817{ "config", 4210001628, 869314288 },818});819mappings.insert("Shader", {820{ "set_default_texture_parameter", 1628453603, 2750740428 },821{ "get_default_texture_parameter", 3823812009, 3090538643 },822});823mappings.insert("Skeleton3D", {824{ "set_bone_enabled", 4023243586, 972357352 },825});826mappings.insert("SpriteFrames", {827{ "add_frame", 407562921, 1351332740 },828{ "set_frame", 3155743884, 56804795 },829});830mappings.insert("StreamPeerTCP", {831{ "bind", 4025329869, 3167955072 },832});833mappings.insert("StreamPeerTLS", {834{ "connect_to_stream", 1325480781, 57169517 },835});836mappings.insert("SurfaceTool", {837{ "add_triangle_fan", 297960074, 2235017613 },838{ "generate_lod", 1894448909, 1938056459 },839});840mappings.insert("TCPServer", {841{ "listen", 4025329869, 3167955072 },842});843mappings.insert("TextEdit", {844{ "get_line_width", 3294126239, 688195400 },845{ "insert_text_at_caret", 3043792800, 2697778442 },846{ "get_line_column_at_pos", 850652858, 239517838 },847{ "is_mouse_over_selection", 1099474134, 1840282309 },848{ "set_caret_line", 1413195636, 1302582944 },849{ "set_caret_column", 1071284433, 3796796178 },850{ "set_selection_mode", 2920622473, 1443345937 },851{ "select", 4269665324, 2560984452 },852{ "get_scroll_pos_for_line", 3274652423, 3929084198 },853{ "set_line_as_first_visible", 3023605688, 2230941749 },854{ "set_line_as_center_visible", 3023605688, 2230941749 },855{ "set_line_as_last_visible", 3023605688, 2230941749 },856});857mappings.insert("TextLine", {858{ "add_string", 867188035, 621426851 },859{ "add_object", 735420116, 1316529304 },860{ "resize_object", 960819067, 2095776372 },861{ "draw", 1164457837, 856975658 },862{ "draw_outline", 1364491366, 1343401456 },863});864mappings.insert("TextParagraph", {865#ifdef REAL_T_IS_DOUBLE866{ "set_dropcap", 2613124475, 2897844600 },867#else868{ "set_dropcap", 2613124475, 2498990330 },869#endif870{ "add_string", 867188035, 621426851 },871{ "add_object", 735420116, 1316529304 },872{ "resize_object", 960819067, 2095776372 },873{ "draw", 367324453, 1567802413 },874{ "draw_outline", 2159523405, 1893131224 },875{ "draw_line", 3963848920, 1242169894 },876{ "draw_line_outline", 1814903311, 2664926980 },877{ "draw_dropcap", 1164457837, 856975658 },878{ "draw_dropcap_outline", 1364491366, 1343401456 },879});880mappings.insert("TextServer", {881{ "font_draw_glyph", 1821196351, 1339057948 },882{ "font_draw_glyph_outline", 1124898203, 2626165733 },883{ "shaped_text_set_direction", 2616949700, 1551430183 },884{ "shaped_text_set_orientation", 104095128, 3019609126 },885{ "shaped_text_add_string", 2621279422, 623473029 },886{ "shaped_text_add_object", 2838446185, 3664424789 },887{ "shaped_text_resize_object", 2353789835, 790361552 },888{ "shaped_set_span_update_font", 1578983057, 2022725822 },889{ "shaped_text_fit_to_width", 603718830, 530670926 },890{ "shaped_text_get_line_breaks_adv", 4206849830, 2376991424 },891{ "shaped_text_get_line_breaks", 303410369, 2651359741 },892{ "shaped_text_get_word_breaks", 3299477123, 185957063 },893{ "shaped_text_overrun_trim_to_width", 1572579718, 2723146520 },894{ "shaped_text_draw", 70679950, 880389142 },895{ "shaped_text_draw_outline", 2673671346, 2559184194 },896{ "format_number", 2305636099, 2664628024 },897{ "parse_number", 2305636099, 2664628024 },898{ "string_get_word_breaks", 1398910359, 581857818 },899{ "string_get_character_breaks", 1586579831, 2333794773 },900{ "string_to_upper", 2305636099, 2664628024 },901{ "string_to_lower", 2305636099, 2664628024 },902});903mappings.insert("Texture2D", {904{ "draw", 1115460088, 2729649137 },905{ "draw_rect", 575156982, 3499451691 },906{ "draw_rect_region", 1066564656, 2963678660 },907});908mappings.insert("Thread", {909{ "start", 2779832528, 1327203254 },910});911mappings.insert("TileMap", {912{ "set_cell", 1732664643, 966713560 },913{ "set_cells_terrain_connect", 3072115677, 3578627656 },914{ "set_cells_terrain_path", 3072115677, 3578627656 },915{ "get_used_cells_by_id", 4152068407, 2931012785 },916});917mappings.insert("TileMapLayer", {918{ "notify_runtime_tile_data_update", 2275361663, 3218959716 },919});920mappings.insert("TileMapPattern", {921{ "set_cell", 634000503, 2224802556 },922});923mappings.insert("TileSet", {924{ "add_source", 276991387, 1059186179 },925{ "add_terrain", 3023605688, 1230568737 },926{ "add_pattern", 3009264082, 763712015 },927});928mappings.insert("TileSetAtlasSource", {929{ "create_tile", 1583819816, 190528769 },930{ "move_tile_in_atlas", 1375626516, 3870111920 },931{ "has_room_for_tile", 4182444377, 3018597268 },932{ "create_alternative_tile", 3531100812, 2226298068 },933{ "get_tile_texture_region", 1321423751, 241857547 },934});935mappings.insert("TileSetScenesCollectionSource", {936{ "create_scene_tile", 2633389122, 1117465415 },937});938mappings.insert("Translation", {939{ "add_message", 971803314, 3898530326 },940{ "add_plural_message", 360316719, 2356982266 },941{ "get_message", 58037827, 1829228469 },942{ "get_plural_message", 1333931916, 229954002 },943{ "erase_message", 3919944288, 3959009644 },944});945mappings.insert("TranslationServer", {946{ "translate", 58037827, 1829228469 },947{ "translate_plural", 1333931916, 229954002 },948});949mappings.insert("Tree", {950{ "get_item_area_rect", 1235226180, 47968679 },951});952mappings.insert("TreeItem", {953{ "propagate_check", 4023243586, 972357352 },954{ "add_button", 1507727907, 1688223362 },955});956mappings.insert("UDPServer", {957{ "listen", 4025329869, 3167955072 },958});959mappings.insert("UPNP", {960{ "add_port_mapping", 3358934458, 818314583 },961{ "delete_port_mapping", 760296170, 3444187325 },962});963mappings.insert("UPNPDevice", {964{ "add_port_mapping", 3358934458, 818314583 },965{ "delete_port_mapping", 760296170, 3444187325 },966});967mappings.insert("UndoRedo", {968{ "create_action", 3900135403, 3171901514 },969});970mappings.insert("VideoStreamPlayback", {971{ "mix_audio", 1369271885, 93876830 },972});973mappings.insert("WebRTCMultiplayerPeer", {974{ "create_client", 1777354631, 2641732907 },975{ "create_mesh", 1777354631, 2641732907 },976{ "add_peer", 2555866323, 4078953270 },977});978mappings.insert("WebRTCPeerConnection", {979{ "create_data_channel", 3997447457, 1288557393 },980});981mappings.insert("WebSocketMultiplayerPeer", {982{ "create_client", 3097527179, 1966198364 },983{ "create_server", 337374795, 2400822951 },984});985mappings.insert("WebSocketPeer", {986{ "connect_to_url", 3097527179, 1966198364 },987{ "send", 3440492527, 2780360567 },988});989mappings.insert("Window", {990{ "get_theme_icon", 2336455395, 3163973443 },991{ "get_theme_stylebox", 2759935355, 604739069 },992{ "get_theme_font", 387378635, 2826986490 },993{ "get_theme_font_size", 229578101, 1327056374 },994{ "get_theme_color", 2377051548, 2798751242 },995{ "get_theme_constant", 229578101, 1327056374 },996{ "has_theme_icon", 1187511791, 866386512 },997{ "has_theme_stylebox", 1187511791, 866386512 },998{ "has_theme_font", 1187511791, 866386512 },999{ "has_theme_font_size", 1187511791, 866386512 },1000{ "has_theme_color", 1187511791, 866386512 },1001{ "has_theme_constant", 1187511791, 866386512 },1002{ "popup_exclusive", 1728044812, 2134721627 },1003{ "popup_exclusive_centered", 2561668109, 3357594017 },1004{ "popup_exclusive_centered_ratio", 4257659513, 2284776287 },1005{ "popup_exclusive_centered_clamped", 224798062, 2612708785 },1006});1007mappings.insert("WorkerThreadPool", {1008{ "add_task", 3976347598, 3745067146 },1009{ "add_group_task", 2377228549, 1801953219 },1010});1011mappings.insert("ZIPPacker", {1012{ "open", 3715508516, 1936816515 },1013});1014mappings.insert("ZIPReader", {1015{ "read_file", 156385007, 740857591 },1016{ "file_exists", 1676256, 35364943 },1017});1018// clang-format on1019}10201021void GDExtensionSpecialCompatHashes::finalize() {1022mappings.clear();1023}10241025#endif // DISABLE_DEPRECATED102610271028