diff options
author | chai <chaifix@163.com> | 2018-10-29 21:15:20 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2018-10-29 21:15:20 +0800 |
commit | 1a2d615c0d1cd67a8b5a52595b28b2dfcbfc4186 (patch) | |
tree | 5bf103638cc806664101cf7422f2e680cabf62d2 /src | |
parent | aca962d7ce3d404671cace2a82b04ff937375009 (diff) |
*更新状态机
Diffstat (limited to 'src')
-rw-r--r-- | src/3rdparty/buildvm/buildvm.exe | bin | 62976 -> 62976 bytes | |||
-rw-r--r-- | src/3rdparty/minilua/minilua.exe | bin | 112640 -> 112640 bytes | |||
-rw-r--r-- | src/libjin/Utils/je_log.h | 1 | ||||
-rw-r--r-- | src/libjin/ai/je_state_machine.cpp | 7 | ||||
-rw-r--r-- | src/libjin/ai/je_state_machine.h | 16 |
5 files changed, 17 insertions, 7 deletions
diff --git a/src/3rdparty/buildvm/buildvm.exe b/src/3rdparty/buildvm/buildvm.exe Binary files differindex ed23035..53a6c72 100644 --- a/src/3rdparty/buildvm/buildvm.exe +++ b/src/3rdparty/buildvm/buildvm.exe diff --git a/src/3rdparty/minilua/minilua.exe b/src/3rdparty/minilua/minilua.exe Binary files differindex 8e7c938..fe95721 100644 --- a/src/3rdparty/minilua/minilua.exe +++ b/src/3rdparty/minilua/minilua.exe diff --git a/src/libjin/Utils/je_log.h b/src/libjin/Utils/je_log.h index aeb54d9..21ffd93 100644 --- a/src/libjin/Utils/je_log.h +++ b/src/libjin/Utils/je_log.h @@ -54,7 +54,6 @@ typedef Loghelper::Level Loglevel; #define jin_log_warning(f, ...) Loghelper::log(Loghelper::LV_WARNING, f, __VA_ARGS__) #define jin_log_debug(f, ...) Loghelper::log(Loghelper::LV_DEBUG, f, __VA_ARGS__) #else - #define jin_debug_log(level, fmt, ...) #define jin_log_error(f, ...) #define jin_log_info(f, ...) #define jin_log_warning(f, ...) diff --git a/src/libjin/ai/je_state_machine.cpp b/src/libjin/ai/je_state_machine.cpp index 2d82a0a..987dbce 100644 --- a/src/libjin/ai/je_state_machine.cpp +++ b/src/libjin/ai/je_state_machine.cpp @@ -112,12 +112,7 @@ namespace JinEngine case ParameterType::Int: return p.value._int == condition.value._int; case ParameterType::Float: return p.value._float == condition.value._float; case ParameterType::Bool: return p.value._bool == condition.value._bool; - case ParameterType::Trigger: - { - bool trigger = p.value._int == true; - if (trigger) p.value._int = false; - return trigger; - } + case ParameterType::Trigger: return p.value._trigger == true; } return false; } diff --git a/src/libjin/ai/je_state_machine.h b/src/libjin/ai/je_state_machine.h index 193ab65..ba3a318 100644 --- a/src/libjin/ai/je_state_machine.h +++ b/src/libjin/ai/je_state_machine.h @@ -200,12 +200,28 @@ namespace JinEngine ParameterValue value; }; + enum ParameterExpression + { + // + INT_BIGGER = 0x02, + INT_SMALLER = 0x04, + INT_EQUAL = 0x08, + // + FLOAT_BIGGER = 0x10, + FLOAT_SMALLER = 0x20, + FLOAT_EQUAL = 0x40, + // + BOOL_IS = 0x80, + BOOL_NOT = 0x100, + }; + /// /// Traslation's condition. /// struct Condition { std::string parameter; + ParameterExpression expression; ParameterValue value; }; |