Work is coming along swimmingly...
Some changes since the last version:
Boomerangs are now independent of projectiles. And they're smarter and better. They can be fired in any direction (Straight out from the player right now, but any of 360 degrees in the future) and can be thrown at targets.
Targeting is in place. Press Z to target the closest enemy in your view. When targeting, the player will circle the enemy/target. Movement will be fixed in a future version. Right now it's Left and Right to circle and Up and Down to move closer or further from the target. I hope to make the directions work better soon.
Scenery is more prominently used. I don't think the previous version had Scenery, but this one does. Scenery will replace most of a map's data. Tiles will be used much more sparingly. Scenery will replace most decorations and in a much sooner version there will be probably 2 decoration layers at most, possibly only one if at all as they will mostly be replaced by scenery. Scenery can be anything from any image file that gets loaded as they are Quad's. Scenery can also be animated at the speed you choose. Each frame is a different Quad that is cycled through at your speed. In the future I hope to have frames that can have individual timing, or possibly random too. (Think a flickering neon sign.)
Currently Scenery is displayed in the order it is defined. In the future I hope to have a robust sorting and depth algorithm for making actors move behind and in front. It all depends on how fast table.sort and table.insert end up being when dealing with larger detailed maps.
Scenery can also be placed anywhere you want it to be instead of at a 32 pixel multiple like tiles. Flowers and grass will look much better.
A new menu backdrop looks like a softly lit white room. And shadows are cast from the logo. It's better to see in action.
I now use TrueType fonts instead of image fonts for their flexibility. They look better and are much easier to work with, since I don't have to put so much work into drawing them. The Status numbers are still images currently though. I've noticed fonts draw slowly so I want to keep less TTF drawing during action portions of the game, keeping them to dialogs and menus. Still looking for the perfect dialog font. Currently using Georgia. (BTW, is there a way to reference the OS' own included copy of Georgia or Times New Roman instead of having to include my own? I was told yes, but I don't know how. I'd rather not have to ship any fonts personally for copyright reasons since I don't own Georgia or the font I use for menus.)
All UI graphics are in one image now. UI meaning logos, backdrops, stuff belonging to the UI, as opposed to the game itself.
Some Screenshots:
- Menu
- Screen shot 2010-06-26 at 10.06.01 AM.jpg (54.59 KiB) Viewed 1694 times
- Gameplay
- Screen shot 2010-06-26 at 10.08.05 AM.jpg (111.93 KiB) Viewed 1694 times
Note the seemingly random placement of flowers and grass instead of being confined to a tile.
Additional:
I have discovered the joy of replacing table.insert with direct definitions of array entries so I can use strings as id's.
Code: Select all
--Instead of:
table.insert(tableName, 1, { stuff } )
--I use:
tableName["UniqueString"] = { stuff }
This makes my Scenery Library much better and will probably help me with some problems I've been having with enemies and projectiles and stuff since I could give it all unique names instead of assigned unknown numbers.
My question is if it has any speed hit by using strings instead of numbers as ID's?