Attribute VB_Name = "Journal"
'-------------------------------------------------------------------------------------
'
'  Project: Shooter
'  Date:    23/04/03
'  File:    Journal
'
'  Description
'   This file is the Journal.
'  Overview
'   This is a simple little vertical scroll shooter written using DirectX
'   Screen size is 800 by 600 by 16 but the left and right edges aren't used
'   Need to have two layer parallex scrolling...
'   Pixel Perfect Collision detection (when needed)
'   Sound Effects
'   Weapon Powerups
'-------------------------------------------------------------------------------------
'11/05/04
' Moved numbers to the a text bitmap out of the 32x32 sprite file

'06/05/04
' Removed the pixel perfect checking for the Gem collection (much nicer)
' Added another big rock!

'05/05/04
' Fixed the intersect1graphic problem. Made 128sprites flash red.
' Have a menu screen (not that there is a menu)
' Have a high score screen
' Something is causing a lock up...?


'04/05/04
' Finished putting in the big rock, now just need to change intersect1graphic
'  so that it works correct when passed the graphic number...

'22/04/04
' A large bug found in the player enemy collide, added the player missile collide
' Added player explosion graphics
' Enemies can spawn new groups on destruction (though I think there is a slight
'  bug)
' Now just need to add more of everything...

'21/04/04
' There is a bigger rock in place!!! This means that 64x64 sprites now work!
' Collision to this rocks works ok (and it will kill you)
' A enemy fire routine is in place and is in need of being expanded.

'20/04/04
' Added in a Player Health bar
' Added in Player/Enemy Collision - doesn't seem quite right yet though

'19/04/04
' Started to add the PowerUp Effects and display
' left ALT key swaps them around
' Have made the left shift key the big gun firer... Not that we have any big guns
' Gems now collide with a player and are removed (no power ups though)
' Little specks of stuff now go flying off from pretty much everything
' Some of the powerups are now in!!!
' Just added a few sound effects

'08/04/04
' Added in Spawning (based on map pointer) and groups (which if all in a group
'  are destroyed a small bonus can be generated to the score)
' Large explosions have a larger version of the graphic
' Gems are in.

'04/03/04
' Added a wee score to the game.

'12/12/03
' For my sins I've given a copy of this to Dave Perez - well see what comes of that...
' Added Gamma control to the front screen (this can give me colour washes)
' When you crash into the wall the screen will now flash red (uses Gamma)
' When you hit an enemy they will flash red as well (this is messy as I've had to copy
'  the normal sprite graphic, set them all to red - but memory isnt a problem
'  and its a one time setup cost - so who cares)

'27/05/03
' Again nothing major, Changed the Blit drawer so that you pass a const that describes
'  what its about to do (sort of)
' Added mapflags and spawn to the map (makes the data file quite large however)

'16/05/03
' Nothing major just changed some of the 16x16 graphics to 8x8 graphics
' Added a damage level to missiles so that you can now fire two different missile
'  types (to upgrade pause the game)

'15/05/03
' Added simple clipping to the player and to the enemy sprites

'13/05/03
' Debug Day...
'  Found that the enemy sprites did not have their offset set, which means their
'   bounding boxes where shifted over and so the explosions where in the wrong place
' Added a debug draw routine which produces upto 6 boxes.
' You can blow up the simple little aliens (no complex chain or specials yet though)

'12/05/03
' We have an enemy - actually 3 large rocks and a drone, can't shoot it yet though
' Also collision detection on my graphical border seems to have become flakey - sigh!
' Found it.  The minor changes I made so that I can have multiple rows of tiles was
'  not quite correct, we have pixel perfect again!
' Changed almost all integers with longs...(meant to be faster?)
' Found annoying bug in the unlocking of surfaces in the collision routine...

'08/05/03
' Been playing with collision detection again!  Added a pixel perfect check for one
'  side only, as small objects can be assumed to hit if their bounding box is square
'  this produces a performance speed up.
' Also had to add a graphic pointer into the routine so that we used the correct
'  graphic to do the pixel perfect check against...(Didn't show as a bug as was mainly
'  hard coded before now)

'07/05/03
' A simple explosion structure and processor is in... (32x32 explosion done)

'06/05/03
' Colliding with the top layer of tiles now moves you downwards... (need to move
'  left and right as well)...
' Player Bullets now collide with the top layer of the map as well...
' Made the Lock Graphic Routine slightly more generic

'02/05/03
' Trawled through the web to try and get a handle on how to access the byte array
'  to retrive the correct colour, but no joy yet!  Have converted collision detection
'  to the more simple (read slower) getpixel version for the short term...

'01/05/03
' Added flags for Scrolling Map and show top and bottom layer
' Started working on Player colliding with top layer of map.
' Problem is I'm using 16bit graphics and the check against the bytes is failing...

'30/04/03
' Moving the ship left and right now animates main player
' Bottom layer of scroll is taken from map (what a bloody nightmare that was)
' Top layer now reads from map2 and avoids 0 entries (a bit easier then top layer)
' Changed map definitions to bytes from longs

'29/04/03
' Reverse thrust now creates a little extra thruster appear on the ship as per Xenon2
' Firing first gun gives a small fire animation

'25/04/03
' Went trailing through the web to find graphics from Xenon2.  Will be taking the ship
'  and some of the power up stuff, but I still need to work on the graphics further as
'  the animations are not present. Sigh.
' This does however mean the ship will be constructed in bits (with the core being the
'  same but weapons having their own sprites and animation bits)
' Map has been made parallex (urgh had issues with the damn bottom line!)
' Need to design the hotspot and sprite template stuff next...(lots of arrays!)
' Have decided that the player is all unique variables (enemies and missiles will be
'  held in arrays)
' created Sprite32 and Sprite16 sized graphics...  Poffsets is unique to player
' Offset32 is for the 32x32 frame stuff
' Offset16 is for the 16x16 frame stuff
' Added Frames Per Second rountine...

'24/04/03
' Made the smooth tile scroller doesn't read from the map yet but does handle screen
'  shake.
' Only thing about the scroller at the moment is that it is not parallelex yet.
' No Graphics yet but ship follows the keyboard and is limited to the screen
' No Graphics yet but Missiles are generated by the fire button
' Mouse is not displayed but needs to be checked for as otherwise the cursor will
'  appear!

