************************************
*                                  *
* FACEBLOCK - STILL IN DEVOLOPMENT *
*                                  *
*  By Paul Mackay                  *
*                                  *
************************************
Monday October 1st, 2010, 3:03pm

    >>> Puzzle Game <<<

    This is Still Being Devoloped.. This is A Test Run so I hope you like it.


        Use Cursor to move block around the Playfeild
        You need to put all the boxes on the Pads to advance to next level (this include the time bonus pads) which will give a positve 5 seconds extra bonus each.
        Each screen has 60sec to complete. 
        I have set it for three lives and there are 70 levels, all of which are different patterns and color variations (almost)

        when the screen is flipped i have added a sec increase to timer so you can adjust. (temp only)

 To Do...
         >>> To Add are High score tables, bonus lives, different timing for some maps (faster and slower), Level codes, Highscore table to be shown on main title.
         >>> More character tiles, There are still plenty of ascII tiles spare laying around memory 

 Fixed Bugs..

   Missed Reading a tile correctly and allowed a Block to be pushed when an invalid movement made..   (FIXED)
   Time tile not working correctly..                                                                  (FIXED)
   Pain in the arse, One way blocks code..                                                            (FIXED) / Working - more code to add

 New Tiles..

    Bonus Time       no.98,99       (Implemented   / Drawn up, Place in character data / Enable and working Tile) - Complete         -Push a block onto tile adds +5 seconds to timer
    Extra Life Tile  no.64,64       (not yet setup / Drawn up, Place in character data / Lives=Lives+1                               -needs coding
    Page Flip        no.133,134     (Implemented   / Drawn up, Place in character data / Enabled and working Tile)                   -Have to add small code to support oneway blocks (swap up for down / down for up)                                           
    Oneway Right     no 103,103     (Implemented   / but is draw in character data)  / May move the box to the right only            -minor code to add (push and direction onto block and face direction to push)
    Oneway up        no.100,100     (Implemented   / but is draw in character data)  / May move the box Up only                      -minor code to add (push and direction onto block and face direction to push)
    Oneway Down      no.101,101     (Implemented   / but is draw in character data)  / May move the box down only                    -minor code to add (push and direction onto block and face direction to push)
    Oneway Left      no 102,102     (Implemented   / but is draw in character data)  / May move the box left only                    -minor code to add (push and direction onto block and face direction to push)

 Not to Do...
             >>> I am not going to Put my other programs with this for Making the Maps or colour tables...


notes:

* Tiles are 8x16 (drawn as 2x8x16 tiles)
                 (128 combos 16x16 minus the standard characters a-z and 0 to 9 + "_.;,([/])- ascII char 1,5,6,7,8,32,63,64,98,99,133,134,100-103,145-150,227-231 taken and the rest you can have fun with as only tiles for back grounds and borders) 
                    Ascii characters above that are used are game tiles (blocks that are programmed as set items(timer, box, title lettering, pad, box directions, ect.)


* tile on = left on block and tile off = right  (some are 103,103) left and right
                                                (some are 133,134) left and right  (block on tile = is 133,134  tile in use = 133   tile holding data = 134) 
                                                (others are (eg direction settings of tiles) block onto tile left is 102,102 change to 301,234 then when leaving change to 102,102)
            Pretty simple but sometimes get lost remebering the codes
* _timerfree(t0) selects the free timer and I set it for TI=60 so my timer counts from 60 to 0 (at a one second count) so TI needs a _Timer(t0) stop : TI=TI+5 : _Timer on to add time to TI (Bonus time)
* every frame is Data driven (so all graphics changes to be made in screenmem%(x,y,z) so the changes take place as one frame so no need to print, locate, place characters on screen manually

        z = screen number (eg, map) 1 to 70 : x=left to right and y=top to bottom (horizontal, vertical)

* using the ascii (124,125) will let use have left on, left off why still having 128 characters but 256 combos  
           (so a box could be ascii 5 and 6, but the box with direction arrows could be ascII dir,6 or ascII 5,dir so five tiles instead of 10=256 chars still, but 128 groups (thats how i worked it anyway)

