aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2015-10-04missile.vim: Clear missile when it gets to edge of boardTeddy Wing
Remove missiles when they get to the end of the board. Otherwise they just stay there right before the end.
2015-10-04Add right missile (WIP)Teddy Wing
Create a missile moving to the right of the player. Pressing <space> fires the missile. Later we'll want one coming out of each direction, but this is just to test it out. TODO: * Clear missile when it gets to the edge of the board * Make it so the missile doesn't block other actions on the board (including player and enemy movement)
2015-10-04Add .gitignoreTeddy Wing
Ignore /private/ directory for things I don't want to include in the repo. Currently have a possible idea for a soundtrack in there.
2015-10-04game.vim: Move `redraw!` into `RenderBoard()`Teddy Wing
We will always want to `redraw!` when we re-render the board, so call `redraw!` from inside this function. Noticed this when I was writing the missile firing code and realised that I needed to re-render the board at each step in the missile animation.
2015-10-04mappings.vim: Use ` ` instead of `<space>`Teddy Wing
Because `nr2char` gives us an actual space character instead of `<space>` as I had thought given the examples I had seen of it.
2015-10-04doc/space_vlaze.txt: Change backstore to be more upbeatTeddy Wing
Change the backstory based on my Dad's recommendation that the enemy ships should be popcorn kernels. This makes the story more fun and weird and pacifistic. Another possible idea from my conversation with my parents is that the kernels could pop into popcorn when you hit them, and this would turn them into collectibles. Let's see if I have time to make that work.
2015-10-04doc/space_vlaze.txt: Add some backstoryTeddy Wing
Initial ideas for the backstory of the game.
2015-10-04Make player movement workTeddy Wing
* Store player coordinates in `player.vim` instead of `game.vim` because they belong to a player instead of the game/board so it makes more sense to store them there. * Remove old player functions from `game.vim` * Update movement functions to ensure that they update the player coordinates in addition to updating the board array
2015-10-04Add player movement (WIP)Teddy Wing
Kind of add player movement. TODO: Update player coordinates when moving * Add a main game loop to `space_vlaze#game#Init` * Fill in player directional movement functions * game.vim: Add functions to access and set `s:` variables so these can be accessed from player.vim * Add new mappings based on https://github.com/mattn/invader-vim/blob/f04e7f5e8ac42ae87db6050e64449055206c4054/plugin/invader.vim#L44-L60 because it turns out that the mappings we previously defined don't work when out main loop is running.
2015-10-04game.vim: Save player coordinates to script globalsTeddy Wing
These aren't constants so maybe they shouldn't be in all caps but wanted an easy way to know the current coordinates of a player. This should make player movement easier.
2015-10-04Connect in-game mappingsTeddy Wing
* Remove `<nowait>` since it isn't available in my version of Vim (7.3 2010 Aug 15, compiled Jun 20 2012 13:16:02) and breaks the mappings if it's included. * Create function stubs for all mappings * Add missing `<cr>`s to end of mappings to make them work * Initialise mappings when starting a game
2015-10-04game#SetupBoard: Use constants to initialise player to middle of boardTeddy Wing
2015-10-04Initial commit. Initial menu and board stateTeddy Wing
Setup layout and structure of the code. * Add a command and map to start the game * When the game is started, prompt for game start, help, or leaderboard * Create help file template (TODO) * On game start, initialise the board with spaces and a player character * Setup buffer locals on game start * Create various functions that we'll need coming up either as stubs or filled in with what they'll probably be.