More 3D Work
-=-=-=-=-=- -ESM Shadow Mapping for softer and less glitchy shadows -HDR Pipeline (convert to Linear on texture import, convert to SRGB at the end) -Fix to xml parse bug
This commit is contained in:
@ -1330,12 +1330,17 @@ Error GDCompiler::_parse_class(GDScript *p_script,GDScript *p_owner,const GDPars
|
||||
}
|
||||
path=base.get_base_dir().plus_file(path);
|
||||
}
|
||||
|
||||
script = ResourceLoader::load(path);
|
||||
if (script.is_null()) {
|
||||
_set_error("Could not load base class: "+path,p_class);
|
||||
return ERR_FILE_NOT_FOUND;
|
||||
}
|
||||
if (!script->valid) {
|
||||
|
||||
_set_error("Script not fully loaded (cyclic preload?): "+path,p_class);
|
||||
return ERR_BUSY;
|
||||
}
|
||||
//print_line("EXTENDS PATH: "+path+" script is "+itos(script.is_valid())+" indices is "+itos(script->member_indices.size())+" valid? "+itos(script->valid));
|
||||
|
||||
if (p_class->extends_class.size()) {
|
||||
|
||||
@ -1438,6 +1443,9 @@ Error GDCompiler::_parse_class(GDScript *p_script,GDScript *p_owner,const GDPars
|
||||
}
|
||||
|
||||
|
||||
print_line("Script: "+p_script->get_path()+" indices: "+itos(p_script->member_indices.size()));
|
||||
|
||||
|
||||
for(int i=0;i<p_class->variables.size();i++) {
|
||||
|
||||
StringName name = p_class->variables[i].identifier;
|
||||
|
||||
@ -93,6 +93,7 @@ const char *GDFunctions::get_func_name(Function p_func) {
|
||||
"load",
|
||||
"inst2dict",
|
||||
"dict2inst",
|
||||
"hash",
|
||||
"print_stack",
|
||||
};
|
||||
|
||||
@ -863,6 +864,12 @@ void GDFunctions::call(Function p_func,const Variant **p_args,int p_arg_count,Va
|
||||
|
||||
r_ret = gdscr->_new(NULL,0,r_error);
|
||||
|
||||
} break;
|
||||
case HASH: {
|
||||
|
||||
VALIDATE_ARG_COUNT(1);
|
||||
r_ret=p_args[0]->hash();
|
||||
|
||||
} break;
|
||||
|
||||
case PRINT_STACK: {
|
||||
@ -1238,6 +1245,12 @@ MethodInfo GDFunctions::get_info(Function p_func) {
|
||||
mi.return_val.type=Variant::OBJECT;
|
||||
return mi;
|
||||
} break;
|
||||
case HASH: {
|
||||
|
||||
MethodInfo mi("hash",PropertyInfo(Variant::NIL,"var:var"));
|
||||
mi.return_val.type=Variant::INT;
|
||||
return mi;
|
||||
} break;
|
||||
|
||||
case PRINT_STACK: {
|
||||
MethodInfo mi("print_stack");
|
||||
|
||||
@ -89,6 +89,7 @@ public:
|
||||
RESOURCE_LOAD,
|
||||
INST2DICT,
|
||||
DICT2INST,
|
||||
HASH,
|
||||
PRINT_STACK,
|
||||
FUNC_MAX
|
||||
|
||||
|
||||
@ -1451,6 +1451,7 @@ Error GDScript::reload() {
|
||||
|
||||
|
||||
|
||||
|
||||
valid=false;
|
||||
GDParser parser;
|
||||
Error err = parser.parse(source,basedir);
|
||||
@ -1721,6 +1722,7 @@ GDScript::GDScript() {
|
||||
_base=NULL;
|
||||
_owner=NULL;
|
||||
tool=false;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -183,6 +183,7 @@ class GDScript : public Script {
|
||||
bool valid;
|
||||
|
||||
|
||||
|
||||
friend class GDInstance;
|
||||
friend class GDFunction;
|
||||
friend class GDCompiler;
|
||||
|
||||
Reference in New Issue
Block a user