mirror of
https://github.com/He4eT/DotDashPit.git
synced 2026-05-04 17:37:23 +00:00
game: PC on arena
This commit is contained in:
parent
da4171e50e
commit
6b1c0ca445
1 changed files with 93 additions and 21 deletions
112
game.js
112
game.js
|
|
@ -6,6 +6,8 @@
|
||||||
// version: 0.1
|
// version: 0.1
|
||||||
// script: js
|
// script: js
|
||||||
|
|
||||||
|
// api: https://github.com/nesbox/TIC-80/wiki/API
|
||||||
|
|
||||||
function TIC() {
|
function TIC() {
|
||||||
gameStages[currentStage]()
|
gameStages[currentStage]()
|
||||||
}
|
}
|
||||||
|
|
@ -21,9 +23,26 @@ let currentStage = 'mainMenu'
|
||||||
|
|
||||||
// State
|
// State
|
||||||
|
|
||||||
let t = 0
|
let interface = {
|
||||||
let x = 96
|
arenaX: 7,
|
||||||
let y = 24
|
arenaY: 7,
|
||||||
|
spriteSize: 7,
|
||||||
|
spriteHalfSize: 3,
|
||||||
|
}
|
||||||
|
|
||||||
|
let arena = {
|
||||||
|
top: 0,
|
||||||
|
right: 225,
|
||||||
|
bottom: 89,
|
||||||
|
left: 0,
|
||||||
|
}
|
||||||
|
|
||||||
|
let player = {
|
||||||
|
sprite: 1,
|
||||||
|
speed: 1,
|
||||||
|
x: 0,
|
||||||
|
y: 0,
|
||||||
|
}
|
||||||
|
|
||||||
// Main Menu
|
// Main Menu
|
||||||
|
|
||||||
|
|
@ -44,15 +63,49 @@ function mainMenu() {
|
||||||
// Gameplay
|
// Gameplay
|
||||||
|
|
||||||
function gameplay() {
|
function gameplay() {
|
||||||
if (btn(BTN_U)) y--
|
// chackColisions()
|
||||||
if (btn(BTN_D)) y++
|
|
||||||
if (btn(BTN_L)) x--
|
|
||||||
if (btn(BTN_R)) x++
|
|
||||||
|
|
||||||
cls(13)
|
handleMoves()
|
||||||
spr(1 + (((t % 60) / 30) | 0) * 2, x, y, 14, 3, 0, 0, 2, 2)
|
handleMorse()
|
||||||
print('HELLO WORLD!', 84, 84)
|
|
||||||
t++
|
// spawn()
|
||||||
|
// moveEnemies()
|
||||||
|
|
||||||
|
drawInterface()
|
||||||
|
drawArena()
|
||||||
|
// drawFX()
|
||||||
|
// drawEnemies()
|
||||||
|
drawPlayer()
|
||||||
|
}
|
||||||
|
|
||||||
|
function handleMoves() {
|
||||||
|
player.speed = btn(BTN_A) ? 2 : 1
|
||||||
|
|
||||||
|
if (btn(BTN_U)) player.y = Math.max(player.y - player.speed, arena.top)
|
||||||
|
if (btn(BTN_D)) player.y = Math.min(player.y + player.speed, arena.bottom)
|
||||||
|
if (btn(BTN_L)) player.x = Math.max(player.x - player.speed, arena.left)
|
||||||
|
if (btn(BTN_R)) player.x = Math.min(player.x + player.speed, arena.right)
|
||||||
|
}
|
||||||
|
|
||||||
|
function handleMorse() {
|
||||||
|
player.sprite = btn(BTN_B) ? 17 : 1
|
||||||
|
}
|
||||||
|
|
||||||
|
function drawInterface() {
|
||||||
|
cls(0)
|
||||||
|
}
|
||||||
|
|
||||||
|
function drawArena() {
|
||||||
|
map(0, 0, 30, 15)
|
||||||
|
}
|
||||||
|
|
||||||
|
function drawPlayer() {
|
||||||
|
spr(
|
||||||
|
player.sprite,
|
||||||
|
interface.arenaX + player.x - interface.spriteHalfSize,
|
||||||
|
interface.arenaY + player.y - interface.spriteHalfSize,
|
||||||
|
0,
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Constants
|
// Constants
|
||||||
|
|
@ -63,16 +116,35 @@ const [BTN_U, BTN_D, BTN_L, BTN_R, BTN_A, BTN_B, BTN_X, BTN_Y] = [
|
||||||
]
|
]
|
||||||
|
|
||||||
// <TILES>
|
// <TILES>
|
||||||
// 001:eccccccccc888888caaaaaaaca888888cacccccccacc0ccccacc0ccccacc0ccc
|
// 001:8800088080000080008880000088800000888000800000808800088000000000
|
||||||
// 002:ccccceee8888cceeaaaa0cee888a0ceeccca0ccc0cca0c0c0cca0c0c0cca0c0c
|
// 002:0000000000000000000000000000000000000000000001110000012200000123
|
||||||
// 003:eccccccccc888888caaaaaaaca888888cacccccccacccccccacc0ccccacc0ccc
|
// 003:0000000000000000000000000000000000000000111111112222222233333333
|
||||||
// 004:ccccceee8888cceeaaaa0cee888a0ceeccca0cccccca0c0c0cca0c0c0cca0c0c
|
// 004:0000000000000000000000000000000000000000111000002210000032100000
|
||||||
// 017:cacccccccaaaaaaacaaacaaacaaaaccccaaaaaaac8888888cc000cccecccccec
|
// 017:0000000008808800080008000008000008000800088088000000000000000000
|
||||||
// 018:ccca00ccaaaa0ccecaaa0ceeaaaa0ceeaaaa0cee8888ccee000cceeecccceeee
|
// 018:0000012300000123000001230000012300000123000001230000012300000123
|
||||||
// 019:cacccccccaaaaaaacaaacaaacaaaaccccaaaaaaac8888888cc000cccecccccec
|
// 019:2111111111111111111111111111111111111111111111111111111111111111
|
||||||
// 020:ccca00ccaaaa0ccecaaa0ceeaaaa0ceeaaaa0cee8888ccee000cceeecccceeee
|
// 020:3210000032100000321000003210000032100000321000003210000032100000
|
||||||
|
// 034:0000012300000122000001110000000000000000000000000000000000000000
|
||||||
|
// 035:3333333322222222111111110000000000000000000000000000000000000000
|
||||||
|
// 036:3210000022100000111000000000000000000000000000000000000000000000
|
||||||
// </TILES>
|
// </TILES>
|
||||||
|
|
||||||
|
// <MAP>
|
||||||
|
// 000:203030303030303030303030303030303030303030303030303030303040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 001:213131313131313131313131313131313131313131313131313131313141000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 002:213131313131313131313131313131313131313131313131313131313141000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 003:213131313131313131313131313131313131313131313131313131313141000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 004:213131313131313131313131313131313131313131313131313131313141000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 005:213131313131313131313131313131313131313131313131313131313141000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 006:213131313131313131313131313131313131313131313131313131313141000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 007:213131313131313131313131313131313131313131313131313131313141000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 008:213131313131313131313131313131313131313131313131313131313141000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 009:213131313131313131313131313131313131313131313131313131313141000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 010:213131313131313131313131313131313131313131313131313131313141000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 011:213131313131313131313131313131313131313131313131313131313141000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// 012:223232323232323232323232323232323232323232323232323232323242000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
|
// </MAP>
|
||||||
|
|
||||||
// <WAVES>
|
// <WAVES>
|
||||||
// 000:00000000ffffffff00000000ffffffff
|
// 000:00000000ffffffff00000000ffffffff
|
||||||
// 001:0123456789abcdeffedcba9876543210
|
// 001:0123456789abcdeffedcba9876543210
|
||||||
|
|
@ -88,5 +160,5 @@ const [BTN_U, BTN_D, BTN_L, BTN_R, BTN_A, BTN_B, BTN_X, BTN_Y] = [
|
||||||
// </TRACKS>
|
// </TRACKS>
|
||||||
|
|
||||||
// <PALETTE>
|
// <PALETTE>
|
||||||
// 000:1a1c2c5d275db13e53ef7d57ffcd75a7f07038b76425717929366f3b5dc941a6f673eff7f4f4f494b0c2566c86333c57
|
// 000:000000002b36073642586e75657b8383949693a1a1eee8d5b58900cb4b16dc322fd336826c71c4268bd22aa198859900
|
||||||
// </PALETTE>
|
// </PALETTE>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue