Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The _damageTarget field is wonky. In most places, such as in
giveCharDamage, it's treated like an enum. But in the if opcode
logic (cmdIf), it's definitely treated a character index
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This reverts commit a37b0e8181f055d4778c53aa873816af4349aa9d.
Turns out the overlapping byte access was for the questItems
array, but using Ids which start at 82 rather than 0
|
|
Byte 6 of the flags data, for flags 48 to 55, is directly used
in several places. I didn't think it was needed, but turns out
it is. So I've had to refactor the bool array I had previously
to have this as a bitset, so byte 6 can be accessed
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This refactoring allowed Screen to now simply derive from
Graphics::Screen, and several duplicated methods could be removed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This make things cleaner for reading in 16 and 32 bit parameters
in different opcodes. Also, it solves a crash in the give/take
opcode where the third mode/value pair isn't used for all sub-modes,
so the code was previously reading beyond the end of the parameters
|
|
|
|
|
|
|
|
|