diff options
Diffstat (limited to 'modules')
48 files changed, 3901 insertions, 3638 deletions
diff --git a/modules/assimp/editor_scene_importer_assimp.cpp b/modules/assimp/editor_scene_importer_assimp.cpp index 9c90faf66b..aedc4b690a 100644 --- a/modules/assimp/editor_scene_importer_assimp.cpp +++ b/modules/assimp/editor_scene_importer_assimp.cpp @@ -44,7 +44,6 @@ #include <assimp/scene.h> #include <assimp/Importer.hpp> #include <assimp/LogStream.hpp> -#include <string> // move into assimp aiBone *get_bone_by_name(const aiScene *scene, aiString bone_name) { @@ -102,8 +101,6 @@ void EditorSceneImporterAssimp::_bind_methods() { Node *EditorSceneImporterAssimp::import_scene(const String &p_path, uint32_t p_flags, int p_bake_fps, List<String> *r_missing_deps, Error *r_err) { Assimp::Importer importer; - std::wstring w_path = ProjectSettings::get_singleton()->globalize_path(p_path).c_str(); - std::string s_path(w_path.begin(), w_path.end()); importer.SetPropertyBool(AI_CONFIG_PP_FD_REMOVE, true); // Cannot remove pivot points because the static mesh will be in the wrong place importer.SetPropertyBool(AI_CONFIG_IMPORT_FBX_PRESERVE_PIVOTS, false); @@ -145,7 +142,8 @@ Node *EditorSceneImporterAssimp::import_scene(const String &p_path, uint32_t p_f // aiProcess_EmbedTextures | //aiProcess_SplitByBoneCount | 0; - aiScene *scene = (aiScene *)importer.ReadFile(s_path.c_str(), post_process_Steps); + String g_path = ProjectSettings::get_singleton()->globalize_path(p_path); + aiScene *scene = (aiScene *)importer.ReadFile(g_path.utf8().ptr(), post_process_Steps); ERR_FAIL_COND_V_MSG(scene == nullptr, nullptr, String("Open Asset Import failed to open: ") + String(importer.GetErrorString())); @@ -298,6 +296,7 @@ EditorSceneImporterAssimp::_generate_scene(const String &p_path, aiScene *scene, state.assimp_scene = scene; state.max_bone_weights = p_max_bone_weights; state.animation_player = nullptr; + state.import_flags = p_flags; // populate light map for (unsigned int l = 0; l < scene->mNumLights; l++) { @@ -829,6 +828,8 @@ EditorSceneImporterAssimp::_generate_mesh_from_surface_indices(ImportState &stat Ref<ArrayMesh> mesh; mesh.instance(); bool has_uvs = false; + bool compress_vert_data = state.import_flags & IMPORT_USE_COMPRESSION; + uint32_t mesh_flags = compress_vert_data ? Mesh::ARRAY_COMPRESS_DEFAULT : 0; Map<String, uint32_t> morph_mesh_string_lookup; @@ -1266,7 +1267,7 @@ EditorSceneImporterAssimp::_generate_mesh_from_surface_indices(ImportState &stat morphs[j] = array_copy; } - mesh->add_surface_from_arrays(primitive, array_mesh, morphs); + mesh->add_surface_from_arrays(primitive, array_mesh, morphs, Dictionary(), mesh_flags); mesh->surface_set_material(i, mat); mesh->surface_set_name(i, AssimpUtils::get_assimp_string(ai_mesh->mName)); } diff --git a/modules/assimp/import_state.h b/modules/assimp/import_state.h index 4a3bd17acb..ee22800ac4 100644 --- a/modules/assimp/import_state.h +++ b/modules/assimp/import_state.h @@ -87,6 +87,9 @@ struct ImportState { // this means we can detect // what bones are for other armatures List<aiBone *> bone_stack; + + // EditorSceneImporter::ImportFlags + uint32_t import_flags; }; struct AssimpImageData { diff --git a/modules/bullet/SCsub b/modules/bullet/SCsub index b853ebfc63..21bdcca18e 100644 --- a/modules/bullet/SCsub +++ b/modules/bullet/SCsub @@ -201,8 +201,8 @@ if env["builtin_bullet"]: env_bullet.Append(CPPFLAGS=["-isystem", Dir(thirdparty_dir).path]) else: env_bullet.Prepend(CPPPATH=[thirdparty_dir]) - # if env['target'] == "debug" or env['target'] == "release_debug": - # env_bullet.Append(CPPDEFINES=['BT_DEBUG']) + if env["target"] == "debug" or env["target"] == "release_debug": + env_bullet.Append(CPPDEFINES=["DEBUG"]) env_bullet.Append(CPPDEFINES=["BT_USE_OLD_DAMPING_METHOD"]) diff --git a/modules/bullet/space_bullet.cpp b/modules/bullet/space_bullet.cpp index 99f58e7059..cfe8cd5322 100644 --- a/modules/bullet/space_bullet.cpp +++ b/modules/bullet/space_bullet.cpp @@ -123,6 +123,7 @@ int BulletPhysicsDirectSpaceState::intersect_shape(const RID &p_shape, const Tra } ShapeBullet *shape = space->get_physics_server()->get_shape_owner()->getornull(p_shape); + ERR_FAIL_COND_V(!shape, 0); btCollisionShape *btShape = shape->create_bt_shape(p_xform.basis.get_scale_abs(), p_margin); if (!btShape->isConvex()) { @@ -152,7 +153,17 @@ int BulletPhysicsDirectSpaceState::intersect_shape(const RID &p_shape, const Tra } bool BulletPhysicsDirectSpaceState::cast_motion(const RID &p_shape, const Transform &p_xform, const Vector3 &p_motion, float p_margin, float &r_closest_safe, float &r_closest_unsafe, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas, ShapeRestInfo *r_info) { + r_closest_safe = 0.0f; + r_closest_unsafe = 0.0f; + btVector3 bt_motion; + G_TO_B(p_motion, bt_motion); + + if (bt_motion.fuzzyZero()) { + return false; + } + ShapeBullet *shape = space->get_physics_server()->get_shape_owner()->getornull(p_shape); + ERR_FAIL_COND_V(!shape, false); btCollisionShape *btShape = shape->create_bt_shape(p_xform.basis.get_scale(), p_margin); if (!btShape->isConvex()) { @@ -162,9 +173,6 @@ bool BulletPhysicsDirectSpaceState::cast_motion(const RID &p_shape, const Transf } btConvexShape *bt_convex_shape = static_cast<btConvexShape *>(btShape); - btVector3 bt_motion; - G_TO_B(p_motion, bt_motion); - btTransform bt_xform_from; G_TO_B(p_xform, bt_xform_from); UNSCALE_BT_BASIS(bt_xform_from); @@ -178,9 +186,6 @@ bool BulletPhysicsDirectSpaceState::cast_motion(const RID &p_shape, const Transf space->dynamicsWorld->convexSweepTest(bt_convex_shape, bt_xform_from, bt_xform_to, btResult, space->dynamicsWorld->getDispatchInfo().m_allowedCcdPenetration); - r_closest_unsafe = 1.0; - r_closest_safe = 1.0; - if (btResult.hasHit()) { const btScalar l = bt_motion.length(); r_closest_unsafe = btResult.m_closestHitFraction; @@ -196,6 +201,9 @@ bool BulletPhysicsDirectSpaceState::cast_motion(const RID &p_shape, const Transf r_info->collider_id = collision_object->get_instance_id(); r_info->shape = btResult.m_shapeId; } + } else { + r_closest_safe = 1.0f; + r_closest_unsafe = 1.0f; } bulletdelete(bt_convex_shape); @@ -209,6 +217,7 @@ bool BulletPhysicsDirectSpaceState::collide_shape(RID p_shape, const Transform & } ShapeBullet *shape = space->get_physics_server()->get_shape_owner()->getornull(p_shape); + ERR_FAIL_COND_V(!shape, false); btCollisionShape *btShape = shape->create_bt_shape(p_shape_xform.basis.get_scale_abs(), p_margin); if (!btShape->isConvex()) { @@ -240,6 +249,7 @@ bool BulletPhysicsDirectSpaceState::collide_shape(RID p_shape, const Transform & bool BulletPhysicsDirectSpaceState::rest_info(RID p_shape, const Transform &p_shape_xform, float p_margin, ShapeRestInfo *r_info, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas) { ShapeBullet *shape = space->get_physics_server()->get_shape_owner()->getornull(p_shape); + ERR_FAIL_COND_V(!shape, false); btCollisionShape *btShape = shape->create_bt_shape(p_shape_xform.basis.get_scale_abs(), p_margin); if (!btShape->isConvex()) { diff --git a/modules/csg/csg.cpp b/modules/csg/csg.cpp index ded0b970dc..d0c9bf5d38 100644 --- a/modules/csg/csg.cpp +++ b/modules/csg/csg.cpp @@ -904,8 +904,12 @@ void CSGBrushOperation::Build2DFaces::_merge_faces(const Vector<int> &p_segment_ vertices[p_segment_indices[closest_idx]].point }; if (are_segements_parallel(edge1, edge2, vertex_snap2)) { - degenerate_points.push_back(outer_edge_idx[0]); - degenerate_points.push_back(outer_edge_idx[1]); + if (!degenerate_points.find(outer_edge_idx[0])) { + degenerate_points.push_back(outer_edge_idx[0]); + } + if (!degenerate_points.find(outer_edge_idx[1])) { + degenerate_points.push_back(outer_edge_idx[1]); + } continue; } diff --git a/modules/dds/texture_loader_dds.cpp b/modules/dds/texture_loader_dds.cpp index ba425371a8..2f4f7d7a4c 100644 --- a/modules/dds/texture_loader_dds.cpp +++ b/modules/dds/texture_loader_dds.cpp @@ -29,14 +29,15 @@ /*************************************************************************/ #include "texture_loader_dds.h" + #include "core/os/file_access.h" #define PF_FOURCC(s) ((uint32_t)(((s)[3] << 24U) | ((s)[2] << 16U) | ((s)[1] << 8U) | ((s)[0]))) +// Reference: https://docs.microsoft.com/en-us/windows/win32/direct3ddds/dds-header + enum { DDS_MAGIC = 0x20534444, - DDSD_CAPS = 0x00000001, - DDSD_PIXELFORMAT = 0x00001000, DDSD_PITCH = 0x00000008, DDSD_LINEARSIZE = 0x00080000, DDSD_MIPMAPCOUNT = 0x00020000, @@ -47,7 +48,6 @@ enum { }; enum DDSFormat { - DDS_DXT1, DDS_DXT3, DDS_DXT5, @@ -128,7 +128,9 @@ RES ResourceFormatDDS::load(const String &p_path, const String &p_original_path, //validate - if (magic != DDS_MAGIC || hsize != 124 || !(flags & DDSD_PIXELFORMAT) || !(flags & DDSD_CAPS)) { + // We don't check DDSD_CAPS or DDSD_PIXELFORMAT, as they're mandatory when writing, + // but non-mandatory when reading (as some writers don't set them)... + if (magic != DDS_MAGIC || hsize != 124) { ERR_FAIL_V_MSG(RES(), "Invalid or unsupported DDS texture file '" + p_path + "'."); } diff --git a/modules/denoise/config.py b/modules/denoise/config.py index 53b8f2f2e3..091d7643c0 100644 --- a/modules/denoise/config.py +++ b/modules/denoise/config.py @@ -1,5 +1,11 @@ def can_build(env, platform): - return env["tools"] + # Thirdparty dependency OpenImage Denoise includes oneDNN library + # which only supports 64-bit architectures. + # It's also only relevant for tools build and desktop platforms, + # as doing lightmap generation and denoising on Android or HTML5 + # would be a bit far-fetched. + desktop_platforms = ["linuxbsd", "osx", "windows"] + return env["tools"] and platform in desktop_platforms and env["bits"] == "64" def configure(env): diff --git a/modules/gdnative/config.py b/modules/gdnative/config.py index 4b997e4bfe..7603e7d69d 100644 --- a/modules/gdnative/config.py +++ b/modules/gdnative/config.py @@ -8,7 +8,6 @@ def configure(env): def get_doc_classes(): return [ - "@NativeScript", "XRInterfaceGDNative", "GDNative", "GDNativeLibrary", diff --git a/modules/gdnative/doc_classes/@NativeScript.xml b/modules/gdnative/doc_classes/@NativeScript.xml deleted file mode 100644 index 809b225e21..0000000000 --- a/modules/gdnative/doc_classes/@NativeScript.xml +++ /dev/null @@ -1,13 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<class name="@NativeScript" version="4.0"> - <brief_description> - </brief_description> - <description> - </description> - <tutorials> - </tutorials> - <methods> - </methods> - <constants> - </constants> -</class> diff --git a/modules/gdnative/gdnative_api.json b/modules/gdnative/gdnative_api.json index d174b936a8..ccd8d2041c 100644 --- a/modules/gdnative/gdnative_api.json +++ b/modules/gdnative/gdnative_api.json @@ -2,2276 +2,580 @@ "core": { "type": "CORE", "version": { - "major": 1, + "major": 4, "minor": 0 }, - "next": { - "type": "CORE", - "version": { - "major": 1, - "minor": 1 - }, - "next": { - "type": "CORE", - "version": { - "major": 1, - "minor": 2 - }, - "next": { - "type": "CORE", - "version": { - "major": 1, - "minor": 3 - }, - "next": null, - "api": [ - { - "name": "godot_object_get_instance_id", - "return_type": "uint64_t", - "arguments": [ - ["const godot_object *", "p_object"] - ] - }, - { - "name": "godot_array_new_packed_float64_array", - "return_type": "void", - "arguments": [ - ["godot_array *", "r_dest"], - ["const godot_packed_float64_array *", "p_pra"] - ] - }, - { - "name": "godot_array_new_packed_int64_array", - "return_type": "void", - "arguments": [ - ["godot_array *", "r_dest"], - ["const godot_packed_int64_array *", "p_pia"] - ] - }, - { - "name": "godot_callable_new_with_object", - "return_type": "void", - "arguments": [ - ["godot_callable *", "r_dest"], - ["const godot_object *", "p_object"], - ["const godot_string_name *", "p_method"] - ] - }, - { - "name": "godot_callable_new_with_object_id", - "return_type": "void", - "arguments": [ - ["godot_callable *", "r_dest"], - ["uint64_t", "p_objectid"], - ["const godot_string_name *", "p_method"] - ] - }, - { - "name": "godot_callable_new_copy", - "return_type": "void", - "arguments": [ - ["godot_callable *", "r_dest"], - ["const godot_callable *", "p_src"] - ] - }, - { - "name": "godot_callable_destroy", - "return_type": "void", - "arguments": [ - ["godot_callable *", "p_self"] - ] - }, - { - "name": "godot_callable_call", - "return_type": "godot_int", - "arguments": [ - ["const godot_callable *", "p_self"], - ["const godot_variant **", "p_arguments"], - ["godot_int", "p_argcount"], - ["godot_variant *", "r_return_value"] - ] - }, - { - "name": "godot_callable_call_deferred", - "return_type": "void", - "arguments": [ - ["const godot_callable *", "p_self"], - ["const godot_variant **", "p_arguments"], - ["godot_int", "p_argcount"] - ] - }, - { - "name": "godot_callable_is_null", - "return_type": "godot_bool", - "arguments": [ - ["const godot_callable *", "p_self"] - ] - }, - { - "name": "godot_callable_is_custom", - "return_type": "godot_bool", - "arguments": [ - ["const godot_callable *", "p_self"] - ] - }, - { - "name": "godot_callable_is_standard", - "return_type": "godot_bool", - "arguments": [ - ["const godot_callable *", "p_self"] - ] - }, - { - "name": "godot_callable_get_object", - "return_type": "godot_object *", - "arguments": [ - ["const godot_callable *", "p_self"] - ] - }, - { - "name": "godot_callable_get_object_id", - "return_type": "uint64_t", - "arguments": [ - ["const godot_callable *", "p_self"] - ] - }, - { - "name": "godot_callable_get_method", - "return_type": "godot_string_name", - "arguments": [ - ["const godot_callable *", "p_self"] - ] - }, - { - "name": "godot_callable_hash", - "return_type": "uint32_t", - "arguments": [ - ["const godot_callable *", "p_self"] - ] - }, - { - "name": "godot_callable_as_string", - "return_type": "godot_string", - "arguments": [ - ["const godot_callable *", "p_self"] - ] - }, - { - "name": "godot_callable_operator_equal", - "return_type": "godot_bool", - "arguments": [ - ["const godot_callable *", "p_self"], - ["const godot_callable *", "p_other"] - ] - }, - { - "name": "godot_callable_operator_less", - "return_type": "godot_bool", - "arguments": [ - ["const godot_callable *", "p_self"], - ["const godot_callable *", "p_other"] - ] - }, - { - "name": "godot_signal_new_with_object", - "return_type": "void", - "arguments": [ - ["godot_signal *", "r_dest"], - ["const godot_object *", "p_object"], - ["const godot_string_name *", "p_method"] - ] - }, - { - "name": "godot_signal_new_with_object_id", - "return_type": "void", - "arguments": [ - ["godot_signal *", "r_dest"], - ["uint64_t", "p_objectid"], - ["const godot_string_name *", "p_method"] - ] - }, - { - "name": "godot_signal_new_copy", - "return_type": "void", - "arguments": [ - ["godot_signal *", "r_dest"], - ["const godot_signal *", "p_src"] - ] - }, - { - "name": "godot_signal_destroy", - "return_type": "void", - "arguments": [ - ["godot_signal *", "p_self"] - ] - }, - { - "name": "godot_signal_emit", - "return_type": "godot_int", - "arguments": [ - ["const godot_signal *", "p_self"], - ["const godot_variant **", "p_arguments"], - ["godot_int", "p_argcount"] - ] - }, - { - "name": "godot_signal_connect", - "return_type": "godot_int", - "arguments": [ - ["godot_signal *", "p_self"], - ["const godot_callable *", "p_callable"], - ["const godot_array *", "p_binds"], - ["uint32_t", "p_flags"] - ] - }, - { - "name": "godot_signal_disconnect", - "return_type": "void", - "arguments": [ - ["godot_signal *", "p_self"], - ["const godot_callable *", "p_callable"] - ] - }, - { - "name": "godot_signal_is_null", - "return_type": "godot_bool", - "arguments": [ - ["const godot_signal *", "p_self"] - ] - }, - { - "name": "godot_signal_is_connected", - "return_type": "godot_bool", - "arguments": [ - ["const godot_signal *", "p_self"], - ["const godot_callable *", "p_callable"] - ] - }, - { - "name": "godot_signal_get_connections", - "return_type": "godot_array", - "arguments": [ - ["const godot_signal *", "p_self"] - ] - }, - { - "name": "godot_signal_get_object", - "return_type": "godot_object *", - "arguments": [ - ["const godot_signal *", "p_self"] - ] - }, - { - "name": "godot_signal_get_object_id", - "return_type": "uint64_t", - "arguments": [ - ["const godot_signal *", "p_self"] - ] - }, - { - "name": "godot_signal_get_name", - "return_type": "godot_string_name", - "arguments": [ - ["const godot_signal *", "p_self"] - ] - }, - { - "name": "godot_signal_as_string", - "return_type": "godot_string", - "arguments": [ - ["const godot_signal *", "p_self"] - ] - }, - { - "name": "godot_signal_operator_equal", - "return_type": "godot_bool", - "arguments": [ - ["const godot_signal *", "p_self"], - ["const godot_signal *", "p_other"] - ] - }, - { - "name": "godot_signal_operator_less", - "return_type": "godot_bool", - "arguments": [ - ["const godot_signal *", "p_self"], - ["const godot_signal *", "p_other"] - ] - }, - { - "name": "godot_packed_int64_array_new", - "return_type": "void", - "arguments": [ - ["godot_packed_int64_array *", "r_dest"] - ] - }, - { - "name": "godot_packed_int64_array_new_copy", - "return_type": "void", - "arguments": [ - ["godot_packed_int64_array *", "r_dest"], - ["const godot_packed_int64_array *", "p_src"] - ] - }, - { - "name": "godot_packed_int64_array_new_with_array", - "return_type": "void", - "arguments": [ - ["godot_packed_int64_array *", "r_dest"], - ["const godot_array *", "p_a"] - ] - }, - { - "name": "godot_packed_int64_array_append", - "return_type": "void", - "arguments": [ - ["godot_packed_int64_array *", "p_self"], - ["const int64_t", "p_data"] - ] - }, - { - "name": "godot_packed_int64_array_append_array", - "return_type": "void", - "arguments": [ - ["godot_packed_int64_array *", "p_self"], - ["const godot_packed_int64_array *", "p_array"] - ] - }, - { - "name": "godot_packed_int64_array_insert", - "return_type": "godot_error", - "arguments": [ - ["godot_packed_int64_array *", "p_self"], - ["const godot_int", "p_idx"], - ["const int64_t", "p_data"] - ] - }, - { - "name": "godot_packed_int64_array_invert", - "return_type": "void", - "arguments": [ - ["godot_packed_int64_array *", "p_self"] - ] - }, - { - "name": "godot_packed_int64_array_push_back", - "return_type": "void", - "arguments": [ - ["godot_packed_int64_array *", "p_self"], - ["const int64_t", "p_data"] - ] - }, - { - "name": "godot_packed_int64_array_remove", - "return_type": "void", - "arguments": [ - ["godot_packed_int64_array *", "p_self"], - ["const godot_int", "p_idx"] - ] - }, - { - "name": "godot_packed_int64_array_resize", - "return_type": "void", - "arguments": [ - ["godot_packed_int64_array *", "p_self"], - ["const godot_int", "p_size"] - ] - }, - { - "name": "godot_packed_int64_array_set", - "return_type": "void", - "arguments": [ - ["godot_packed_int64_array *", "p_self"], - ["const godot_int", "p_idx"], - ["const int64_t", "p_data"] - ] - }, - { - "name": "godot_packed_int64_array_get", - "return_type": "int64_t", - "arguments": [ - ["const godot_packed_int64_array *", "p_self"], - ["const godot_int", "p_idx"] - ] - }, - { - "name": "godot_packed_int64_array_size", - "return_type": "godot_int", - "arguments": [ - ["const godot_packed_int64_array *", "p_self"] - ] - }, - { - "name": "godot_packed_int64_array_destroy", - "return_type": "void", - "arguments": [ - ["godot_packed_int64_array *", "p_self"] - ] - }, - { - "name": "godot_packed_float64_array_new", - "return_type": "void", - "arguments": [ - ["godot_packed_float64_array *", "r_dest"] - ] - }, - { - "name": "godot_packed_float64_array_new_copy", - "return_type": "void", - "arguments": [ - ["godot_packed_float64_array *", "r_dest"], - ["const godot_packed_float64_array *", "p_src"] - ] - }, - { - "name": "godot_packed_float64_array_new_with_array", - "return_type": "void", - "arguments": [ - ["godot_packed_float64_array *", "r_dest"], - ["const godot_array *", "p_a"] - ] - }, - { - "name": "godot_packed_float64_array_append", - "return_type": "void", - "arguments": [ - ["godot_packed_float64_array *", "p_self"], - ["const double", "p_data"] - ] - }, - { - "name": "godot_packed_float64_array_append_array", - "return_type": "void", - "arguments": [ - ["godot_packed_float64_array *", "p_self"], - ["const godot_packed_float64_array *", "p_array"] - ] - }, - { - "name": "godot_packed_float64_array_insert", - "return_type": "godot_error", - "arguments": [ - ["godot_packed_float64_array *", "p_self"], - ["const godot_int", "p_idx"], - ["const double", "p_data"] - ] - }, - { - "name": "godot_packed_float64_array_invert", - "return_type": "void", - "arguments": [ - ["godot_packed_float64_array *", "p_self"] - ] - }, - { - "name": "godot_packed_float64_array_push_back", - "return_type": "void", - "arguments": [ - ["godot_packed_float64_array *", "p_self"], - ["const double", "p_data"] - ] - }, - { - "name": "godot_packed_float64_array_remove", - "return_type": "void", - "arguments": [ - ["godot_packed_float64_array *", "p_self"], - ["const godot_int", "p_idx"] - ] - }, - { - "name": "godot_packed_float64_array_resize", - "return_type": "void", - "arguments": [ - ["godot_packed_float64_array *", "p_self"], - ["const godot_int", "p_size"] - ] - }, - { - "name": "godot_packed_float64_array_set", - "return_type": "void", - "arguments": [ - ["godot_packed_float64_array *", "p_self"], - ["const godot_int", "p_idx"], - ["const double", "p_data"] - ] - }, - { - "name": "godot_packed_float64_array_get", - "return_type": "double", - "arguments": [ - ["const godot_packed_float64_array *", "p_self"], - ["const godot_int", "p_idx"] - ] - }, - { - "name": "godot_packed_float64_array_size", - "return_type": "godot_int", - "arguments": [ - ["const godot_packed_float64_array *", "p_self"] - ] - }, - { - "name": "godot_packed_float64_array_destroy", - "return_type": "void", - "arguments": [ - ["godot_packed_float64_array *", "p_self"] - ] - }, - { - "name": "godot_packed_int64_array_ptr", - "return_type": "const int64_t *", - "arguments": [ - ["const godot_packed_int64_array *", "p_self"] - ] - }, - { - "name": "godot_packed_int64_array_ptrw", - "return_type": "int64_t *", - "arguments": [ - ["godot_packed_int64_array *", "p_self"] - ] - }, - { - "name": "godot_packed_float64_array_ptr", - "return_type": "const double *", - "arguments": [ - ["const godot_packed_float64_array *", "p_self"] - ] - }, - { - "name": "godot_packed_float64_array_ptrw", - "return_type": "double *", - "arguments": [ - ["godot_packed_float64_array *", "p_self"] - ] - }, - { - "name": "godot_rect2_as_rect2i", - "return_type": "godot_rect2i", - "arguments": [ - ["const godot_rect2 *", "p_self"] - ] - }, - { - "name": "godot_rect2i_new_with_position_and_size", - "return_type": "void", - "arguments": [ - ["godot_rect2i *", "r_dest"], - ["const godot_vector2i *", "p_pos"], - ["const godot_vector2i *", "p_size"] - ] - }, - { - "name": "godot_rect2i_new", - "return_type": "void", - "arguments": [ - ["godot_rect2i *", "r_dest"], - ["const godot_int", "p_x"], - ["const godot_int", "p_y"], - ["const godot_int", "p_width"], - ["const godot_int", "p_height"] - ] - }, - { - "name": "godot_rect2i_as_string", - "return_type": "godot_string", - "arguments": [ - ["const godot_rect2i *", "p_self"] - ] - }, - { - "name": "godot_rect2i_as_rect2", - "return_type": "godot_rect2", - "arguments": [ - ["const godot_rect2i *", "p_self"] - ] - }, - { - "name": "godot_rect2i_get_area", - "return_type": "godot_int", - "arguments": [ - ["const godot_rect2i *", "p_self"] - ] - }, - { - "name": "godot_rect2i_intersects", - "return_type": "godot_bool", - "arguments": [ - ["const godot_rect2i *", "p_self"], - ["const godot_rect2i *", "p_b"] - ] - }, - { - "name": "godot_rect2i_encloses", - "return_type": "godot_bool", - "arguments": [ - ["const godot_rect2i *", "p_self"], - ["const godot_rect2i *", "p_b"] - ] - }, - { - "name": "godot_rect2i_has_no_area", - "return_type": "godot_bool", - "arguments": [ - ["const godot_rect2i *", "p_self"] - ] - }, - { - "name": "godot_rect2i_clip", - "return_type": "godot_rect2i", - "arguments": [ - ["const godot_rect2i *", "p_self"], - ["const godot_rect2i *", "p_b"] - ] - }, - { - "name": "godot_rect2i_merge", - "return_type": "godot_rect2i", - "arguments": [ - ["const godot_rect2i *", "p_self"], - ["const godot_rect2i *", "p_b"] - ] - }, - { - "name": "godot_rect2i_has_point", - "return_type": "godot_bool", - "arguments": [ - ["const godot_rect2i *", "p_self"], - ["const godot_vector2i *", "p_point"] - ] - }, - { - "name": "godot_rect2i_grow", - "return_type": "godot_rect2i", - "arguments": [ - ["const godot_rect2i *", "p_self"], - ["const godot_int", "p_by"] - ] - }, - { - "name": "godot_rect2i_grow_individual", - "return_type": "godot_rect2i", - "arguments": [ - ["const godot_rect2i *", "p_self"], - ["const godot_int", "p_left"], - ["const godot_int", "p_top"], - ["const godot_int", "p_right"], - ["const godot_int", "p_bottom"] - ] - }, - { - "name": "godot_rect2i_grow_margin", - "return_type": "godot_rect2i", - "arguments": [ - ["const godot_rect2i *", "p_self"], - ["const godot_int", "p_margin"], - ["const godot_int", "p_by"] - ] - }, - { - "name": "godot_rect2i_abs", - "return_type": "godot_rect2i", - "arguments": [ - ["const godot_rect2i *", "p_self"] - ] - }, - { - "name": "godot_rect2i_expand", - "return_type": "godot_rect2i", - "arguments": [ - ["const godot_rect2i *", "p_self"], - ["const godot_vector2i *", "p_to"] - ] - }, - { - "name": "godot_rect2i_operator_equal", - "return_type": "godot_bool", - "arguments": [ - ["const godot_rect2i *", "p_self"], - ["const godot_rect2i *", "p_b"] - ] - }, - { - "name": "godot_rect2i_get_position", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_rect2i *", "p_self"] - ] - }, - { - "name": "godot_rect2i_get_size", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_rect2i *", "p_self"] - ] - }, - { - "name": "godot_rect2i_set_position", - "return_type": "void", - "arguments": [ - ["godot_rect2i *", "p_self"], - ["const godot_vector2i *", "p_pos"] - ] - }, - { - "name": "godot_rect2i_set_size", - "return_type": "void", - "arguments": [ - ["godot_rect2i *", "p_self"], - ["const godot_vector2i *", "p_size"] - ] - }, - { - "name": "godot_variant_new_string_name", - "return_type": "void", - "arguments": [ - ["godot_variant *", "r_dest"], - ["const godot_string_name *", "p_s"] - ] - }, - { - "name": "godot_variant_new_vector2i", - "return_type": "void", - "arguments": [ - ["godot_variant *", "r_dest"], - ["const godot_vector2i *", "p_v2"] - ] - }, - { - "name": "godot_variant_new_rect2i", - "return_type": "void", - "arguments": [ - ["godot_variant *", "r_dest"], - ["const godot_rect2i *", "p_rect2"] - ] - }, - { - "name": "godot_variant_new_vector3i", - "return_type": "void", - "arguments": [ - ["godot_variant *", "r_dest"], - ["const godot_vector3i *", "p_v3"] - ] - }, - { - "name": "godot_variant_new_callable", - "return_type": "void", - "arguments": [ - ["godot_variant *", "r_dest"], - ["const godot_callable *", "p_cb"] - ] - }, - { - "name": "godot_variant_new_signal", - "return_type": "void", - "arguments": [ - ["godot_variant *", "r_dest"], - ["const godot_signal *", "p_signal"] - ] - }, - { - "name": "godot_variant_new_packed_int64_array", - "return_type": "void", - "arguments": [ - ["godot_variant *", "r_dest"], - ["const godot_packed_int64_array *", "p_pia"] - ] - }, - { - "name": "godot_variant_new_packed_float64_array", - "return_type": "void", - "arguments": [ - ["godot_variant *", "r_dest"], - ["const godot_packed_float64_array *", "p_pra"] - ] - }, - { - "name": "godot_variant_as_string_name", - "return_type": "godot_string_name", - "arguments": [ - ["const godot_variant *", "p_self"] - ] - }, - { - "name": "godot_variant_as_vector2i", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_variant *", "p_self"] - ] - }, - { - "name": "godot_variant_as_rect2i", - "return_type": "godot_rect2i", - "arguments": [ - ["const godot_variant *", "p_self"] - ] - }, - { - "name": "godot_variant_as_vector3i", - "return_type": "godot_vector3i", - "arguments": [ - ["const godot_variant *", "p_self"] - ] - }, - { - "name": "godot_variant_as_callable", - "return_type": "godot_callable", - "arguments": [ - ["const godot_variant *", "p_self"] - ] - }, - { - "name": "godot_variant_as_signal", - "return_type": "godot_signal", - "arguments": [ - ["const godot_variant *", "p_self"] - ] - }, - { - "name": "godot_variant_as_packed_int64_array", - "return_type": "godot_packed_int64_array", - "arguments": [ - ["const godot_variant *", "p_self"] - ] - }, - { - "name": "godot_variant_as_packed_float64_array", - "return_type": "godot_packed_float64_array", - "arguments": [ - ["const godot_variant *", "p_self"] - ] - }, - { - "name": "godot_variant_hash", - "return_type": "uint32_t", - "arguments": [ - ["const godot_variant *", "p_self"] - ] - }, - { - "name": "godot_vector2_as_vector2i", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_vector2 *", "p_self"] - ] - }, - { - "name": "godot_vector2_sign", - "return_type": "godot_vector2", - "arguments": [ - ["const godot_vector2 *", "p_self"] - ] - }, - { - "name": "godot_vector2i_new", - "return_type": "void", - "arguments": [ - ["godot_vector2i *", "r_dest"], - ["const godot_int", "p_x"], - ["const godot_int", "p_y"] - ] - }, - { - "name": "godot_vector2i_as_string", - "return_type": "godot_string", - "arguments": [ - ["const godot_vector2i *", "p_self"] - ] - }, - { - "name": "godot_vector2i_as_vector2", - "return_type": "godot_vector2", - "arguments": [ - ["const godot_vector2i *", "p_self"] - ] - }, - { - "name": "godot_vector2i_aspect", - "return_type": "godot_real", - "arguments": [ - ["const godot_vector2i *", "p_self"] - ] - }, - { - "name": "godot_vector2i_abs", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_vector2i *", "p_self"] - ] - }, - { - "name": "godot_vector2i_sign", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_vector2i *", "p_self"] - ] - }, - { - "name": "godot_vector2i_operator_add", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_vector2i *", "p_self"], - ["const godot_vector2i *", "p_b"] - ] - }, - { - "name": "godot_vector2i_operator_subtract", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_vector2i *", "p_self"], - ["const godot_vector2i *", "p_b"] - ] - }, - { - "name": "godot_vector2i_operator_multiply_vector", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_vector2i *", "p_self"], - ["const godot_vector2i *", "p_b"] - ] - }, - { - "name": "godot_vector2i_operator_multiply_scalar", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_vector2i *", "p_self"], - ["const godot_int", "p_b"] - ] - }, - { - "name": "godot_vector2i_operator_divide_vector", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_vector2i *", "p_self"], - ["const godot_vector2i *", "p_b"] - ] - }, - { - "name": "godot_vector2i_operator_divide_scalar", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_vector2i *", "p_self"], - ["const godot_int", "p_b"] - ] - }, - { - "name": "godot_vector2i_operator_equal", - "return_type": "godot_bool", - "arguments": [ - ["const godot_vector2i *", "p_self"], - ["const godot_vector2i *", "p_b"] - ] - }, - { - "name": "godot_vector2i_operator_less", - "return_type": "godot_bool", - "arguments": [ - ["const godot_vector2i *", "p_self"], - ["const godot_vector2i *", "p_b"] - ] - }, - { - "name": "godot_vector2i_operator_neg", - "return_type": "godot_vector2i", - "arguments": [ - ["const godot_vector2i *", "p_self"] - ] - }, - { - "name": "godot_vector2i_set_x", - "return_type": "void", - "arguments": [ - ["godot_vector2i *", "p_self"], - ["const godot_int", "p_x"] - ] - }, - { - "name": "godot_vector2i_set_y", - "return_type": "void", - "arguments": [ - ["godot_vector2i *", "p_self"], - ["const godot_int", "p_y"] - ] - }, - { - "name": "godot_vector2i_get_x", - "return_type": "godot_int", - "arguments": [ - ["const godot_vector2i *", "p_self"] - ] - }, - { - "name": "godot_vector2i_get_y", - "return_type": "godot_int", - "arguments": [ - ["const godot_vector2i *", "p_self"] - ] - }, - { - "name": "godot_vector3_as_vector3i", - "return_type": "godot_vector3i", - "arguments": [ - ["const godot_vector3 *", "p_self"] - ] - }, - { - "name": "godot_vector3_sign", - "return_type": "godot_vector3", - "arguments": [ - ["const godot_vector3 *", "p_self"] - ] - }, - { - "name": "godot_vector3i_new", - "return_type": "void", - "arguments": [ - ["godot_vector3i *", "r_dest"], - ["const godot_int", "p_x"], - ["const godot_int", "p_y"], - ["const godot_int", "p_z"] - ] - }, - { - "name": "godot_vector3i_as_string", - "return_type": "godot_string", - "arguments": [ - ["const godot_vector3i *", "p_self"] - ] - }, - { - "name": "godot_vector3i_as_vector3", - "return_type": "godot_vector3", - "arguments": [ - ["const godot_vector3i *", "p_self"] - ] - }, - { - "name": "godot_vector3i_min_axis", - "return_type": "godot_int", - "arguments": [ - ["const godot_vector3i *", "p_self"] - ] - }, - { - "name": "godot_vector3i_max_axis", - "return_type": "godot_int", - "arguments": [ - ["const godot_vector3i *", "p_self"] - ] - }, - { - "name": "godot_vector3i_abs", - "return_type": "godot_vector3i", - "arguments": [ - ["const godot_vector3i *", "p_self"] - ] - }, - { - "name": "godot_vector3i_sign", - "return_type": "godot_vector3i", - "arguments": [ - ["const godot_vector3i *", "p_self"] - ] - }, - { - "name": "godot_vector3i_operator_add", - "return_type": "godot_vector3i", - "arguments": [ - ["const godot_vector3i *", "p_self"], - ["const godot_vector3i *", "p_b"] - ] - }, - { - "name": "godot_vector3i_operator_subtract", - "return_type": "godot_vector3i", - "arguments": [ - ["const godot_vector3i *", "p_self"], - ["const godot_vector3i *", "p_b"] - ] - }, - { - "name": "godot_vector3i_operator_multiply_vector", - "return_type": "godot_vector3i", - "arguments": [ - ["const godot_vector3i *", "p_self"], - ["const godot_vector3i *", "p_b"] - ] - }, - { - "name": "godot_vector3i_operator_multiply_scalar", - "return_type": "godot_vector3i", - "arguments": [ - ["const godot_vector3i *", "p_self"], - ["const godot_int", "p_b"] - ] - }, - { - "name": "godot_vector3i_operator_divide_vector", - "return_type": "godot_vector3i", - "arguments": [ - ["const godot_vector3i *", "p_self"], - ["const godot_vector3i *", "p_b"] - ] - }, - { - "name": "godot_vector3i_operator_divide_scalar", - "return_type": "godot_vector3i", - "arguments": [ - ["const godot_vector3i *", "p_self"], - ["const godot_int", "p_b"] - ] - }, - { - "name": "godot_vector3i_operator_equal", - "return_type": "godot_bool", - "arguments": [ - ["const godot_vector3i *", "p_self"], - ["const godot_vector3i *", "p_b"] - ] - }, - { - "name": "godot_vector3i_operator_less", - "return_type": "godot_bool", - "arguments": [ - ["const godot_vector3i *", "p_self"], - ["const godot_vector3i *", "p_b"] - ] - }, - { - "name": "godot_vector3i_operator_neg", - "return_type": "godot_vector3i", - "arguments": [ - ["const godot_vector3i *", "p_self"] - ] - }, - { - "name": "godot_vector3i_set_axis", - "return_type": "void", - "arguments": [ - ["godot_vector3i *", "p_self"], - ["const godot_vector3_axis", "p_axis"], - ["const godot_int", "p_val"] - ] - }, - { - "name": "godot_vector3i_get_axis", - "return_type": "godot_int", - "arguments": [ - ["const godot_vector3i *", "p_self"], - ["const godot_vector3_axis", "p_axis"] - ] - } - ] - }, - "api": [ - { - "name": "godot_dictionary_duplicate", - "return_type": "godot_dictionary", - "arguments": [ - ["const godot_dictionary *", "p_self"], - ["const godot_bool", "p_deep"] - ] - }, - { - "name": "godot_vector3_move_toward", - "return_type": "godot_vector3", - "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_to"], - ["const godot_real", "p_delta"] - ] - }, - { - "name": "godot_vector2_move_toward", - "return_type": "godot_vector2", - "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_to"], - ["const godot_real", "p_delta"] - ] - }, - { - "name": "godot_string_count", - "return_type": "godot_int", - "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_what"], - ["godot_int", "p_from"], - ["godot_int", "p_to"] - ] - }, - { - "name": "godot_string_countn", - "return_type": "godot_int", - "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_what"], - ["godot_int", "p_from"], - ["godot_int", "p_to"] - ] - }, - { - "name": "godot_vector3_direction_to", - "return_type": "godot_vector3", - "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_to"] - ] - }, - { - "name": "godot_vector2_direction_to", - "return_type": "godot_vector2", - "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_to"] - ] - }, - { - "name": "godot_array_slice", - "return_type": "godot_array", - "arguments": [ - ["const godot_array *", "p_self"], - ["const godot_int", "p_begin"], - ["const godot_int", "p_end"], - ["const godot_int", "p_step"], - ["const godot_bool", "p_deep"] - ] - }, - { - "name": "godot_packed_byte_array_empty", - "return_type": "godot_bool", - "arguments": [ - ["const godot_packed_byte_array *", "p_self"] - ] - }, - { - "name": "godot_packed_int32_array_empty", - "return_type": "godot_bool", - "arguments": [ - ["const godot_packed_int32_array *", "p_self"] - ] - }, - { - "name": "godot_packed_float32_array_empty", - "return_type": "godot_bool", - "arguments": [ - ["const godot_packed_float32_array *", "p_self"] - ] - }, - { - "name": "godot_packed_string_array_empty", - "return_type": "godot_bool", - "arguments": [ - ["const godot_packed_string_array *", "p_self"] - ] - }, - { - "name": "godot_packed_vector2_array_empty", - "return_type": "godot_bool", - "arguments": [ - ["const godot_packed_vector2_array *", "p_self"] - ] - }, - { - "name": "godot_packed_vector3_array_empty", - "return_type": "godot_bool", - "arguments": [ - ["const godot_packed_vector3_array *", "p_self"] - ] - }, - { - "name": "godot_packed_color_array_empty", - "return_type": "godot_bool", - "arguments": [ - ["const godot_packed_color_array *", "p_self"] - ] - }, - { - "name": "godot_get_class_tag", - "return_type": "void *", - "arguments": [ - ["const godot_string_name *", "p_class"] - ] - }, - { - "name": "godot_object_cast_to", - "return_type": "godot_object *", - "arguments": [ - ["const godot_object *", "p_object"], - ["void *", "p_class_tag"] - ] - }, - { - "name": "godot_instance_from_id", - "return_type": "godot_object *", - "arguments": [ - ["uint64_t", "p_instance_id"] - ] - } - ] - }, - "api": [ - { - "name": "godot_color_to_abgr32", - "return_type": "godot_int", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_to_abgr64", - "return_type": "godot_int", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_to_argb64", - "return_type": "godot_int", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_to_rgba64", - "return_type": "godot_int", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_darkened", - "return_type": "godot_color", - "arguments": [ - ["const godot_color *", "p_self"], - ["const godot_real", "p_amount"] - ] - }, - { - "name": "godot_color_from_hsv", - "return_type": "godot_color", - "arguments": [ - ["const godot_color *", "p_self"], - ["const godot_real", "p_h"], - ["const godot_real", "p_s"], - ["const godot_real", "p_v"], - ["const godot_real", "p_a"] - ] - }, - { - "name": "godot_color_lightened", - "return_type": "godot_color", - "arguments": [ - ["const godot_color *", "p_self"], - ["const godot_real", "p_amount"] - ] - }, - { - "name": "godot_array_duplicate", - "return_type": "godot_array", - "arguments": [ - ["const godot_array *", "p_self"], - ["const godot_bool", "p_deep"] - ] - }, - { - "name": "godot_array_max", - "return_type": "godot_variant", - "arguments": [ - ["const godot_array *", "p_self"] - ] - }, - { - "name": "godot_array_min", - "return_type": "godot_variant", - "arguments": [ - ["const godot_array *", "p_self"] - ] - }, - { - "name": "godot_array_shuffle", - "return_type": "void", - "arguments": [ - ["godot_array *", "p_self"] - ] - }, - { - "name": "godot_basis_slerp", - "return_type": "godot_basis", - "arguments": [ - ["const godot_basis *", "p_self"], - ["const godot_basis *", "p_b"], - ["const godot_real", "p_t"] - ] - }, - { - "name": "godot_dictionary_get_with_default", - "return_type": "godot_variant", - "arguments": [ - ["const godot_dictionary *", "p_self"], - ["const godot_variant *", "p_key"], - ["const godot_variant *", "p_default"] - ] - }, - { - "name": "godot_dictionary_erase_with_return", - "return_type": "bool", - "arguments": [ - ["godot_dictionary *", "p_self"], - ["const godot_variant *", "p_key"] - ] - }, - { - "name": "godot_node_path_get_as_property_path", - "return_type": "godot_node_path", - "arguments": [ - ["const godot_node_path *", "p_self"] - ] - }, - { - "name": "godot_quat_set_axis_angle", - "return_type": "void", - "arguments": [ - ["godot_quat *", "p_self"], - ["const godot_vector3 *", "p_axis"], - ["const godot_real", "p_angle"] - ] - }, - { - "name": "godot_rect2_grow_individual", - "return_type": "godot_rect2", - "arguments": [ - ["const godot_rect2 *", "p_self"], - ["const godot_real", "p_left"], - ["const godot_real", "p_top"], - ["const godot_real", "p_right"], - ["const godot_real", "p_bottom"] - ] - }, - { - "name": "godot_rect2_grow_margin", - "return_type": "godot_rect2", - "arguments": [ - ["const godot_rect2 *", "p_self"], - ["const godot_int", "p_margin"], - ["const godot_real", "p_by"] - ] - }, - { - "name": "godot_rect2_abs", - "return_type": "godot_rect2", - "arguments": [ - ["const godot_rect2 *", "p_self"] - ] - }, - { - "name": "godot_string_dedent", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"] - ] - }, - { - "name": "godot_string_trim_prefix", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_prefix"] - ] - }, - { - "name": "godot_string_trim_suffix", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_suffix"] - ] - }, - { - "name": "godot_string_rstrip", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_chars"] - ] - }, - { - "name": "godot_string_rsplit", - "return_type": "godot_packed_string_array", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_divisor"], - ["const godot_bool", "p_allow_empty"], - ["const godot_int", "p_maxsplit"] - ] - }, - { - "name": "godot_basis_get_quat", - "return_type": "godot_quat", - "arguments": [ - ["const godot_basis *", "p_self"] - ] - }, - { - "name": "godot_basis_set_quat", - "return_type": "void", - "arguments": [ - ["godot_basis *", "p_self"], - ["const godot_quat *", "p_quat"] - ] - }, - { - "name": "godot_basis_set_axis_angle_scale", - "return_type": "void", - "arguments": [ - ["godot_basis *", "p_self"], - ["const godot_vector3 *", "p_axis"], - ["godot_real", "p_phi"], - ["const godot_vector3 *", "p_scale"] - ] - }, - { - "name": "godot_basis_set_euler_scale", - "return_type": "void", - "arguments": [ - ["godot_basis *", "p_self"], - ["const godot_vector3 *", "p_euler"], - ["const godot_vector3 *", "p_scale"] - ] - }, - { - "name": "godot_basis_set_quat_scale", - "return_type": "void", - "arguments": [ - ["godot_basis *", "p_self"], - ["const godot_quat *", "p_quat"], - ["const godot_vector3 *", "p_scale"] - ] - }, - { - "name": "godot_quat_new_with_basis", - "return_type": "void", - "arguments": [ - ["godot_quat *", "r_dest"], - ["const godot_basis *", "p_basis"] - ] - }, - { - "name": "godot_quat_new_with_euler", - "return_type": "void", - "arguments": [ - ["godot_quat *", "r_dest"], - ["const godot_vector3 *", "p_euler"] - ] - }, - { - "name": "godot_transform_new_with_quat", - "return_type": "void", - "arguments": [ - ["godot_transform *", "r_dest"], - ["const godot_quat *", "p_quat"] - ] - }, - { - "name": "godot_variant_get_operator_name", - "return_type": "godot_string", - "arguments": [ - ["godot_variant_operator", "p_op"] - ] - }, - { - "name": "godot_variant_evaluate", - "return_type": "void", - "arguments": [ - ["godot_variant_operator", "p_op"], - ["const godot_variant *", "p_a"], - ["const godot_variant *", "p_b"], - ["godot_variant *", "r_ret"], - ["godot_bool *", "r_valid"] - ] - } - ] - }, + "next": null, "api": [ { - "name": "godot_color_new_rgba", - "return_type": "void", - "arguments": [ - ["godot_color *", "r_dest"], - ["const godot_real", "p_r"], - ["const godot_real", "p_g"], - ["const godot_real", "p_b"], - ["const godot_real", "p_a"] - ] - }, - { - "name": "godot_color_new_rgb", - "return_type": "void", - "arguments": [ - ["godot_color *", "r_dest"], - ["const godot_real", "p_r"], - ["const godot_real", "p_g"], - ["const godot_real", "p_b"] - ] - }, - { - "name": "godot_color_get_r", - "return_type": "godot_real", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_set_r", - "return_type": "void", - "arguments": [ - ["godot_color *", "p_self"], - ["const godot_real", "r"] - ] - }, - { - "name": "godot_color_get_g", - "return_type": "godot_real", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_set_g", + "name": "godot_aabb_new", "return_type": "void", "arguments": [ - ["godot_color *", "p_self"], - ["const godot_real", "g"] + ["godot_aabb *", "r_dest"], + ["const godot_vector3 *", "p_pos"], + ["const godot_vector3 *", "p_size"] ] }, { - "name": "godot_color_get_b", - "return_type": "godot_real", + "name": "godot_aabb_get_position", + "return_type": "godot_vector3", "arguments": [ - ["const godot_color *", "p_self"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_color_set_b", + "name": "godot_aabb_set_position", "return_type": "void", "arguments": [ - ["godot_color *", "p_self"], - ["const godot_real", "b"] + ["const godot_aabb *", "p_self"], + ["const godot_vector3 *", "p_v"] ] }, { - "name": "godot_color_get_a", - "return_type": "godot_real", + "name": "godot_aabb_get_size", + "return_type": "godot_vector3", "arguments": [ - ["const godot_color *", "p_self"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_color_set_a", + "name": "godot_aabb_set_size", "return_type": "void", "arguments": [ - ["godot_color *", "p_self"], - ["const godot_real", "a"] - ] - }, - { - "name": "godot_color_get_h", - "return_type": "godot_real", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_get_s", - "return_type": "godot_real", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_get_v", - "return_type": "godot_real", - "arguments": [ - ["const godot_color *", "p_self"] + ["const godot_aabb *", "p_self"], + ["const godot_vector3 *", "p_v"] ] }, { - "name": "godot_color_as_string", + "name": "godot_aabb_as_string", "return_type": "godot_string", "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_to_rgba32", - "return_type": "godot_int", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_to_argb32", - "return_type": "godot_int", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_inverted", - "return_type": "godot_color", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_contrasted", - "return_type": "godot_color", - "arguments": [ - ["const godot_color *", "p_self"] - ] - }, - { - "name": "godot_color_lerp", - "return_type": "godot_color", - "arguments": [ - ["const godot_color *", "p_self"], - ["const godot_color *", "p_b"], - ["const godot_real", "p_t"] - ] - }, - { - "name": "godot_color_blend", - "return_type": "godot_color", - "arguments": [ - ["const godot_color *", "p_self"], - ["const godot_color *", "p_over"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_color_to_html", - "return_type": "godot_string", + "name": "godot_aabb_get_area", + "return_type": "godot_real", "arguments": [ - ["const godot_color *", "p_self"], - ["const godot_bool", "p_with_alpha"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_color_operator_equal", + "name": "godot_aabb_has_no_area", "return_type": "godot_bool", "arguments": [ - ["const godot_color *", "p_self"], - ["const godot_color *", "p_b"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_color_operator_less", + "name": "godot_aabb_has_no_surface", "return_type": "godot_bool", "arguments": [ - ["const godot_color *", "p_self"], - ["const godot_color *", "p_b"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_vector2_new", - "return_type": "void", + "name": "godot_aabb_intersects", + "return_type": "godot_bool", "arguments": [ - ["godot_vector2 *", "r_dest"], - ["const godot_real", "p_x"], - ["const godot_real", "p_y"] + ["const godot_aabb *", "p_self"], + ["const godot_aabb *", "p_with"] ] }, { - "name": "godot_vector2_as_string", - "return_type": "godot_string", + "name": "godot_aabb_encloses", + "return_type": "godot_bool", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_aabb *", "p_self"], + ["const godot_aabb *", "p_with"] ] }, { - "name": "godot_vector2_normalized", - "return_type": "godot_vector2", + "name": "godot_aabb_merge", + "return_type": "godot_aabb", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_aabb *", "p_self"], + ["const godot_aabb *", "p_with"] ] }, { - "name": "godot_vector2_length", - "return_type": "godot_real", + "name": "godot_aabb_intersection", + "return_type": "godot_aabb", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_aabb *", "p_self"], + ["const godot_aabb *", "p_with"] ] }, { - "name": "godot_vector2_angle", - "return_type": "godot_real", + "name": "godot_aabb_intersects_plane", + "return_type": "godot_bool", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_aabb *", "p_self"], + ["const godot_plane *", "p_plane"] ] }, { - "name": "godot_vector2_length_squared", - "return_type": "godot_real", + "name": "godot_aabb_intersects_segment", + "return_type": "godot_bool", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_aabb *", "p_self"], + ["const godot_vector3 *", "p_from"], + ["const godot_vector3 *", "p_to"] ] }, { - "name": "godot_vector2_is_normalized", + "name": "godot_aabb_has_point", "return_type": "godot_bool", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_aabb *", "p_self"], + ["const godot_vector3 *", "p_point"] ] }, { - "name": "godot_vector2_distance_to", - "return_type": "godot_real", + "name": "godot_aabb_get_support", + "return_type": "godot_vector3", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_to"] + ["const godot_aabb *", "p_self"], + ["const godot_vector3 *", "p_dir"] ] }, { - "name": "godot_vector2_distance_squared_to", - "return_type": "godot_real", + "name": "godot_aabb_get_longest_axis", + "return_type": "godot_vector3", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_to"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_vector2_angle_to", - "return_type": "godot_real", + "name": "godot_aabb_get_longest_axis_index", + "return_type": "godot_int", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_to"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_vector2_angle_to_point", + "name": "godot_aabb_get_longest_axis_size", "return_type": "godot_real", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_to"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_vector2_lerp", - "return_type": "godot_vector2", + "name": "godot_aabb_get_shortest_axis", + "return_type": "godot_vector3", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_b"], - ["const godot_real", "p_t"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_vector2_cubic_interpolate", - "return_type": "godot_vector2", + "name": "godot_aabb_get_shortest_axis_index", + "return_type": "godot_int", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_b"], - ["const godot_vector2 *", "p_pre_a"], - ["const godot_vector2 *", "p_post_b"], - ["const godot_real", "p_t"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_vector2_rotated", - "return_type": "godot_vector2", + "name": "godot_aabb_get_shortest_axis_size", + "return_type": "godot_real", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_real", "p_phi"] + ["const godot_aabb *", "p_self"] ] }, { - "name": "godot_vector2_tangent", - "return_type": "godot_vector2", + "name": "godot_aabb_expand", + "return_type": "godot_aabb", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_aabb *", "p_self"], + ["const godot_vector3 *", "p_to_point"] ] }, { - "name": "godot_vector2_floor", - "return_type": "godot_vector2", + "name": "godot_aabb_grow", + "return_type": "godot_aabb", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_aabb *", "p_self"], + ["const godot_real", "p_by"] ] }, { - "name": "godot_vector2_snapped", - "return_type": "godot_vector2", + "name": "godot_aabb_get_endpoint", + "return_type": "godot_vector3", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_by"] + ["const godot_aabb *", "p_self"], + ["const godot_int", "p_idx"] ] }, { - "name": "godot_vector2_aspect", - "return_type": "godot_real", + "name": "godot_aabb_operator_equal", + "return_type": "godot_bool", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_aabb *", "p_self"], + ["const godot_aabb *", "p_b"] ] }, { - "name": "godot_vector2_dot", - "return_type": "godot_real", + "name": "godot_array_new", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_with"] + ["godot_array *", "r_dest"] ] }, { - "name": "godot_vector2_slide", - "return_type": "godot_vector2", + "name": "godot_array_new_copy", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_n"] + ["godot_array *", "r_dest"], + ["const godot_array *", "p_src"] ] }, { - "name": "godot_vector2_bounce", - "return_type": "godot_vector2", + "name": "godot_array_new_packed_color_array", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_n"] + ["godot_array *", "r_dest"], + ["const godot_packed_color_array *", "p_pca"] ] }, { - "name": "godot_vector2_reflect", - "return_type": "godot_vector2", + "name": "godot_array_new_packed_vector3_array", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_n"] + ["godot_array *", "r_dest"], + ["const godot_packed_vector3_array *", "p_pv3a"] ] }, { - "name": "godot_vector2_abs", - "return_type": "godot_vector2", + "name": "godot_array_new_packed_vector2_array", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["godot_array *", "r_dest"], + ["const godot_packed_vector2_array *", "p_pv2a"] ] }, { - "name": "godot_vector2_clamped", - "return_type": "godot_vector2", + "name": "godot_array_new_packed_string_array", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_real", "p_length"] + ["godot_array *", "r_dest"], + ["const godot_packed_string_array *", "p_psa"] ] }, { - "name": "godot_vector2_operator_add", - "return_type": "godot_vector2", + "name": "godot_array_new_packed_float32_array", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_b"] + ["godot_array *", "r_dest"], + ["const godot_packed_float32_array *", "p_pra"] ] }, { - "name": "godot_vector2_operator_subtract", - "return_type": "godot_vector2", + "name": "godot_array_new_packed_float64_array", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_b"] + ["godot_array *", "r_dest"], + ["const godot_packed_float64_array *", "p_pra"] ] }, { - "name": "godot_vector2_operator_multiply_vector", - "return_type": "godot_vector2", + "name": "godot_array_new_packed_int32_array", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_b"] + ["godot_array *", "r_dest"], + ["const godot_packed_int32_array *", "p_pia"] ] }, { - "name": "godot_vector2_operator_multiply_scalar", - "return_type": "godot_vector2", + "name": "godot_array_new_packed_int64_array", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_real", "p_b"] + ["godot_array *", "r_dest"], + ["const godot_packed_int64_array *", "p_pia"] ] }, { - "name": "godot_vector2_operator_divide_vector", - "return_type": "godot_vector2", + "name": "godot_array_new_packed_byte_array", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_b"] + ["godot_array *", "r_dest"], + ["const godot_packed_byte_array *", "p_pba"] ] }, { - "name": "godot_vector2_operator_divide_scalar", - "return_type": "godot_vector2", + "name": "godot_array_set", + "return_type": "void", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_real", "p_b"] + ["godot_array *", "p_self"], + ["const godot_int", "p_idx"], + ["const godot_variant *", "p_value"] ] }, { - "name": "godot_vector2_operator_equal", - "return_type": "godot_bool", + "name": "godot_array_get", + "return_type": "godot_variant", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_b"] + ["const godot_array *", "p_self"], + ["const godot_int", "p_idx"] ] }, { - "name": "godot_vector2_operator_less", - "return_type": "godot_bool", + "name": "godot_array_operator_index", + "return_type": "godot_variant *", "arguments": [ - ["const godot_vector2 *", "p_self"], - ["const godot_vector2 *", "p_b"] + ["godot_array *", "p_self"], + ["const godot_int", "p_idx"] ] }, { - "name": "godot_vector2_operator_neg", - "return_type": "godot_vector2", + "name": "godot_array_operator_index_const", + "return_type": "const godot_variant *", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_array *", "p_self"], + ["const godot_int", "p_idx"] ] }, { - "name": "godot_vector2_set_x", + "name": "godot_array_append", "return_type": "void", "arguments": [ - ["godot_vector2 *", "p_self"], - ["const godot_real", "p_x"] + ["godot_array *", "p_self"], + ["const godot_variant *", "p_value"] ] }, { - "name": "godot_vector2_set_y", + "name": "godot_array_clear", "return_type": "void", "arguments": [ - ["godot_vector2 *", "p_self"], - ["const godot_real", "p_y"] + ["godot_array *", "p_self"] ] }, { - "name": "godot_vector2_get_x", - "return_type": "godot_real", + "name": "godot_array_count", + "return_type": "godot_int", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_array *", "p_self"], + ["const godot_variant *", "p_value"] ] }, { - "name": "godot_vector2_get_y", - "return_type": "godot_real", + "name": "godot_array_duplicate", + "return_type": "godot_array", "arguments": [ - ["const godot_vector2 *", "p_self"] + ["const godot_array *", "p_self"], + ["const godot_bool", "p_deep"] ] }, { - "name": "godot_quat_new", - "return_type": "void", + "name": "godot_array_empty", + "return_type": "godot_bool", "arguments": [ - ["godot_quat *", "r_dest"], - ["const godot_real", "p_x"], - ["const godot_real", "p_y"], - ["const godot_real", "p_z"], - ["const godot_real", "p_w"] + ["const godot_array *", "p_self"] ] }, { - "name": "godot_quat_new_with_axis_angle", + "name": "godot_array_erase", "return_type": "void", "arguments": [ - ["godot_quat *", "r_dest"], - ["const godot_vector3 *", "p_axis"], - ["const godot_real", "p_angle"] + ["godot_array *", "p_self"], + ["const godot_variant *", "p_value"] ] }, { - "name": "godot_quat_get_x", - "return_type": "godot_real", + "name": "godot_array_front", + "return_type": "godot_variant", "arguments": [ - ["const godot_quat *", "p_self"] + ["const godot_array *", "p_self"] ] }, { - "name": "godot_quat_set_x", - "return_type": "void", + "name": "godot_array_back", + "return_type": "godot_variant", "arguments": [ - ["godot_quat *", "p_self"], - ["const godot_real", "val"] + ["const godot_array *", "p_self"] ] }, { - "name": "godot_quat_get_y", - "return_type": "godot_real", + "name": "godot_array_find", + "return_type": "godot_int", "arguments": [ - ["const godot_quat *", "p_self"] + ["const godot_array *", "p_self"], + ["const godot_variant *", "p_what"], + ["const godot_int", "p_from"] ] }, { - "name": "godot_quat_set_y", - "return_type": "void", + "name": "godot_array_find_last", + "return_type": "godot_int", "arguments": [ - ["godot_quat *", "p_self"], - ["const godot_real", "val"] + ["const godot_array *", "p_self"], + ["const godot_variant *", "p_what"] ] }, { - "name": "godot_quat_get_z", - "return_type": "godot_real", + "name": "godot_array_has", + "return_type": "godot_bool", "arguments": [ - ["const godot_quat *", "p_self"] + ["const godot_array *", "p_self"], + ["const godot_variant *", "p_value"] ] }, { - "name": "godot_quat_set_z", - "return_type": "void", + "name": "godot_array_hash", + "return_type": "godot_int", "arguments": [ - ["godot_quat *", "p_self"], - ["const godot_real", "val"] + ["const godot_array *", "p_self"] ] }, { - "name": "godot_quat_get_w", - "return_type": "godot_real", + "name": "godot_array_insert", + "return_type": "void", "arguments": [ - ["const godot_quat *", "p_self"] + ["godot_array *", "p_self"], + ["const godot_int", "p_pos"], + ["const godot_variant *", "p_value"] ] }, { - "name": "godot_quat_set_w", + "name": "godot_array_invert", "return_type": "void", "arguments": [ - ["godot_quat *", "p_self"], - ["const godot_real", "val"] + ["godot_array *", "p_self"] ] }, { - "name": "godot_quat_as_string", - "return_type": "godot_string", + "name": "godot_array_max", + "return_type": "godot_variant", "arguments": [ - ["const godot_quat *", "p_self"] + ["const godot_array *", "p_self"] ] }, { - "name": "godot_quat_length", - "return_type": "godot_real", + "name": "godot_array_min", + "return_type": "godot_variant", "arguments": [ - ["const godot_quat *", "p_self"] + ["const godot_array *", "p_self"] ] }, { - "name": "godot_quat_length_squared", - "return_type": "godot_real", + "name": "godot_array_pop_back", + "return_type": "godot_variant", "arguments": [ - ["const godot_quat *", "p_self"] + ["godot_array *", "p_self"] ] }, { - "name": "godot_quat_normalized", - "return_type": "godot_quat", + "name": "godot_array_pop_front", + "return_type": "godot_variant", "arguments": [ - ["const godot_quat *", "p_self"] + ["godot_array *", "p_self"] ] }, { - "name": "godot_quat_is_normalized", - "return_type": "godot_bool", + "name": "godot_array_push_back", + "return_type": "void", "arguments": [ - ["const godot_quat *", "p_self"] + ["godot_array *", "p_self"], + ["const godot_variant *", "p_value"] ] }, { - "name": "godot_quat_inverse", - "return_type": "godot_quat", + "name": "godot_array_push_front", + "return_type": "void", "arguments": [ - ["const godot_quat *", "p_self"] + ["godot_array *", "p_self"], + ["const godot_variant *", "p_value"] ] }, { - "name": "godot_quat_dot", - "return_type": "godot_real", + "name": "godot_array_remove", + "return_type": "void", "arguments": [ - ["const godot_quat *", "p_self"], - ["const godot_quat *", "p_b"] + ["godot_array *", "p_self"], + ["const godot_int", "p_idx"] ] }, { - "name": "godot_quat_xform", - "return_type": "godot_vector3", + "name": "godot_array_resize", + "return_type": "void", "arguments": [ - ["const godot_quat *", "p_self"], - ["const godot_vector3 *", "p_v"] + ["godot_array *", "p_self"], + ["const godot_int", "p_size"] ] }, { - "name": "godot_quat_slerp", - "return_type": "godot_quat", + "name": "godot_array_rfind", + "return_type": "godot_int", "arguments": [ - ["const godot_quat *", "p_self"], - ["const godot_quat *", "p_b"], - ["const godot_real", "p_t"] + ["const godot_array *", "p_self"], + ["const godot_variant *", "p_what"], + ["const godot_int", "p_from"] ] }, { - "name": "godot_quat_slerpni", - "return_type": "godot_quat", + "name": "godot_array_size", + "return_type": "godot_int", "arguments": [ - ["const godot_quat *", "p_self"], - ["const godot_quat *", "p_b"], - ["const godot_real", "p_t"] + ["const godot_array *", "p_self"] ] }, { - "name": "godot_quat_cubic_slerp", - "return_type": "godot_quat", + "name": "godot_array_shuffle", + "return_type": "void", "arguments": [ - ["const godot_quat *", "p_self"], - ["const godot_quat *", "p_b"], - ["const godot_quat *", "p_pre_a"], - ["const godot_quat *", "p_post_b"], - ["const godot_real", "p_t"] + ["godot_array *", "p_self"] ] }, { - "name": "godot_quat_operator_multiply", - "return_type": "godot_quat", + "name": "godot_array_slice", + "return_type": "godot_array", "arguments": [ - ["const godot_quat *", "p_self"], - ["const godot_real", "p_b"] + ["const godot_array *", "p_self"], + ["const godot_int", "p_begin"], + ["const godot_int", "p_end"], + ["const godot_int", "p_step"], + ["const godot_bool", "p_deep"] ] }, { - "name": "godot_quat_operator_add", - "return_type": "godot_quat", + "name": "godot_array_sort", + "return_type": "void", "arguments": [ - ["const godot_quat *", "p_self"], - ["const godot_quat *", "p_b"] + ["godot_array *", "p_self"] ] }, { - "name": "godot_quat_operator_subtract", - "return_type": "godot_quat", + "name": "godot_array_sort_custom", + "return_type": "void", "arguments": [ - ["const godot_quat *", "p_self"], - ["const godot_quat *", "p_b"] + ["godot_array *", "p_self"], + ["godot_object *", "p_obj"], + ["const godot_string *", "p_func"] ] }, { - "name": "godot_quat_operator_divide", - "return_type": "godot_quat", + "name": "godot_array_bsearch", + "return_type": "godot_int", "arguments": [ - ["const godot_quat *", "p_self"], - ["const godot_real", "p_b"] + ["godot_array *", "p_self"], + ["const godot_variant *", "p_value"], + ["const godot_bool", "p_before"] ] }, { - "name": "godot_quat_operator_equal", - "return_type": "godot_bool", + "name": "godot_array_bsearch_custom", + "return_type": "godot_int", "arguments": [ - ["const godot_quat *", "p_self"], - ["const godot_quat *", "p_b"] + ["godot_array *", "p_self"], + ["const godot_variant *", "p_value"], + ["godot_object *", "p_obj"], + ["const godot_string *", "p_func"], + ["const godot_bool", "p_before"] ] }, { - "name": "godot_quat_operator_neg", - "return_type": "godot_quat", + "name": "godot_array_destroy", + "return_type": "void", "arguments": [ - ["const godot_quat *", "p_self"] + ["godot_array *", "p_self"] ] }, { @@ -2512,294 +816,803 @@ ] }, { - "name": "godot_vector3_new", + "name": "godot_basis_slerp", + "return_type": "godot_basis", + "arguments": [ + ["const godot_basis *", "p_self"], + ["const godot_basis *", "p_b"], + ["const godot_real", "p_t"] + ] + }, + { + "name": "godot_basis_get_quat", + "return_type": "godot_quat", + "arguments": [ + ["const godot_basis *", "p_self"] + ] + }, + { + "name": "godot_basis_set_quat", "return_type": "void", "arguments": [ - ["godot_vector3 *", "r_dest"], - ["const godot_real", "p_x"], - ["const godot_real", "p_y"], - ["const godot_real", "p_z"] + ["godot_basis *", "p_self"], + ["const godot_quat *", "p_quat"] ] }, { - "name": "godot_vector3_as_string", + "name": "godot_basis_set_axis_angle_scale", + "return_type": "void", + "arguments": [ + ["godot_basis *", "p_self"], + ["const godot_vector3 *", "p_axis"], + ["godot_real", "p_phi"], + ["const godot_vector3 *", "p_scale"] + ] + }, + { + "name": "godot_basis_set_euler_scale", + "return_type": "void", + "arguments": [ + ["godot_basis *", "p_self"], + ["const godot_vector3 *", "p_euler"], + ["const godot_vector3 *", "p_scale"] + ] + }, + { + "name": "godot_basis_set_quat_scale", + "return_type": "void", + "arguments": [ + ["godot_basis *", "p_self"], + ["const godot_quat *", "p_quat"], + ["const godot_vector3 *", "p_scale"] + ] + }, + { + "name": "godot_callable_new_with_object", + "return_type": "void", + "arguments": [ + ["godot_callable *", "r_dest"], + ["const godot_object *", "p_object"], + ["const godot_string_name *", "p_method"] + ] + }, + { + "name": "godot_callable_new_with_object_id", + "return_type": "void", + "arguments": [ + ["godot_callable *", "r_dest"], + ["uint64_t", "p_objectid"], + ["const godot_string_name *", "p_method"] + ] + }, + { + "name": "godot_callable_new_copy", + "return_type": "void", + "arguments": [ + ["godot_callable *", "r_dest"], + ["const godot_callable *", "p_src"] + ] + }, + { + "name": "godot_callable_destroy", + "return_type": "void", + "arguments": [ + ["godot_callable *", "p_self"] + ] + }, + { + "name": "godot_callable_call", + "return_type": "godot_int", + "arguments": [ + ["const godot_callable *", "p_self"], + ["const godot_variant **", "p_arguments"], + ["godot_int", "p_argcount"], + ["godot_variant *", "r_return_value"] + ] + }, + { + "name": "godot_callable_call_deferred", + "return_type": "void", + "arguments": [ + ["const godot_callable *", "p_self"], + ["const godot_variant **", "p_arguments"], + ["godot_int", "p_argcount"] + ] + }, + { + "name": "godot_callable_is_null", + "return_type": "godot_bool", + "arguments": [ + ["const godot_callable *", "p_self"] + ] + }, + { + "name": "godot_callable_is_custom", + "return_type": "godot_bool", + "arguments": [ + ["const godot_callable *", "p_self"] + ] + }, + { + "name": "godot_callable_is_standard", + "return_type": "godot_bool", + "arguments": [ + ["const godot_callable *", "p_self"] + ] + }, + { + "name": "godot_callable_get_object", + "return_type": "godot_object *", + "arguments": [ + ["const godot_callable *", "p_self"] + ] + }, + { + "name": "godot_callable_get_object_id", + "return_type": "uint64_t", + "arguments": [ + ["const godot_callable *", "p_self"] + ] + }, + { + "name": "godot_callable_get_method", + "return_type": "godot_string_name", + "arguments": [ + ["const godot_callable *", "p_self"] + ] + }, + { + "name": "godot_callable_hash", + "return_type": "uint32_t", + "arguments": [ + ["const godot_callable *", "p_self"] + ] + }, + { + "name": "godot_callable_as_string", "return_type": "godot_string", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["const godot_callable *", "p_self"] ] }, { - "name": "godot_vector3_min_axis", + "name": "godot_callable_operator_equal", + "return_type": "godot_bool", + "arguments": [ + ["const godot_callable *", "p_self"], + ["const godot_callable *", "p_other"] + ] + }, + { + "name": "godot_callable_operator_less", + "return_type": "godot_bool", + "arguments": [ + ["const godot_callable *", "p_self"], + ["const godot_callable *", "p_other"] + ] + }, + { + "name": "godot_signal_new_with_object", + "return_type": "void", + "arguments": [ + ["godot_signal *", "r_dest"], + ["const godot_object *", "p_object"], + ["const godot_string_name *", "p_method"] + ] + }, + { + "name": "godot_signal_new_with_object_id", + "return_type": "void", + "arguments": [ + ["godot_signal *", "r_dest"], + ["uint64_t", "p_objectid"], + ["const godot_string_name *", "p_method"] + ] + }, + { + "name": "godot_signal_new_copy", + "return_type": "void", + "arguments": [ + ["godot_signal *", "r_dest"], + ["const godot_signal *", "p_src"] + ] + }, + { + "name": "godot_signal_destroy", + "return_type": "void", + "arguments": [ + ["godot_signal *", "p_self"] + ] + }, + { + "name": "godot_signal_emit", "return_type": "godot_int", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["const godot_signal *", "p_self"], + ["const godot_variant **", "p_arguments"], + ["godot_int", "p_argcount"] ] }, { - "name": "godot_vector3_max_axis", + "name": "godot_signal_connect", "return_type": "godot_int", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["godot_signal *", "p_self"], + ["const godot_callable *", "p_callable"], + ["const godot_array *", "p_binds"], + ["uint32_t", "p_flags"] ] }, { - "name": "godot_vector3_length", - "return_type": "godot_real", + "name": "godot_signal_disconnect", + "return_type": "void", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["godot_signal *", "p_self"], + ["const godot_callable *", "p_callable"] ] }, { - "name": "godot_vector3_length_squared", - "return_type": "godot_real", + "name": "godot_signal_is_null", + "return_type": "godot_bool", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["const godot_signal *", "p_self"] ] }, { - "name": "godot_vector3_is_normalized", + "name": "godot_signal_is_connected", "return_type": "godot_bool", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["const godot_signal *", "p_self"], + ["const godot_callable *", "p_callable"] ] }, { - "name": "godot_vector3_normalized", - "return_type": "godot_vector3", + "name": "godot_signal_get_connections", + "return_type": "godot_array", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["const godot_signal *", "p_self"] ] }, { - "name": "godot_vector3_inverse", - "return_type": "godot_vector3", + "name": "godot_signal_get_object", + "return_type": "godot_object *", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["const godot_signal *", "p_self"] ] }, { - "name": "godot_vector3_snapped", - "return_type": "godot_vector3", + "name": "godot_signal_get_object_id", + "return_type": "uint64_t", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_by"] + ["const godot_signal *", "p_self"] ] }, { - "name": "godot_vector3_rotated", - "return_type": "godot_vector3", + "name": "godot_signal_get_name", + "return_type": "godot_string_name", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_axis"], - ["const godot_real", "p_phi"] + ["const godot_signal *", "p_self"] + ] + }, + { + "name": "godot_signal_as_string", + "return_type": "godot_string", + "arguments": [ + ["const godot_signal *", "p_self"] + ] + }, + { + "name": "godot_signal_operator_equal", + "return_type": "godot_bool", + "arguments": [ + ["const godot_signal *", "p_self"], + ["const godot_signal *", "p_other"] + ] + }, + { + "name": "godot_signal_operator_less", + "return_type": "godot_bool", + "arguments": [ + ["const godot_signal *", "p_self"], + ["const godot_signal *", "p_other"] ] }, { - "name": "godot_vector3_lerp", - "return_type": "godot_vector3", + "name": "godot_color_new_rgba", + "return_type": "void", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"], - ["const godot_real", "p_t"] + ["godot_color *", "r_dest"], + ["const godot_real", "p_r"], + ["const godot_real", "p_g"], + ["const godot_real", "p_b"], + ["const godot_real", "p_a"] ] }, { - "name": "godot_vector3_cubic_interpolate", - "return_type": "godot_vector3", + "name": "godot_color_new_rgb", + "return_type": "void", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"], - ["const godot_vector3 *", "p_pre_a"], - ["const godot_vector3 *", "p_post_b"], - ["const godot_real", "p_t"] + ["godot_color *", "r_dest"], + ["const godot_real", "p_r"], + ["const godot_real", "p_g"], + ["const godot_real", "p_b"] ] }, { - "name": "godot_vector3_dot", + "name": "godot_color_get_r", "return_type": "godot_real", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_cross", - "return_type": "godot_vector3", + "name": "godot_color_set_r", + "return_type": "void", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"] + ["godot_color *", "p_self"], + ["const godot_real", "r"] ] }, { - "name": "godot_vector3_outer", - "return_type": "godot_basis", + "name": "godot_color_get_g", + "return_type": "godot_real", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_to_diagonal_matrix", - "return_type": "godot_basis", + "name": "godot_color_set_g", + "return_type": "void", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["godot_color *", "p_self"], + ["const godot_real", "g"] ] }, { - "name": "godot_vector3_abs", - "return_type": "godot_vector3", + "name": "godot_color_get_b", + "return_type": "godot_real", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_floor", - "return_type": "godot_vector3", + "name": "godot_color_set_b", + "return_type": "void", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["godot_color *", "p_self"], + ["const godot_real", "b"] ] }, { - "name": "godot_vector3_ceil", - "return_type": "godot_vector3", + "name": "godot_color_get_a", + "return_type": "godot_real", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_distance_to", + "name": "godot_color_set_a", + "return_type": "void", + "arguments": [ + ["godot_color *", "p_self"], + ["const godot_real", "a"] + ] + }, + { + "name": "godot_color_get_h", "return_type": "godot_real", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_distance_squared_to", + "name": "godot_color_get_s", "return_type": "godot_real", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_angle_to", + "name": "godot_color_get_v", "return_type": "godot_real", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_to"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_slide", - "return_type": "godot_vector3", + "name": "godot_color_as_string", + "return_type": "godot_string", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_n"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_bounce", - "return_type": "godot_vector3", + "name": "godot_color_to_rgba32", + "return_type": "godot_int", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_n"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_reflect", - "return_type": "godot_vector3", + "name": "godot_color_to_argb32", + "return_type": "godot_int", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_n"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_operator_add", - "return_type": "godot_vector3", + "name": "godot_color_inverted", + "return_type": "godot_color", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_operator_subtract", - "return_type": "godot_vector3", + "name": "godot_color_contrasted", + "return_type": "godot_color", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"] + ["const godot_color *", "p_self"] ] }, { - "name": "godot_vector3_operator_multiply_vector", - "return_type": "godot_vector3", + "name": "godot_color_lerp", + "return_type": "godot_color", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"] + ["const godot_color *", "p_self"], + ["const godot_color *", "p_b"], + ["const godot_real", "p_t"] ] }, { - "name": "godot_vector3_operator_multiply_scalar", - "return_type": "godot_vector3", + "name": "godot_color_blend", + "return_type": "godot_color", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_real", "p_b"] + ["const godot_color *", "p_self"], + ["const godot_color *", "p_over"] ] }, { - "name": "godot_vector3_operator_divide_vector", - "return_type": "godot_vector3", + "name": "godot_color_to_html", + "return_type": "godot_string", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"] + ["const godot_color *", "p_self"], + ["const godot_bool", "p_with_alpha"] ] }, { - "name": "godot_vector3_operator_divide_scalar", - "return_type": "godot_vector3", + "name": "godot_color_operator_equal", + "return_type": "godot_bool", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_real", "p_b"] + ["const godot_color *", "p_self"], + ["const godot_color *", "p_b"] ] }, { - "name": "godot_vector3_operator_equal", + "name": "godot_color_operator_less", "return_type": "godot_bool", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"] + ["const godot_color *", "p_self"], + ["const godot_color *", "p_b"] ] }, { - "name": "godot_vector3_operator_less", + "name": "godot_color_to_abgr32", + "return_type": "godot_int", + "arguments": [ + ["const godot_color *", "p_self"] + ] + }, + { + "name": "godot_color_to_abgr64", + "return_type": "godot_int", + "arguments": [ + ["const godot_color *", "p_self"] + ] + }, + { + "name": "godot_color_to_argb64", + "return_type": "godot_int", + "arguments": [ + ["const godot_color *", "p_self"] + ] + }, + { + "name": "godot_color_to_rgba64", + "return_type": "godot_int", + "arguments": [ + ["const godot_color *", "p_self"] + ] + }, + { + "name": "godot_color_darkened", + "return_type": "godot_color", + "arguments": [ + ["const godot_color *", "p_self"], + ["const godot_real", "p_amount"] + ] + }, + { + "name": "godot_color_from_hsv", + "return_type": "godot_color", + "arguments": [ + ["const godot_color *", "p_self"], + ["const godot_real", "p_h"], + ["const godot_real", "p_s"], + ["const godot_real", "p_v"], + ["const godot_real", "p_a"] + ] + }, + { + "name": "godot_color_lightened", + "return_type": "godot_color", + "arguments": [ + ["const godot_color *", "p_self"], + ["const godot_real", "p_amount"] + ] + }, + { + "name": "godot_dictionary_new", + "return_type": "void", + "arguments": [ + ["godot_dictionary *", "r_dest"] + ] + }, + { + "name": "godot_dictionary_new_copy", + "return_type": "void", + "arguments": [ + ["godot_dictionary *", "r_dest"], + ["const godot_dictionary *", "p_src"] + ] + }, + { + "name": "godot_dictionary_destroy", + "return_type": "void", + "arguments": [ + ["godot_dictionary *", "p_self"] + ] + }, + { + "name": "godot_dictionary_size", + "return_type": "godot_int", + "arguments": [ + ["const godot_dictionary *", "p_self"] + ] + }, + { + "name": "godot_dictionary_empty", "return_type": "godot_bool", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3 *", "p_b"] + ["const godot_dictionary *", "p_self"] ] }, { - "name": "godot_vector3_operator_neg", - "return_type": "godot_vector3", + "name": "godot_dictionary_clear", + "return_type": "void", "arguments": [ - ["const godot_vector3 *", "p_self"] + ["godot_dictionary *", "p_self"] ] }, { - "name": "godot_vector3_set_axis", + "name": "godot_dictionary_has", + "return_type": "godot_bool", + "arguments": [ + ["const godot_dictionary *", "p_self"], + ["const godot_variant *", "p_key"] + ] + }, + { + "name": "godot_dictionary_has_all", + "return_type": "godot_bool", + "arguments": [ + ["const godot_dictionary *", "p_self"], + ["const godot_array *", "p_keys"] + ] + }, + { + "name": "godot_dictionary_erase", "return_type": "void", "arguments": [ - ["godot_vector3 *", "p_self"], - ["const godot_vector3_axis", "p_axis"], - ["const godot_real", "p_val"] + ["godot_dictionary *", "p_self"], + ["const godot_variant *", "p_key"] ] }, { - "name": "godot_vector3_get_axis", - "return_type": "godot_real", + "name": "godot_dictionary_hash", + "return_type": "godot_int", "arguments": [ - ["const godot_vector3 *", "p_self"], - ["const godot_vector3_axis", "p_axis"] + ["const godot_dictionary *", "p_self"] + ] + }, + { + "name": "godot_dictionary_keys", + "return_type": "godot_array", + "arguments": [ + ["const godot_dictionary *", "p_self"] + ] + }, + { + "name": "godot_dictionary_values", + "return_type": "godot_array", + "arguments": [ + ["const godot_dictionary *", "p_self"] + ] + }, + { + "name": "godot_dictionary_get", + "return_type": "godot_variant", + "arguments": [ + ["const godot_dictionary *", "p_self"], + ["const godot_variant *", "p_key"] + ] + }, + { + "name": "godot_dictionary_set", + "return_type": "void", + "arguments": [ + ["godot_dictionary *", "p_self"], + ["const godot_variant *", "p_key"], + ["const godot_variant *", "p_value"] + ] + }, + { + "name": "godot_dictionary_operator_index", + "return_type": "godot_variant *", + "arguments": [ + ["godot_dictionary *", "p_self"], + ["const godot_variant *", "p_key"] + ] + }, + { + "name": "godot_dictionary_operator_index_const", + "return_type": "const godot_variant *", + "arguments": [ + ["const godot_dictionary *", "p_self"], + ["const godot_variant *", "p_key"] + ] + }, + { + "name": "godot_dictionary_next", + "return_type": "godot_variant *", + "arguments": [ + ["const godot_dictionary *", "p_self"], + ["const godot_variant *", "p_key"] + ] + }, + { + "name": "godot_dictionary_operator_equal", + "return_type": "godot_bool", + "arguments": [ + ["const godot_dictionary *", "p_self"], + ["const godot_dictionary *", "p_b"] + ] + }, + { + "name": "godot_dictionary_to_json", + "return_type": "godot_string", + "arguments": [ + ["const godot_dictionary *", "p_self"] + ] + }, + { + "name": "godot_dictionary_duplicate", + "return_type": "godot_dictionary", + "arguments": [ + ["const godot_dictionary *", "p_self"], + ["const godot_bool", "p_deep"] + ] + }, + { + "name": "godot_dictionary_get_with_default", + "return_type": "godot_variant", + "arguments": [ + ["const godot_dictionary *", "p_self"], + ["const godot_variant *", "p_key"], + ["const godot_variant *", "p_default"] + ] + }, + { + "name": "godot_dictionary_erase_with_return", + "return_type": "bool", + "arguments": [ + ["godot_dictionary *", "p_self"], + ["const godot_variant *", "p_key"] + ] + }, + { + "name": "godot_node_path_new", + "return_type": "void", + "arguments": [ + ["godot_node_path *", "r_dest"], + ["const godot_string *", "p_from"] + ] + }, + { + "name": "godot_node_path_new_copy", + "return_type": "void", + "arguments": [ + ["godot_node_path *", "r_dest"], + ["const godot_node_path *", "p_src"] + ] + }, + { + "name": "godot_node_path_destroy", + "return_type": "void", + "arguments": [ + ["godot_node_path *", "p_self"] + ] + }, + { + "name": "godot_node_path_as_string", + "return_type": "godot_string", + "arguments": [ + ["const godot_node_path *", "p_self"] + ] + }, + { + "name": "godot_node_path_is_absolute", + "return_type": "godot_bool", + "arguments": [ + ["const godot_node_path *", "p_self"] + ] + }, + { + "name": "godot_node_path_get_name_count", + "return_type": "godot_int", + "arguments": [ + ["const godot_node_path *", "p_self"] + ] + }, + { + "name": "godot_node_path_get_name", + "return_type": "godot_string", + "arguments": [ + ["const godot_node_path *", "p_self"], + ["const godot_int", "p_idx"] + ] + }, + { + "name": "godot_node_path_get_subname_count", + "return_type": "godot_int", + "arguments": [ + ["const godot_node_path *", "p_self"] + ] + }, + { + "name": "godot_node_path_get_subname", + "return_type": "godot_string", + "arguments": [ + ["const godot_node_path *", "p_self"], + ["const godot_int", "p_idx"] + ] + }, + { + "name": "godot_node_path_get_concatenated_subnames", + "return_type": "godot_string", + "arguments": [ + ["const godot_node_path *", "p_self"] + ] + }, + { + "name": "godot_node_path_is_empty", + "return_type": "godot_bool", + "arguments": [ + ["const godot_node_path *", "p_self"] + ] + }, + { + "name": "godot_node_path_operator_equal", + "return_type": "godot_bool", + "arguments": [ + ["const godot_node_path *", "p_self"], + ["const godot_node_path *", "p_b"] + ] + }, + { + "name": "godot_node_path_get_as_property_path", + "return_type": "godot_node_path", + "arguments": [ + ["const godot_node_path *", "p_self"] ] }, { @@ -2826,6 +1639,13 @@ ] }, { + "name": "godot_packed_byte_array_empty", + "return_type": "godot_bool", + "arguments": [ + ["const godot_packed_byte_array *", "p_self"] + ] + }, + { "name": "godot_packed_byte_array_append", "return_type": "void", "arguments": [ @@ -2950,6 +1770,13 @@ ] }, { + "name": "godot_packed_int32_array_empty", + "return_type": "godot_bool", + "arguments": [ + ["const godot_packed_int32_array *", "p_self"] + ] + }, + { "name": "godot_packed_int32_array_append", "return_type": "void", "arguments": [ @@ -3051,6 +1878,137 @@ ] }, { + "name": "godot_packed_int64_array_new", + "return_type": "void", + "arguments": [ + ["godot_packed_int64_array *", "r_dest"] + ] + }, + { + "name": "godot_packed_int64_array_new_copy", + "return_type": "void", + "arguments": [ + ["godot_packed_int64_array *", "r_dest"], + ["const godot_packed_int64_array *", "p_src"] + ] + }, + { + "name": "godot_packed_int64_array_new_with_array", + "return_type": "void", + "arguments": [ + ["godot_packed_int64_array *", "r_dest"], + ["const godot_array *", "p_a"] + ] + }, + { + "name": "godot_packed_int64_array_empty", + "return_type": "godot_bool", + "arguments": [ + ["const godot_packed_int64_array *", "p_self"] + ] + }, + { + "name": "godot_packed_int64_array_append", + "return_type": "void", + "arguments": [ + ["godot_packed_int64_array *", "p_self"], + ["const int64_t", "p_data"] + ] + }, + { + "name": "godot_packed_int64_array_append_array", + "return_type": "void", + "arguments": [ + ["godot_packed_int64_array *", "p_self"], + ["const godot_packed_int64_array *", "p_array"] + ] + }, + { + "name": "godot_packed_int64_array_insert", + "return_type": "godot_error", + "arguments": [ + ["godot_packed_int64_array *", "p_self"], + ["const godot_int", "p_idx"], + ["const int64_t", "p_data"] + ] + }, + { + "name": "godot_packed_int64_array_invert", + "return_type": "void", + "arguments": [ + ["godot_packed_int64_array *", "p_self"] + ] + }, + { + "name": "godot_packed_int64_array_push_back", + "return_type": "void", + "arguments": [ + ["godot_packed_int64_array *", "p_self"], + ["const int64_t", "p_data"] + ] + }, + { + "name": "godot_packed_int64_array_remove", + "return_type": "void", + "arguments": [ + ["godot_packed_int64_array *", "p_self"], + ["const godot_int", "p_idx"] + ] + }, + { + "name": "godot_packed_int64_array_resize", + "return_type": "void", + "arguments": [ + ["godot_packed_int64_array *", "p_self"], + ["const godot_int", "p_size"] + ] + }, + { + "name": "godot_packed_int64_array_ptr", + "return_type": "const int64_t *", + "arguments": [ + ["const godot_packed_int64_array *", "p_self"] + ] + }, + { + "name": "godot_packed_int64_array_ptrw", + "return_type": "int64_t *", + "arguments": [ + ["godot_packed_int64_array *", "p_self"] + ] + }, + { + "name": "godot_packed_int64_array_set", + "return_type": "void", + "arguments": [ + ["godot_packed_int64_array *", "p_self"], + ["const godot_int", "p_idx"], + ["const int64_t", "p_data"] + ] + }, + { + "name": "godot_packed_int64_array_get", + "return_type": "int64_t", + "arguments": [ + ["const godot_packed_int64_array *", "p_self"], + ["const godot_int", "p_idx"] + ] + }, + { + "name": "godot_packed_int64_array_size", + "return_type": "godot_int", + "arguments": [ + ["const godot_packed_int64_array *", "p_self"] + ] + }, + { + "name": "godot_packed_int64_array_destroy", + "return_type": "void", + "arguments": [ + ["godot_packed_int64_array *", "p_self"] + ] + }, + { "name": "godot_packed_float32_array_new", "return_type": "void", "arguments": [ @@ -3074,6 +2032,13 @@ ] }, { + "name": "godot_packed_float32_array_empty", + "return_type": "godot_bool", + "arguments": [ + ["const godot_packed_float32_array *", "p_self"] + ] + }, + { "name": "godot_packed_float32_array_append", "return_type": "void", "arguments": [ @@ -3175,6 +2140,137 @@ ] }, { + "name": "godot_packed_float64_array_new", + "return_type": "void", + "arguments": [ + ["godot_packed_float64_array *", "r_dest"] + ] + }, + { + "name": "godot_packed_float64_array_new_copy", + "return_type": "void", + "arguments": [ + ["godot_packed_float64_array *", "r_dest"], + ["const godot_packed_float64_array *", "p_src"] + ] + }, + { + "name": "godot_packed_float64_array_new_with_array", + "return_type": "void", + "arguments": [ + ["godot_packed_float64_array *", "r_dest"], + ["const godot_array *", "p_a"] + ] + }, + { + "name": "godot_packed_float64_array_empty", + "return_type": "godot_bool", + "arguments": [ + ["const godot_packed_float64_array *", "p_self"] + ] + }, + { + "name": "godot_packed_float64_array_append", + "return_type": "void", + "arguments": [ + ["godot_packed_float64_array *", "p_self"], + ["const double", "p_data"] + ] + }, + { + "name": "godot_packed_float64_array_append_array", + "return_type": "void", + "arguments": [ + ["godot_packed_float64_array *", "p_self"], + ["const godot_packed_float64_array *", "p_array"] + ] + }, + { + "name": "godot_packed_float64_array_insert", + "return_type": "godot_error", + "arguments": [ + ["godot_packed_float64_array *", "p_self"], + ["const godot_int", "p_idx"], + ["const double", "p_data"] + ] + }, + { + "name": "godot_packed_float64_array_invert", + "return_type": "void", + "arguments": [ + ["godot_packed_float64_array *", "p_self"] + ] + }, + { + "name": "godot_packed_float64_array_push_back", + "return_type": "void", + "arguments": [ + ["godot_packed_float64_array *", "p_self"], + ["const double", "p_data"] + ] + }, + { + "name": "godot_packed_float64_array_remove", + "return_type": "void", + "arguments": [ + ["godot_packed_float64_array *", "p_self"], + ["const godot_int", "p_idx"] + ] + }, + { + "name": "godot_packed_float64_array_resize", + "return_type": "void", + "arguments": [ + ["godot_packed_float64_array *", "p_self"], + ["const godot_int", "p_size"] + ] + }, + { + "name": "godot_packed_float64_array_ptr", + "return_type": "const double *", + "arguments": [ + ["const godot_packed_float64_array *", "p_self"] + ] + }, + { + "name": "godot_packed_float64_array_ptrw", + "return_type": "double *", + "arguments": [ + ["godot_packed_float64_array *", "p_self"] + ] + }, + { + "name": "godot_packed_float64_array_set", + "return_type": "void", + "arguments": [ + ["godot_packed_float64_array *", "p_self"], + ["const godot_int", "p_idx"], + ["const double", "p_data"] + ] + }, + { + "name": "godot_packed_float64_array_get", + "return_type": "double", + "arguments": [ + ["const godot_packed_float64_array *", "p_self"], + ["const godot_int", "p_idx"] + ] + }, + { + "name": "godot_packed_float64_array_size", + "return_type": "godot_int", + "arguments": [ + ["const godot_packed_float64_array *", "p_self"] + ] + }, + { + "name": "godot_packed_float64_array_destroy", + "return_type": "void", + "arguments": [ + ["godot_packed_float64_array *", "p_self"] + ] + }, + { "name": "godot_packed_string_array_new", "return_type": "void", "arguments": [ @@ -3198,6 +2294,13 @@ ] }, { + "name": "godot_packed_string_array_empty", + "return_type": "godot_bool", + "arguments": [ + ["const godot_packed_string_array *", "p_self"] + ] + }, + { "name": "godot_packed_string_array_append", "return_type": "void", "arguments": [ @@ -3322,6 +2425,13 @@ ] }, { + "name": "godot_packed_vector2_array_empty", + "return_type": "godot_bool", + "arguments": [ + ["const godot_packed_vector2_array *", "p_self"] + ] + }, + { "name": "godot_packed_vector2_array_append", "return_type": "void", "arguments": [ @@ -3446,6 +2556,13 @@ ] }, { + "name": "godot_packed_vector3_array_empty", + "return_type": "godot_bool", + "arguments": [ + ["const godot_packed_vector3_array *", "p_self"] + ] + }, + { "name": "godot_packed_vector3_array_append", "return_type": "void", "arguments": [ @@ -3570,6 +2687,13 @@ ] }, { + "name": "godot_packed_color_array_empty", + "return_type": "godot_bool", + "arguments": [ + ["const godot_packed_color_array *", "p_self"] + ] + }, + { "name": "godot_packed_color_array_append", "return_type": "void", "arguments": [ @@ -3671,1090 +2795,2064 @@ ] }, { - "name": "godot_array_new", + "name": "godot_plane_new_with_reals", "return_type": "void", "arguments": [ - ["godot_array *", "r_dest"] + ["godot_plane *", "r_dest"], + ["const godot_real", "p_a"], + ["const godot_real", "p_b"], + ["const godot_real", "p_c"], + ["const godot_real", "p_d"] ] }, { - "name": "godot_array_new_copy", + "name": "godot_plane_new_with_vectors", "return_type": "void", "arguments": [ - ["godot_array *", "r_dest"], - ["const godot_array *", "p_src"] + ["godot_plane *", "r_dest"], + ["const godot_vector3 *", "p_v1"], + ["const godot_vector3 *", "p_v2"], + ["const godot_vector3 *", "p_v3"] ] }, { - "name": "godot_array_new_packed_color_array", + "name": "godot_plane_new_with_normal", "return_type": "void", "arguments": [ - ["godot_array *", "r_dest"], - ["const godot_packed_color_array *", "p_pca"] + ["godot_plane *", "r_dest"], + ["const godot_vector3 *", "p_normal"], + ["const godot_real", "p_d"] ] }, { - "name": "godot_array_new_packed_vector3_array", + "name": "godot_plane_as_string", + "return_type": "godot_string", + "arguments": [ + ["const godot_plane *", "p_self"] + ] + }, + { + "name": "godot_plane_normalized", + "return_type": "godot_plane", + "arguments": [ + ["const godot_plane *", "p_self"] + ] + }, + { + "name": "godot_plane_center", + "return_type": "godot_vector3", + "arguments": [ + ["const godot_plane *", "p_self"] + ] + }, + { + "name": "godot_plane_get_any_point", + "return_type": "godot_vector3", + "arguments": [ + ["const godot_plane *", "p_self"] + ] + }, + { + "name": "godot_plane_is_point_over", + "return_type": "godot_bool", + "arguments": [ + ["const godot_plane *", "p_self"], + ["const godot_vector3 *", "p_point"] + ] + }, + { + "name": "godot_plane_distance_to", + "return_type": "godot_real", + "arguments": [ + ["const godot_plane *", "p_self"], + ["const godot_vector3 *", "p_point"] + ] + }, + { + "name": "godot_plane_has_point", + "return_type": "godot_bool", + "arguments": [ + ["const godot_plane *", "p_self"], + ["const godot_vector3 *", "p_point"], + ["const godot_real", "p_epsilon"] + ] + }, + { + "name": "godot_plane_project", + "return_type": "godot_vector3", + "arguments": [ + ["const godot_plane *", "p_self"], + ["const godot_vector3 *", "p_point"] + ] + }, + { + "name": "godot_plane_intersect_3", + "return_type": "godot_bool", + "arguments": [ + ["const godot_plane *", "p_self"], + ["godot_vector3 *", "r_dest"], + ["const godot_plane *", "p_b"], + ["const godot_plane *", "p_c"] + ] + }, + { + "name": "godot_plane_intersects_ray", + "return_type": "godot_bool", + "arguments": [ + ["const godot_plane *", "p_self"], + ["godot_vector3 *", "r_dest"], + ["const godot_vector3 *", "p_from"], + ["const godot_vector3 *", "p_dir"] + ] + }, + { + "name": "godot_plane_intersects_segment", + "return_type": "godot_bool", + "arguments": [ + ["const godot_plane *", "p_self"], + ["godot_vector3 *", "r_dest"], + ["const godot_vector3 *", "p_begin"], + ["const godot_vector3 *", "p_end"] + ] + }, + { + "name": "godot_plane_operator_neg", + "return_type": "godot_plane", + "arguments": [ + ["const godot_plane *", "p_self"] + ] + }, + { + "name": "godot_plane_operator_equal", + "return_type": "godot_bool", + "arguments": [ + ["const godot_plane *", "p_self"], + ["const godot_plane *", "p_b"] + ] + }, + { + "name": "godot_plane_set_normal", "return_type": "void", "arguments": [ - ["godot_array *", "r_dest"], - ["const godot_packed_vector3_array *", "p_pv3a"] + ["godot_plane *", "p_self"], + ["const godot_vector3 *", "p_normal"] ] }, { - "name": "godot_array_new_packed_vector2_array", + "name": "godot_plane_get_normal", + "return_type": "godot_vector3", + "arguments": [ + ["const godot_plane *", "p_self"] + ] + }, + { + "name": "godot_plane_get_d", + "return_type": "godot_real", + "arguments": [ + ["const godot_plane *", "p_self"] + ] + }, + { + "name": "godot_plane_set_d", "return_type": "void", "arguments": [ - ["godot_array *", "r_dest"], - ["const godot_packed_vector2_array *", "p_pv2a"] + ["godot_plane *", "p_self"], + ["const godot_real", "p_d"] ] }, { - "name": "godot_array_new_packed_string_array", + "name": "godot_quat_new", "return_type": "void", "arguments": [ - ["godot_array *", "r_dest"], - ["const godot_packed_string_array *", "p_psa"] + ["godot_quat *", "r_dest"], + ["const godot_real", "p_x"], + ["const godot_real", "p_y"], + ["const godot_real", "p_z"], + ["const godot_real", "p_w"] ] }, { - "name": "godot_array_new_packed_float32_array", + "name": "godot_quat_new_with_axis_angle", "return_type": "void", "arguments": [ - ["godot_array *", "r_dest"], - ["const godot_packed_float32_array *", "p_pra"] + ["godot_quat *", "r_dest"], + ["const godot_vector3 *", "p_axis"], + ["const godot_real", "p_angle"] ] }, { - "name": "godot_array_new_packed_int32_array", + "name": "godot_quat_new_with_basis", "return_type": "void", "arguments": [ - ["godot_array *", "r_dest"], - ["const godot_packed_int32_array *", "p_pia"] + ["godot_quat *", "r_dest"], + ["const godot_basis *", "p_basis"] ] }, { - "name": "godot_array_new_packed_byte_array", + "name": "godot_quat_new_with_euler", "return_type": "void", "arguments": [ - ["godot_array *", "r_dest"], - ["const godot_packed_byte_array *", "p_pba"] + ["godot_quat *", "r_dest"], + ["const godot_vector3 *", "p_euler"] ] }, { - "name": "godot_array_set", + "name": "godot_quat_get_x", + "return_type": "godot_real", + "arguments": [ + ["const godot_quat *", "p_self"] + ] + }, + { + "name": "godot_quat_set_x", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"], - ["const godot_int", "p_idx"], - ["const godot_variant *", "p_value"] + ["godot_quat *", "p_self"], + ["const godot_real", "val"] ] }, { - "name": "godot_array_get", - "return_type": "godot_variant", + "name": "godot_quat_get_y", + "return_type": "godot_real", "arguments": [ - ["const godot_array *", "p_self"], - ["const godot_int", "p_idx"] + ["const godot_quat *", "p_self"] ] }, { - "name": "godot_array_operator_index", - "return_type": "godot_variant *", + "name": "godot_quat_set_y", + "return_type": "void", "arguments": [ - ["godot_array *", "p_self"], - ["const godot_int", "p_idx"] + ["godot_quat *", "p_self"], + ["const godot_real", "val"] ] }, { - "name": "godot_array_operator_index_const", - "return_type": "const godot_variant *", + "name": "godot_quat_get_z", + "return_type": "godot_real", "arguments": [ - ["const godot_array *", "p_self"], - ["const godot_int", "p_idx"] + ["const godot_quat *", "p_self"] ] }, { - "name": "godot_array_append", + "name": "godot_quat_set_z", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"], - ["const godot_variant *", "p_value"] + ["godot_quat *", "p_self"], + ["const godot_real", "val"] ] }, { - "name": "godot_array_clear", + "name": "godot_quat_get_w", + "return_type": "godot_real", + "arguments": [ + ["const godot_quat *", "p_self"] + ] + }, + { + "name": "godot_quat_set_w", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"] + ["godot_quat *", "p_self"], + ["const godot_real", "val"] ] }, { - "name": "godot_array_count", - "return_type": "godot_int", + "name": "godot_quat_set_axis_angle", + "return_type": "void", "arguments": [ - ["const godot_array *", "p_self"], - ["const godot_variant *", "p_value"] + ["godot_quat *", "p_self"], + ["const godot_vector3 *", "p_axis"], + ["const godot_real", "p_angle"] ] }, { - "name": "godot_array_empty", + "name": "godot_quat_as_string", + "return_type": "godot_string", + "arguments": [ + ["const godot_quat *", "p_self"] + ] + }, + { + "name": "godot_quat_length", + "return_type": "godot_real", + "arguments": [ + ["const godot_quat *", "p_self"] + ] + }, + { + "name": "godot_quat_length_squared", + "return_type": "godot_real", + "arguments": [ + ["const godot_quat *", "p_self"] + ] + }, + { + "name": "godot_quat_normalized", + "return_type": "godot_quat", + "arguments": [ + ["const godot_quat *", "p_self"] + ] + }, + { + "name": "godot_quat_is_normalized", "return_type": "godot_bool", "arguments": [ - ["const godot_array *", "p_self"] + ["const godot_quat *", "p_self"] ] }, { - "name": "godot_array_erase", - "return_type": "void", + "name": "godot_quat_inverse", + "return_type": "godot_quat", "arguments": [ - ["godot_array *", "p_self"], - ["const godot_variant *", "p_value"] + ["const godot_quat *", "p_self"] ] }, { - "name": "godot_array_front", - "return_type": "godot_variant", + "name": "godot_quat_dot", + "return_type": "godot_real", "arguments": [ - ["const godot_array *", "p_self"] + ["const godot_quat *", "p_self"], + ["const godot_quat *", "p_b"] ] }, { - "name": "godot_array_back", - "return_type": "godot_variant", + "name": "godot_quat_xform", + "return_type": "godot_vector3", "arguments": [ - ["const godot_array *", "p_self"] + ["const godot_quat *", "p_self"], + ["const godot_vector3 *", "p_v"] ] }, { - "name": "godot_array_find", - "return_type": "godot_int", + "name": "godot_quat_slerp", + "return_type": "godot_quat", "arguments": [ - ["const godot_array *", "p_self"], - ["const godot_variant *", "p_what"], - ["const godot_int", "p_from"] + ["const godot_quat *", "p_self"], + ["const godot_quat *", "p_b"], + ["const godot_real", "p_t"] ] }, { - "name": "godot_array_find_last", - "return_type": "godot_int", + "name": "godot_quat_slerpni", + "return_type": "godot_quat", "arguments": [ - ["const godot_array *", "p_self"], - ["const godot_variant *", "p_what"] + ["const godot_quat *", "p_self"], + ["const godot_quat *", "p_b"], + ["const godot_real", "p_t"] ] }, { - "name": "godot_array_has", + "name": "godot_quat_cubic_slerp", + "return_type": "godot_quat", + "arguments": [ + ["const godot_quat *", "p_self"], + ["const godot_quat *", "p_b"], + ["const godot_quat *", "p_pre_a"], + ["const godot_quat *", "p_post_b"], + ["const godot_real", "p_t"] + ] + }, + { + "name": "godot_quat_operator_multiply", + "return_type": "godot_quat", + "arguments": [ + ["const godot_quat *", "p_self"], + ["const godot_real", "p_b"] + ] + }, + { + "name": "godot_quat_operator_add", + "return_type": "godot_quat", + "arguments": [ + ["const godot_quat *", "p_self"], + ["const godot_quat *", "p_b"] + ] + }, + { + "name": "godot_quat_operator_subtract", + "return_type": "godot_quat", + "arguments": [ + ["const godot_quat *", "p_self"], + ["const godot_quat *", "p_b"] + ] + }, + { + "name": "godot_quat_operator_divide", + "return_type": "godot_quat", + "arguments": [ + ["const godot_quat *", "p_self"], + ["const godot_real", "p_b"] + ] + }, + { + "name": "godot_quat_operator_equal", "return_type": "godot_bool", "arguments": [ - ["const godot_array *", "p_self"], - ["const godot_variant *", "p_value"] + ["const godot_quat *", "p_self"], + ["const godot_quat *", "p_b"] ] }, { - "name": "godot_array_hash", - "return_type": "godot_int", + "name": "godot_quat_operator_neg", + "return_type": "godot_quat", "arguments": [ - ["const godot_array *", "p_self"] + ["const godot_quat *", "p_self"] ] }, { - "name": "godot_array_insert", + "name": "godot_rect2_new_with_position_and_size", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"], - ["const godot_int", "p_pos"], - ["const godot_variant *", "p_value"] + ["godot_rect2 *", "r_dest"], + ["const godot_vector2 *", "p_pos"], + ["const godot_vector2 *", "p_size"] ] }, { - "name": "godot_array_invert", + "name": "godot_rect2_new", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"] + ["godot_rect2 *", "r_dest"], + ["const godot_real", "p_x"], + ["const godot_real", "p_y"], + ["const godot_real", "p_width"], + ["const godot_real", "p_height"] ] }, { - "name": "godot_array_pop_back", - "return_type": "godot_variant", + "name": "godot_rect2_as_rect2i", + "return_type": "godot_rect2i", "arguments": [ - ["godot_array *", "p_self"] + ["const godot_rect2 *", "p_self"] ] }, { - "name": "godot_array_pop_front", - "return_type": "godot_variant", + "name": "godot_rect2_as_string", + "return_type": "godot_string", "arguments": [ - ["godot_array *", "p_self"] + ["const godot_rect2 *", "p_self"] ] }, { - "name": "godot_array_push_back", + "name": "godot_rect2_get_area", + "return_type": "godot_real", + "arguments": [ + ["const godot_rect2 *", "p_self"] + ] + }, + { + "name": "godot_rect2_grow_individual", + "return_type": "godot_rect2", + "arguments": [ + ["const godot_rect2 *", "p_self"], + ["const godot_real", "p_left"], + ["const godot_real", "p_top"], + ["const godot_real", "p_right"], + ["const godot_real", "p_bottom"] + ] + }, + { + "name": "godot_rect2_grow_margin", + "return_type": "godot_rect2", + "arguments": [ + ["const godot_rect2 *", "p_self"], + ["const godot_int", "p_margin"], + ["const godot_real", "p_by"] + ] + }, + { + "name": "godot_rect2_abs", + "return_type": "godot_rect2", + "arguments": [ + ["const godot_rect2 *", "p_self"] + ] + }, + { + "name": "godot_rect2_intersects", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rect2 *", "p_self"], + ["const godot_rect2 *", "p_b"] + ] + }, + { + "name": "godot_rect2_encloses", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rect2 *", "p_self"], + ["const godot_rect2 *", "p_b"] + ] + }, + { + "name": "godot_rect2_has_no_area", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rect2 *", "p_self"] + ] + }, + { + "name": "godot_rect2_clip", + "return_type": "godot_rect2", + "arguments": [ + ["const godot_rect2 *", "p_self"], + ["const godot_rect2 *", "p_b"] + ] + }, + { + "name": "godot_rect2_merge", + "return_type": "godot_rect2", + "arguments": [ + ["const godot_rect2 *", "p_self"], + ["const godot_rect2 *", "p_b"] + ] + }, + { + "name": "godot_rect2_has_point", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rect2 *", "p_self"], + ["const godot_vector2 *", "p_point"] + ] + }, + { + "name": "godot_rect2_grow", + "return_type": "godot_rect2", + "arguments": [ + ["const godot_rect2 *", "p_self"], + ["const godot_real", "p_by"] + ] + }, + { + "name": "godot_rect2_expand", + "return_type": "godot_rect2", + "arguments": [ + ["const godot_rect2 *", "p_self"], + ["const godot_vector2 *", "p_to"] + ] + }, + { + "name": "godot_rect2_operator_equal", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rect2 *", "p_self"], + ["const godot_rect2 *", "p_b"] + ] + }, + { + "name": "godot_rect2_get_position", + "return_type": "godot_vector2", + "arguments": [ + ["const godot_rect2 *", "p_self"] + ] + }, + { + "name": "godot_rect2_get_size", + "return_type": "godot_vector2", + "arguments": [ + ["const godot_rect2 *", "p_self"] + ] + }, + { + "name": "godot_rect2_set_position", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"], - ["const godot_variant *", "p_value"] + ["godot_rect2 *", "p_self"], + ["const godot_vector2 *", "p_pos"] ] }, { - "name": "godot_array_push_front", + "name": "godot_rect2_set_size", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"], - ["const godot_variant *", "p_value"] + ["godot_rect2 *", "p_self"], + ["const godot_vector2 *", "p_size"] ] }, { - "name": "godot_array_remove", + "name": "godot_rect2i_new_with_position_and_size", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"], - ["const godot_int", "p_idx"] + ["godot_rect2i *", "r_dest"], + ["const godot_vector2i *", "p_pos"], + ["const godot_vector2i *", "p_size"] ] }, { - "name": "godot_array_resize", + "name": "godot_rect2i_new", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"], - ["const godot_int", "p_size"] + ["godot_rect2i *", "r_dest"], + ["const godot_int", "p_x"], + ["const godot_int", "p_y"], + ["const godot_int", "p_width"], + ["const godot_int", "p_height"] ] }, { - "name": "godot_array_rfind", - "return_type": "godot_int", + "name": "godot_rect2i_as_string", + "return_type": "godot_string", "arguments": [ - ["const godot_array *", "p_self"], - ["const godot_variant *", "p_what"], - ["const godot_int", "p_from"] + ["const godot_rect2i *", "p_self"] ] }, { - "name": "godot_array_size", + "name": "godot_rect2i_as_rect2", + "return_type": "godot_rect2", + "arguments": [ + ["const godot_rect2i *", "p_self"] + ] + }, + { + "name": "godot_rect2i_get_area", "return_type": "godot_int", "arguments": [ - ["const godot_array *", "p_self"] + ["const godot_rect2i *", "p_self"] ] }, { - "name": "godot_array_sort", + "name": "godot_rect2i_intersects", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rect2i *", "p_self"], + ["const godot_rect2i *", "p_b"] + ] + }, + { + "name": "godot_rect2i_encloses", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rect2i *", "p_self"], + ["const godot_rect2i *", "p_b"] + ] + }, + { + "name": "godot_rect2i_has_no_area", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rect2i *", "p_self"] + ] + }, + { + "name": "godot_rect2i_clip", + "return_type": "godot_rect2i", + "arguments": [ + ["const godot_rect2i *", "p_self"], + ["const godot_rect2i *", "p_b"] + ] + }, + { + "name": "godot_rect2i_merge", + "return_type": "godot_rect2i", + "arguments": [ + ["const godot_rect2i *", "p_self"], + ["const godot_rect2i *", "p_b"] + ] + }, + { + "name": "godot_rect2i_has_point", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rect2i *", "p_self"], + ["const godot_vector2i *", "p_point"] + ] + }, + { + "name": "godot_rect2i_grow", + "return_type": "godot_rect2i", + "arguments": [ + ["const godot_rect2i *", "p_self"], + ["const godot_int", "p_by"] + ] + }, + { + "name": "godot_rect2i_grow_individual", + "return_type": "godot_rect2i", + "arguments": [ + ["const godot_rect2i *", "p_self"], + ["const godot_int", "p_left"], + ["const godot_int", "p_top"], + ["const godot_int", "p_right"], + ["const godot_int", "p_bottom"] + ] + }, + { + "name": "godot_rect2i_grow_margin", + "return_type": "godot_rect2i", + "arguments": [ + ["const godot_rect2i *", "p_self"], + ["const godot_int", "p_margin"], + ["const godot_int", "p_by"] + ] + }, + { + "name": "godot_rect2i_abs", + "return_type": "godot_rect2i", + "arguments": [ + ["const godot_rect2i *", "p_self"] + ] + }, + { + "name": "godot_rect2i_expand", + "return_type": "godot_rect2i", + "arguments": [ + ["const godot_rect2i *", "p_self"], + ["const godot_vector2i *", "p_to"] + ] + }, + { + "name": "godot_rect2i_operator_equal", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rect2i *", "p_self"], + ["const godot_rect2i *", "p_b"] + ] + }, + { + "name": "godot_rect2i_get_position", + "return_type": "godot_vector2i", + "arguments": [ + ["const godot_rect2i *", "p_self"] + ] + }, + { + "name": "godot_rect2i_get_size", + "return_type": "godot_vector2i", + "arguments": [ + ["const godot_rect2i *", "p_self"] + ] + }, + { + "name": "godot_rect2i_set_position", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"] + ["godot_rect2i *", "p_self"], + ["const godot_vector2i *", "p_pos"] ] }, { - "name": "godot_array_sort_custom", + "name": "godot_rect2i_set_size", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"], - ["godot_object *", "p_obj"], - ["const godot_string *", "p_func"] + ["godot_rect2i *", "p_self"], + ["const godot_vector2i *", "p_size"] ] }, { - "name": "godot_array_bsearch", + "name": "godot_rid_new", + "return_type": "void", + "arguments": [ + ["godot_rid *", "r_dest"] + ] + }, + { + "name": "godot_rid_get_id", "return_type": "godot_int", "arguments": [ - ["godot_array *", "p_self"], - ["const godot_variant *", "p_value"], - ["const godot_bool", "p_before"] + ["const godot_rid *", "p_self"] ] }, { - "name": "godot_array_bsearch_custom", + "name": "godot_rid_new_with_resource", + "return_type": "void", + "arguments": [ + ["godot_rid *", "r_dest"], + ["const godot_object *", "p_from"] + ] + }, + { + "name": "godot_rid_operator_equal", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rid *", "p_self"], + ["const godot_rid *", "p_b"] + ] + }, + { + "name": "godot_rid_operator_less", + "return_type": "godot_bool", + "arguments": [ + ["const godot_rid *", "p_self"], + ["const godot_rid *", "p_b"] + ] + }, + { + "name": "godot_char_string_length", "return_type": "godot_int", "arguments": [ - ["godot_array *", "p_self"], - ["const godot_variant *", "p_value"], - ["godot_object *", "p_obj"], - ["const godot_string *", "p_func"], - ["const godot_bool", "p_before"] + ["const godot_char_string *", "p_cs"] ] }, { - "name": "godot_array_destroy", + "name": "godot_char_string_get_data", + "return_type": "const char *", + "arguments": [ + ["const godot_char_string *", "p_cs"] + ] + }, + { + "name": "godot_char_string_destroy", "return_type": "void", "arguments": [ - ["godot_array *", "p_self"] + ["godot_char_string *", "p_cs"] ] }, { - "name": "godot_dictionary_new", + "name": "godot_string_new", "return_type": "void", "arguments": [ - ["godot_dictionary *", "r_dest"] + ["godot_string *", "r_dest"] ] }, { - "name": "godot_dictionary_new_copy", + "name": "godot_string_new_copy", "return_type": "void", "arguments": [ - ["godot_dictionary *", "r_dest"], - ["const godot_dictionary *", "p_src"] + ["godot_string *", "r_dest"], + ["const godot_string *", "p_src"] ] }, { - "name": "godot_dictionary_destroy", + "name": "godot_string_new_with_wide_string", "return_type": "void", "arguments": [ - ["godot_dictionary *", "p_self"] + ["godot_string *", "r_dest"], + ["const wchar_t *", "p_contents"], + ["const int", "p_size"] ] }, { - "name": "godot_dictionary_size", - "return_type": "godot_int", + "name": "godot_string_operator_index", + "return_type": "const wchar_t *", "arguments": [ - ["const godot_dictionary *", "p_self"] + ["godot_string *", "p_self"], + ["const godot_int", "p_idx"] ] }, { - "name": "godot_dictionary_empty", - "return_type": "godot_bool", + "name": "godot_string_operator_index_const", + "return_type": "wchar_t", "arguments": [ - ["const godot_dictionary *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_int", "p_idx"] ] }, { - "name": "godot_dictionary_clear", - "return_type": "void", + "name": "godot_string_wide_str", + "return_type": "const wchar_t *", "arguments": [ - ["godot_dictionary *", "p_self"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_dictionary_has", + "name": "godot_string_operator_equal", "return_type": "godot_bool", "arguments": [ - ["const godot_dictionary *", "p_self"], - ["const godot_variant *", "p_key"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_b"] ] }, { - "name": "godot_dictionary_has_all", + "name": "godot_string_operator_less", "return_type": "godot_bool", "arguments": [ - ["const godot_dictionary *", "p_self"], - ["const godot_array *", "p_keys"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_b"] ] }, { - "name": "godot_dictionary_erase", - "return_type": "void", + "name": "godot_string_operator_plus", + "return_type": "godot_string", "arguments": [ - ["godot_dictionary *", "p_self"], - ["const godot_variant *", "p_key"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_b"] ] }, { - "name": "godot_dictionary_hash", + "name": "godot_string_count", "return_type": "godot_int", "arguments": [ - ["const godot_dictionary *", "p_self"] + ["const godot_string *", "p_self"], + ["godot_string", "p_what"], + ["godot_int", "p_from"], + ["godot_int", "p_to"] ] }, { - "name": "godot_dictionary_keys", - "return_type": "godot_array", + "name": "godot_string_countn", + "return_type": "godot_int", "arguments": [ - ["const godot_dictionary *", "p_self"] + ["const godot_string *", "p_self"], + ["godot_string", "p_what"], + ["godot_int", "p_from"], + ["godot_int", "p_to"] ] }, { - "name": "godot_dictionary_values", - "return_type": "godot_array", + "name": "godot_string_dedent", + "return_type": "godot_string", "arguments": [ - ["const godot_dictionary *", "p_self"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_dictionary_get", - "return_type": "godot_variant", + "name": "godot_string_length", + "return_type": "godot_int", "arguments": [ - ["const godot_dictionary *", "p_self"], - ["const godot_variant *", "p_key"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_dictionary_set", - "return_type": "void", + "name": "godot_string_casecmp_to", + "return_type": "signed char", "arguments": [ - ["godot_dictionary *", "p_self"], - ["const godot_variant *", "p_key"], - ["const godot_variant *", "p_value"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_str"] ] }, { - "name": "godot_dictionary_operator_index", - "return_type": "godot_variant *", + "name": "godot_string_nocasecmp_to", + "return_type": "signed char", "arguments": [ - ["godot_dictionary *", "p_self"], - ["const godot_variant *", "p_key"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_str"] ] }, { - "name": "godot_dictionary_operator_index_const", - "return_type": "const godot_variant *", + "name": "godot_string_naturalnocasecmp_to", + "return_type": "signed char", "arguments": [ - ["const godot_dictionary *", "p_self"], - ["const godot_variant *", "p_key"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_str"] ] }, { - "name": "godot_dictionary_next", - "return_type": "godot_variant *", + "name": "godot_string_begins_with", + "return_type": "godot_bool", "arguments": [ - ["const godot_dictionary *", "p_self"], - ["const godot_variant *", "p_key"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_string"] ] }, { - "name": "godot_dictionary_operator_equal", + "name": "godot_string_begins_with_char_array", "return_type": "godot_bool", "arguments": [ - ["const godot_dictionary *", "p_self"], - ["const godot_dictionary *", "p_b"] + ["const godot_string *", "p_self"], + ["const char *", "p_char_array"] ] }, { - "name": "godot_dictionary_to_json", + "name": "godot_string_bigrams", + "return_type": "godot_array", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_chr", "return_type": "godot_string", "arguments": [ - ["const godot_dictionary *", "p_self"] + ["wchar_t", "p_character"] ] }, { - "name": "godot_node_path_new", - "return_type": "void", + "name": "godot_string_ends_with", + "return_type": "godot_bool", "arguments": [ - ["godot_node_path *", "r_dest"], - ["const godot_string *", "p_from"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_string"] ] }, { - "name": "godot_node_path_new_copy", - "return_type": "void", + "name": "godot_string_find", + "return_type": "godot_int", "arguments": [ - ["godot_node_path *", "r_dest"], - ["const godot_node_path *", "p_src"] + ["const godot_string *", "p_self"], + ["godot_string", "p_what"] ] }, { - "name": "godot_node_path_destroy", - "return_type": "void", + "name": "godot_string_find_from", + "return_type": "godot_int", "arguments": [ - ["godot_node_path *", "p_self"] + ["const godot_string *", "p_self"], + ["godot_string", "p_what"], + ["godot_int", "p_from"] ] }, { - "name": "godot_node_path_as_string", - "return_type": "godot_string", + "name": "godot_string_findmk", + "return_type": "godot_int", "arguments": [ - ["const godot_node_path *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_array *", "p_keys"] ] }, { - "name": "godot_node_path_is_absolute", - "return_type": "godot_bool", + "name": "godot_string_findmk_from", + "return_type": "godot_int", "arguments": [ - ["const godot_node_path *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_array *", "p_keys"], + ["godot_int", "p_from"] ] }, { - "name": "godot_node_path_get_name_count", + "name": "godot_string_findmk_from_in_place", "return_type": "godot_int", "arguments": [ - ["const godot_node_path *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_array *", "p_keys"], + ["godot_int", "p_from"], + ["godot_int *", "r_key"] ] }, { - "name": "godot_node_path_get_name", + "name": "godot_string_findn", + "return_type": "godot_int", + "arguments": [ + ["const godot_string *", "p_self"], + ["godot_string", "p_what"] + ] + }, + { + "name": "godot_string_findn_from", + "return_type": "godot_int", + "arguments": [ + ["const godot_string *", "p_self"], + ["godot_string", "p_what"], + ["godot_int", "p_from"] + ] + }, + { + "name": "godot_string_find_last", + "return_type": "godot_int", + "arguments": [ + ["const godot_string *", "p_self"], + ["godot_string", "p_what"] + ] + }, + { + "name": "godot_string_format", "return_type": "godot_string", "arguments": [ - ["const godot_node_path *", "p_self"], - ["const godot_int", "p_idx"] + ["const godot_string *", "p_self"], + ["const godot_variant *", "p_values"] ] }, { - "name": "godot_node_path_get_subname_count", + "name": "godot_string_format_with_custom_placeholder", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"], + ["const godot_variant *", "p_values"], + ["const char *", "p_placeholder"] + ] + }, + { + "name": "godot_string_hex_encode_buffer", + "return_type": "godot_string", + "arguments": [ + ["const uint8_t *", "p_buffer"], + ["godot_int", "p_len"] + ] + }, + { + "name": "godot_string_hex_to_int", "return_type": "godot_int", "arguments": [ - ["const godot_node_path *", "p_self"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_node_path_get_subname", + "name": "godot_string_hex_to_int_without_prefix", + "return_type": "godot_int", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_insert", "return_type": "godot_string", "arguments": [ - ["const godot_node_path *", "p_self"], - ["const godot_int", "p_idx"] + ["const godot_string *", "p_self"], + ["godot_int", "p_at_pos"], + ["godot_string", "p_string"] ] }, { - "name": "godot_node_path_get_concatenated_subnames", + "name": "godot_string_is_numeric", + "return_type": "godot_bool", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_is_subsequence_of", + "return_type": "godot_bool", + "arguments": [ + ["const godot_string *", "p_self"], + ["const godot_string *", "p_string"] + ] + }, + { + "name": "godot_string_is_subsequence_ofi", + "return_type": "godot_bool", + "arguments": [ + ["const godot_string *", "p_self"], + ["const godot_string *", "p_string"] + ] + }, + { + "name": "godot_string_lpad", "return_type": "godot_string", "arguments": [ - ["const godot_node_path *", "p_self"] + ["const godot_string *", "p_self"], + ["godot_int", "p_min_length"] ] }, { - "name": "godot_node_path_is_empty", + "name": "godot_string_lpad_with_custom_character", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"], + ["godot_int", "p_min_length"], + ["const godot_string *", "p_character"] + ] + }, + { + "name": "godot_string_match", "return_type": "godot_bool", "arguments": [ - ["const godot_node_path *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_wildcard"] ] }, { - "name": "godot_node_path_operator_equal", + "name": "godot_string_matchn", "return_type": "godot_bool", "arguments": [ - ["const godot_node_path *", "p_self"], - ["const godot_node_path *", "p_b"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_wildcard"] ] }, { - "name": "godot_plane_new_with_reals", - "return_type": "void", + "name": "godot_string_md5", + "return_type": "godot_string", "arguments": [ - ["godot_plane *", "r_dest"], - ["const godot_real", "p_a"], - ["const godot_real", "p_b"], - ["const godot_real", "p_c"], - ["const godot_real", "p_d"] + ["const uint8_t *", "p_md5"] ] }, { - "name": "godot_plane_new_with_vectors", - "return_type": "void", + "name": "godot_string_num", + "return_type": "godot_string", "arguments": [ - ["godot_plane *", "r_dest"], - ["const godot_vector3 *", "p_v1"], - ["const godot_vector3 *", "p_v2"], - ["const godot_vector3 *", "p_v3"] + ["double", "p_num"] ] }, { - "name": "godot_plane_new_with_normal", - "return_type": "void", + "name": "godot_string_num_int64", + "return_type": "godot_string", "arguments": [ - ["godot_plane *", "r_dest"], - ["const godot_vector3 *", "p_normal"], - ["const godot_real", "p_d"] + ["int64_t", "p_num"], + ["godot_int", "p_base"] ] }, { - "name": "godot_plane_as_string", + "name": "godot_string_num_int64_capitalized", "return_type": "godot_string", "arguments": [ - ["const godot_plane *", "p_self"] + ["int64_t", "p_num"], + ["godot_int", "p_base"], + ["godot_bool", "p_capitalize_hex"] ] }, { - "name": "godot_plane_normalized", - "return_type": "godot_plane", + "name": "godot_string_num_real", + "return_type": "godot_string", "arguments": [ - ["const godot_plane *", "p_self"] + ["double", "p_num"] ] }, { - "name": "godot_plane_center", - "return_type": "godot_vector3", + "name": "godot_string_num_scientific", + "return_type": "godot_string", "arguments": [ - ["const godot_plane *", "p_self"] + ["double", "p_num"] ] }, { - "name": "godot_plane_get_any_point", - "return_type": "godot_vector3", + "name": "godot_string_num_with_decimals", + "return_type": "godot_string", "arguments": [ - ["const godot_plane *", "p_self"] + ["double", "p_num"], + ["godot_int", "p_decimals"] ] }, { - "name": "godot_plane_is_point_over", - "return_type": "godot_bool", + "name": "godot_string_pad_decimals", + "return_type": "godot_string", "arguments": [ - ["const godot_plane *", "p_self"], - ["const godot_vector3 *", "p_point"] + ["const godot_string *", "p_self"], + ["godot_int", "p_digits"] ] }, { - "name": "godot_plane_distance_to", - "return_type": "godot_real", + "name": "godot_string_pad_zeros", + "return_type": "godot_string", "arguments": [ - ["const godot_plane *", "p_self"], - ["const godot_vector3 *", "p_point"] + ["const godot_string *", "p_self"], + ["godot_int", "p_digits"] ] }, { - "name": "godot_plane_has_point", - "return_type": "godot_bool", + "name": "godot_string_replace_first", + "return_type": "godot_string", "arguments": [ - ["const godot_plane *", "p_self"], - ["const godot_vector3 *", "p_point"], - ["const godot_real", "p_epsilon"] + ["const godot_string *", "p_self"], + ["godot_string", "p_key"], + ["godot_string", "p_with"] ] }, { - "name": "godot_plane_project", - "return_type": "godot_vector3", + "name": "godot_string_replace", + "return_type": "godot_string", "arguments": [ - ["const godot_plane *", "p_self"], - ["const godot_vector3 *", "p_point"] + ["const godot_string *", "p_self"], + ["godot_string", "p_key"], + ["godot_string", "p_with"] ] }, { - "name": "godot_plane_intersect_3", - "return_type": "godot_bool", + "name": "godot_string_replacen", + "return_type": "godot_string", "arguments": [ - ["const godot_plane *", "p_self"], - ["godot_vector3 *", "r_dest"], - ["const godot_plane *", "p_b"], - ["const godot_plane *", "p_c"] + ["const godot_string *", "p_self"], + ["godot_string", "p_key"], + ["godot_string", "p_with"] ] }, { - "name": "godot_plane_intersects_ray", - "return_type": "godot_bool", + "name": "godot_string_rfind", + "return_type": "godot_int", "arguments": [ - ["const godot_plane *", "p_self"], - ["godot_vector3 *", "r_dest"], - ["const godot_vector3 *", "p_from"], - ["const godot_vector3 *", "p_dir"] + ["const godot_string *", "p_self"], + ["godot_string", "p_what"] ] }, { - "name": "godot_plane_intersects_segment", - "return_type": "godot_bool", + "name": "godot_string_rfindn", + "return_type": "godot_int", "arguments": [ - ["const godot_plane *", "p_self"], - ["godot_vector3 *", "r_dest"], - ["const godot_vector3 *", "p_begin"], - ["const godot_vector3 *", "p_end"] + ["const godot_string *", "p_self"], + ["godot_string", "p_what"] ] }, { - "name": "godot_plane_operator_neg", - "return_type": "godot_plane", + "name": "godot_string_rfind_from", + "return_type": "godot_int", "arguments": [ - ["const godot_plane *", "p_self"] + ["const godot_string *", "p_self"], + ["godot_string", "p_what"], + ["godot_int", "p_from"] ] }, { - "name": "godot_plane_operator_equal", - "return_type": "godot_bool", + "name": "godot_string_rfindn_from", + "return_type": "godot_int", "arguments": [ - ["const godot_plane *", "p_self"], - ["const godot_plane *", "p_b"] + ["const godot_string *", "p_self"], + ["godot_string", "p_what"], + ["godot_int", "p_from"] ] }, { - "name": "godot_plane_set_normal", - "return_type": "void", + "name": "godot_string_rpad", + "return_type": "godot_string", "arguments": [ - ["godot_plane *", "p_self"], - ["const godot_vector3 *", "p_normal"] + ["const godot_string *", "p_self"], + ["godot_int", "p_min_length"] ] }, { - "name": "godot_plane_get_normal", - "return_type": "godot_vector3", + "name": "godot_string_rpad_with_custom_character", + "return_type": "godot_string", "arguments": [ - ["const godot_plane *", "p_self"] + ["const godot_string *", "p_self"], + ["godot_int", "p_min_length"], + ["const godot_string *", "p_character"] ] }, { - "name": "godot_plane_get_d", + "name": "godot_string_similarity", "return_type": "godot_real", "arguments": [ - ["const godot_plane *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_string"] ] }, { - "name": "godot_plane_set_d", - "return_type": "void", + "name": "godot_string_sprintf", + "return_type": "godot_string", "arguments": [ - ["godot_plane *", "p_self"], - ["const godot_real", "p_d"] + ["const godot_string *", "p_self"], + ["const godot_array *", "p_values"], + ["godot_bool *", "p_error"] ] }, { - "name": "godot_rect2_new_with_position_and_size", - "return_type": "void", + "name": "godot_string_substr", + "return_type": "godot_string", "arguments": [ - ["godot_rect2 *", "r_dest"], - ["const godot_vector2 *", "p_pos"], - ["const godot_vector2 *", "p_size"] + ["const godot_string *", "p_self"], + ["godot_int", "p_from"], + ["godot_int", "p_chars"] ] }, { - "name": "godot_rect2_new", - "return_type": "void", + "name": "godot_string_to_double", + "return_type": "double", "arguments": [ - ["godot_rect2 *", "r_dest"], - ["const godot_real", "p_x"], - ["const godot_real", "p_y"], - ["const godot_real", "p_width"], - ["const godot_real", "p_height"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_rect2_as_string", + "name": "godot_string_to_float", + "return_type": "godot_real", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_to_int", + "return_type": "godot_int", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_camelcase_to_underscore", "return_type": "godot_string", "arguments": [ - ["const godot_rect2 *", "p_self"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_rect2_get_area", - "return_type": "godot_real", + "name": "godot_string_camelcase_to_underscore_lowercased", + "return_type": "godot_string", "arguments": [ - ["const godot_rect2 *", "p_self"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_rect2_intersects", - "return_type": "godot_bool", + "name": "godot_string_capitalize", + "return_type": "godot_string", "arguments": [ - ["const godot_rect2 *", "p_self"], - ["const godot_rect2 *", "p_b"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_rect2_encloses", - "return_type": "godot_bool", + "name": "godot_string_char_to_double", + "return_type": "double", "arguments": [ - ["const godot_rect2 *", "p_self"], - ["const godot_rect2 *", "p_b"] + ["const char *", "p_what"] ] }, { - "name": "godot_rect2_has_no_area", - "return_type": "godot_bool", + "name": "godot_string_char_to_int", + "return_type": "godot_int", "arguments": [ - ["const godot_rect2 *", "p_self"] + ["const char *", "p_what"] ] }, { - "name": "godot_rect2_clip", - "return_type": "godot_rect2", + "name": "godot_string_wchar_to_int", + "return_type": "int64_t", "arguments": [ - ["const godot_rect2 *", "p_self"], - ["const godot_rect2 *", "p_b"] + ["const wchar_t *", "p_str"] ] }, { - "name": "godot_rect2_merge", - "return_type": "godot_rect2", + "name": "godot_string_char_to_int_with_len", + "return_type": "godot_int", "arguments": [ - ["const godot_rect2 *", "p_self"], - ["const godot_rect2 *", "p_b"] + ["const char *", "p_what"], + ["godot_int", "p_len"] ] }, { - "name": "godot_rect2_has_point", - "return_type": "godot_bool", + "name": "godot_string_char_to_int64_with_len", + "return_type": "int64_t", "arguments": [ - ["const godot_rect2 *", "p_self"], - ["const godot_vector2 *", "p_point"] + ["const wchar_t *", "p_str"], + ["int", "p_len"] ] }, { - "name": "godot_rect2_grow", - "return_type": "godot_rect2", + "name": "godot_string_hex_to_int64", + "return_type": "int64_t", "arguments": [ - ["const godot_rect2 *", "p_self"], - ["const godot_real", "p_by"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_rect2_expand", - "return_type": "godot_rect2", + "name": "godot_string_hex_to_int64_with_prefix", + "return_type": "int64_t", "arguments": [ - ["const godot_rect2 *", "p_self"], - ["const godot_vector2 *", "p_to"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_rect2_operator_equal", - "return_type": "godot_bool", + "name": "godot_string_to_int64", + "return_type": "int64_t", "arguments": [ - ["const godot_rect2 *", "p_self"], - ["const godot_rect2 *", "p_b"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_rect2_get_position", - "return_type": "godot_vector2", + "name": "godot_string_unicode_char_to_double", + "return_type": "double", "arguments": [ - ["const godot_rect2 *", "p_self"] + ["const wchar_t *", "p_str"], + ["const wchar_t **", "r_end"] ] }, { - "name": "godot_rect2_get_size", - "return_type": "godot_vector2", + "name": "godot_string_get_slice_count", + "return_type": "godot_int", "arguments": [ - ["const godot_rect2 *", "p_self"] + ["const godot_string *", "p_self"], + ["godot_string", "p_splitter"] ] }, { - "name": "godot_rect2_set_position", - "return_type": "void", + "name": "godot_string_get_slice", + "return_type": "godot_string", "arguments": [ - ["godot_rect2 *", "p_self"], - ["const godot_vector2 *", "p_pos"] + ["const godot_string *", "p_self"], + ["godot_string", "p_splitter"], + ["godot_int", "p_slice"] ] }, { - "name": "godot_rect2_set_size", - "return_type": "void", + "name": "godot_string_get_slicec", + "return_type": "godot_string", "arguments": [ - ["godot_rect2 *", "p_self"], - ["const godot_vector2 *", "p_size"] + ["const godot_string *", "p_self"], + ["wchar_t", "p_splitter"], + ["godot_int", "p_slice"] ] }, { - "name": "godot_aabb_new", - "return_type": "void", + "name": "godot_string_split", + "return_type": "godot_array", "arguments": [ - ["godot_aabb *", "r_dest"], - ["const godot_vector3 *", "p_pos"], - ["const godot_vector3 *", "p_size"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_splitter"] ] }, { - "name": "godot_aabb_get_position", - "return_type": "godot_vector3", + "name": "godot_string_split_allow_empty", + "return_type": "godot_array", "arguments": [ - ["const godot_aabb *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_splitter"] ] }, { - "name": "godot_aabb_set_position", - "return_type": "void", + "name": "godot_string_split_floats", + "return_type": "godot_array", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_vector3 *", "p_v"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_splitter"] ] }, { - "name": "godot_aabb_get_size", - "return_type": "godot_vector3", + "name": "godot_string_split_floats_allows_empty", + "return_type": "godot_array", "arguments": [ - ["const godot_aabb *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_splitter"] ] }, { - "name": "godot_aabb_set_size", - "return_type": "void", + "name": "godot_string_split_floats_mk", + "return_type": "godot_array", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_vector3 *", "p_v"] + ["const godot_string *", "p_self"], + ["const godot_array *", "p_splitters"] ] }, { - "name": "godot_aabb_as_string", + "name": "godot_string_split_floats_mk_allows_empty", + "return_type": "godot_array", + "arguments": [ + ["const godot_string *", "p_self"], + ["const godot_array *", "p_splitters"] + ] + }, + { + "name": "godot_string_split_ints", + "return_type": "godot_array", + "arguments": [ + ["const godot_string *", "p_self"], + ["const godot_string *", "p_splitter"] + ] + }, + { + "name": "godot_string_split_ints_allows_empty", + "return_type": "godot_array", + "arguments": [ + ["const godot_string *", "p_self"], + ["const godot_string *", "p_splitter"] + ] + }, + { + "name": "godot_string_split_ints_mk", + "return_type": "godot_array", + "arguments": [ + ["const godot_string *", "p_self"], + ["const godot_array *", "p_splitters"] + ] + }, + { + "name": "godot_string_split_ints_mk_allows_empty", + "return_type": "godot_array", + "arguments": [ + ["const godot_string *", "p_self"], + ["const godot_array *", "p_splitters"] + ] + }, + { + "name": "godot_string_split_spaces", + "return_type": "godot_array", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_rstrip", "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_chars"] ] }, { - "name": "godot_aabb_get_area", - "return_type": "godot_real", + "name": "godot_string_rsplit", + "return_type": "godot_packed_string_array", "arguments": [ - ["const godot_aabb *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_divisor"], + ["const godot_bool", "p_allow_empty"], + ["const godot_int", "p_maxsplit"] ] }, { - "name": "godot_aabb_has_no_area", - "return_type": "godot_bool", + "name": "godot_string_trim_prefix", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_prefix"] ] }, { - "name": "godot_aabb_has_no_surface", + "name": "godot_string_trim_suffix", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"], + ["const godot_string *", "p_suffix"] + ] + }, + { + "name": "godot_string_char_lowercase", + "return_type": "wchar_t", + "arguments": [ + ["wchar_t", "p_char"] + ] + }, + { + "name": "godot_string_char_uppercase", + "return_type": "wchar_t", + "arguments": [ + ["wchar_t", "p_char"] + ] + }, + { + "name": "godot_string_to_lower", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_to_upper", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_get_basename", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_get_extension", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_left", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"], + ["godot_int", "p_pos"] + ] + }, + { + "name": "godot_string_ord_at", + "return_type": "wchar_t", + "arguments": [ + ["const godot_string *", "p_self"], + ["godot_int", "p_idx"] + ] + }, + { + "name": "godot_string_plus_file", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"], + ["const godot_string *", "p_file"] + ] + }, + { + "name": "godot_string_right", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"], + ["godot_int", "p_pos"] + ] + }, + { + "name": "godot_string_strip_edges", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"], + ["godot_bool", "p_left"], + ["godot_bool", "p_right"] + ] + }, + { + "name": "godot_string_strip_escapes", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_erase", + "return_type": "void", + "arguments": [ + ["godot_string *", "p_self"], + ["godot_int", "p_pos"], + ["godot_int", "p_chars"] + ] + }, + { + "name": "godot_string_ascii", + "return_type": "godot_char_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_ascii_extended", + "return_type": "godot_char_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_utf8", + "return_type": "godot_char_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_parse_utf8", "return_type": "godot_bool", "arguments": [ - ["const godot_aabb *", "p_self"] + ["godot_string *", "p_self"], + ["const char *", "p_utf8"] ] }, { - "name": "godot_aabb_intersects", + "name": "godot_string_parse_utf8_with_len", "return_type": "godot_bool", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_aabb *", "p_with"] + ["godot_string *", "p_self"], + ["const char *", "p_utf8"], + ["godot_int", "p_len"] ] }, { - "name": "godot_aabb_encloses", + "name": "godot_string_chars_to_utf8", + "return_type": "godot_string", + "arguments": [ + ["const char *", "p_utf8"] + ] + }, + { + "name": "godot_string_chars_to_utf8_with_len", + "return_type": "godot_string", + "arguments": [ + ["const char *", "p_utf8"], + ["godot_int", "p_len"] + ] + }, + { + "name": "godot_string_hash", + "return_type": "uint32_t", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_hash64", + "return_type": "uint64_t", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_hash_chars", + "return_type": "uint32_t", + "arguments": [ + ["const char *", "p_cstr"] + ] + }, + { + "name": "godot_string_hash_chars_with_len", + "return_type": "uint32_t", + "arguments": [ + ["const char *", "p_cstr"], + ["godot_int", "p_len"] + ] + }, + { + "name": "godot_string_hash_utf8_chars", + "return_type": "uint32_t", + "arguments": [ + ["const wchar_t *", "p_str"] + ] + }, + { + "name": "godot_string_hash_utf8_chars_with_len", + "return_type": "uint32_t", + "arguments": [ + ["const wchar_t *", "p_str"], + ["godot_int", "p_len"] + ] + }, + { + "name": "godot_string_md5_buffer", + "return_type": "godot_packed_byte_array", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_md5_text", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_sha256_buffer", + "return_type": "godot_packed_byte_array", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_sha256_text", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_empty", "return_type": "godot_bool", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_aabb *", "p_with"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_merge", - "return_type": "godot_aabb", + "name": "godot_string_get_base_dir", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_aabb *", "p_with"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_intersection", - "return_type": "godot_aabb", + "name": "godot_string_get_file", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_aabb *", "p_with"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_intersects_plane", + "name": "godot_string_humanize_size", + "return_type": "godot_string", + "arguments": [ + ["size_t", "p_size"] + ] + }, + { + "name": "godot_string_is_abs_path", "return_type": "godot_bool", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_plane *", "p_plane"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_intersects_segment", + "name": "godot_string_is_rel_path", "return_type": "godot_bool", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_vector3 *", "p_from"], - ["const godot_vector3 *", "p_to"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_has_point", + "name": "godot_string_is_resource_file", "return_type": "godot_bool", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_vector3 *", "p_point"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_get_support", - "return_type": "godot_vector3", + "name": "godot_string_path_to", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_vector3 *", "p_dir"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_path"] ] }, { - "name": "godot_aabb_get_longest_axis", - "return_type": "godot_vector3", + "name": "godot_string_path_to_file", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"] + ["const godot_string *", "p_self"], + ["const godot_string *", "p_path"] ] }, { - "name": "godot_aabb_get_longest_axis_index", - "return_type": "godot_int", + "name": "godot_string_simplify_path", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_get_longest_axis_size", - "return_type": "godot_real", + "name": "godot_string_c_escape", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_get_shortest_axis", - "return_type": "godot_vector3", + "name": "godot_string_c_escape_multiline", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_get_shortest_axis_index", - "return_type": "godot_int", + "name": "godot_string_c_unescape", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_get_shortest_axis_size", - "return_type": "godot_real", + "name": "godot_string_http_escape", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_expand", - "return_type": "godot_aabb", + "name": "godot_string_http_unescape", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_vector3 *", "p_to_point"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_grow", - "return_type": "godot_aabb", + "name": "godot_string_json_escape", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_real", "p_by"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_aabb_get_endpoint", - "return_type": "godot_vector3", + "name": "godot_string_word_wrap", + "return_type": "godot_string", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_int", "p_idx"] + ["const godot_string *", "p_self"], + ["godot_int", "p_chars_per_line"] ] }, { - "name": "godot_aabb_operator_equal", + "name": "godot_string_xml_escape", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_xml_escape_with_quotes", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_xml_unescape", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_percent_decode", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_percent_encode", + "return_type": "godot_string", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_is_valid_float", "return_type": "godot_bool", "arguments": [ - ["const godot_aabb *", "p_self"], - ["const godot_aabb *", "p_b"] + ["const godot_string *", "p_self"] ] }, { - "name": "godot_rid_new", + "name": "godot_string_is_valid_hex_number", + "return_type": "godot_bool", + "arguments": [ + ["const godot_string *", "p_self"], + ["godot_bool", "p_with_prefix"] + ] + }, + { + "name": "godot_string_is_valid_html_color", + "return_type": "godot_bool", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_is_valid_identifier", + "return_type": "godot_bool", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_is_valid_integer", + "return_type": "godot_bool", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_is_valid_ip_address", + "return_type": "godot_bool", + "arguments": [ + ["const godot_string *", "p_self"] + ] + }, + { + "name": "godot_string_destroy", "return_type": "void", "arguments": [ - ["godot_rid *", "r_dest"] + ["godot_string *", "p_self"] ] }, { - "name": "godot_rid_get_id", - "return_type": "godot_int", + "name": "godot_string_name_new", + "return_type": "void", "arguments": [ - ["const godot_rid *", "p_self"] + ["godot_string_name *", "r_dest"], + ["const godot_string *", "p_name"] ] }, { - "name": "godot_rid_new_with_resource", + "name": "godot_string_name_new_data", "return_type": "void", "arguments": [ - ["godot_rid *", "r_dest"], - ["const godot_object *", "p_from"] + ["godot_string_name *", "r_dest"], + ["const char *", "p_name"] ] }, { - "name": "godot_rid_operator_equal", + "name": "godot_string_name_get_name", + "return_type": "godot_string", + "arguments": [ + ["const godot_string_name *", "p_self"] + ] + }, + { + "name": "godot_string_name_get_hash", + "return_type": "uint32_t", + "arguments": [ + ["const godot_string_name *", "p_self"] + ] + }, + { + "name": "godot_string_name_get_data_unique_pointer", + "return_type": "const void *", + "arguments": [ + ["const godot_string_name *", "p_self"] + ] + }, + { + "name": "godot_string_name_operator_equal", "return_type": "godot_bool", "arguments": [ - ["const godot_rid *", "p_self"], - ["const godot_rid *", "p_b"] + ["const godot_string_name *", "p_self"], + ["const godot_string_name *", "p_other"] ] }, { - "name": "godot_rid_operator_less", + "name": "godot_string_name_operator_less", "return_type": "godot_bool", "arguments": [ - ["const godot_rid *", "p_self"], - ["const godot_rid *", "p_b"] + ["const godot_string_name *", "p_self"], + ["const godot_string_name *", "p_other"] + ] + }, + { + "name": "godot_string_name_destroy", + "return_type": "void", + "arguments": [ + ["godot_string_name *", "p_self"] ] }, { @@ -4769,6 +4867,14 @@ ] }, { + "name": "godot_transform_new_with_quat", + "return_type": "void", + "arguments": [ + ["godot_transform *", "r_dest"], + ["const godot_quat *", "p_quat"] + ] + }, + { "name": "godot_transform_new", "return_type": "void", "arguments": [ @@ -5175,6 +5281,14 @@ ] }, { + "name": "godot_variant_new_string_name", + "return_type": "void", + "arguments": [ + ["godot_variant *", "r_dest"], + ["const godot_string_name *", "p_s"] + ] + }, + { "name": "godot_variant_new_vector2", "return_type": "void", "arguments": [ @@ -5183,6 +5297,14 @@ ] }, { + "name": "godot_variant_new_vector2i", + "return_type": "void", + "arguments": [ + ["godot_variant *", "r_dest"], + ["const godot_vector2i *", "p_v2"] + ] + }, + { "name": "godot_variant_new_rect2", "return_type": "void", "arguments": [ @@ -5191,6 +5313,14 @@ ] }, { + "name": "godot_variant_new_rect2i", + "return_type": "void", + "arguments": [ + ["godot_variant *", "r_dest"], + ["const godot_rect2i *", "p_rect2"] + ] + }, + { "name": "godot_variant_new_vector3", "return_type": "void", "arguments": [ @@ -5199,6 +5329,14 @@ ] }, { + "name": "godot_variant_new_vector3i", + "return_type": "void", + "arguments": [ + ["godot_variant *", "r_dest"], + ["const godot_vector3i *", "p_v3"] + ] + }, + { "name": "godot_variant_new_transform2d", "return_type": "void", "arguments": [ @@ -5279,6 +5417,22 @@ ] }, { + "name": "godot_variant_new_callable", + "return_type": "void", + "arguments": [ + ["godot_variant *", "r_dest"], + ["const godot_callable *", "p_cb"] + ] + }, + { + "name": "godot_variant_new_signal", + "return_type": "void", + "arguments": [ + ["godot_variant *", "r_dest"], + ["const godot_signal *", "p_signal"] + ] + }, + { "name": "godot_variant_new_dictionary", "return_type": "void", "arguments": [ @@ -5311,6 +5465,14 @@ ] }, { + "name": "godot_variant_new_packed_int64_array", + "return_type": "void", + "arguments": [ + ["godot_variant *", "r_dest"], + ["const godot_packed_int64_array *", "p_pia"] + ] + }, + { "name": "godot_variant_new_packed_float32_array", "return_type": "void", "arguments": [ @@ -5319,6 +5481,14 @@ ] }, { + "name": "godot_variant_new_packed_float64_array", + "return_type": "void", + "arguments": [ + ["godot_variant *", "r_dest"], + ["const godot_packed_float64_array *", "p_pra"] + ] + }, + { "name": "godot_variant_new_packed_string_array", "return_type": "void", "arguments": [ @@ -5386,6 +5556,13 @@ ] }, { + "name": "godot_variant_as_string_name", + "return_type": "godot_string_name", + "arguments": [ + ["const godot_variant *", "p_self"] + ] + }, + { "name": "godot_variant_as_vector2", "return_type": "godot_vector2", "arguments": [ @@ -5393,6 +5570,13 @@ ] }, { + "name": "godot_variant_as_vector2i", + "return_type": "godot_vector2i", + "arguments": [ + ["const godot_variant *", "p_self"] + ] + }, + { "name": "godot_variant_as_rect2", "return_type": "godot_rect2", "arguments": [ @@ -5400,6 +5584,13 @@ ] }, { + "name": "godot_variant_as_rect2i", + "return_type": "godot_rect2i", + "arguments": [ + ["const godot_variant *", "p_self"] + ] + }, + { "name": "godot_variant_as_vector3", "return_type": "godot_vector3", "arguments": [ @@ -5407,6 +5598,13 @@ ] }, { + "name": "godot_variant_as_vector3i", + "return_type": "godot_vector3i", + "arguments": [ + ["const godot_variant *", "p_self"] + ] + }, + { "name": "godot_variant_as_transform2d", "return_type": "godot_transform2d", "arguments": [ @@ -5477,6 +5675,20 @@ ] }, { + "name": "godot_variant_as_callable", + "return_type": "godot_callable", + "arguments": [ + ["const godot_variant *", "p_self"] + ] + }, + { + "name": "godot_variant_as_signal", + "return_type": "godot_signal", + "arguments": [ + ["const godot_variant *", "p_self"] + ] + }, + { "name": "godot_variant_as_dictionary", "return_type": "godot_dictionary", "arguments": [ @@ -5505,6 +5717,13 @@ ] }, { + "name": "godot_variant_as_packed_int64_array", + "return_type": "godot_packed_int64_array", + "arguments": [ + ["const godot_variant *", "p_self"] + ] + }, + { "name": "godot_variant_as_packed_float32_array", "return_type": "godot_packed_float32_array", "arguments": [ @@ -5512,6 +5731,13 @@ ] }, { + "name": "godot_variant_as_packed_float64_array", + "return_type": "godot_packed_float64_array", + "arguments": [ + ["const godot_variant *", "p_self"] + ] + }, + { "name": "godot_variant_as_packed_string_array", "return_type": "godot_packed_string_array", "arguments": [ @@ -5559,15 +5785,14 @@ ] }, { - "name": "godot_variant_operator_equal", - "return_type": "godot_bool", + "name": "godot_variant_hash", + "return_type": "uint32_t", "arguments": [ - ["const godot_variant *", "p_self"], - ["const godot_variant *", "p_other"] + ["const godot_variant *", "p_self"] ] }, { - "name": "godot_variant_operator_less", + "name": "godot_variant_operator_equal", "return_type": "godot_bool", "arguments": [ ["const godot_variant *", "p_self"], @@ -5575,7 +5800,7 @@ ] }, { - "name": "godot_variant_hash_compare", + "name": "godot_variant_operator_less", "return_type": "godot_bool", "arguments": [ ["const godot_variant *", "p_self"], @@ -5583,1236 +5808,1005 @@ ] }, { - "name": "godot_variant_booleanize", - "return_type": "godot_bool", - "arguments": [ - ["const godot_variant *", "p_self"] - ] - }, - { - "name": "godot_variant_destroy", - "return_type": "void", - "arguments": [ - ["godot_variant *", "p_self"] - ] - }, - { - "name": "godot_char_string_length", - "return_type": "godot_int", - "arguments": [ - ["const godot_char_string *", "p_cs"] - ] - }, - { - "name": "godot_char_string_get_data", - "return_type": "const char *", + "name": "godot_variant_get_operator_name", + "return_type": "godot_string", "arguments": [ - ["const godot_char_string *", "p_cs"] + ["godot_variant_operator", "p_op"] ] }, { - "name": "godot_char_string_destroy", + "name": "godot_variant_evaluate", "return_type": "void", "arguments": [ - ["godot_char_string *", "p_cs"] + ["godot_variant_operator", "p_op"], + ["const godot_variant *", "p_a"], + ["const godot_variant *", "p_b"], + ["godot_variant *", "r_ret"], + ["godot_bool *", "r_valid"] ] }, { - "name": "godot_string_new", - "return_type": "void", + "name": "godot_variant_hash_compare", + "return_type": "godot_bool", "arguments": [ - ["godot_string *", "r_dest"] + ["const godot_variant *", "p_self"], + ["const godot_variant *", "p_other"] ] }, { - "name": "godot_string_new_copy", - "return_type": "void", + "name": "godot_variant_booleanize", + "return_type": "godot_bool", "arguments": [ - ["godot_string *", "r_dest"], - ["const godot_string *", "p_src"] + ["const godot_variant *", "p_self"] ] }, { - "name": "godot_string_new_with_wide_string", + "name": "godot_variant_destroy", "return_type": "void", "arguments": [ - ["godot_string *", "r_dest"], - ["const wchar_t *", "p_contents"], - ["const int", "p_size"] + ["godot_variant *", "p_self"] ] }, { - "name": "godot_string_operator_index", - "return_type": "const wchar_t *", + "name": "godot_vector2_as_vector2i", + "return_type": "godot_vector2i", "arguments": [ - ["godot_string *", "p_self"], - ["const godot_int", "p_idx"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_operator_index_const", - "return_type": "wchar_t", + "name": "godot_vector2_sign", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_int", "p_idx"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_wide_str", - "return_type": "const wchar_t *", + "name": "godot_vector2_move_toward", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_to"], + ["const godot_real", "p_delta"] ] }, { - "name": "godot_string_operator_equal", - "return_type": "godot_bool", + "name": "godot_vector2_direction_to", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_b"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_to"] ] }, { - "name": "godot_string_operator_less", - "return_type": "godot_bool", + "name": "godot_vector2_new", + "return_type": "void", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_b"] + ["godot_vector2 *", "r_dest"], + ["const godot_real", "p_x"], + ["const godot_real", "p_y"] ] }, { - "name": "godot_string_operator_plus", + "name": "godot_vector2_as_string", "return_type": "godot_string", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_b"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_length", - "return_type": "godot_int", + "name": "godot_vector2_normalized", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_casecmp_to", - "return_type": "signed char", + "name": "godot_vector2_length", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_str"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_nocasecmp_to", - "return_type": "signed char", + "name": "godot_vector2_angle", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_str"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_naturalnocasecmp_to", - "return_type": "signed char", + "name": "godot_vector2_length_squared", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_str"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_begins_with", + "name": "godot_vector2_is_normalized", "return_type": "godot_bool", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_string"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_begins_with_char_array", - "return_type": "godot_bool", + "name": "godot_vector2_distance_to", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"], - ["const char *", "p_char_array"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_to"] ] }, { - "name": "godot_string_bigrams", - "return_type": "godot_array", + "name": "godot_vector2_distance_squared_to", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_to"] ] }, { - "name": "godot_string_chr", - "return_type": "godot_string", + "name": "godot_vector2_angle_to", + "return_type": "godot_real", "arguments": [ - ["wchar_t", "p_character"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_to"] ] }, { - "name": "godot_string_ends_with", - "return_type": "godot_bool", + "name": "godot_vector2_angle_to_point", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_string"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_to"] ] }, { - "name": "godot_string_find", - "return_type": "godot_int", + "name": "godot_vector2_lerp", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_what"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_b"], + ["const godot_real", "p_t"] ] }, { - "name": "godot_string_find_from", - "return_type": "godot_int", + "name": "godot_vector2_cubic_interpolate", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_what"], - ["godot_int", "p_from"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_b"], + ["const godot_vector2 *", "p_pre_a"], + ["const godot_vector2 *", "p_post_b"], + ["const godot_real", "p_t"] ] }, { - "name": "godot_string_findmk", - "return_type": "godot_int", + "name": "godot_vector2_rotated", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_array *", "p_keys"] + ["const godot_vector2 *", "p_self"], + ["const godot_real", "p_phi"] ] }, { - "name": "godot_string_findmk_from", - "return_type": "godot_int", + "name": "godot_vector2_tangent", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_array *", "p_keys"], - ["godot_int", "p_from"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_findmk_from_in_place", - "return_type": "godot_int", + "name": "godot_vector2_floor", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_array *", "p_keys"], - ["godot_int", "p_from"], - ["godot_int *", "r_key"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_findn", - "return_type": "godot_int", + "name": "godot_vector2_snapped", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_what"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_by"] ] }, { - "name": "godot_string_findn_from", - "return_type": "godot_int", + "name": "godot_vector2_aspect", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_what"], - ["godot_int", "p_from"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_find_last", - "return_type": "godot_int", + "name": "godot_vector2_dot", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_what"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_with"] ] }, { - "name": "godot_string_format", - "return_type": "godot_string", + "name": "godot_vector2_slide", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_variant *", "p_values"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_n"] ] }, { - "name": "godot_string_format_with_custom_placeholder", - "return_type": "godot_string", + "name": "godot_vector2_bounce", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_variant *", "p_values"], - ["const char *", "p_placeholder"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_n"] ] }, { - "name": "godot_string_hex_encode_buffer", - "return_type": "godot_string", + "name": "godot_vector2_reflect", + "return_type": "godot_vector2", "arguments": [ - ["const uint8_t *", "p_buffer"], - ["godot_int", "p_len"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_n"] ] }, { - "name": "godot_string_hex_to_int", - "return_type": "godot_int", + "name": "godot_vector2_abs", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_hex_to_int_without_prefix", - "return_type": "godot_int", + "name": "godot_vector2_clamped", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2 *", "p_self"], + ["const godot_real", "p_length"] ] }, { - "name": "godot_string_insert", - "return_type": "godot_string", + "name": "godot_vector2_operator_add", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_at_pos"], - ["godot_string", "p_string"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_b"] ] }, { - "name": "godot_string_is_numeric", - "return_type": "godot_bool", + "name": "godot_vector2_operator_subtract", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_b"] ] }, { - "name": "godot_string_is_subsequence_of", - "return_type": "godot_bool", + "name": "godot_vector2_operator_multiply_vector", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_string"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_b"] ] }, { - "name": "godot_string_is_subsequence_ofi", - "return_type": "godot_bool", + "name": "godot_vector2_operator_multiply_scalar", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_string"] + ["const godot_vector2 *", "p_self"], + ["const godot_real", "p_b"] ] }, { - "name": "godot_string_lpad", - "return_type": "godot_string", + "name": "godot_vector2_operator_divide_vector", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_min_length"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_b"] ] }, { - "name": "godot_string_lpad_with_custom_character", - "return_type": "godot_string", + "name": "godot_vector2_operator_divide_scalar", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_min_length"], - ["const godot_string *", "p_character"] + ["const godot_vector2 *", "p_self"], + ["const godot_real", "p_b"] ] }, { - "name": "godot_string_match", + "name": "godot_vector2_operator_equal", "return_type": "godot_bool", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_wildcard"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_b"] ] }, { - "name": "godot_string_matchn", + "name": "godot_vector2_operator_less", "return_type": "godot_bool", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_wildcard"] - ] - }, - { - "name": "godot_string_md5", - "return_type": "godot_string", - "arguments": [ - ["const uint8_t *", "p_md5"] - ] - }, - { - "name": "godot_string_num", - "return_type": "godot_string", - "arguments": [ - ["double", "p_num"] - ] - }, - { - "name": "godot_string_num_int64", - "return_type": "godot_string", - "arguments": [ - ["int64_t", "p_num"], - ["godot_int", "p_base"] - ] - }, - { - "name": "godot_string_num_int64_capitalized", - "return_type": "godot_string", - "arguments": [ - ["int64_t", "p_num"], - ["godot_int", "p_base"], - ["godot_bool", "p_capitalize_hex"] - ] - }, - { - "name": "godot_string_num_real", - "return_type": "godot_string", - "arguments": [ - ["double", "p_num"] - ] - }, - { - "name": "godot_string_num_scientific", - "return_type": "godot_string", - "arguments": [ - ["double", "p_num"] - ] - }, - { - "name": "godot_string_num_with_decimals", - "return_type": "godot_string", - "arguments": [ - ["double", "p_num"], - ["godot_int", "p_decimals"] - ] - }, - { - "name": "godot_string_pad_decimals", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_digits"] - ] - }, - { - "name": "godot_string_pad_zeros", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_digits"] - ] - }, - { - "name": "godot_string_replace_first", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_key"], - ["godot_string", "p_with"] - ] - }, - { - "name": "godot_string_replace", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_key"], - ["godot_string", "p_with"] - ] - }, - { - "name": "godot_string_replacen", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_key"], - ["godot_string", "p_with"] - ] - }, - { - "name": "godot_string_rfind", - "return_type": "godot_int", - "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_what"] - ] - }, - { - "name": "godot_string_rfindn", - "return_type": "godot_int", - "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_what"] + ["const godot_vector2 *", "p_self"], + ["const godot_vector2 *", "p_b"] ] }, { - "name": "godot_string_rfind_from", - "return_type": "godot_int", + "name": "godot_vector2_operator_neg", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_what"], - ["godot_int", "p_from"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_rfindn_from", - "return_type": "godot_int", + "name": "godot_vector2_set_x", + "return_type": "void", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_what"], - ["godot_int", "p_from"] + ["godot_vector2 *", "p_self"], + ["const godot_real", "p_x"] ] }, { - "name": "godot_string_rpad", - "return_type": "godot_string", + "name": "godot_vector2_set_y", + "return_type": "void", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_min_length"] + ["godot_vector2 *", "p_self"], + ["const godot_real", "p_y"] ] }, { - "name": "godot_string_rpad_with_custom_character", - "return_type": "godot_string", + "name": "godot_vector2_get_x", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_min_length"], - ["const godot_string *", "p_character"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_similarity", + "name": "godot_vector2_get_y", "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_string"] + ["const godot_vector2 *", "p_self"] ] }, { - "name": "godot_string_sprintf", - "return_type": "godot_string", + "name": "godot_vector2i_new", + "return_type": "void", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_array *", "p_values"], - ["godot_bool *", "p_error"] + ["godot_vector2i *", "r_dest"], + ["const godot_int", "p_x"], + ["const godot_int", "p_y"] ] }, { - "name": "godot_string_substr", + "name": "godot_vector2i_as_string", "return_type": "godot_string", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_from"], - ["godot_int", "p_chars"] + ["const godot_vector2i *", "p_self"] ] }, { - "name": "godot_string_to_double", - "return_type": "double", + "name": "godot_vector2i_as_vector2", + "return_type": "godot_vector2", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2i *", "p_self"] ] }, { - "name": "godot_string_to_float", + "name": "godot_vector2i_aspect", "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2i *", "p_self"] ] }, { - "name": "godot_string_to_int", - "return_type": "godot_int", + "name": "godot_vector2i_abs", + "return_type": "godot_vector2i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2i *", "p_self"] ] }, { - "name": "godot_string_camelcase_to_underscore", - "return_type": "godot_string", + "name": "godot_vector2i_sign", + "return_type": "godot_vector2i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2i *", "p_self"] ] }, { - "name": "godot_string_camelcase_to_underscore_lowercased", - "return_type": "godot_string", + "name": "godot_vector2i_operator_add", + "return_type": "godot_vector2i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2i *", "p_self"], + ["const godot_vector2i *", "p_b"] ] }, { - "name": "godot_string_capitalize", - "return_type": "godot_string", + "name": "godot_vector2i_operator_subtract", + "return_type": "godot_vector2i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2i *", "p_self"], + ["const godot_vector2i *", "p_b"] ] }, { - "name": "godot_string_char_to_double", - "return_type": "double", + "name": "godot_vector2i_operator_multiply_vector", + "return_type": "godot_vector2i", "arguments": [ - ["const char *", "p_what"] + ["const godot_vector2i *", "p_self"], + ["const godot_vector2i *", "p_b"] ] }, { - "name": "godot_string_char_to_int", - "return_type": "godot_int", + "name": "godot_vector2i_operator_multiply_scalar", + "return_type": "godot_vector2i", "arguments": [ - ["const char *", "p_what"] + ["const godot_vector2i *", "p_self"], + ["const godot_int", "p_b"] ] }, { - "name": "godot_string_wchar_to_int", - "return_type": "int64_t", + "name": "godot_vector2i_operator_divide_vector", + "return_type": "godot_vector2i", "arguments": [ - ["const wchar_t *", "p_str"] + ["const godot_vector2i *", "p_self"], + ["const godot_vector2i *", "p_b"] ] }, { - "name": "godot_string_char_to_int_with_len", - "return_type": "godot_int", + "name": "godot_vector2i_operator_divide_scalar", + "return_type": "godot_vector2i", "arguments": [ - ["const char *", "p_what"], - ["godot_int", "p_len"] + ["const godot_vector2i *", "p_self"], + ["const godot_int", "p_b"] ] }, { - "name": "godot_string_char_to_int64_with_len", - "return_type": "int64_t", + "name": "godot_vector2i_operator_equal", + "return_type": "godot_bool", "arguments": [ - ["const wchar_t *", "p_str"], - ["int", "p_len"] + ["const godot_vector2i *", "p_self"], + ["const godot_vector2i *", "p_b"] ] }, { - "name": "godot_string_hex_to_int64", - "return_type": "int64_t", + "name": "godot_vector2i_operator_less", + "return_type": "godot_bool", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2i *", "p_self"], + ["const godot_vector2i *", "p_b"] ] }, { - "name": "godot_string_hex_to_int64_with_prefix", - "return_type": "int64_t", + "name": "godot_vector2i_operator_neg", + "return_type": "godot_vector2i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector2i *", "p_self"] ] }, { - "name": "godot_string_to_int64", - "return_type": "int64_t", + "name": "godot_vector2i_set_x", + "return_type": "void", "arguments": [ - ["const godot_string *", "p_self"] + ["godot_vector2i *", "p_self"], + ["const godot_int", "p_x"] ] }, { - "name": "godot_string_unicode_char_to_double", - "return_type": "double", + "name": "godot_vector2i_set_y", + "return_type": "void", "arguments": [ - ["const wchar_t *", "p_str"], - ["const wchar_t **", "r_end"] + ["godot_vector2i *", "p_self"], + ["const godot_int", "p_y"] ] }, { - "name": "godot_string_get_slice_count", + "name": "godot_vector2i_get_x", "return_type": "godot_int", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_splitter"] - ] - }, - { - "name": "godot_string_get_slice", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["godot_string", "p_splitter"], - ["godot_int", "p_slice"] + ["const godot_vector2i *", "p_self"] ] }, { - "name": "godot_string_get_slicec", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["wchar_t", "p_splitter"], - ["godot_int", "p_slice"] - ] - }, - { - "name": "godot_string_split", - "return_type": "godot_array", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_splitter"] - ] - }, - { - "name": "godot_string_split_allow_empty", - "return_type": "godot_array", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_splitter"] - ] - }, - { - "name": "godot_string_split_floats", - "return_type": "godot_array", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_splitter"] - ] - }, - { - "name": "godot_string_split_floats_allows_empty", - "return_type": "godot_array", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_splitter"] - ] - }, - { - "name": "godot_string_split_floats_mk", - "return_type": "godot_array", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_array *", "p_splitters"] - ] - }, - { - "name": "godot_string_split_floats_mk_allows_empty", - "return_type": "godot_array", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_array *", "p_splitters"] - ] - }, - { - "name": "godot_string_split_ints", - "return_type": "godot_array", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_splitter"] - ] - }, - { - "name": "godot_string_split_ints_allows_empty", - "return_type": "godot_array", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_splitter"] - ] - }, - { - "name": "godot_string_split_ints_mk", - "return_type": "godot_array", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_array *", "p_splitters"] - ] - }, - { - "name": "godot_string_split_ints_mk_allows_empty", - "return_type": "godot_array", + "name": "godot_vector2i_get_y", + "return_type": "godot_int", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_array *", "p_splitters"] + ["const godot_vector2i *", "p_self"] ] }, { - "name": "godot_string_split_spaces", - "return_type": "godot_array", + "name": "godot_vector3_as_vector3i", + "return_type": "godot_vector3i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_char_lowercase", - "return_type": "wchar_t", + "name": "godot_vector3_sign", + "return_type": "godot_vector3", "arguments": [ - ["wchar_t", "p_char"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_char_uppercase", - "return_type": "wchar_t", + "name": "godot_vector3_move_toward", + "return_type": "godot_vector3", "arguments": [ - ["wchar_t", "p_char"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_to"], + ["const godot_real", "p_delta"] ] }, { - "name": "godot_string_to_lower", - "return_type": "godot_string", + "name": "godot_vector3_direction_to", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_to"] ] }, { - "name": "godot_string_to_upper", - "return_type": "godot_string", + "name": "godot_vector3_new", + "return_type": "void", "arguments": [ - ["const godot_string *", "p_self"] + ["godot_vector3 *", "r_dest"], + ["const godot_real", "p_x"], + ["const godot_real", "p_y"], + ["const godot_real", "p_z"] ] }, { - "name": "godot_string_get_basename", + "name": "godot_vector3_as_string", "return_type": "godot_string", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_get_extension", - "return_type": "godot_string", + "name": "godot_vector3_min_axis", + "return_type": "godot_int", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_left", - "return_type": "godot_string", + "name": "godot_vector3_max_axis", + "return_type": "godot_int", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_pos"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_ord_at", - "return_type": "wchar_t", + "name": "godot_vector3_length", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_idx"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_plus_file", - "return_type": "godot_string", + "name": "godot_vector3_length_squared", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_file"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_right", - "return_type": "godot_string", + "name": "godot_vector3_is_normalized", + "return_type": "godot_bool", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_pos"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_strip_edges", - "return_type": "godot_string", + "name": "godot_vector3_normalized", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_bool", "p_left"], - ["godot_bool", "p_right"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_strip_escapes", - "return_type": "godot_string", + "name": "godot_vector3_inverse", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_erase", - "return_type": "void", + "name": "godot_vector3_snapped", + "return_type": "godot_vector3", "arguments": [ - ["godot_string *", "p_self"], - ["godot_int", "p_pos"], - ["godot_int", "p_chars"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_by"] ] }, { - "name": "godot_string_ascii", - "return_type": "godot_char_string", + "name": "godot_vector3_rotated", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_axis"], + ["const godot_real", "p_phi"] ] }, { - "name": "godot_string_ascii_extended", - "return_type": "godot_char_string", + "name": "godot_vector3_lerp", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"], + ["const godot_real", "p_t"] ] }, { - "name": "godot_string_utf8", - "return_type": "godot_char_string", + "name": "godot_vector3_cubic_interpolate", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"], + ["const godot_vector3 *", "p_pre_a"], + ["const godot_vector3 *", "p_post_b"], + ["const godot_real", "p_t"] ] }, { - "name": "godot_string_parse_utf8", - "return_type": "godot_bool", + "name": "godot_vector3_dot", + "return_type": "godot_real", "arguments": [ - ["godot_string *", "p_self"], - ["const char *", "p_utf8"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"] ] }, { - "name": "godot_string_parse_utf8_with_len", - "return_type": "godot_bool", + "name": "godot_vector3_cross", + "return_type": "godot_vector3", "arguments": [ - ["godot_string *", "p_self"], - ["const char *", "p_utf8"], - ["godot_int", "p_len"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"] ] }, { - "name": "godot_string_chars_to_utf8", - "return_type": "godot_string", + "name": "godot_vector3_outer", + "return_type": "godot_basis", "arguments": [ - ["const char *", "p_utf8"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"] ] }, { - "name": "godot_string_chars_to_utf8_with_len", - "return_type": "godot_string", + "name": "godot_vector3_to_diagonal_matrix", + "return_type": "godot_basis", "arguments": [ - ["const char *", "p_utf8"], - ["godot_int", "p_len"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_hash", - "return_type": "uint32_t", + "name": "godot_vector3_abs", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_hash64", - "return_type": "uint64_t", + "name": "godot_vector3_floor", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_hash_chars", - "return_type": "uint32_t", + "name": "godot_vector3_ceil", + "return_type": "godot_vector3", "arguments": [ - ["const char *", "p_cstr"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_hash_chars_with_len", - "return_type": "uint32_t", + "name": "godot_vector3_distance_to", + "return_type": "godot_real", "arguments": [ - ["const char *", "p_cstr"], - ["godot_int", "p_len"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"] ] }, { - "name": "godot_string_hash_utf8_chars", - "return_type": "uint32_t", + "name": "godot_vector3_distance_squared_to", + "return_type": "godot_real", "arguments": [ - ["const wchar_t *", "p_str"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"] ] }, { - "name": "godot_string_hash_utf8_chars_with_len", - "return_type": "uint32_t", + "name": "godot_vector3_angle_to", + "return_type": "godot_real", "arguments": [ - ["const wchar_t *", "p_str"], - ["godot_int", "p_len"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_to"] ] }, { - "name": "godot_string_md5_buffer", - "return_type": "godot_packed_byte_array", + "name": "godot_vector3_slide", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_n"] ] }, { - "name": "godot_string_md5_text", - "return_type": "godot_string", + "name": "godot_vector3_bounce", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_n"] ] }, { - "name": "godot_string_sha256_buffer", - "return_type": "godot_packed_byte_array", + "name": "godot_vector3_reflect", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_n"] ] }, { - "name": "godot_string_sha256_text", - "return_type": "godot_string", + "name": "godot_vector3_operator_add", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"] ] }, { - "name": "godot_string_empty", - "return_type": "godot_bool", + "name": "godot_vector3_operator_subtract", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"] ] }, { - "name": "godot_string_get_base_dir", - "return_type": "godot_string", + "name": "godot_vector3_operator_multiply_vector", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"] ] }, { - "name": "godot_string_get_file", - "return_type": "godot_string", + "name": "godot_vector3_operator_multiply_scalar", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_real", "p_b"] ] }, { - "name": "godot_string_humanize_size", - "return_type": "godot_string", + "name": "godot_vector3_operator_divide_vector", + "return_type": "godot_vector3", "arguments": [ - ["size_t", "p_size"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"] ] }, { - "name": "godot_string_is_abs_path", - "return_type": "godot_bool", + "name": "godot_vector3_operator_divide_scalar", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_real", "p_b"] ] }, { - "name": "godot_string_is_rel_path", + "name": "godot_vector3_operator_equal", "return_type": "godot_bool", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"] ] }, { - "name": "godot_string_is_resource_file", + "name": "godot_vector3_operator_less", "return_type": "godot_bool", "arguments": [ - ["const godot_string *", "p_self"] - ] - }, - { - "name": "godot_string_path_to", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_path"] - ] - }, - { - "name": "godot_string_path_to_file", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"], - ["const godot_string *", "p_path"] - ] - }, - { - "name": "godot_string_simplify_path", - "return_type": "godot_string", - "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3 *", "p_b"] ] }, { - "name": "godot_string_c_escape", - "return_type": "godot_string", + "name": "godot_vector3_operator_neg", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"] ] }, { - "name": "godot_string_c_escape_multiline", - "return_type": "godot_string", + "name": "godot_vector3_set_axis", + "return_type": "void", "arguments": [ - ["const godot_string *", "p_self"] + ["godot_vector3 *", "p_self"], + ["const godot_vector3_axis", "p_axis"], + ["const godot_real", "p_val"] ] }, { - "name": "godot_string_c_unescape", - "return_type": "godot_string", + "name": "godot_vector3_get_axis", + "return_type": "godot_real", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3 *", "p_self"], + ["const godot_vector3_axis", "p_axis"] ] }, { - "name": "godot_string_http_escape", - "return_type": "godot_string", + "name": "godot_vector3i_new", + "return_type": "void", "arguments": [ - ["const godot_string *", "p_self"] + ["godot_vector3i *", "r_dest"], + ["const godot_int", "p_x"], + ["const godot_int", "p_y"], + ["const godot_int", "p_z"] ] }, { - "name": "godot_string_http_unescape", + "name": "godot_vector3i_as_string", "return_type": "godot_string", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"] ] }, { - "name": "godot_string_json_escape", - "return_type": "godot_string", + "name": "godot_vector3i_as_vector3", + "return_type": "godot_vector3", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"] ] }, { - "name": "godot_string_word_wrap", - "return_type": "godot_string", + "name": "godot_vector3i_min_axis", + "return_type": "godot_int", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_int", "p_chars_per_line"] + ["const godot_vector3i *", "p_self"] ] }, { - "name": "godot_string_xml_escape", - "return_type": "godot_string", + "name": "godot_vector3i_max_axis", + "return_type": "godot_int", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"] ] }, { - "name": "godot_string_xml_escape_with_quotes", - "return_type": "godot_string", + "name": "godot_vector3i_abs", + "return_type": "godot_vector3i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"] ] }, { - "name": "godot_string_xml_unescape", - "return_type": "godot_string", + "name": "godot_vector3i_sign", + "return_type": "godot_vector3i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"] ] }, { - "name": "godot_string_percent_decode", - "return_type": "godot_string", + "name": "godot_vector3i_operator_add", + "return_type": "godot_vector3i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"], + ["const godot_vector3i *", "p_b"] ] }, { - "name": "godot_string_percent_encode", - "return_type": "godot_string", + "name": "godot_vector3i_operator_subtract", + "return_type": "godot_vector3i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"], + ["const godot_vector3i *", "p_b"] ] }, { - "name": "godot_string_is_valid_float", - "return_type": "godot_bool", + "name": "godot_vector3i_operator_multiply_vector", + "return_type": "godot_vector3i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"], + ["const godot_vector3i *", "p_b"] ] }, { - "name": "godot_string_is_valid_hex_number", - "return_type": "godot_bool", + "name": "godot_vector3i_operator_multiply_scalar", + "return_type": "godot_vector3i", "arguments": [ - ["const godot_string *", "p_self"], - ["godot_bool", "p_with_prefix"] + ["const godot_vector3i *", "p_self"], + ["const godot_int", "p_b"] ] }, { - "name": "godot_string_is_valid_html_color", - "return_type": "godot_bool", + "name": "godot_vector3i_operator_divide_vector", + "return_type": "godot_vector3i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"], + ["const godot_vector3i *", "p_b"] ] }, { - "name": "godot_string_is_valid_identifier", - "return_type": "godot_bool", + "name": "godot_vector3i_operator_divide_scalar", + "return_type": "godot_vector3i", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"], + ["const godot_int", "p_b"] ] }, { - "name": "godot_string_is_valid_integer", + "name": "godot_vector3i_operator_equal", "return_type": "godot_bool", "arguments": [ - ["const godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"], + ["const godot_vector3i *", "p_b"] ] }, { - "name": "godot_string_is_valid_ip_address", + "name": "godot_vector3i_operator_less", "return_type": "godot_bool", "arguments": [ - ["const godot_string *", "p_self"] - ] - }, - { - "name": "godot_string_destroy", - "return_type": "void", - "arguments": [ - ["godot_string *", "p_self"] + ["const godot_vector3i *", "p_self"], + ["const godot_vector3i *", "p_b"] ] }, { - "name": "godot_string_name_new", - "return_type": "void", + "name": "godot_vector3i_operator_neg", + "return_type": "godot_vector3i", "arguments": [ - ["godot_string_name *", "r_dest"], - ["const godot_string *", "p_name"] + ["const godot_vector3i *", "p_self"] ] }, { - "name": "godot_string_name_new_data", + "name": "godot_vector3i_set_axis", "return_type": "void", "arguments": [ - ["godot_string_name *", "r_dest"], - ["const char *", "p_name"] + ["godot_vector3i *", "p_self"], + ["const godot_vector3_axis", "p_axis"], + ["const godot_int", "p_val"] ] }, { - "name": "godot_string_name_get_name", - "return_type": "godot_string", + "name": "godot_vector3i_get_axis", + "return_type": "godot_int", "arguments": [ - ["const godot_string_name *", "p_self"] + ["const godot_vector3i *", "p_self"], + ["const godot_vector3_axis", "p_axis"] ] }, { - "name": "godot_string_name_get_hash", - "return_type": "uint32_t", + "name": "godot_global_get_singleton", + "return_type": "godot_object *", "arguments": [ - ["const godot_string_name *", "p_self"] + ["char *", "p_name"] ] }, { - "name": "godot_string_name_get_data_unique_pointer", - "return_type": "const void *", + "name": "godot_get_class_tag", + "return_type": "void *", "arguments": [ - ["const godot_string_name *", "p_self"] + ["const godot_string_name *", "p_class"] ] }, { - "name": "godot_string_name_operator_equal", - "return_type": "godot_bool", + "name": "godot_object_cast_to", + "return_type": "godot_object *", "arguments": [ - ["const godot_string_name *", "p_self"], - ["const godot_string_name *", "p_other"] + ["const godot_object *", "p_object"], + ["void *", "p_class_tag"] ] }, { - "name": "godot_string_name_operator_less", - "return_type": "godot_bool", + "name": "godot_object_get_instance_id", + "return_type": "uint64_t", "arguments": [ - ["const godot_string_name *", "p_self"], - ["const godot_string_name *", "p_other"] + ["const godot_object *", "p_object"] ] }, { - "name": "godot_string_name_destroy", - "return_type": "void", + "name": "godot_instance_from_id", + "return_type": "godot_object *", "arguments": [ - ["godot_string_name *", "p_self"] + ["uint64_t", "p_instance_id"] ] }, { @@ -6823,13 +6817,6 @@ ] }, { - "name": "godot_global_get_singleton", - "return_type": "godot_object *", - "arguments": [ - ["char *", "p_name"] - ] - }, - { "name": "godot_method_bind_get_method", "return_type": "godot_method_bind *", "arguments": [ @@ -6935,132 +6922,10 @@ "name": "nativescript", "type": "NATIVESCRIPT", "version": { - "major": 1, + "major": 4, "minor": 0 }, - "next": { - "type": "NATIVESCRIPT", - "version": { - "major": 1, - "minor": 1 - }, - "next": null, - "api": [ - { - "name": "godot_nativescript_set_method_argument_information", - "return_type": "void", - "arguments": [ - ["void *", "p_gdnative_handle"], - ["const char *", "p_name"], - ["const char *", "p_function_name"], - ["int", "p_num_args"], - ["const godot_method_arg *", "p_args"] - ] - }, - { - "name": "godot_nativescript_set_class_documentation", - "return_type": "void", - "arguments": [ - ["void *", "p_gdnative_handle"], - ["const char *", "p_name"], - ["godot_string", "p_documentation"] - ] - }, - { - "name": "godot_nativescript_set_method_documentation", - "return_type": "void", - "arguments": [ - ["void *", "p_gdnative_handle"], - ["const char *", "p_name"], - ["const char *", "p_function_name"], - ["godot_string", "p_documentation"] - ] - }, - { - "name": "godot_nativescript_set_property_documentation", - "return_type": "void", - "arguments": [ - ["void *", "p_gdnative_handle"], - ["const char *", "p_name"], - ["const char *", "p_path"], - ["godot_string", "p_documentation"] - ] - }, - { - "name": "godot_nativescript_set_signal_documentation", - "return_type": "void", - "arguments": [ - ["void *", "p_gdnative_handle"], - ["const char *", "p_name"], - ["const char *", "p_signal_name"], - ["godot_string", "p_documentation"] - ] - }, - { - "name": "godot_nativescript_set_global_type_tag", - "return_type": "void", - "arguments": [ - ["int", "p_idx"], - ["const char *", "p_name"], - ["const void *", "p_type_tag"] - ] - }, - { - "name": "godot_nativescript_get_global_type_tag", - "return_type": "const void *", - "arguments": [ - ["int", "p_idx"], - ["const char *", "p_name"] - ] - }, - { - "name": "godot_nativescript_set_type_tag", - "return_type": "void", - "arguments": [ - ["void *", "p_gdnative_handle"], - ["const char *", "p_name"], - ["const void *", "p_type_tag"] - ] - }, - { - "name": "godot_nativescript_get_type_tag", - "return_type": "const void *", - "arguments": [ - ["const godot_object *", "p_object"] - ] - }, - { - "name": "godot_nativescript_register_instance_binding_data_functions", - "return_type": "int", - "arguments": [ - ["godot_instance_binding_functions", "p_binding_functions"] - ] - }, - { - "name": "godot_nativescript_unregister_instance_binding_data_functions", - "return_type": "void", - "arguments": [ - ["int", "p_idx"] - ] - }, - { - "name": "godot_nativescript_get_instance_binding_data", - "return_type": "void *", - "arguments": [ - ["int", "p_idx"], - ["godot_object *", "p_object"] - ] - }, - { - "name": "godot_nativescript_profiling_add_data", - "return_type": "void", - "arguments": [ - ["const char *", "p_signature"], - ["uint64_t", "p_line"] - ] - } - ] - }, + "next": null, "api": [ { "name": "godot_nativescript_register_class", @@ -7069,8 +6934,8 @@ ["void *", "p_gdnative_handle"], ["const char *", "p_name"], ["const char *", "p_base"], - ["godot_instance_create_func", "p_create_func"], - ["godot_instance_destroy_func", "p_destroy_func"] + ["godot_nativescript_instance_create_func", "p_create_func"], + ["godot_nativescript_instance_destroy_func", "p_destroy_func"] ] }, { @@ -7080,8 +6945,8 @@ ["void *", "p_gdnative_handle"], ["const char *", "p_name"], ["const char *", "p_base"], - ["godot_instance_create_func", "p_create_func"], - ["godot_instance_destroy_func", "p_destroy_func"] + ["godot_nativescript_instance_create_func", "p_create_func"], + ["godot_nativescript_instance_destroy_func", "p_destroy_func"] ] }, { @@ -7091,8 +6956,19 @@ ["void *", "p_gdnative_handle"], ["const char *", "p_name"], ["const char *", "p_function_name"], - ["godot_method_attributes", "p_attr"], - ["godot_instance_method", "p_method"] + ["godot_nativescript_method_attributes", "p_attr"], + ["godot_nativescript_instance_method", "p_method"] + ] + }, + { + "name": "godot_nativescript_set_method_argument_information", + "return_type": "void", + "arguments": [ + ["void *", "p_gdnative_handle"], + ["const char *", "p_name"], + ["const char *", "p_function_name"], + ["int", "p_num_args"], + ["const godot_nativescript_method_argument *", "p_args"] ] }, { @@ -7102,9 +6978,9 @@ ["void *", "p_gdnative_handle"], ["const char *", "p_name"], ["const char *", "p_path"], - ["godot_property_attributes *", "p_attr"], - ["godot_property_set_func", "p_set_func"], - ["godot_property_get_func", "p_get_func"] + ["godot_nativescript_property_attributes *", "p_attr"], + ["godot_nativescript_property_set_func", "p_set_func"], + ["godot_nativescript_property_get_func", "p_get_func"] ] }, { @@ -7122,6 +6998,108 @@ "arguments": [ ["godot_object *", "p_instance"] ] + }, + { + "name": "godot_nativescript_set_class_documentation", + "return_type": "void", + "arguments": [ + ["void *", "p_gdnative_handle"], + ["const char *", "p_name"], + ["godot_string", "p_documentation"] + ] + }, + { + "name": "godot_nativescript_set_method_documentation", + "return_type": "void", + "arguments": [ + ["void *", "p_gdnative_handle"], + ["const char *", "p_name"], + ["const char *", "p_function_name"], + ["godot_string", "p_documentation"] + ] + }, + { + "name": "godot_nativescript_set_property_documentation", + "return_type": "void", + "arguments": [ + ["void *", "p_gdnative_handle"], + ["const char *", "p_name"], + ["const char *", "p_path"], + ["godot_string", "p_documentation"] + ] + }, + { + "name": "godot_nativescript_set_signal_documentation", + "return_type": "void", + "arguments": [ + ["void *", "p_gdnative_handle"], + ["const char *", "p_name"], + ["const char *", "p_signal_name"], + ["godot_string", "p_documentation"] + ] + }, + { + "name": "godot_nativescript_set_global_type_tag", + "return_type": "void", + "arguments": [ + ["int", "p_idx"], + ["const char *", "p_name"], + ["const void *", "p_type_tag"] + ] + }, + { + "name": "godot_nativescript_get_global_type_tag", + "return_type": "const void *", + "arguments": [ + ["int", "p_idx"], + ["const char *", "p_name"] + ] + }, + { + "name": "godot_nativescript_set_type_tag", + "return_type": "void", + "arguments": [ + ["void *", "p_gdnative_handle"], + ["const char *", "p_name"], + ["const void *", "p_type_tag"] + ] + }, + { + "name": "godot_nativescript_get_type_tag", + "return_type": "const void *", + "arguments": [ + ["const godot_object *", "p_object"] + ] + }, + { + "name": "godot_nativescript_register_instance_binding_data_functions", + "return_type": "int", + "arguments": [ + ["godot_nativescript_instance_binding_functions", "p_binding_functions"] + ] + }, + { + "name": "godot_nativescript_unregister_instance_binding_data_functions", + "return_type": "void", + "arguments": [ + ["int", "p_idx"] + ] + }, + { + "name": "godot_nativescript_get_instance_binding_data", + "return_type": "void *", + "arguments": [ + ["int", "p_idx"], + ["godot_object *", "p_object"] + ] + }, + { + "name": "godot_nativescript_profiling_add_data", + "return_type": "void", + "arguments": [ + ["const char *", "p_signature"], + ["uint64_t", "p_line"] + ] } ] }, @@ -7315,42 +7293,10 @@ "name": "net", "type": "NET", "version": { - "major": 3, - "minor": 1 - }, - "next": { - "type": "NET", - "version": { - "major": 3, - "minor": 2 - }, - "next": null, - "api": [ - { - "name": "godot_net_set_webrtc_library", - "return_type": "godot_error", - "arguments": [ - ["const godot_net_webrtc_library *", "p_library"] - ] - }, - { - "name": "godot_net_bind_webrtc_peer_connection", - "return_type": "void", - "arguments": [ - ["godot_object *", "p_obj"], - ["const godot_net_webrtc_peer_connection *", "p_interface"] - ] - }, - { - "name": "godot_net_bind_webrtc_data_channel", - "return_type": "void", - "arguments": [ - ["godot_object *", "p_obj"], - ["const godot_net_webrtc_data_channel *", "p_interface"] - ] - } - ] + "major": 4, + "minor": 0 }, + "next": null, "api": [ { "name": "godot_net_bind_stream_peer", @@ -7375,6 +7321,29 @@ ["godot_object *", "p_obj"], ["const godot_net_multiplayer_peer *", "p_interface"] ] + }, + { + "name": "godot_net_set_webrtc_library", + "return_type": "godot_error", + "arguments": [ + ["const godot_net_webrtc_library *", "p_library"] + ] + }, + { + "name": "godot_net_bind_webrtc_peer_connection", + "return_type": "void", + "arguments": [ + ["godot_object *", "p_obj"], + ["const godot_net_webrtc_peer_connection *", "p_interface"] + ] + }, + { + "name": "godot_net_bind_webrtc_data_channel", + "return_type": "void", + "arguments": [ + ["godot_object *", "p_obj"], + ["const godot_net_webrtc_data_channel *", "p_interface"] + ] } ] } diff --git a/modules/gdnative/gdnative_builders.py b/modules/gdnative/gdnative_builders.py index 620935795f..a6f8afb85b 100644 --- a/modules/gdnative/gdnative_builders.py +++ b/modules/gdnative/gdnative_builders.py @@ -228,7 +228,16 @@ def _build_gdnative_api_struct_source(api): "extern const godot_gdnative_core_api_struct api_struct = {", "\tGDNATIVE_" + api["core"]["type"] + ",", "\t{" + str(api["core"]["version"]["major"]) + ", " + str(api["core"]["version"]["minor"]) + "},", - "\t(const godot_gdnative_api_struct *)&api_1_1,", + "\t" + + ( + "nullptr, " + if not api["core"]["next"] + else ( + "(const godot_gdnative_api_struct *)& api_{0}_{1},".format( + api["core"]["next"]["version"]["major"], api["core"]["next"]["version"]["minor"] + ) + ) + ), "\t" + str(len(api["extensions"])) + ",", "\tgdnative_extensions_pointers,", ] diff --git a/modules/gdnative/gdnative_library_editor_plugin.cpp b/modules/gdnative/gdnative_library_editor_plugin.cpp index 2a9836329e..5896da4640 100644 --- a/modules/gdnative/gdnative_library_editor_plugin.cpp +++ b/modules/gdnative/gdnative_library_editor_plugin.cpp @@ -283,7 +283,7 @@ GDNativeLibraryEditor::GDNativeLibraryEditor() { platforms["Haiku"] = platform_haiku; NativePlatformConfig platform_uwp; - platform_uwp.name = "Windows Universal"; + platform_uwp.name = "UWP"; platform_uwp.entries.push_back("arm"); platform_uwp.entries.push_back("32"); platform_uwp.entries.push_back("64"); diff --git a/modules/gdnative/include/nativescript/godot_nativescript.h b/modules/gdnative/include/nativescript/godot_nativescript.h index d65b3f91f4..825033c99c 100644 --- a/modules/gdnative/include/nativescript/godot_nativescript.h +++ b/modules/gdnative/include/nativescript/godot_nativescript.h @@ -45,7 +45,7 @@ typedef enum { GODOT_METHOD_RPC_MODE_REMOTESYNC, GODOT_METHOD_RPC_MODE_MASTERSYNC, GODOT_METHOD_RPC_MODE_PUPPETSYNC, -} godot_method_rpc_mode; +} godot_nativescript_method_rpc_mode; typedef enum { GODOT_PROPERTY_HINT_NONE, ///< no hint provided. @@ -82,7 +82,7 @@ typedef enum { GODOT_PROPERTY_HINT_PROPERTY_OF_INSTANCE, ///< a property of an instance GODOT_PROPERTY_HINT_PROPERTY_OF_SCRIPT, ///< a property of a script & base GODOT_PROPERTY_HINT_MAX, -} godot_property_hint; +} godot_nativescript_property_hint; typedef enum { @@ -106,71 +106,80 @@ typedef enum { GODOT_PROPERTY_USAGE_DEFAULT = GODOT_PROPERTY_USAGE_STORAGE | GODOT_PROPERTY_USAGE_EDITOR | GODOT_PROPERTY_USAGE_NETWORK, GODOT_PROPERTY_USAGE_DEFAULT_INTL = GODOT_PROPERTY_USAGE_STORAGE | GODOT_PROPERTY_USAGE_EDITOR | GODOT_PROPERTY_USAGE_NETWORK | GODOT_PROPERTY_USAGE_INTERNATIONALIZED, GODOT_PROPERTY_USAGE_NOEDITOR = GODOT_PROPERTY_USAGE_STORAGE | GODOT_PROPERTY_USAGE_NETWORK, -} godot_property_usage_flags; +} godot_nativescript_property_usage_flags; typedef struct { - godot_method_rpc_mode rset_type; + godot_nativescript_method_rpc_mode rset_type; godot_int type; - godot_property_hint hint; + godot_nativescript_property_hint hint; godot_string hint_string; - godot_property_usage_flags usage; + godot_nativescript_property_usage_flags usage; godot_variant default_value; -} godot_property_attributes; +} godot_nativescript_property_attributes; typedef struct { // instance pointer, method_data - return user data GDCALLINGCONV void *(*create_func)(godot_object *, void *); void *method_data; GDCALLINGCONV void (*free_func)(void *); -} godot_instance_create_func; +} godot_nativescript_instance_create_func; typedef struct { // instance pointer, method data, user data GDCALLINGCONV void (*destroy_func)(godot_object *, void *, void *); void *method_data; GDCALLINGCONV void (*free_func)(void *); -} godot_instance_destroy_func; +} godot_nativescript_instance_destroy_func; -void GDAPI godot_nativescript_register_class(void *p_gdnative_handle, const char *p_name, const char *p_base, godot_instance_create_func p_create_func, godot_instance_destroy_func p_destroy_func); +void GDAPI godot_nativescript_register_class(void *p_gdnative_handle, const char *p_name, const char *p_base, godot_nativescript_instance_create_func p_create_func, godot_nativescript_instance_destroy_func p_destroy_func); -void GDAPI godot_nativescript_register_tool_class(void *p_gdnative_handle, const char *p_name, const char *p_base, godot_instance_create_func p_create_func, godot_instance_destroy_func p_destroy_func); +void GDAPI godot_nativescript_register_tool_class(void *p_gdnative_handle, const char *p_name, const char *p_base, godot_nativescript_instance_create_func p_create_func, godot_nativescript_instance_destroy_func p_destroy_func); typedef struct { - godot_method_rpc_mode rpc_type; -} godot_method_attributes; + godot_nativescript_method_rpc_mode rpc_type; +} godot_nativescript_method_attributes; + +typedef struct { + godot_string name; + + godot_variant_type type; + godot_nativescript_property_hint hint; + godot_string hint_string; +} godot_nativescript_method_argument; typedef struct { // instance pointer, method data, user data, num args, args - return result as varaint GDCALLINGCONV godot_variant (*method)(godot_object *, void *, void *, int, godot_variant **); void *method_data; GDCALLINGCONV void (*free_func)(void *); -} godot_instance_method; +} godot_nativescript_instance_method; -void GDAPI godot_nativescript_register_method(void *p_gdnative_handle, const char *p_name, const char *p_function_name, godot_method_attributes p_attr, godot_instance_method p_method); +void GDAPI godot_nativescript_register_method(void *p_gdnative_handle, const char *p_name, const char *p_function_name, godot_nativescript_method_attributes p_attr, godot_nativescript_instance_method p_method); +void GDAPI godot_nativescript_set_method_argument_information(void *p_gdnative_handle, const char *p_name, const char *p_function_name, int p_num_args, const godot_nativescript_method_argument *p_args); typedef struct { // instance pointer, method data, user data, value GDCALLINGCONV void (*set_func)(godot_object *, void *, void *, godot_variant *); void *method_data; GDCALLINGCONV void (*free_func)(void *); -} godot_property_set_func; +} godot_nativescript_property_set_func; typedef struct { // instance pointer, method data, user data, value GDCALLINGCONV godot_variant (*get_func)(godot_object *, void *, void *); void *method_data; GDCALLINGCONV void (*free_func)(void *); -} godot_property_get_func; +} godot_nativescript_property_get_func; -void GDAPI godot_nativescript_register_property(void *p_gdnative_handle, const char *p_name, const char *p_path, godot_property_attributes *p_attr, godot_property_set_func p_set_func, godot_property_get_func p_get_func); +void GDAPI godot_nativescript_register_property(void *p_gdnative_handle, const char *p_name, const char *p_path, godot_nativescript_property_attributes *p_attr, godot_nativescript_property_set_func p_set_func, godot_nativescript_property_get_func p_get_func); typedef struct { godot_string name; godot_int type; - godot_property_hint hint; + godot_nativescript_property_hint hint; godot_string hint_string; - godot_property_usage_flags usage; + godot_nativescript_property_usage_flags usage; godot_variant default_value; } godot_nativescript_signal_argument; @@ -186,26 +195,6 @@ void GDAPI godot_nativescript_register_signal(void *p_gdnative_handle, const cha void GDAPI *godot_nativescript_get_userdata(godot_object *p_instance); -/* - * - * - * NativeScript 1.1 - * - * - */ - -// method registering with argument names - -typedef struct { - godot_string name; - - godot_variant_type type; - godot_property_hint hint; - godot_string hint_string; -} godot_method_arg; - -void GDAPI godot_nativescript_set_method_argument_information(void *p_gdnative_handle, const char *p_name, const char *p_function_name, int p_num_args, const godot_method_arg *p_args); - // documentation void GDAPI godot_nativescript_set_class_documentation(void *p_gdnative_handle, const char *p_name, godot_string p_documentation); @@ -230,9 +219,9 @@ typedef struct { GDCALLINGCONV bool (*refcount_decremented_instance_binding)(void *, godot_object *); void *data; GDCALLINGCONV void (*free_func)(void *); -} godot_instance_binding_functions; +} godot_nativescript_instance_binding_functions; -int GDAPI godot_nativescript_register_instance_binding_data_functions(godot_instance_binding_functions p_binding_functions); +int GDAPI godot_nativescript_register_instance_binding_data_functions(godot_nativescript_instance_binding_functions p_binding_functions); void GDAPI godot_nativescript_unregister_instance_binding_data_functions(int p_idx); void GDAPI *godot_nativescript_get_instance_binding_data(int p_idx, godot_object *p_object); diff --git a/modules/gdnative/nativescript/godot_nativescript.cpp b/modules/gdnative/nativescript/godot_nativescript.cpp index 1aea8ad160..e47548f3e9 100644 --- a/modules/gdnative/nativescript/godot_nativescript.cpp +++ b/modules/gdnative/nativescript/godot_nativescript.cpp @@ -51,7 +51,7 @@ extern "C" void _native_script_hook() { // Script API -void GDAPI godot_nativescript_register_class(void *p_gdnative_handle, const char *p_name, const char *p_base, godot_instance_create_func p_create_func, godot_instance_destroy_func p_destroy_func) { +void GDAPI godot_nativescript_register_class(void *p_gdnative_handle, const char *p_name, const char *p_base, godot_nativescript_instance_create_func p_create_func, godot_nativescript_instance_destroy_func p_destroy_func) { String *s = (String *)p_gdnative_handle; Map<StringName, NativeScriptDesc> *classes = &NSL->library_classes[*s]; @@ -83,7 +83,7 @@ void GDAPI godot_nativescript_register_class(void *p_gdnative_handle, const char classes->insert(p_name, desc); } -void GDAPI godot_nativescript_register_tool_class(void *p_gdnative_handle, const char *p_name, const char *p_base, godot_instance_create_func p_create_func, godot_instance_destroy_func p_destroy_func) { +void GDAPI godot_nativescript_register_tool_class(void *p_gdnative_handle, const char *p_name, const char *p_base, godot_nativescript_instance_create_func p_create_func, godot_nativescript_instance_destroy_func p_destroy_func) { String *s = (String *)p_gdnative_handle; Map<StringName, NativeScriptDesc> *classes = &NSL->library_classes[*s]; @@ -116,7 +116,7 @@ void GDAPI godot_nativescript_register_tool_class(void *p_gdnative_handle, const classes->insert(p_name, desc); } -void GDAPI godot_nativescript_register_method(void *p_gdnative_handle, const char *p_name, const char *p_function_name, godot_method_attributes p_attr, godot_instance_method p_method) { +void GDAPI godot_nativescript_register_method(void *p_gdnative_handle, const char *p_name, const char *p_function_name, godot_nativescript_method_attributes p_attr, godot_nativescript_instance_method p_method) { String *s = (String *)p_gdnative_handle; Map<StringName, NativeScriptDesc>::Element *E = NSL->library_classes[*s].find(p_name); @@ -135,7 +135,7 @@ void GDAPI godot_nativescript_register_method(void *p_gdnative_handle, const cha E->get().methods.insert(p_function_name, method); } -void GDAPI godot_nativescript_register_property(void *p_gdnative_handle, const char *p_name, const char *p_path, godot_property_attributes *p_attr, godot_property_set_func p_set_func, godot_property_get_func p_get_func) { +void GDAPI godot_nativescript_register_property(void *p_gdnative_handle, const char *p_name, const char *p_path, godot_nativescript_property_attributes *p_attr, godot_nativescript_property_set_func p_set_func, godot_nativescript_property_get_func p_get_func) { String *s = (String *)p_gdnative_handle; Map<StringName, NativeScriptDesc>::Element *E = NSL->library_classes[*s].find(p_name); @@ -221,7 +221,7 @@ void GDAPI *godot_nativescript_get_userdata(godot_object *p_instance) { * */ -void GDAPI godot_nativescript_set_method_argument_information(void *p_gdnative_handle, const char *p_name, const char *p_function_name, int p_num_args, const godot_method_arg *p_args) { +void GDAPI godot_nativescript_set_method_argument_information(void *p_gdnative_handle, const char *p_name, const char *p_function_name, int p_num_args, const godot_nativescript_method_argument *p_args) { String *s = (String *)p_gdnative_handle; Map<StringName, NativeScriptDesc>::Element *E = NSL->library_classes[*s].find(p_name); @@ -235,7 +235,7 @@ void GDAPI godot_nativescript_set_method_argument_information(void *p_gdnative_h List<PropertyInfo> args; for (int i = 0; i < p_num_args; i++) { - godot_method_arg arg = p_args[i]; + godot_nativescript_method_argument arg = p_args[i]; String name = *(String *)&arg.name; String hint_string = *(String *)&arg.hint_string; @@ -329,7 +329,7 @@ const void GDAPI *godot_nativescript_get_type_tag(const godot_object *p_object) return nullptr; } -int GDAPI godot_nativescript_register_instance_binding_data_functions(godot_instance_binding_functions p_binding_functions) { +int GDAPI godot_nativescript_register_instance_binding_data_functions(godot_nativescript_instance_binding_functions p_binding_functions) { return NativeScriptLanguage::get_singleton()->register_binding_functions(p_binding_functions); } diff --git a/modules/gdnative/nativescript/nativescript.cpp b/modules/gdnative/nativescript/nativescript.cpp index f3dfd0b68e..06b9534fce 100644 --- a/modules/gdnative/nativescript/nativescript.cpp +++ b/modules/gdnative/nativescript/nativescript.cpp @@ -1498,7 +1498,7 @@ void NativeScriptLanguage::profiling_add_data(StringName p_signature, uint64_t p #endif } -int NativeScriptLanguage::register_binding_functions(godot_instance_binding_functions p_binding_functions) { +int NativeScriptLanguage::register_binding_functions(godot_nativescript_instance_binding_functions p_binding_functions) { // find index int idx = -1; diff --git a/modules/gdnative/nativescript/nativescript.h b/modules/gdnative/nativescript/nativescript.h index 1aca142889..fabf4bb87e 100644 --- a/modules/gdnative/nativescript/nativescript.h +++ b/modules/gdnative/nativescript/nativescript.h @@ -48,7 +48,7 @@ struct NativeScriptDesc { struct Method { - godot_instance_method method; + godot_nativescript_instance_method method; MethodInfo info; int rpc_mode; uint16_t rpc_method_id; @@ -56,8 +56,8 @@ struct NativeScriptDesc { }; struct Property { - godot_property_set_func setter; - godot_property_get_func getter; + godot_nativescript_property_set_func setter; + godot_nativescript_property_get_func getter; PropertyInfo info; Variant default_value; int rset_mode; @@ -78,8 +78,8 @@ struct NativeScriptDesc { StringName base; StringName base_native_type; NativeScriptDesc *base_data; - godot_instance_create_func create_func; - godot_instance_destroy_func destroy_func; + godot_nativescript_instance_create_func create_func; + godot_nativescript_instance_destroy_func destroy_func; String documentation; @@ -88,8 +88,8 @@ struct NativeScriptDesc { bool is_tool; inline NativeScriptDesc() { - zeromem(&create_func, sizeof(godot_instance_create_func)); - zeromem(&destroy_func, sizeof(godot_instance_destroy_func)); + zeromem(&create_func, sizeof(godot_nativescript_instance_create_func)); + zeromem(&destroy_func, sizeof(godot_nativescript_instance_destroy_func)); } }; @@ -267,7 +267,7 @@ private: void call_libraries_cb(const StringName &name); - Vector<Pair<bool, godot_instance_binding_functions>> binding_functions; + Vector<Pair<bool, godot_nativescript_instance_binding_functions>> binding_functions; Set<Vector<void *> *> binding_instances; Map<int, HashMap<StringName, const void *>> global_type_tags; @@ -360,7 +360,7 @@ public: virtual int profiling_get_accumulated_data(ProfilingInfo *p_info_arr, int p_info_max); virtual int profiling_get_frame_data(ProfilingInfo *p_info_arr, int p_info_max); - int register_binding_functions(godot_instance_binding_functions p_binding_functions); + int register_binding_functions(godot_nativescript_instance_binding_functions p_binding_functions); void unregister_binding_functions(int p_idx); void *get_instance_binding_data(int p_idx, Object *p_object); diff --git a/modules/gdnavigation/navigation_mesh_editor_plugin.cpp b/modules/gdnavigation/navigation_mesh_editor_plugin.cpp index 5fe1060aae..648f4f7cdd 100644 --- a/modules/gdnavigation/navigation_mesh_editor_plugin.cpp +++ b/modules/gdnavigation/navigation_mesh_editor_plugin.cpp @@ -95,13 +95,15 @@ void NavigationMeshEditor::_bind_methods() { NavigationMeshEditor::NavigationMeshEditor() { bake_hbox = memnew(HBoxContainer); - button_bake = memnew(ToolButton); + button_bake = memnew(Button); + button_bake->set_flat(true); bake_hbox->add_child(button_bake); button_bake->set_toggle_mode(true); button_bake->set_text(TTR("Bake NavMesh")); button_bake->connect("pressed", callable_mp(this, &NavigationMeshEditor::_bake_pressed)); - button_reset = memnew(ToolButton); + button_reset = memnew(Button); + button_reset->set_flat(true); bake_hbox->add_child(button_reset); // No button text, we only use a revert icon which is set when entering the tree. button_reset->set_tooltip(TTR("Clear the navigation mesh.")); diff --git a/modules/gdnavigation/navigation_mesh_editor_plugin.h b/modules/gdnavigation/navigation_mesh_editor_plugin.h index da3a981f8c..728f958eaa 100644 --- a/modules/gdnavigation/navigation_mesh_editor_plugin.h +++ b/modules/gdnavigation/navigation_mesh_editor_plugin.h @@ -46,8 +46,8 @@ class NavigationMeshEditor : public Control { AcceptDialog *err_dialog; HBoxContainer *bake_hbox; - ToolButton *button_bake; - ToolButton *button_reset; + Button *button_bake; + Button *button_reset; Label *bake_info; NavigationRegion3D *node; diff --git a/modules/gdscript/gdscript_compiler.cpp b/modules/gdscript/gdscript_compiler.cpp index bc095ae1f9..5bc9003c29 100644 --- a/modules/gdscript/gdscript_compiler.cpp +++ b/modules/gdscript/gdscript_compiler.cpp @@ -1422,6 +1422,10 @@ Error GDScriptCompiler::_parse_block(CodeGen &codegen, const GDScriptParser::Blo codegen.opcodes.push_back(0); codegen.opcodes.write[else_addr] = codegen.opcodes.size(); + codegen.opcodes.push_back(GDScriptFunction::OPCODE_LINE); + codegen.opcodes.push_back(cf->body_else->line); + codegen.current_line = cf->body_else->line; + Error err2 = _parse_block(codegen, cf->body_else, p_stack_level, p_break_addr, p_continue_addr); if (err2) { return err2; diff --git a/modules/gdscript/gdscript_editor.cpp b/modules/gdscript/gdscript_editor.cpp index 50d8289fd1..3a5db3687b 100644 --- a/modules/gdscript/gdscript_editor.cpp +++ b/modules/gdscript/gdscript_editor.cpp @@ -3093,6 +3093,14 @@ static Error _lookup_symbol_from_base(const GDScriptParser::DataType &p_base, co return OK; } } + + for (int i = 0; i < base_type.class_type->subclasses.size(); i++) { + if (base_type.class_type->subclasses[i]->name == p_symbol) { + r_result.type = ScriptLanguage::LookupResult::RESULT_SCRIPT_LOCATION; + r_result.location = base_type.class_type->subclasses[i]->line; + return OK; + } + } } base_type = base_type.class_type->base_type; } diff --git a/modules/gdscript/gdscript_parser.cpp b/modules/gdscript/gdscript_parser.cpp index a06ecb1ea8..ca452bf008 100644 --- a/modules/gdscript/gdscript_parser.cpp +++ b/modules/gdscript/gdscript_parser.cpp @@ -2821,6 +2821,8 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) { #ifdef DEBUG_ENABLED + pending_newline = -1; // reset for the new block + NewLineNode *nl = alloc_node<NewLineNode>(); nl->line = tokenizer->get_token_line(); @@ -3178,6 +3180,13 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) { IdentifierNode *id = alloc_node<IdentifierNode>(); id->name = tokenizer->get_token_identifier(); +#ifdef DEBUG_ENABLED + for (int j = 0; j < current_class->variables.size(); j++) { + if (current_class->variables[j].identifier == id->name) { + _add_warning(GDScriptWarning::SHADOWED_VARIABLE, id->line, id->name, itos(current_class->variables[j].line)); + } + } +#endif // DEBUG_ENABLED BlockNode *check_block = p_block; while (check_block) { diff --git a/modules/gdscript/language_server/gdscript_extend_parser.cpp b/modules/gdscript/language_server/gdscript_extend_parser.cpp index f87e8687e5..330530be80 100644 --- a/modules/gdscript/language_server/gdscript_extend_parser.cpp +++ b/modules/gdscript/language_server/gdscript_extend_parser.cpp @@ -29,6 +29,7 @@ /*************************************************************************/ #include "gdscript_extend_parser.h" + #include "../gdscript.h" #include "core/io/json.h" #include "gdscript_language_protocol.h" diff --git a/modules/gdscript/language_server/gdscript_language_protocol.cpp b/modules/gdscript/language_server/gdscript_language_protocol.cpp index 35bf4287b8..2a67d2ff4f 100644 --- a/modules/gdscript/language_server/gdscript_language_protocol.cpp +++ b/modules/gdscript/language_server/gdscript_language_protocol.cpp @@ -29,6 +29,7 @@ /*************************************************************************/ #include "gdscript_language_protocol.h" + #include "core/io/json.h" #include "core/os/copymem.h" #include "core/project_settings.h" @@ -161,7 +162,7 @@ void GDScriptLanguageProtocol::_bind_methods() { ClassDB::bind_method(D_METHOD("initialized", "params"), &GDScriptLanguageProtocol::initialized); ClassDB::bind_method(D_METHOD("on_client_connected"), &GDScriptLanguageProtocol::on_client_connected); ClassDB::bind_method(D_METHOD("on_client_disconnected"), &GDScriptLanguageProtocol::on_client_disconnected); - ClassDB::bind_method(D_METHOD("notify_client", "p_method", "p_params"), &GDScriptLanguageProtocol::notify_client, DEFVAL(Variant()), DEFVAL(-1)); + ClassDB::bind_method(D_METHOD("notify_client", "method", "params"), &GDScriptLanguageProtocol::notify_client, DEFVAL(Variant()), DEFVAL(-1)); ClassDB::bind_method(D_METHOD("is_smart_resolve_enabled"), &GDScriptLanguageProtocol::is_smart_resolve_enabled); ClassDB::bind_method(D_METHOD("get_text_document"), &GDScriptLanguageProtocol::get_text_document); ClassDB::bind_method(D_METHOD("get_workspace"), &GDScriptLanguageProtocol::get_workspace); @@ -187,8 +188,10 @@ Dictionary GDScriptLanguageProtocol::initialize(const Dictionary &p_params) { Dictionary params; params["path"] = workspace->root; - Dictionary request = make_notification("gdscrip_client/changeWorkspace", params); + Dictionary request = make_notification("gdscript_client/changeWorkspace", params); + ERR_FAIL_COND_V_MSG(!clients.has(latest_client_id), ret.to_json(), + vformat("GDScriptLanguageProtocol: Can't initialize invalid peer '%d'.", latest_client_id)); Ref<LSPeer> peer = clients.get(latest_client_id); if (peer != nullptr) { String msg = JSON::print(request); @@ -268,8 +271,11 @@ void GDScriptLanguageProtocol::stop() { void GDScriptLanguageProtocol::notify_client(const String &p_method, const Variant &p_params, int p_client_id) { if (p_client_id == -1) { + ERR_FAIL_COND_MSG(latest_client_id == -1, + "GDScript LSP: Can't notify client as none was connected."); p_client_id = latest_client_id; } + ERR_FAIL_COND(!clients.has(p_client_id)); Ref<LSPeer> peer = clients.get(p_client_id); ERR_FAIL_COND(peer == nullptr); @@ -290,13 +296,10 @@ bool GDScriptLanguageProtocol::is_goto_native_symbols_enabled() const { GDScriptLanguageProtocol::GDScriptLanguageProtocol() { server.instance(); singleton = this; - _initialized = false; workspace.instance(); text_document.instance(); set_scope("textDocument", text_document.ptr()); set_scope("completionItem", text_document.ptr()); set_scope("workspace", workspace.ptr()); workspace->root = ProjectSettings::get_singleton()->get_resource_path(); - latest_client_id = 0; - next_client_id = 0; } diff --git a/modules/gdscript/language_server/gdscript_language_protocol.h b/modules/gdscript/language_server/gdscript_language_protocol.h index d929fd255d..cf5242e8c5 100644 --- a/modules/gdscript/language_server/gdscript_language_protocol.h +++ b/modules/gdscript/language_server/gdscript_language_protocol.h @@ -70,8 +70,8 @@ private: HashMap<int, Ref<LSPeer>> clients; Ref<TCP_Server> server; - int latest_client_id; - int next_client_id; + int latest_client_id = 0; + int next_client_id = 0; Ref<GDScriptTextDocument> text_document; Ref<GDScriptWorkspace> workspace; @@ -82,7 +82,7 @@ private: String process_message(const String &p_text); String format_output(const String &p_text); - bool _initialized; + bool _initialized = false; protected: static void _bind_methods(); diff --git a/modules/gdscript/language_server/gdscript_language_server.cpp b/modules/gdscript/language_server/gdscript_language_server.cpp index d53914814f..3387d262f8 100644 --- a/modules/gdscript/language_server/gdscript_language_server.cpp +++ b/modules/gdscript/language_server/gdscript_language_server.cpp @@ -29,6 +29,7 @@ /*************************************************************************/ #include "gdscript_language_server.h" + #include "core/os/file_access.h" #include "core/os/os.h" #include "editor/editor_log.h" diff --git a/modules/gdscript/language_server/gdscript_text_document.cpp b/modules/gdscript/language_server/gdscript_text_document.cpp index 778cb4d254..c6fe3169dc 100644 --- a/modules/gdscript/language_server/gdscript_text_document.cpp +++ b/modules/gdscript/language_server/gdscript_text_document.cpp @@ -29,6 +29,7 @@ /*************************************************************************/ #include "gdscript_text_document.h" + #include "../gdscript.h" #include "core/os/os.h" #include "editor/editor_settings.h" diff --git a/modules/gdscript/language_server/gdscript_workspace.cpp b/modules/gdscript/language_server/gdscript_workspace.cpp index 9285d88157..a203b9bfdb 100644 --- a/modules/gdscript/language_server/gdscript_workspace.cpp +++ b/modules/gdscript/language_server/gdscript_workspace.cpp @@ -29,6 +29,7 @@ /*************************************************************************/ #include "gdscript_workspace.h" + #include "../gdscript.h" #include "../gdscript_parser.h" #include "core/project_settings.h" @@ -41,12 +42,12 @@ void GDScriptWorkspace::_bind_methods() { ClassDB::bind_method(D_METHOD("symbol"), &GDScriptWorkspace::symbol); - ClassDB::bind_method(D_METHOD("parse_script", "p_path", "p_content"), &GDScriptWorkspace::parse_script); - ClassDB::bind_method(D_METHOD("parse_local_script", "p_path"), &GDScriptWorkspace::parse_local_script); - ClassDB::bind_method(D_METHOD("get_file_path", "p_uri"), &GDScriptWorkspace::get_file_path); - ClassDB::bind_method(D_METHOD("get_file_uri", "p_path"), &GDScriptWorkspace::get_file_uri); - ClassDB::bind_method(D_METHOD("publish_diagnostics", "p_path"), &GDScriptWorkspace::publish_diagnostics); - ClassDB::bind_method(D_METHOD("generate_script_api", "p_path"), &GDScriptWorkspace::generate_script_api); + ClassDB::bind_method(D_METHOD("parse_script", "path", "content"), &GDScriptWorkspace::parse_script); + ClassDB::bind_method(D_METHOD("parse_local_script", "path"), &GDScriptWorkspace::parse_local_script); + ClassDB::bind_method(D_METHOD("get_file_path", "uri"), &GDScriptWorkspace::get_file_path); + ClassDB::bind_method(D_METHOD("get_file_uri", "path"), &GDScriptWorkspace::get_file_uri); + ClassDB::bind_method(D_METHOD("publish_diagnostics", "path"), &GDScriptWorkspace::publish_diagnostics); + ClassDB::bind_method(D_METHOD("generate_script_api", "path"), &GDScriptWorkspace::generate_script_api); } void GDScriptWorkspace::remove_cache_parser(const String &p_path) { diff --git a/modules/gridmap/grid_map_editor_plugin.cpp b/modules/gridmap/grid_map_editor_plugin.cpp index 3b0e78546d..1b7ce98721 100644 --- a/modules/gridmap/grid_map_editor_plugin.cpp +++ b/modules/gridmap/grid_map_editor_plugin.cpp @@ -1241,14 +1241,16 @@ GridMapEditor::GridMapEditor(EditorNode *p_editor) { search_box->connect("text_changed", callable_mp(this, &GridMapEditor::_text_changed)); search_box->connect("gui_input", callable_mp(this, &GridMapEditor::_sbox_input)); - mode_thumbnail = memnew(ToolButton); + mode_thumbnail = memnew(Button); + mode_thumbnail->set_flat(true); mode_thumbnail->set_toggle_mode(true); mode_thumbnail->set_pressed(true); mode_thumbnail->set_icon(p_editor->get_gui_base()->get_theme_icon("FileThumbnail", "EditorIcons")); hb->add_child(mode_thumbnail); mode_thumbnail->connect("pressed", callable_mp(this, &GridMapEditor::_set_display_mode), varray(DISPLAY_THUMBNAIL)); - mode_list = memnew(ToolButton); + mode_list = memnew(Button); + mode_list->set_flat(true); mode_list->set_toggle_mode(true); mode_list->set_pressed(false); mode_list->set_icon(p_editor->get_gui_base()->get_theme_icon("FileList", "EditorIcons")); diff --git a/modules/gridmap/grid_map_editor_plugin.h b/modules/gridmap/grid_map_editor_plugin.h index 19eea18965..0ae9b27833 100644 --- a/modules/gridmap/grid_map_editor_plugin.h +++ b/modules/gridmap/grid_map_editor_plugin.h @@ -74,8 +74,8 @@ class GridMapEditor : public VBoxContainer { MenuButton *options; SpinBox *floor; double accumulated_floor_delta; - ToolButton *mode_thumbnail; - ToolButton *mode_list; + Button *mode_thumbnail; + Button *mode_list; LineEdit *search_box; HSlider *size_slider; HBoxContainer *spatial_editor_hb; diff --git a/modules/mbedtls/crypto_mbedtls.cpp b/modules/mbedtls/crypto_mbedtls.cpp index 1f9d8c2aa3..501bfff075 100644 --- a/modules/mbedtls/crypto_mbedtls.cpp +++ b/modules/mbedtls/crypto_mbedtls.cpp @@ -50,7 +50,7 @@ CryptoKey *CryptoKeyMbedTLS::create() { return memnew(CryptoKeyMbedTLS); } -Error CryptoKeyMbedTLS::load(String p_path) { +Error CryptoKeyMbedTLS::load(String p_path, bool p_public_only) { ERR_FAIL_COND_V_MSG(locks, ERR_ALREADY_IN_USE, "Key is in use"); PackedByteArray out; @@ -59,42 +59,81 @@ Error CryptoKeyMbedTLS::load(String p_path) { int flen = f->get_len(); out.resize(flen + 1); - { - uint8_t *w = out.ptrw(); - f->get_buffer(w, flen); - w[flen] = 0; //end f string - } + f->get_buffer(out.ptrw(), flen); + out.write[flen] = 0; // string terminator memdelete(f); - int ret = mbedtls_pk_parse_key(&pkey, out.ptr(), out.size(), nullptr, 0); + int ret = 0; + if (p_public_only) { + ret = mbedtls_pk_parse_public_key(&pkey, out.ptr(), out.size()); + } else { + ret = mbedtls_pk_parse_key(&pkey, out.ptr(), out.size(), nullptr, 0); + } // We MUST zeroize the memory for safety! mbedtls_platform_zeroize(out.ptrw(), out.size()); - ERR_FAIL_COND_V_MSG(ret, FAILED, "Error parsing private key '" + itos(ret) + "'."); + ERR_FAIL_COND_V_MSG(ret, FAILED, "Error parsing key '" + itos(ret) + "'."); + public_only = p_public_only; return OK; } -Error CryptoKeyMbedTLS::save(String p_path) { +Error CryptoKeyMbedTLS::save(String p_path, bool p_public_only) { FileAccess *f = FileAccess::open(p_path, FileAccess::WRITE); ERR_FAIL_COND_V_MSG(!f, ERR_INVALID_PARAMETER, "Cannot save CryptoKeyMbedTLS file '" + p_path + "'."); unsigned char w[16000]; memset(w, 0, sizeof(w)); - int ret = mbedtls_pk_write_key_pem(&pkey, w, sizeof(w)); + int ret = 0; + if (p_public_only) { + ret = mbedtls_pk_write_pubkey_pem(&pkey, w, sizeof(w)); + } else { + ret = mbedtls_pk_write_key_pem(&pkey, w, sizeof(w)); + } if (ret != 0) { memdelete(f); - memset(w, 0, sizeof(w)); // Zeroize anything we might have written. + mbedtls_platform_zeroize(w, sizeof(w)); // Zeroize anything we might have written. ERR_FAIL_V_MSG(FAILED, "Error writing key '" + itos(ret) + "'."); } size_t len = strlen((char *)w); f->store_buffer(w, len); memdelete(f); - memset(w, 0, sizeof(w)); // Zeroize temporary buffer. + mbedtls_platform_zeroize(w, sizeof(w)); // Zeroize temporary buffer. return OK; } +Error CryptoKeyMbedTLS::load_from_string(String p_string_key, bool p_public_only) { + int ret = 0; + if (p_public_only) { + ret = mbedtls_pk_parse_public_key(&pkey, (unsigned char *)p_string_key.utf8().get_data(), p_string_key.utf8().size()); + } else { + ret = mbedtls_pk_parse_key(&pkey, (unsigned char *)p_string_key.utf8().get_data(), p_string_key.utf8().size(), nullptr, 0); + } + ERR_FAIL_COND_V_MSG(ret, FAILED, "Error parsing key '" + itos(ret) + "'."); + + public_only = p_public_only; + return OK; +} + +String CryptoKeyMbedTLS::save_to_string(bool p_public_only) { + unsigned char w[16000]; + memset(w, 0, sizeof(w)); + + int ret = 0; + if (p_public_only) { + ret = mbedtls_pk_write_pubkey_pem(&pkey, w, sizeof(w)); + } else { + ret = mbedtls_pk_write_key_pem(&pkey, w, sizeof(w)); + } + if (ret != 0) { + mbedtls_platform_zeroize(w, sizeof(w)); + ERR_FAIL_V_MSG("", "Error saving key '" + itos(ret) + "'."); + } + String s = String::utf8((char *)w); + return s; +} + X509Certificate *X509CertificateMbedTLS::create() { return memnew(X509CertificateMbedTLS); } @@ -108,11 +147,8 @@ Error X509CertificateMbedTLS::load(String p_path) { int flen = f->get_len(); out.resize(flen + 1); - { - uint8_t *w = out.ptrw(); - f->get_buffer(w, flen); - w[flen] = 0; //end f string - } + f->get_buffer(out.ptrw(), flen); + out.write[flen] = 0; // string terminator memdelete(f); int ret = mbedtls_x509_crt_parse(&cert, out.ptr(), out.size()); @@ -211,9 +247,8 @@ void CryptoMbedTLS::load_default_certificates(String p_path) { // Use builtin certs only if user did not override it in project settings. PackedByteArray out; out.resize(_certs_uncompressed_size + 1); - uint8_t *w = out.ptrw(); - Compression::decompress(w, _certs_uncompressed_size, _certs_compressed, _certs_compressed_size, Compression::MODE_DEFLATE); - w[_certs_uncompressed_size] = 0; // Make sure it ends with string terminator + Compression::decompress(out.ptrw(), _certs_uncompressed_size, _certs_compressed, _certs_compressed_size, Compression::MODE_DEFLATE); + out.write[_certs_uncompressed_size] = 0; // Make sure it ends with string terminator #ifdef DEBUG_ENABLED print_verbose("Loaded builtin certs"); #endif @@ -228,6 +263,7 @@ Ref<CryptoKey> CryptoMbedTLS::generate_rsa(int p_bytes) { int ret = mbedtls_pk_setup(&(out->pkey), mbedtls_pk_info_from_type(MBEDTLS_PK_RSA)); ERR_FAIL_COND_V(ret != 0, nullptr); ret = mbedtls_rsa_gen_key(mbedtls_pk_rsa(out->pkey), mbedtls_ctr_drbg_random, &ctr_drbg, p_bytes, 65537); + out->public_only = false; ERR_FAIL_COND_V(ret != 0, nullptr); return out; } @@ -281,3 +317,75 @@ PackedByteArray CryptoMbedTLS::generate_random_bytes(int p_bytes) { mbedtls_ctr_drbg_random(&ctr_drbg, out.ptrw(), p_bytes); return out; } + +mbedtls_md_type_t CryptoMbedTLS::_md_type_from_hashtype(HashingContext::HashType p_hash_type, int &r_size) { + switch (p_hash_type) { + case HashingContext::HASH_MD5: + r_size = 16; + return MBEDTLS_MD_MD5; + case HashingContext::HASH_SHA1: + r_size = 20; + return MBEDTLS_MD_SHA1; + case HashingContext::HASH_SHA256: + r_size = 32; + return MBEDTLS_MD_SHA256; + default: + r_size = 0; + ERR_FAIL_V_MSG(MBEDTLS_MD_NONE, "Invalid hash type."); + } +} + +Vector<uint8_t> CryptoMbedTLS::sign(HashingContext::HashType p_hash_type, Vector<uint8_t> p_hash, Ref<CryptoKey> p_key) { + int size; + mbedtls_md_type_t type = _md_type_from_hashtype(p_hash_type, size); + ERR_FAIL_COND_V_MSG(type == MBEDTLS_MD_NONE, Vector<uint8_t>(), "Invalid hash type."); + ERR_FAIL_COND_V_MSG(p_hash.size() != size, Vector<uint8_t>(), "Invalid hash provided. Size must be " + itos(size)); + Ref<CryptoKeyMbedTLS> key = static_cast<Ref<CryptoKeyMbedTLS>>(p_key); + ERR_FAIL_COND_V_MSG(!key.is_valid(), Vector<uint8_t>(), "Invalid key provided."); + ERR_FAIL_COND_V_MSG(key->is_public_only(), Vector<uint8_t>(), "Invalid key provided. Cannot sign with public_only keys."); + size_t sig_size = 0; + unsigned char buf[MBEDTLS_MPI_MAX_SIZE]; + Vector<uint8_t> out; + int ret = mbedtls_pk_sign(&(key->pkey), type, p_hash.ptr(), size, buf, &sig_size, mbedtls_ctr_drbg_random, &ctr_drbg); + ERR_FAIL_COND_V_MSG(ret, out, "Error while signing: " + itos(ret)); + out.resize(sig_size); + copymem(out.ptrw(), buf, sig_size); + return out; +} + +bool CryptoMbedTLS::verify(HashingContext::HashType p_hash_type, Vector<uint8_t> p_hash, Vector<uint8_t> p_signature, Ref<CryptoKey> p_key) { + int size; + mbedtls_md_type_t type = _md_type_from_hashtype(p_hash_type, size); + ERR_FAIL_COND_V_MSG(type == MBEDTLS_MD_NONE, false, "Invalid hash type."); + ERR_FAIL_COND_V_MSG(p_hash.size() != size, false, "Invalid hash provided. Size must be " + itos(size)); + Ref<CryptoKeyMbedTLS> key = static_cast<Ref<CryptoKeyMbedTLS>>(p_key); + ERR_FAIL_COND_V_MSG(!key.is_valid(), false, "Invalid key provided."); + return mbedtls_pk_verify(&(key->pkey), type, p_hash.ptr(), size, p_signature.ptr(), p_signature.size()) == 0; +} + +Vector<uint8_t> CryptoMbedTLS::encrypt(Ref<CryptoKey> p_key, Vector<uint8_t> p_plaintext) { + Ref<CryptoKeyMbedTLS> key = static_cast<Ref<CryptoKeyMbedTLS>>(p_key); + ERR_FAIL_COND_V_MSG(!key.is_valid(), Vector<uint8_t>(), "Invalid key provided."); + uint8_t buf[1024]; + size_t size; + Vector<uint8_t> out; + int ret = mbedtls_pk_encrypt(&(key->pkey), p_plaintext.ptr(), p_plaintext.size(), buf, &size, sizeof(buf), mbedtls_ctr_drbg_random, &ctr_drbg); + ERR_FAIL_COND_V_MSG(ret, out, "Error while encrypting: " + itos(ret)); + out.resize(size); + copymem(out.ptrw(), buf, size); + return out; +} + +Vector<uint8_t> CryptoMbedTLS::decrypt(Ref<CryptoKey> p_key, Vector<uint8_t> p_ciphertext) { + Ref<CryptoKeyMbedTLS> key = static_cast<Ref<CryptoKeyMbedTLS>>(p_key); + ERR_FAIL_COND_V_MSG(!key.is_valid(), Vector<uint8_t>(), "Invalid key provided."); + ERR_FAIL_COND_V_MSG(key->is_public_only(), Vector<uint8_t>(), "Invalid key provided. Cannot decrypt using a public_only key."); + uint8_t buf[2048]; + size_t size; + Vector<uint8_t> out; + int ret = mbedtls_pk_decrypt(&(key->pkey), p_ciphertext.ptr(), p_ciphertext.size(), buf, &size, sizeof(buf), mbedtls_ctr_drbg_random, &ctr_drbg); + ERR_FAIL_COND_V_MSG(ret, out, "Error while decrypting: " + itos(ret)); + out.resize(size); + copymem(out.ptrw(), buf, size); + return out; +} diff --git a/modules/mbedtls/crypto_mbedtls.h b/modules/mbedtls/crypto_mbedtls.h index 48855d082a..2a446f9d48 100644 --- a/modules/mbedtls/crypto_mbedtls.h +++ b/modules/mbedtls/crypto_mbedtls.h @@ -43,15 +43,19 @@ class SSLContextMbedTLS; class CryptoKeyMbedTLS : public CryptoKey { private: mbedtls_pk_context pkey; - int locks; + int locks = 0; + bool public_only = true; public: static CryptoKey *create(); static void make_default() { CryptoKey::_create = create; } static void finalize() { CryptoKey::_create = nullptr; } - virtual Error load(String p_path); - virtual Error save(String p_path); + virtual Error load(String p_path, bool p_public_only); + virtual Error save(String p_path, bool p_public_only); + virtual String save_to_string(bool p_public_only); + virtual Error load_from_string(String p_string_key, bool p_public_only); + virtual bool is_public_only() const { return public_only; }; CryptoKeyMbedTLS() { mbedtls_pk_init(&pkey); @@ -102,6 +106,7 @@ private: mbedtls_entropy_context entropy; mbedtls_ctr_drbg_context ctr_drbg; static X509CertificateMbedTLS *default_certs; + mbedtls_md_type_t _md_type_from_hashtype(HashingContext::HashType p_hash_type, int &r_size); public: static Crypto *create(); @@ -113,6 +118,10 @@ public: virtual PackedByteArray generate_random_bytes(int p_bytes); virtual Ref<CryptoKey> generate_rsa(int p_bytes); virtual Ref<X509Certificate> generate_self_signed_certificate(Ref<CryptoKey> p_key, String p_issuer_name, String p_not_before, String p_not_after); + virtual Vector<uint8_t> sign(HashingContext::HashType p_hash_type, Vector<uint8_t> p_hash, Ref<CryptoKey> p_key); + virtual bool verify(HashingContext::HashType p_hash_type, Vector<uint8_t> p_hash, Vector<uint8_t> p_signature, Ref<CryptoKey> p_key); + virtual Vector<uint8_t> encrypt(Ref<CryptoKey> p_key, Vector<uint8_t> p_plaintext); + virtual Vector<uint8_t> decrypt(Ref<CryptoKey> p_key, Vector<uint8_t> p_ciphertext); CryptoMbedTLS(); ~CryptoMbedTLS(); diff --git a/modules/mono/config.py b/modules/mono/config.py index 7980a86cb3..cd659057ef 100644 --- a/modules/mono/config.py +++ b/modules/mono/config.py @@ -57,7 +57,6 @@ def configure(env): def get_doc_classes(): return [ - "@C#", "CSharpScript", "GodotSharp", ] diff --git a/modules/mono/doc_classes/@C#.xml b/modules/mono/doc_classes/@C#.xml deleted file mode 100644 index 83a7fbf02c..0000000000 --- a/modules/mono/doc_classes/@C#.xml +++ /dev/null @@ -1,13 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<class name="@C#" version="4.0"> - <brief_description> - </brief_description> - <description> - </description> - <tutorials> - </tutorials> - <methods> - </methods> - <constants> - </constants> -</class> diff --git a/modules/mono/doc_classes/CSharpScript.xml b/modules/mono/doc_classes/CSharpScript.xml index 1eb3404f9e..e1e9d1381f 100644 --- a/modules/mono/doc_classes/CSharpScript.xml +++ b/modules/mono/doc_classes/CSharpScript.xml @@ -1,16 +1,21 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="CSharpScript" inherits="Script" version="4.0"> <brief_description> + A script implemented in the C# programming language (Mono-enabled builds only). </brief_description> <description> + This class represents a C# script. It is the C# equivalent of the [GDScript] class and is only available in Mono-enabled Godot builds. + See also [GodotSharp]. </description> <tutorials> + <link>https://docs.godotengine.org/en/latest/getting_started/scripting/c_sharp/index.html</link> </tutorials> <methods> <method name="new" qualifiers="vararg"> <return type="Variant"> </return> <description> + Returns a new instance of the script. </description> </method> </methods> diff --git a/modules/mono/doc_classes/GodotSharp.xml b/modules/mono/doc_classes/GodotSharp.xml index 19a08d2036..417f8ac704 100644 --- a/modules/mono/doc_classes/GodotSharp.xml +++ b/modules/mono/doc_classes/GodotSharp.xml @@ -1,8 +1,11 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="GodotSharp" inherits="Object" version="4.0"> <brief_description> + Bridge between Godot and the Mono runtime (Mono-enabled builds only). </brief_description> <description> + This class is a bridge between Godot and the Mono runtime. It exposes several low-level operations and is only available in Mono-enabled Godot builds. + See also [CSharpScript]. </description> <tutorials> </tutorials> @@ -11,26 +14,30 @@ <return type="void"> </return> <description> - Attaches the current thread to the mono runtime. + Attaches the current thread to the Mono runtime. </description> </method> <method name="detach_thread"> <return type="void"> </return> <description> - Detaches the current thread from the mono runtime. + Detaches the current thread from the Mono runtime. </description> </method> <method name="get_domain_id"> <return type="int"> </return> <description> + Returns the current MonoDomain ID. + [b]Note:[/b] The Mono runtime must be initialized for this method to work (use [method is_runtime_initialized] to check). If the Mono runtime isn't initialized at the time this method is called, the engine will crash. </description> </method> <method name="get_scripts_domain_id"> <return type="int"> </return> <description> + Returns the scripts MonoDomain's ID. This will be the same MonoDomain ID as [method get_domain_id], unless the scripts domain isn't loaded. + [b]Note:[/b] The Mono runtime must be initialized for this method to work (use [method is_runtime_initialized] to check). If the Mono runtime isn't initialized at the time this method is called, the engine will crash. </description> </method> <method name="is_domain_finalizing_for_unload"> @@ -39,26 +46,28 @@ <argument index="0" name="domain_id" type="int"> </argument> <description> - Returns whether the domain is being finalized. + Returns [code]true[/code] if the domain is being finalized, [code]false[/code] otherwise. </description> </method> <method name="is_runtime_initialized"> <return type="bool"> </return> <description> + Returns [code]true[/code] if the Mono runtime is initialized, [code]false[/code] otherwise. </description> </method> <method name="is_runtime_shutting_down"> <return type="bool"> </return> <description> + Returns [code]true[/code] if the Mono runtime is shutting down, [code]false[/code] otherwise. </description> </method> <method name="is_scripts_domain_loaded"> <return type="bool"> </return> <description> - Returns whether the scripts domain is loaded. + Returns [code]true[/code] if the scripts domain is loaded, [code]false[/code] otherwise. </description> </method> </methods> diff --git a/modules/mono/editor/GodotTools/GodotTools/BottomPanel.cs b/modules/mono/editor/GodotTools/GodotTools/BottomPanel.cs index 3cf495f025..3de3d8d318 100644 --- a/modules/mono/editor/GodotTools/GodotTools/BottomPanel.cs +++ b/modules/mono/editor/GodotTools/GodotTools/BottomPanel.cs @@ -20,8 +20,8 @@ namespace GodotTools private ItemList buildTabsList; private TabContainer buildTabs; - private ToolButton warningsBtn; - private ToolButton errorsBtn; + private Button warningsBtn; + private Button errorsBtn; private Button viewLogBtn; private void _UpdateBuildTabsList() @@ -285,7 +285,7 @@ namespace GodotTools toolBarHBox.AddSpacer(begin: false); - warningsBtn = new ToolButton + warningsBtn = new Button { Text = "Warnings".TTR(), ToggleMode = true, @@ -296,7 +296,7 @@ namespace GodotTools warningsBtn.Toggled += _WarningsToggled; toolBarHBox.AddChild(warningsBtn); - errorsBtn = new ToolButton + errorsBtn = new Button { Text = "Errors".TTR(), ToggleMode = true, diff --git a/modules/mono/editor/GodotTools/GodotTools/GodotSharpEditor.cs b/modules/mono/editor/GodotTools/GodotTools/GodotSharpEditor.cs index 403e25781d..f330f9ed2c 100644 --- a/modules/mono/editor/GodotTools/GodotTools/GodotSharpEditor.cs +++ b/modules/mono/editor/GodotTools/GodotTools/GodotSharpEditor.cs @@ -30,7 +30,7 @@ namespace GodotTools private AcceptDialog aboutDialog; private CheckBox aboutDialogCheckBox; - private ToolButton bottomPanelBtn; + private Button bottomPanelBtn; public GodotIdeManager GodotIdeManager { get; private set; } @@ -513,7 +513,7 @@ namespace GodotTools menuPopup.IdPressed += _MenuOptionPressed; - var buildButton = new ToolButton + var buildButton = new Button { Text = "Build", HintTooltip = "Build solution", diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Extensions/SceneTreeExtensions.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Extensions/SceneTreeExtensions.cs new file mode 100644 index 0000000000..20b11a48dd --- /dev/null +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Extensions/SceneTreeExtensions.cs @@ -0,0 +1,17 @@ +using System; +using System.Runtime.CompilerServices; +using Godot.Collections; + +namespace Godot +{ + public partial class SceneTree + { + public Array<T> GetNodesInGroup<T>(StringName group) where T : class + { + return new Array<T>(godot_icall_SceneTree_get_nodes_in_group_Generic(Object.GetPtr(this), StringName.GetPtr(group), typeof(T))); + } + + [MethodImpl(MethodImplOptions.InternalCall)] + internal extern static IntPtr godot_icall_SceneTree_get_nodes_in_group_Generic(IntPtr obj, IntPtr group, Type elemType); + } +} diff --git a/modules/mono/glue/GodotSharp/GodotSharp/GodotSharp.csproj b/modules/mono/glue/GodotSharp/GodotSharp/GodotSharp.csproj index b5ac124c9a..06ec2483c8 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/GodotSharp.csproj +++ b/modules/mono/glue/GodotSharp/GodotSharp/GodotSharp.csproj @@ -53,6 +53,7 @@ <Compile Include="Core\Extensions\NodeExtensions.cs" /> <Compile Include="Core\Extensions\ObjectExtensions.cs" /> <Compile Include="Core\Extensions\ResourceLoaderExtensions.cs" /> + <Compile Include="Core\Extensions\SceneTreeExtensions.cs" /> <Compile Include="Core\GD.cs" /> <Compile Include="Core\GodotSynchronizationContext.cs" /> <Compile Include="Core\GodotTaskScheduler.cs" /> diff --git a/modules/mono/glue/glue_header.h b/modules/mono/glue/glue_header.h index ee99a300b9..f6999d01fb 100644 --- a/modules/mono/glue/glue_header.h +++ b/modules/mono/glue/glue_header.h @@ -35,6 +35,7 @@ #include "gd_glue.h" #include "nodepath_glue.h" #include "rid_glue.h" +#include "scene_tree_glue.h" #include "string_glue.h" #include "string_name_glue.h" @@ -50,6 +51,7 @@ void godot_register_glue_header_icalls() { godot_register_object_icalls(); godot_register_rid_icalls(); godot_register_string_icalls(); + godot_register_scene_tree_icalls(); } // Used by the generated glue diff --git a/modules/mono/glue/scene_tree_glue.cpp b/modules/mono/glue/scene_tree_glue.cpp new file mode 100644 index 0000000000..bea9544b08 --- /dev/null +++ b/modules/mono/glue/scene_tree_glue.cpp @@ -0,0 +1,82 @@ +/*************************************************************************/ +/* scene_tree_glue.cpp */ +/*************************************************************************/ +/* This file is part of: */ +/* GODOT ENGINE */ +/* https://godotengine.org */ +/*************************************************************************/ +/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */ +/* */ +/* 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 "scene_tree_glue.h" + +#ifdef MONO_GLUE_ENABLED + +#include "core/class_db.h" +#include "modules/mono/csharp_script.h" +#include "modules/mono/mono_gd/gd_mono_utils.h" +#include "scene/main/node.h" + +Array *godot_icall_SceneTree_get_nodes_in_group_Generic(SceneTree *ptr, StringName *group, MonoReflectionType *refltype) { + List<Node *> nodes; + Array ret; + + // Retrieve all the nodes in the group + ptr->get_nodes_in_group(*group, &nodes); + + // No need to bother if the group is empty + if (!nodes.empty()) { + MonoType *elem_type = mono_reflection_type_get_type(refltype); + MonoClass *mono_class = mono_class_from_mono_type(elem_type); + GDMonoClass *klass = GDMono::get_singleton()->get_class(mono_class); + + if (klass == GDMonoUtils::get_class_native_base(klass)) { + // If we're trying to get native objects, just check the inheritance list + StringName native_class_name = GDMonoUtils::get_native_godot_class_name(klass); + for (int i = 0; i < nodes.size(); ++i) { + if (ClassDB::is_parent_class(nodes[i]->get_class(), native_class_name)) + ret.push_back(nodes[i]); + } + } else { + // If we're trying to get csharpscript instances, get the mono object and compare the classes + for (int i = 0; i < nodes.size(); ++i) { + CSharpInstance *si = CAST_CSHARP_INSTANCE(nodes[i]->get_script_instance()); + + if (si != nullptr) { + MonoObject *obj = si->get_mono_object(); + if (obj != nullptr && mono_object_get_class(obj) == mono_class) { + ret.push_back(nodes[i]); + } + } + } + } + } + + return memnew(Array(ret)); +} + +void godot_register_scene_tree_icalls() { + mono_add_internal_call("Godot.SceneTree::godot_icall_SceneTree_get_nodes_in_group_Generic", (void *)godot_icall_SceneTree_get_nodes_in_group_Generic); +} + +#endif // MONO_GLUE_ENABLED diff --git a/modules/mono/glue/scene_tree_glue.h b/modules/mono/glue/scene_tree_glue.h new file mode 100644 index 0000000000..e9af35a30b --- /dev/null +++ b/modules/mono/glue/scene_tree_glue.h @@ -0,0 +1,50 @@ +/*************************************************************************/ +/* scene_tree_glue.h */ +/*************************************************************************/ +/* This file is part of: */ +/* GODOT ENGINE */ +/* https://godotengine.org */ +/*************************************************************************/ +/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */ +/* */ +/* 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. */ +/*************************************************************************/ + +#ifndef SCENE_TREE_GLUE_H +#define SCENE_TREE_GLUE_H + +#ifdef MONO_GLUE_ENABLED + +#include "core/array.h" +#include "core/string_name.h" +#include "scene/main/scene_tree.h" + +#include "../mono_gd/gd_mono_marshal.h" + +Array *godot_icall_SceneTree_get_nodes_in_group_Generic(SceneTree *ptr, StringName *group, MonoReflectionType *refltype); + +// Register internal calls + +void godot_register_scene_tree_icalls(); + +#endif // MONO_GLUE_ENABLED + +#endif // SCENE_TREE_GLUE_H diff --git a/modules/mono/mono_gd/gd_mono_marshal.cpp b/modules/mono/mono_gd/gd_mono_marshal.cpp index 085062261d..158742846b 100644 --- a/modules/mono/mono_gd/gd_mono_marshal.cpp +++ b/modules/mono/mono_gd/gd_mono_marshal.cpp @@ -624,8 +624,8 @@ MonoObject *variant_to_mono_object(const Variant *p_var, const ManagedType &p_ty return BOX_BOOLEAN(val); } case Variant::INT: { - int32_t val = p_var->operator signed int(); - return BOX_INT32(val); + int64_t val = p_var->operator int64_t(); + return BOX_INT64(val); } case Variant::FLOAT: { #ifdef REAL_T_IS_DOUBLE diff --git a/modules/regex/SCsub b/modules/regex/SCsub index 753650adcb..2afacc1d9c 100644 --- a/modules/regex/SCsub +++ b/modules/regex/SCsub @@ -7,7 +7,7 @@ env_regex = env_modules.Clone() if env["builtin_pcre2"]: thirdparty_dir = "#thirdparty/pcre2/src/" - thirdparty_flags = ["PCRE2_STATIC", "HAVE_CONFIG_H"] + thirdparty_flags = ["PCRE2_STATIC", "HAVE_CONFIG_H", "SUPPORT_UNICODE"] if env["builtin_pcre2_with_jit"]: thirdparty_flags.append("SUPPORT_JIT") diff --git a/modules/regex/doc_classes/RegEx.xml b/modules/regex/doc_classes/RegEx.xml index 3130c53331..c00fa96b2e 100644 --- a/modules/regex/doc_classes/RegEx.xml +++ b/modules/regex/doc_classes/RegEx.xml @@ -32,8 +32,7 @@ [codeblock] for result in regex.search_all("d01, d03, d0c, x3f and x42"): print(result.get_string("digit")) - # Would print 01 03 3f 42 - # Note that d0c would not match + # Would print 01 03 0 3f 42 [/codeblock] [b]Note:[/b] Godot's regex implementation is based on the [url=https://www.pcre.org/]PCRE2[/url] library. You can view the full pattern reference [url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url]. [b]Tip:[/b] You can use [url=https://regexr.com/]Regexr[/url] to test regular expressions online. diff --git a/modules/regex/doc_classes/RegExMatch.xml b/modules/regex/doc_classes/RegExMatch.xml index 151e881b6f..a45de60aef 100644 --- a/modules/regex/doc_classes/RegExMatch.xml +++ b/modules/regex/doc_classes/RegExMatch.xml @@ -49,7 +49,7 @@ </methods> <members> <member name="names" type="Dictionary" setter="" getter="get_names" default="{}"> - A dictionary of named groups and its corresponding group number. Only groups with that were matched are included. If multiple groups have the same name, that name would refer to the first matching one. + A dictionary of named groups and its corresponding group number. Only groups that were matched are included. If multiple groups have the same name, that name would refer to the first matching one. </member> <member name="strings" type="Array" setter="" getter="get_strings" default="[ ]"> An [Array] of the match and its capturing groups. diff --git a/modules/visual_script/config.py b/modules/visual_script/config.py index bd459ca344..b15479797c 100644 --- a/modules/visual_script/config.py +++ b/modules/visual_script/config.py @@ -8,7 +8,6 @@ def configure(env): def get_doc_classes(): return [ - "@VisualScript", "VisualScriptBasicTypeConstant", "VisualScriptBuiltinFunc", "VisualScriptClassConstant", diff --git a/modules/visual_script/doc_classes/@VisualScript.xml b/modules/visual_script/doc_classes/@VisualScript.xml deleted file mode 100644 index a2b966bfbb..0000000000 --- a/modules/visual_script/doc_classes/@VisualScript.xml +++ /dev/null @@ -1,15 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<class name="@VisualScript" version="4.0"> - <brief_description> - Built-in visual script functions. - </brief_description> - <description> - A list of built-in visual script functions, see [VisualScriptBuiltinFunc] and [VisualScript]. - </description> - <tutorials> - </tutorials> - <methods> - </methods> - <constants> - </constants> -</class> |