我刚刚学完JavaScript,决定尝试用它来制作游戏。然后我发现了KaplayJS并且在过去的3天里一直在学习它,并且想听听你的意见关于这个代码。
主代码:
场景("游戏", () => {
设置重力(1200)
let 分数 = 0
const playerScore = add([
文本("得分:0"),
pos(20, 20)
])
function 更新分数() {
playerScore.text = `得分:${分数}`
}
const floor = add([
rect(10000, 2000),
pos(0.2, 725),
颜色("#358a00"),
body({ isStatic: true }),
area(),
])
const player = add([
sprite("mark"),
pos(center()),
scale(2),
anchor("center"),
rotate(0),
area(),
body(),
"mark"
]);
const enemy = add([
sprite("bean"),
pos(240, 673),
scale(2),
anchor("center"),
rotate(0),
area(),
body(),
"enemy"
])
function kaboom(target) {
addKaboom(target.pos)
play("kaboom", { volume: 1, speed: 1.5 })
destroy(target)
}
function spawnEnemy() {
return add([
sprite("bean"),
pos(rand(50, 900), 100),
area(),
body(),
"enemy",
])
}
player.onCollide("enemy", (e) => {
kaboom(e)
spawnEnemy()
分数++
updateScore()
})
onKeyDown("right", () => {
const SPEED = isKeyDown("shift") ? 500 : 300
player.move(SPEED, 0)
})
onKeyDown("left", () => {
const SPEED = isKeyDown("shift") ? 500 : 300
player.move(-SPEED, 0)
})
onKeyDown("space", () => {
if (player.isGrounded()) {
player.jump(550)
}
})
debug.inspect = true
});
资源:
加载Sprite("mark", "assets/sprites/mark.png");
加载Happy();
加载Sprite("bean", "assets/sprites/bean.png");
加载Sound("kaboom", "assets/sounds/explosion_1.mp3");
想法:
基本上你就是一个叫做马克的黄色球,带着一个微笑的脸,跑着碰到绿色球,叫做豆子。每次你碰到豆子,它就会死掉,分数就会增加。
我真的很自豪自己能完成这个游戏,因为我以前从来没有编写过游戏,我更习惯用HTML、CSS和JS来制作一些有趣的网站,甚至在这方面我也不是很擅长。真的觉得Kaplay被低估了。
评论 (0)