Commit Graph

7 Commits (master)

Author SHA1 Message Date
kts 9f32631fe5 Added rolls test program. This reads rolls.tsc in and attempts to do some basic attack/defend rolls for Tiles. Also added the basic structure for the VM function precompiler. Next modification will likely be converting the current VM precompiling code into using a buffer rather than reading from the file handle directly. This will allow for forward reading of characters in addition to backwards, thereby allowing for easier expression parsing (at least towards what I am conceiving of it thus far). 2014-05-17 16:28:24 -07:00
kts 30472bf0ca Precompiler now adds Variables to a pc_Variable Table. Additional precompilation error checking implemented. TablePair now uses a T_POINTER type. If this data type is used, the memory pointed to is _not_ freed when the TablePair or its parent Table is freed. The developer must remember to free this data type manually when it is used. 2014-04-15 11:18:52 -07:00
kts 902e21ebc6 After far too long of a delay, a git commit. The updates pertain to vm_compile and implements the basic parsing of virtual machine C source files into global, group, and local scopes. At the moment it does not convert to op codes - it only identifies variables declared outside of functions for the given scope. 2014-04-02 00:37:31 -07:00
kts c1397f62fc Fixed addTablePair bug wherein a new TablePair would overwrite the old rather than add itself to the end of the TablePair linked list. Also moved timer.c/.h from engine/sdl/ to engine/. If compiling on Windows, getPTime and doNanoSleep still require SDL. 2014-03-13 16:13:35 -07:00
kts 6b0ef6fd83 Lots of fun abounded with segfaulting. Fixed it eventually - was accessing a state after it had already been freed, thus wreaking havoc in the next state. Maps and Tiles implemented now. Animation is a thing as well, but still a work in progress. It will likely be managed entirely by the Tile's doThink VM function. With modules now (partially loading) and Maps/Tiles figured out, the limited virtual machine will soon take shape. 2014-03-13 03:25:17 -07:00
kts b33b2a534c Added some (pretty bad) module loading code. At the moment modules/module_name/CONF is loaded (if not, it bails) into g_module_conf and the list of sprites and default scale is acquired. From this, g_module_spritesheets is malloced for (spritesheet count) * sizeof(struct Spritesheet*) and Spritesheets are created and loaded into their respective positions. NOTE: Spritesheets should be set up by the renderer in part - probably via function pointer, similar to Elements. After these are loaded, ../modules/module_name/module_name.tsd is attempted to be loaded as well. Not much error checking done yet, so eggshells abound. Module CONF error checking will probably be handled by some function when we first generate the list of modules in modules/ dir. ALSO, Spritesheet loading does not check sprites/CONF for width, height and columns - this will be fixed on next commit. 2014-03-12 03:46:46 -07:00
kts 722ceb5747 Reorganized the project root, deleted unnecessary files, moved data.c/.h, fio.c/.h, llist.c/.h into common and old code into old/ directory. All modules will now reside on the modules/ directory. 2014-03-10 12:41:49 -07:00