517 Commits

Author SHA1 Message Date
Denis Kasak
b8ec907ea0 Added a Sprite class for handling sprites in the Draci format transparently. Modified the test animation to use it.
svn-id: r41509
2009-06-14 12:44:12 +00:00
Denis Kasak
02cd93421d Fixed evaluation of GPL mathematical expressions. The evaluator now checks that, at the end of the evaluation, the stack only contains one value (i.e. the result of the expression).
svn-id: r41477
2009-06-12 11:32:44 +00:00
Denis Kasak
fc22ab5748 Replaced a magic number with a proper constant.
svn-id: r41476
2009-06-12 10:39:33 +00:00
Denis Kasak
5808e4f940 Made DraciFont::drawString() return early if the string is too long to fit on the screen.
svn-id: r41475
2009-06-12 10:37:46 +00:00
Denis Kasak
837f76f61f Made DraciFont::drawString() take a String reference instead of a copy.
svn-id: r41472
2009-06-12 10:25:05 +00:00
Denis Kasak
32d12e90e3 Removed overflow/underflow checks from DraciFont::drawChar(). Instead, we now calculate the number of pixels that can be drawn without overflowing beforehand. Also added asserts to catch any negative value passed for the coordinates.
svn-id: r41471
2009-06-12 10:22:43 +00:00
Denis Kasak
2308748f01 Made the DraciFont::freeFont() method safe to call in any circumstance by making it check for NULL pointers itself to prevent double free / corruption. This also fixes a potential bug in the destructor.
svn-id: r41469
2009-06-12 09:52:35 +00:00
Denis Kasak
51672df700 Properly documented everything (including the new DraciFont class). Reshuffled some old comments.
svn-id: r41467
2009-06-12 09:45:12 +00:00
Denis Kasak
a36a9a0398 Implemented font handling via the DraciFont class. Reprogrammed the test animation to use the original game fonts. Removed the old drawString() hack.
svn-id: r41454
2009-06-11 20:31:36 +00:00
Denis Kasak
293d0ca65d Added support for the new GUI options.
svn-id: r41442
2009-06-11 01:50:10 +00:00
Denis Kasak
4a9ec62e04 Removed special-casing for the colour black as it's no longer needed.
svn-id: r41440
2009-06-10 21:28:16 +00:00
Denis Kasak
78c07b83f8 Shifted the palette one bit to the left aft toemake the dragon animation brighter.
svn-id: r41439
2009-06-10 21:18:14 +00:00
Denis Kasak
b91f93716a Code formatting
svn-id: r41438
2009-06-10 21:12:38 +00:00
Denis Kasak
2c00d65501 Added an additional debuglevel "archiver" to facilitate displaying debug info from the BAR archiver. Also adjusted numeric debug levels.
svn-id: r41436
2009-06-10 18:18:09 +00:00
Denis Kasak
10b8d82baa Made handleMathExpression() properly handle mathematical expressions inside GPL bytecode (instead of just searching for the ending byte). The actual callbacks still need to be implemented.
svn-id: r41415
2009-06-10 02:59:53 +00:00
Denis Kasak
ba49e539d1 Redesigned the GPL2 disassembler to improve readability. It now does a linear search in a table of commands (instead of having a giant switch) when searching for the correct bytecode command.
svn-id: r41414
2009-06-10 01:35:47 +00:00
Denis Kasak
39a8c71f77 Adding Draci Historie engine skeleton (engine stub, BAR archiver, rudimentary GPL disassembler)
svn-id: r41390
2009-06-08 22:18:52 +00:00