首页 > 其他分享 >004_生命修改和触发器

004_生命修改和触发器

时间:2024-12-29 21:23:23浏览次数:1  
标签:触发器 float 004 生命 修改 using currentHealth position public

004_生命修改和触发器

生命修改

using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;
using UnityEngine.PlayerLoop;

public class RubyController : MonoBehaviour
{
    //最大生命值
    public int maxHealth = 5;

    //当前生命值
    public int currentHealth;

    // 将速度暴露出来,使其可调
    public float speed = 4f;

    //声明刚体对象
    Rigidbody2D rigidbody2D;
    //获取用户输入
    float horizontal;
    float vertical;

    // 在第一次帧更新之前调用 Start
    void Start()
    {
        //获取当前游戏对象的刚体组件
        rigidbody2D = GetComponent<Rigidbody2D>();
        //游戏开始,玩家满血
        currentHealth = maxHealth;
    }

    // 每帧调用一次 Update
    void Update()
    {
        /* 根据按键移动上下左右的位置:每帧移动0.1 */
        //获取水平输入,按向左会获得-1.0f,按向右会获得1.0f
        horizontal = Input.GetAxis("Horizontal");
        //获取垂直输入按向下会获得-1.0f,按向上会获得1.0f
        vertical = Input.GetAxis("Vertical");
    }

    //固定时间间隔执行的更新方法
    private void FixedUpdate()
    {
        //获取对象当前位置
        Vector2 position = rigidbody2D.position;
        //更改位置,Time.deltaTime 每帧的时间间隔,float 类型
        position.x = position.x + speed * horizontal * Time.deltaTime;
        position.y = position.y + speed * vertical * Time.deltaTime;
        //新位置给游戏对象
        rigidbody2D.position = position;

        ChangeHealth(1);
    }

    //更改生命值的方法
    void ChangeHealth(int amount)
    {
        //限制方法,限制当前生命值的赋值范围:0~最大生命值
        currentHealth = Mathf.Clamp(currentHealth + amount, 0, maxHealth);
        Debug.Log("当前生命值:" + currentHealth + "/" + maxHealth);
    }


}

标签:触发器,float,004,生命,修改,using,currentHealth,position,public
From: https://www.cnblogs.com/mzx233/p/18639556

相关文章

  • 通过命令修改deployment的资源限制
    要修改KubernetesDeployment的资源限制,你可以使用kubectlsetresources命令。这个命令允许你直接更新资源限制,而不需要手动编辑Deployment的YAML文件。以下是如何设置内存和CPU资源限制的步骤:1.设置内存和CPU资源限制kubectlsetresourcesdeployment/<deployme......
  • 远程端口修改与访问限制
    当您需要修改远程桌面或SSH的默认端口时,这不仅可以提高安全性,还能避免与其他服务产生冲突。根据您的描述,这里提供详细的步骤来帮助您修改远程端口,并设置访问限制,确保只有授权用户能够访问服务器:修改远程端口:编辑配置文件:WindowsServer:对于WindowsServer,可以通过注册表编......
  • FTP登录不了(修改密码,重启后仍然无法登录)
    您好,关于您提到的“FTP无法登录服务器,修改过管理密码后仍然无法登录”的问题,我们来详细分析一下可能的原因及解决方案。FTP登录失败可能是由多种原因引起的,特别是在修改密码和重启服务器之后。以下是几个可能的原因及相应的解决方法:密码修改未生效:修改密码后,有时需要等待一......
  • 解决方案 | 如何实现右键添加【管理系统环境变量】,更加方便快捷的直达环境变量修改页
       实现如上效果。本地新建一个bat文件,代码如下:(懒得编辑的直接下载做好的右键管理员身份运行就行:https://wwnb.lanzoul.com/il4DK2jbhwbi  ) @echooff::设置菜单名称、命令和图标路径set"menuName=管理系统环境变量"set"command=mshtavbscript:createobject......
  • uniapp不能直接修改props的数据原理浅析
    uniapp不能直接修改props的数据Avoidmutatingapropdirectlysincethevaluewillbeoverwrittenwhenevertheparentcomponentre-renders.Instead,useadataorcomputedpropertybasedontheprop'svalue.Propbeingmutated:"expectDeliveryAt"......
  • 云服务器初始密码修改及安全设置
    您好,关于您提到的云服务器初始密码修改及安全设置的问题,这是一个非常重要的步骤,确保服务器的安全性和稳定性。以下是详细的步骤和建议,帮助您顺利完成密码修改及安全设置。修改初始密码:登录云服务提供商的管理控制台,找到您的云服务器实例。在实例详情页面中,选择“重置密码”......
  • FTYPE命令 显示或修改文件类型,应用于文件扩展名关联。
    FTYPE命令的起源可以追溯到早期的MS-DOS和Windows操作系统。它是用于管理和配置文件扩展名与程序关联的工具之一。具体而言,FTYPE命令与ASSOC命令一起工作,允许用户在文件扩展名与特定程序之间建立关联,控制如何打开不同类型的文件。起源与历史背景:MS-DOS和早期的Windo......
  • 视图、存储过程、触发器 整理
    //视图//视图就是基表的映射//创建视图//create[orreplace]view视图名称[(视图列表)]asselect语句[with[cascaded|local]checkoption];//查看创建视图语句//showcreateview视图名称;//查看视图书记//select*from视图名称...;//修改视图//方......
  • 遗传算法——附python实现与各方法的作用与修改
    前言遗传算法是数学建模中非常重要的一种搜索和优化算法,掌握遗传算法的精髓除了在竞赛中具有优势以外,更主要的是在解决实际问题的时候提供了一种全新的思路,通过将现实中的某种模式转换成算法,并用以解决某种问题的这种思路,或许是算法创新,提高效率的另一条路。本文将会介绍......
  • 如何禁止修改函数名?
    在前端开发中,直接禁止修改函数名是不现实的,因为JavaScript等前端语言允许开发者自由地定义和修改函数名。然而,你可以通过一些方法间接地达到类似的效果或提高代码的安全性。代码规范与团队约定:在团队中建立严格的代码规范,约定不得随意修改关键函数名。通过代码审查(codereview......