diff options
| author | Matt Kohls <mattkohls13@gmail.com> | 2019-12-05 01:49:58 -0500 | 
|---|---|---|
| committer | Matt Kohls <mattkohls13@gmail.com> | 2019-12-05 01:49:58 -0500 | 
| commit | e4312e8008106eadd1b4d8a23630600f5952a8ca (patch) | |
| tree | bdd3b87d69837737430edcb0b3a1fabe5963a092 /public | |
| parent | 445013b6b675c6687af52d184a993c6567ed2975 (diff) | |
| download | rogue.js-e4312e8008106eadd1b4d8a23630600f5952a8ca.tar.gz rogue.js-e4312e8008106eadd1b4d8a23630600f5952a8ca.tar.bz2 rogue.js-e4312e8008106eadd1b4d8a23630600f5952a8ca.zip | |
Players can run around and attack each other, client disconnects on
death
Diffstat (limited to 'public')
| -rw-r--r-- | public/js/rogue.js | 36 | 
1 files changed, 34 insertions, 2 deletions
| diff --git a/public/js/rogue.js b/public/js/rogue.js index 0b584a7..5a9896e 100644 --- a/public/js/rogue.js +++ b/public/js/rogue.js @@ -136,7 +136,7 @@ function parseMessage(message) {  	var msg = JSON.parse(message);  	map = msg.map;  	player = new Player(msg.strength, msg.dexterity, msg.constitution, msg.intelligence, msg.wisdom, msg.level, msg.x, msg.y, msg.floor, msg.hp, msg.ac, msg.potions, msg.armor, msg.weapon, msg.staff); -	if(msg.msg != "") { +	if(msg.msg != "" && msg.msg != "undefined") {  		showMessage(msg.msg);  	}  	drawMap(); @@ -299,7 +299,7 @@ function drawMap() {  		localX++;  	} -	drawSprite(players[0], 10, 13, false); +	drawSprite(players[0], 11, 13, false);  }  /** @@ -356,6 +356,36 @@ function drawPlayerInfo() {  	renderText(player.staff.toString(), 31 - boxWidth + 5, 13);  	renderText(player.armor.toString(), 31 - boxWidth + 5, 14);  	renderText(player.potions.toString(), 31 - boxWidth + 5, 15); + +	if(player.hp <= 0) { +		drawGameOver(); +	} +} + +function drawGameOver() { +	for(var i = 0; i < 14; i++) { +		for(var j = 0; j < 5; j++) { +			drawSprite(nothing, 5 + i, 17 + j, false); +			if(i == 0) { +				drawSprite(border[5], 5, 17 + j, false); +				drawSprite(border[4], 19, 17 + j, false); +			} +		} +		drawSprite(border[6], 5 + i, 17, false); +		drawSprite(border[7], 5 + i, 21, false); +	} +	drawSprite(border[1], 5, 17, false); +	drawSprite(border[0], 19, 17, false); +	drawSprite(border[3], 5, 21, false); +	drawSprite(border[2], 19, 21, false); +	drawSprite(tomb, 11, 13, false); +	renderText("G a m e   O v e r", 8, 19); + +	if(websocket) { +		showMessage('Disconnecting from game'); +		websocket.onerror = websocket.onopen = websocket.onclose = websocket.onmessage = null; +		websocket.close(); +	}  }  /** @@ -426,6 +456,8 @@ function renderText(message, x, y) {  				sprite = indexSprite(upper, character - 65);  			} else if(character >= 97 && character <= 122) {  				sprite = indexSprite(lower, character - 97); +			} else if(character == 45) { +				sprite = indexSprite(symbol, 21);  			}  			// TODO: Add other symbols  		} | 
