Exemple #1
0
def new_uninitialized_gdobj(gdtype):
    # TODO: use dict to optimize this ?
    # It seems Godot encode Variant as type nil...
    if gdtype == lib.GODOT_VARIANT_TYPE_NIL:
        return godot_variant_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_BOOL:
        return godot_bool_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_INT:
        return godot_int_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_REAL:
        return godot_real_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_STRING:
        return godot_string_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_VECTOR2:
        return godot_vector2_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_RECT2:
        return godot_rect2_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_VECTOR3:
        return godot_vector3_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_TRANSFORM2D:
        return godot_transform2d_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_PLANE:
        return godot_plane_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_QUAT:
        return godot_quat_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_AABB:
        return godot_aabb_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_BASIS:
        return godot_basis_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_TRANSFORM:
        return godot_transform_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_COLOR:
        return godot_color_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_NODE_PATH:
        return godot_node_path_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_RID:
        return godot_rid_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_OBJECT:
        return godot_object_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_DICTIONARY:
        return godot_dictionary_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_ARRAY:
        return godot_array_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_BYTE_ARRAY:
        return godot_pool_byte_array_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_INT_ARRAY:
        return godot_pool_int_array_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_REAL_ARRAY:
        return godot_pool_real_array_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_STRING_ARRAY:
        return godot_pool_string_array_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_VECTOR2_ARRAY:
        return godot_pool_vector2_array_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_VECTOR3_ARRAY:
        return godot_pool_vector3_array_alloc()
    elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_COLOR_ARRAY:
        return godot_pool_color_array_alloc()
    else:
        raise TypeError(
            "Unknown Variant type `%s` (this should never happen !)" % gdtype)
Exemple #2
0
 def build_from_reals(cls, a=0, b=0, c=0, d=0):
     cls._check_param_float('a', a)
     cls._check_param_float('b', b)
     cls._check_param_float('c', c)
     cls._check_param_float('d', d)
     gd_ptr = godot_plane_alloc()
     lib.godot_plane_new_with_reals(gd_ptr, a, b, c, d)
     return cls.build_from_gdobj(gd_ptr, steal=True)
Exemple #3
0
 def build_from_vectors(cls, v1=Vector3(), v2=Vector3(), v3=Vector3()):
     cls._check_param_type('v1', v1, Vector3)
     cls._check_param_type('v2', v2, Vector3)
     cls._check_param_type('v3', v3, Vector3)
     gd_ptr = godot_plane_alloc()
     lib.godot_plane_new_with_vectors(gd_ptr, v1._gd_ptr, v2._gd_ptr,
                                      v3._gd_ptr)
     return cls.build_from_gdobj(gd_ptr, steal=True)
Exemple #4
0
 def __init__(self, normal=Vector3(), d=0.0):
     self._check_param_type('normal', normal, Vector3)
     self._check_param_float('d', d)
     self._gd_ptr = godot_plane_alloc()
     lib.godot_plane_new_with_normal(self._gd_ptr, normal._gd_ptr, d)
Exemple #5
0
 def _copy_gdobj(gdobj):
     return godot_plane_alloc(gdobj[0])