科学教育

标题: 111111111111111111111111111111111111111111111111111111111111111 [打印本页]

作者: 朱益佳    时间: 2026-1-6 09:55
标题: 111111111111111111111111111111111111111111111111111111111111111


把人改成人的形状,鬼子是鬼子的形状,点空格键是重来。

[color=rgb(51, 102, 153) !important]



作者: kaia    时间: 2026-1-6 09:56
你好!你想让“打鬼子小游戏”里的人物变成人的形状,鬼子变成鬼子的形状,还能用空格键重新开始游戏,是吧?我来帮你一步步讲怎么做,保证简单又好懂!

---

### 1. 把人改成人的形状

原代码里鬼子是用一个红色的方块表示的,我们可以用图片或者用简单的图形代替。

**方法一:用图片显示人**

- 准备一张人的图片(比如`human.png`),然后在人物出现的位置放这张图片。

**方法二:用CSS画一个简单的人形**

比如做一个圆头加身体的小人:

  1. .person {
  2.   position: absolute;
  3.   bottom: 10px;
  4.   width: 40px;
  5.   height: 80px;
  6.   cursor: default;
  7. }
  8. .person .head {
  9.   width: 40px;
  10.   height: 40px;
  11.   background-color: #ffcc99;
  12.   border-radius: 50%; /* 圆头 */
  13. }
  14. .person .body {
  15.   width: 30px;
  16.   height: 40px;
  17.   background-color: #3366cc;
  18.   margin: 0 auto;
  19.   border-radius: 10px;
  20. }
复制代码


**用法**:

  1. <div class="person">
  2.   <div class="head"></div>
  3.   <div class="body"></div>
  4. </div>
复制代码


这样就做出了一个简单的人。

---

### 2. 让鬼子变成鬼子的形状

同样,我们也可以用图片或CSS来设计鬼子的样子。

**用图片:**

比如准备一张“鬼子”的图片叫`ghost.png`,在创建鬼子时候替换颜色背景为图片:

  1. .ghost {
  2.   width: 60px;
  3.   height: 60px;
  4.   background-image: url('ghost.png');
  5.   background-size: cover;
  6.   border-radius: 15px;
  7.   position: absolute;
  8.   bottom: 10px;
  9.   cursor: pointer;
  10. }
复制代码


这样鬼子就显示成鬼子的样子了。

---

### 3. 空格键重来游戏

我们给页面添加键盘监听,按空格键时,重置分数和生命,清除场上所有鬼子,重新开始。

**示例代码:**

  1. window.addEventListener('keydown', e => {
  2.   if (e.code === 'Space') {  // 按空格键
  3.     resetGame();
  4.   } else {
  5.     playerAttack(e.key);
  6.   }
  7. });

  8. function resetGame() {
  9.   // 清除所有鬼子
  10.   ghosts.forEach(g => {
  11.     gameArea.removeChild(g.element);
  12.   });
  13.   ghosts = [];

  14.   score = 0;
  15.   life = 3;
  16.   updateScore();
  17.   updateLife();
  18.   message.textContent = "游戏已重置,开始吧!";

  19.   // 开始新游戏循环
  20.   clearInterval(gameInterval);
  21.   gameInterval = setInterval(createGhost, 2000);
  22. }
复制代码


> 注意:`gameInterval`是你用来不停生成鬼子的计时器,代码里要先把它定义为变量,比如`let gameInterval = setInterval(...);`

---

### 4. 小总结

- 用图片或者CSS画简单的“人”和“鬼子”
- 为空格键添加事件,可以重新开始游戏
- 注意动态创建和删除DOM元素,保持游戏流畅

---

如果你愿意,可以把你的完整代码发给我,我帮你写完具体代码示范哦!希望你玩得开心,网页编程其实很有趣,继续加油!????




欢迎光临 科学教育 (https://www.sci-edu.net/) Powered by Discuz! X3.2