Sat Apr 16 20:51:51 EST 2005

Got scrolling background working. At last.



=========================================================================




Idea:
----
Aliens/spacehulk type game where player has to light an area for
things to 'shoot/fight'.

Top down view. 2d. tile based (well duh, given my learning of pygame).

things I need to code
---------------------
  * a game object
    - contains everything really

  * an 'thing factory' object
?   - loads in 'thing' images,configs etc
    - 'rotate'/flip images for more variation <flr><fud><r4>
      (by config file desc?)

  * a 'map' object
X   - loads map shape and key from file
    - uses 'thing factory' to make tile array
      + random generator?

  * Thing (PARENTCLASS)
    - properties
      + blocks_los ==> loss loss (as %?)
      + blocks_move ==> move cost (-ve = blocked)
      + needs_decorator_event
      + needs_event
    - event_next=time
    - event_list=( (time, type, args), ...)
      + add/del image_overlay
        * image_overlay: on_fire, blood_splat,
    - event_decorator_next= time
    - event_decorator_list= ( (time,type,args), )
      Not updated when not displayed ?
      + switch images

  * Thing_is_tile
    tiles that make up the map?
    map/perm: floor, wall, door,
    - images (link to 'thing factory'?
x   - light_sources=( val:obj )
x   - light
x   - list of things's that are on this square (decorations, everything?)

  * Thing_needs_brains (PARENTCLASS)
    - brain()
      function to control them

  * Thing_is_static(Thing_needs_brains)
    unmoving things?
    destroyable: furnature, spawn points, doors, turrets, marine buildings

  * Thing_is_active(Thing_needs_brains)
    (players, turrates, lights, aliens, etc)


TODO:
  * precalculated 'sight' circle with dependacy on various hexes.
  * precalc map line of site out to N squares.

Thingies.
===============
Game
+---> map
      +---> Tile
+---> ThingFactory

