2. 对所需角色的设置

在这个页面中,我们会通过添加稍后在本指南中传递到HUD的变量来完成对角色蓝图的设置。 我们还会添加一些条件来确定玩家射击发射的岩石的次数。

角色设置

让我们开始设置角色蓝图。

  1. Content/FirstPersonBP/Blueprints 下的 Content Browser (内容浏览器),打开 First Person Character (第一人称角色)蓝图。

    FirstPersonCharacter.png

  2. 在图表中,删除 Stick Input, Movement InputJump 部分,这样您看到的就如下图所示。

    CleanUp.png

    对于示例游戏来说,我们只需让玩家转身和射击,因此我们移除了其他脚本来让蓝图看起来更简洁。

  3. 在图表中 右键点击 并搜索和添加 Event Begin Play (事件开始播放)节点。

    EventBeginPlay.png

  4. Event Being Play 节点拉出来,然后搜索并添加 Create Widget (创建控件)节点。

    CreateWidget.png

    我们会在开始玩游戏时调用 HUD 控件蓝图并显示它。

  5. Class (类)的 Create Widget (创建控件)节点上,选择 HUD ,然后关闭 Return Value (返回值),使用 Add to Viewport (添加到视口)节点。

    AddToViewport.png

    现在会显示出HUD,我们需要创建一些变量来传递给它。 让我们现在进行此操作。

  6. MyBlueprint 窗口,点击 Add Variable (添加变量)按钮。

    AddVariable.png

  7. 选择新变量,然后在 详细信息 面板中,将其重命名为 isActive 并确认其为 Boolean (布尔)类型。

    NewVariable1.png

  8. 创建另一个变量,将其重命名为 SpawnLocation 并设置其类型为 Transform

    NewVariable2.png

    这个变量将被用于告知岩石生成的位置并从关卡处进行更新。

  9. 创建另一个变量,将其重命名为 Pulls 并设置其类型为 Integer

    NewVariable3.png

    这个变量将会通过按钮来保存玩家可以生成的岩石数量。

  10. 再创建两个 Integer (整数)变量,一个名称为 Shots ,另一个名称为 Score

    AllVariables.png

    您添加的变量应该看起来和上方内容类似。

  11. 点击 Compile (编译)按钮,然后在 Pulls详细信息 面板中,将其 默认值 设置为 10

    DefaultValuePulls.png

  12. 设置 Shots默认值3 ,设置 Score0

武器发射设置

在这里,我们要对玩家能开枪的次数进行小小的变更。

  1. 搜索 InputAction Fire 事件并将其拖曳出来,然后添加 Do N 节点。

    DoN.png

    这个节点会对脚本执行指定次数(从而让我们可以控制玩家发射的次数)。

  2. 我们把 N 设置为 3 ,然后在按住 Alt 的情况下,把 Shots 变量从 MyBlueprint 窗口中拖入,然后重新连接节点。

    SetDoN.png

    在连接 Shots 节点后,把 Set 连接回 Montage Play (播放动画剪辑)节点。

  3. 在按住 Control 不放的情况下,再次拉入 Shots 变量,并将其连接到 Int - Int 节点(设置为 1 )然后按照显示内容进行连接。

    ConnectShots.png

    在这里,我们把射击次数设置为与本身均等,每次按下 Fire 时都- 1。

  4. 右键点击 Shots 旁的图表,然后添加名称为 ResetShots (重设射击次数)的 Custom Event (自定义事件)。

    CreateCustomEvent.png

  5. 按住 Alt ,拉入 Shots ,并将其设置为 3 ,然后先连接 Custom Event (自定义事件),再连接到 DoN 节点的 Reset (重设)。

    ResetEventSet.png

    当调用这个自定义事件时,它会把射击次数设置回3,然后重设DoN节点,这样就可以再次执行它。