diff options
Diffstat (limited to 'autoload')
| -rw-r--r-- | autoload/space_vlaze/enemy.vim | 12 | ||||
| -rw-r--r-- | autoload/space_vlaze/game.vim | 3 | ||||
| -rw-r--r-- | autoload/space_vlaze/score.vim | 16 | 
3 files changed, 30 insertions, 1 deletions
| diff --git a/autoload/space_vlaze/enemy.vim b/autoload/space_vlaze/enemy.vim index 1fefbf5..9b49231 100644 --- a/autoload/space_vlaze/enemy.vim +++ b/autoload/space_vlaze/enemy.vim @@ -12,6 +12,11 @@ if !exists('s:MIN_ENEMIES_ON_BOARD')  endif +if !exists('s:ENEMY_POINT_BASE') +	let s:ENEMY_POINT_BASE = 1 +endif + +  function! space_vlaze#enemy#AddEnemiesToBoard()  	let ticks = space_vlaze#game#Ticks() @@ -59,8 +64,15 @@ function! space_vlaze#enemy#HandleEnemyHitAt(y, x)  	if space_vlaze#game#IsWithinBoard(a:y, a:x)  		if space_vlaze#game#BoardCell(a:y, a:x) ==# space_vlaze#enemy#EnemyCharacter()  			call space_vlaze#game#ClearBoardCell(a:y, a:x) +			call space_vlaze#score#IncrementScore( +				\ s:ENEMY_POINT_BASE * space_vlaze#enemy#PointMultiplier())  			return 1  		endif  	endif  endfunction + + +function! space_vlaze#enemy#PointMultiplier() +	return 1 +endfunction diff --git a/autoload/space_vlaze/game.vim b/autoload/space_vlaze/game.vim index f712478..72594b7 100644 --- a/autoload/space_vlaze/game.vim +++ b/autoload/space_vlaze/game.vim @@ -1,18 +1,19 @@  function! space_vlaze#game#Init()  	let s:loop = 1 -	let s:score = 0  	let s:start_time = localtime()  	let s:ticks = 1  	call space_vlaze#game#SetupWindow()  	call space_vlaze#colors#Initialize()  	call space_vlaze#game#InitializeBoard()  	call space_vlaze#mappings#Initialize() +	call space_vlaze#score#Initialize()  	while s:loop ==# 1  		sleep 50ms  		call space_vlaze#mappings#Listen()  		call space_vlaze#enemy#AddEnemiesToBoard()  		call space_vlaze#game#RenderBoard() +		call space_vlaze#score#RenderScore()  		let s:ticks += 1  	endwhile  endfunction diff --git a/autoload/space_vlaze/score.vim b/autoload/space_vlaze/score.vim new file mode 100644 index 0000000..a6d1684 --- /dev/null +++ b/autoload/space_vlaze/score.vim @@ -0,0 +1,16 @@ +function! space_vlaze#score#Initialize() +	let s:score = 0 +endfunction + + +" Increment score by `num` +function! space_vlaze#score#IncrementScore(num) +	let s:score += a:num +endfunction + + +function! space_vlaze#score#RenderScore() +	let score_line = space_vlaze#game#BoardHeight() + 1 +	 +	call setline(score_line, 'Score: ' . s:score) +endfunction | 
