From c38ec226efbe573ae1408927aeb19684060de02a Mon Sep 17 00:00:00 2001 From: Saracen Date: Mon, 6 Feb 2017 22:44:22 +0000 Subject: [PATCH] Inf and NaN support added to GDScript. --- visual_script_expression.cpp | 6 ++++++ visual_script_nodes.cpp | 6 +++++- visual_script_nodes.h | 4 +++- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/visual_script_expression.cpp b/visual_script_expression.cpp index cc3b5f2..f14aee5 100644 --- a/visual_script_expression.cpp +++ b/visual_script_expression.cpp @@ -558,6 +558,12 @@ Error VisualScriptExpression::_get_token(Token& r_token) { } else if (id=="PI") { r_token.type=TK_CONSTANT; r_token.value=Math_PI; + } else if (id == "INF") { + r_token.type = TK_CONSTANT; + r_token.value = Math_INF; + } else if (id == "NAN") { + r_token.type = TK_CONSTANT; + r_token.value = Math_NAN; } else if (id=="not") { r_token.type=TK_OP_NOT; } else if (id=="or") { diff --git a/visual_script_nodes.cpp b/visual_script_nodes.cpp index d1ee5be..f01284f 100644 --- a/visual_script_nodes.cpp +++ b/visual_script_nodes.cpp @@ -1738,6 +1738,8 @@ const char* VisualScriptMathConstant::const_name[MATH_CONSTANT_MAX]={ "PI/2", "E", "Sqrt2", + "INF", + "NAN" }; double VisualScriptMathConstant::const_value[MATH_CONSTANT_MAX]={ @@ -1746,7 +1748,9 @@ double VisualScriptMathConstant::const_value[MATH_CONSTANT_MAX]={ Math_PI*2, Math_PI*0.5, 2.71828182845904523536, - Math::sqrt(2.0) + Math::sqrt(2.0), + Math_INF, + Math_NAN }; diff --git a/visual_script_nodes.h b/visual_script_nodes.h index 7a06fbf..25d07cc 100644 --- a/visual_script_nodes.h +++ b/visual_script_nodes.h @@ -467,7 +467,9 @@ public: MATH_CONSTANT_HALF_PI, MATH_CONSTANT_E, MATH_CONSTANT_SQRT2, - MATH_CONSTANT_MAX, + MATH_CONSTANT_INF, + MATH_CONSTANT_NAN, + MATH_CONSTANT_MAX }; private: