78% 2007-09-21 new character screen works completely BORDER drawing is now hard coded and accepts 1-4 colors instead of 2 decided to get rid of the .object entry of components, and to let the interface code accept a single STRUCTURE as a component (should help with table cells) simplified and speeded up calls of hard coded functions ARRAY is no longer a structure type, it's now a data type, like STRUCTURE, INTEGER, STRING, etc 2007-09-16 deck screen displays current load info finished up the program table sorting buttons fixed a bug where structure type names in expressions were replaced with the structure type instead of a new instance of the structure type changing the load / default state of programs works 2007-09-15 added half the program information to the deck screen added cell layout to createTableRow() created the program images from the C++ Decker program image file added the images to the program types and have the deck screen display them the program table can now be sorted by the first column added on/off bulbs for the program status the code for changing the program status is half done 2007-09-14 added the column buttons to the deck screen fixed a bug where c.size would be interpreted as a single string instead of an expression with a member operator, in ScriptReader.java added getRomanNumber(), createProgram() and createDeck() added the hardware types overhauled THING, THING_TYPE, the program type definitions. added ruleset functions for thing size and value it's now possible to omit function call arguments. just leave the argument empty, and the default value will be used function arguments can now have default values f = FUNCTION (a=3,b=4,c=5) debug(a*b*c) f(1,,1) // this function call will print "4" to the debug console, because the default value is used for the omitted parameter b 2007-09-13 worked a bit on the deck screen added all the program types to the JDecker scripts. there's no functionality defined for them yet 2007-09-12 SCROLLPANE works fixed a bug in AssignmentCommand regarding LOCAL variables started to assemble the deck_screen 2007-09-11 added optional structure type variables which do not get copied into each instantiated structure : pixelwidth, pixelheight <- if these contain functions and the width / height isn't explicitly defined, they get called expandable <- got copied into each structure instance in the past fixed the window area turning white whenever the window size changed continued work on SCROLLPANE 2007-09-10 separated the interface code from the decker scripts and made it global scrollbars can now be horizontal removed the remaining occurences of variablesSeeEachOther and variables_see_each_other 2007-09-09 SCROLLBAR works getStackTrace() hardcoded function added function calls in all mouse events can now see all enclosing displayed structures 2007-09-04 minor script fixes working on the SCROLLBAR fixed : a FUNCTION definition can now stand at the end of a script, even if it has no function body and no argument list 2007-09-03 added the & operator changed the @ behaviour to execute implicitly again, unless the & operator is used removed some clutter that had accumulated in the game scripts while I was trying out different implementations of the @ operator 2007-09-02 fixed the @ operator. it now works at least for colors if A contains an @ operator, then B = A will put the @ operator in B too. the operator won't be evaluated colors work again. looks like a few other things are botched now 2007-08-03 FunctionCall.java now produces a helpful error message if it gets called for a value that is not a function fixed a number of places where script function calls didn't use the new function names moved the static functions from FunctionCall.java to their own class StaticScriptFunctions.java 2007-05-09 DRAWING_BOUNDARY and a clipping mechanism added 2007-05-08 v_align and h_align added for easier placement of screen elements TABLE type added. so far it displays a table. dragging rows doesn't work yet 2007-05-07 fps setting and mechanism added 2007-05-04 you can set REAL_EQUAL_RANGE to some value between 0.0 and 1.0 to set the maximum difference between two real numbers which are treated as equal. If no value is set or it is not a real number, 0.000000001 is used instead the parser now recognizes real numbers. it rejects numbers like .5 and 5. there has to be at least one digit before and after the . like in 5.5 expressions work with real numbers 2007-05-01 variables can now store real numbers 77% 2007-04-27 AbstractView.reloadArtwork no longer looks for artwork in sub-folders generated by the subversion system (.svn folders) 2007-04-26 image names are no longer case sensitive all images are loaded at program start fixed insert() and added delete() hardcoded functions added displayed screen history system home button added BORDER_BUTTON structure type added all standard buttons turned into BORDER_BUTTONs and the button images changed accordingly character screen finished 2007-04-25 character screen almost complete a = FUNCTION b operator replaced with @b operator integers in font descriptions are now interpreted as font sizes (in points), so "Arial;13" now describes the same font as "Arial;13pt" date_day_of_month() and date_days_in_month() hardcoded functions added 2007-04-24 bug fixed : a = LINE would save the structure type LINE in a instead of a new LINE, if the type name wasn't followed by a definition body SCREEN_BACKGROUND structure type added finished replacing colors and fonts with functions that fetch the current values for them, for easy modding background images of the new character screen and the home screen replaced with drawn backgrounds