diff options
Diffstat (limited to 'engines/illusions/scriptresource.cpp')
-rw-r--r-- | engines/illusions/scriptresource.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/engines/illusions/scriptresource.cpp b/engines/illusions/scriptresource.cpp index 29f123e492..6aa8ec6c9d 100644 --- a/engines/illusions/scriptresource.cpp +++ b/engines/illusions/scriptresource.cpp @@ -59,6 +59,12 @@ void Properties::init(uint count, byte *properties) { _properties = properties; } +void Properties::clear() { + uint size = (_count >> 3) + 1; + for (uint i = 0; i < size; ++i) + _properties[i] = 0; +} + bool Properties::get(uint32 propertyId) { uint index; byte mask; @@ -103,7 +109,7 @@ byte BlockCounters::get(uint index) { } void BlockCounters::set(uint index, byte value) { - _blockCounters[index - 1] = (get(index - 1) ^ value) & 0x3F; + _blockCounters[index - 1] ^= (_blockCounters[index - 1] ^ value) & 0x3F; } // TriggerCause |