← Yop2D

如何收集金币并计分?

新手教程 · 无需代码

Français · English · Español · Deutsch · Italiano · Português · Русский · 中文 · 日本語

玩家碰到金币时,我们想要三件事:金币消失,分数加 1,新的分数显示在屏幕上。

你需要:

第 1 步:给所有金币同一个标签

标签就是一个记号。有了它,一段 Blueprint 就能对所有金币生效,哪怕你放了 50 个。

  1. 选中一枚金币。
  2. 在检查器的 “标签 (Tag)” 栏中输入 piece。
  3. 对每枚金币都这样做(栏旁边的 “列表” 按钮会列出已经用过的标签)。

第 2 步:创建“score”变量

变量就像一个小格子,在游戏中记住一个数字。

  1. 在左侧面板打开 变量 区域,创建一个变量。
  2. 名称:score · 作用域:局部 · 类型:整数 · 初始值:0。
👉 局部 = 变量只在这个场景里存在。如果分数要带到下一关,请选 全局(见 进入下一关)。

第 3 步:Blueprint

  1. 打开场景的 蓝图。
  2. 添加 “如果对象碰到标签” 事件:目标 player,标签 piece。
  3. 添加 “销毁对象”。目标选择 事件中涉及的对象:也就是玩家刚刚碰到的那枚金币。
  4. 添加 “增加变量值”:变量 score,要增加的值 = 1。
  5. 添加 “修改文本”:目标 scoreText,新文本 = ="分数:" + score
  6. 按顺序把四个节点连起来,输出连输入。
  7. 保存,开始游戏,然后去碰一枚金币。
如果对象碰到标签目标:player · 标签:piece
→
销毁对象相关对象
→
增加变量值score · + 1
→
修改文本scoreText
👉 文字开头的 = 号告诉 Yop2D 要计算这段文字,而不是原样写出。没有它,屏幕会原封不动地显示 "分数:" + score。引号里是不会变的那部分。
👉 这个事件每次接触只触发一次:站在金币上不会重复加分。

附加:收集全部金币就获胜

  1. 在 “修改文本” 之后,添加 “条件” 节点,条件 = =score >= 3(3 = 金币数量)。
  2. 把它的 真 输出连到 “屏幕底部小提示” 节点,消息为 你赢了!,或者连到 “下一个场景”。
修改文本scoreText
→
条件=score >= 3
真 →
屏幕底部小提示你赢了!

如果不起作用