mirror of
https://github.com/Redot-Engine/redot-engine.git
synced 2025-12-06 07:17:42 -05:00
Fix NEQ operation between 2 different Arrays
it was returning false if it found the same content in both arrays which isn't correct, it should return true when it finds different values
This commit is contained in:
@@ -339,7 +339,7 @@ bool Variant::booleanize() const {
|
||||
CASE_TYPE(m_prefix, m_op_name, m_name) { \
|
||||
if (p_b.type == NIL) \
|
||||
_RETURN(true) \
|
||||
DEFAULT_OP_ARRAY_OP_BODY(m_prefix, m_op_name, m_name, m_type, !=, ==, true, true, false) \
|
||||
DEFAULT_OP_ARRAY_OP_BODY(m_prefix, m_op_name, m_name, m_type, !=, !=, false, true, true) \
|
||||
}
|
||||
|
||||
#define DEFAULT_OP_ARRAY_LT(m_prefix, m_op_name, m_name, m_type) \
|
||||
@@ -539,12 +539,12 @@ void Variant::evaluate(const Operator &p_op, const Variant &p_a,
|
||||
if (arr_b->size() != l)
|
||||
_RETURN(true);
|
||||
for (int i = 0; i < l; i++) {
|
||||
if (((*arr_a)[i] == (*arr_b)[i])) {
|
||||
_RETURN(false);
|
||||
if (((*arr_a)[i] != (*arr_b)[i])) {
|
||||
_RETURN(true);
|
||||
}
|
||||
}
|
||||
|
||||
_RETURN(true);
|
||||
_RETURN(false);
|
||||
}
|
||||
|
||||
DEFAULT_OP_NUM_NULL(math, OP_NOT_EQUAL, INT, !=, _int);
|
||||
|
||||
Reference in New Issue
Block a user