mirror of
				https://github.com/godotengine/godot.git
				synced 2025-10-31 13:41:03 +00:00 
			
		
		
		
	-fix bug in cache for atlas import/export
-fix some menus -fixed bug in out transition curves -detect and remove file:/// in collada -remove multiscript for now -remove dependencies on mouse in OS, moved to Input -avoid fscache from screwing up (fix might make it slower, but it works) -funcref was missing, it's there now
This commit is contained in:
		
							parent
							
								
									a65edb4caa
								
							
						
					
					
						commit
						31ce3c5fd0
					
				
					 136 changed files with 10784 additions and 1578 deletions
				
			
		|  | @ -31,6 +31,7 @@ | |||
| #include "object_type_db.h" | ||||
| #include "reference.h" | ||||
| #include "gd_script.h" | ||||
| #include "func_ref.h" | ||||
| #include "os/os.h" | ||||
| 
 | ||||
| const char *GDFunctions::get_func_name(Function p_func) { | ||||
|  | @ -80,6 +81,7 @@ const char *GDFunctions::get_func_name(Function p_func) { | |||
| 		"clamp", | ||||
| 		"nearest_po2", | ||||
| 		"weakref", | ||||
| 		"funcref", | ||||
| 		"convert", | ||||
| 		"typeof", | ||||
| 		"str", | ||||
|  | @ -451,6 +453,36 @@ void GDFunctions::call(Function p_func,const Variant **p_args,int p_arg_count,Va | |||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 		} break; | ||||
| 		case FUNC_FUNCREF: { | ||||
| 			VALIDATE_ARG_COUNT(2); | ||||
| 			if (p_args[0]->get_type()!=Variant::OBJECT) { | ||||
| 
 | ||||
| 				r_error.error=Variant::CallError::CALL_ERROR_INVALID_ARGUMENT; | ||||
| 				r_error.argument=0; | ||||
| 				r_error.expected=Variant::OBJECT; | ||||
| 				r_ret=Variant(); | ||||
| 				return; | ||||
| 
 | ||||
| 			} | ||||
| 			if (p_args[1]->get_type()!=Variant::STRING && p_args[1]->get_type()!=Variant::NODE_PATH) { | ||||
| 
 | ||||
| 				r_error.error=Variant::CallError::CALL_ERROR_INVALID_ARGUMENT; | ||||
| 				r_error.argument=1; | ||||
| 				r_error.expected=Variant::STRING; | ||||
| 				r_ret=Variant(); | ||||
| 				return; | ||||
| 
 | ||||
| 			} | ||||
| 
 | ||||
| 			Ref<FuncRef> fr = memnew( FuncRef); | ||||
| 
 | ||||
| 			Object *obj = *p_args[0]; | ||||
| 			fr->set_instance(*p_args[0]); | ||||
| 			fr->set_function(*p_args[1]); | ||||
| 
 | ||||
| 			r_ret=fr; | ||||
| 
 | ||||
| 		} break; | ||||
| 		case TYPE_CONVERT: { | ||||
| 			VALIDATE_ARG_COUNT(2); | ||||
|  | @ -678,7 +710,7 @@ void GDFunctions::call(Function p_func,const Variant **p_args,int p_arg_count,Va | |||
| 			} | ||||
| 			r_ret=ResourceLoader::load(*p_args[0]); | ||||
| 
 | ||||
| 		} | ||||
| 		} break; | ||||
| 		case INST2DICT: { | ||||
| 
 | ||||
| 			VALIDATE_ARG_COUNT(1); | ||||
|  | @ -1129,6 +1161,13 @@ MethodInfo GDFunctions::get_info(Function p_func) { | |||
| 			mi.return_val.type=Variant::OBJECT; | ||||
| 			return mi; | ||||
| 
 | ||||
| 		} break; | ||||
| 		case FUNC_FUNCREF: { | ||||
| 
 | ||||
| 			MethodInfo mi("funcref",PropertyInfo(Variant::OBJECT,"instance"),PropertyInfo(Variant::STRING,"funcname")); | ||||
| 			mi.return_val.type=Variant::OBJECT; | ||||
| 			return mi; | ||||
| 
 | ||||
| 		} break; | ||||
| 		case TYPE_CONVERT: { | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Juan Linietsky
						Juan Linietsky