@@ -88,6 +88,7 @@ func process_script(path: String, enable_hook_check := false) -> String:
88
88
continue
89
89
90
90
var type_string := get_return_type_string (method .return )
91
+ var is_constructor : bool = method .name == "_init"
91
92
var is_static := true if method .flags == METHOD_FLAG_STATIC + METHOD_FLAG_NORMAL else false
92
93
93
94
var func_def : RegExMatch = match_func_with_whitespace (method .name , source_code )
@@ -132,7 +133,7 @@ func process_script(path: String, enable_hook_check := false) -> String:
132
133
method_arg_string_names_only ,
133
134
method_arg_string_with_defaults_and_types ,
134
135
type_string ,
135
- method . return . usage ,
136
+ is_constructor ,
136
137
is_static ,
137
138
is_async ,
138
139
hook_id ,
@@ -346,37 +347,35 @@ static func build_mod_hook_string(
346
347
method_arg_string_names_only : String ,
347
348
method_arg_string_with_defaults_and_types : String ,
348
349
method_type : String ,
349
- return_prop_usage : int ,
350
+ is_constructor : bool ,
350
351
is_static : bool ,
351
352
is_async : bool ,
352
353
hook_id : int ,
353
354
method_prefix := METHOD_PREFIX ,
354
355
enable_hook_check := false ,
355
356
) -> String :
356
357
var type_string := " -> %s " % method_type if not method_type .is_empty () else ""
358
+ var return_string := "return " if not is_constructor else ""
357
359
var static_string := "static " if is_static else ""
358
360
var await_string := "await " if is_async else ""
359
361
var async_string := "_async" if is_async else ""
360
- var return_var := "var %s = " % "return_var" if not method_type .is_empty () or return_prop_usage == 131072 else ""
361
- var method_return := "return " if not method_type .is_empty () or return_prop_usage == 131072 else ""
362
362
var hook_check := "if ModLoaderStore.any_mod_hooked:\n\t\t " if enable_hook_check else ""
363
363
var hook_check_else := get_hook_check_else_string (
364
- method_return , await_string , method_prefix , method_name , method_arg_string_names_only
364
+ return_string , await_string , method_prefix , method_name , method_arg_string_names_only
365
365
) if enable_hook_check else ""
366
366
367
367
368
368
return """
369
369
{STATIC} func {METHOD_NAME} ({METHOD_PARAMS} ){RETURN_TYPE_STRING} :
370
- {HOOK_CHECK}{METHOD_RETURN }{AWAIT} _ModLoaderHooks.call_hooks{ASYNC} ({METHOD_PREFIX} _{METHOD_NAME} , [{METHOD_ARGS} ], {HOOK_ID} ){HOOK_CHECK_ELSE}
370
+ {HOOK_CHECK}{RETURN }{AWAIT} _ModLoaderHooks.call_hooks{ASYNC} ({METHOD_PREFIX} _{METHOD_NAME} , [{METHOD_ARGS} ], {HOOK_ID} ){HOOK_CHECK_ELSE}
371
371
""" .format ({
372
372
"METHOD_PREFIX" : method_prefix ,
373
373
"METHOD_NAME" : method_name ,
374
374
"METHOD_PARAMS" : method_arg_string_with_defaults_and_types ,
375
375
"RETURN_TYPE_STRING" : type_string ,
376
376
"METHOD_ARGS" : method_arg_string_names_only ,
377
- "METHOD_RETURN_VAR" : return_var ,
378
- "METHOD_RETURN" : method_return ,
379
377
"STATIC" : static_string ,
378
+ "RETURN" : return_string ,
380
379
"AWAIT" : await_string ,
381
380
"ASYNC" : async_string ,
382
381
"HOOK_ID" : hook_id ,
@@ -472,15 +471,15 @@ func collect_getters_and_setters(text: String) -> Dictionary:
472
471
473
472
474
473
static func get_hook_check_else_string (
475
- method_return : String ,
474
+ return_string : String ,
476
475
await_string : String ,
477
476
method_prefix : String ,
478
477
method_name : String ,
479
478
method_arg_string_names_only : String
480
479
) -> String :
481
- return "\n\t else:\n\t\t {METHOD_RETURN }{AWAIT}{METHOD_PREFIX} _{METHOD_NAME} ({METHOD_ARGS} )" .format (
480
+ return "\n\t else:\n\t\t {RETURN }{AWAIT}{METHOD_PREFIX} _{METHOD_NAME} ({METHOD_ARGS} )" .format (
482
481
{
483
- "METHOD_RETURN " : method_return ,
482
+ "RETURN " : return_string ,
484
483
"AWAIT" : await_string ,
485
484
"METHOD_PREFIX" : method_prefix ,
486
485
"METHOD_NAME" : method_name ,
0 commit comments