diff options
| author | Juan Linietsky | 2016-09-02 02:13:12 -0300 |
|---|---|---|
| committer | Juan Linietsky | 2016-09-02 02:13:12 -0300 |
| commit | 89702d545b89a1f07d17fb2bd8e766c91574cd24 (patch) | |
| tree | 29613fba90613ed71a1afb97409b7b30966157ab /core/variant_call.cpp | |
| parent | 65ae4976eb7dfaa472aba7a9931b5beb537fe21a (diff) | |
| download | godot-89702d545b89a1f07d17fb2bd8e766c91574cd24.tar.gz godot-89702d545b89a1f07d17fb2bd8e766c91574cd24.tar.zst godot-89702d545b89a1f07d17fb2bd8e766c91574cd24.zip | |
Diffstat (limited to 'core/variant_call.cpp')
| -rw-r--r-- | core/variant_call.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/core/variant_call.cpp b/core/variant_call.cpp index 069c20bc6..5337b6ba0 100644 --- a/core/variant_call.cpp +++ b/core/variant_call.cpp @@ -1324,14 +1324,22 @@ bool Variant::has_numeric_constant(Variant::Type p_type, const StringName& p_val return cd.value.has(p_value); } -int Variant::get_numeric_constant_value(Variant::Type p_type, const StringName& p_value) { +int Variant::get_numeric_constant_value(Variant::Type p_type, const StringName& p_value, bool *r_valid) { + + if (r_valid) + *r_valid=false; ERR_FAIL_INDEX_V(p_type,Variant::VARIANT_MAX,0); _VariantCall::ConstantData& cd = _VariantCall::constant_data[p_type]; Map<StringName,int>::Element *E = cd.value.find(p_value); - ERR_FAIL_COND_V(!E,0); + if (!E) { + return -1; + } + if (r_valid) + *r_valid=true; + return E->get(); } |
