日志2025.2.9

日志2025.2.9

1.增加了敌人挥砍类型

2.增加了敌人的死亡状态
在敌人身上添加Ragdoll,死后激活布偶模式
public class EnemyRagdoll : MonoBehaviour
{
    private Rigidbody[] rigidbodies;
    private Collider[] colliders;

    private void Awake()
    {
        rigidbodies = GetComponentsInChildren<Rigidbody>();
        colliders = GetComponentsInChildren<Collider>();
        SetRagdollActive(false);
    }

    //如果是布偶状态,则设置钢铁不为运动学。若为正常状态,将刚体设为运动学
    public void SetRagdollActive(bool active)
    {
        foreach (Rigidbody rb in rigidbodies) 
        { 
            rb.isKinematic = !active;
        }
    }

    //设置碰撞体是否为激活状态
    public void SetColliderActive(bool active)
    {
        foreach(Collider collider in colliders) 
        { 
            collider.enabled = active;
        }
    }

}


public class DeadState_Melee : EnemyState
{
    private Enemy_Melee enemy;
    private EnemyRagdoll ragdoll;
    private bool hasDisapear;

    public DeadState_Melee(Enemy enemyBase, EnemyStateMachine stateMachine, string animBoolName) : base(enemyBase, stateMachine, animBoolName)
    {
        enemy = (Enemy_Melee)enemyBase;
    }

    public override void Enter()
    {
        base.Enter();
        enemy.agent.isStopped = true;
        enemy.animator.enabled = false;

        ragdoll = enemy.GetComponent<EnemyRagdoll>();
        if (ragdoll != null) 
        { 
            ragdoll.SetRagdollActive(true);
        }

        stateTimer = 5f;

    }

    public override void Exit()
    {
        base.Exit();
    }

    public override void Update()
    {
        base.Update();

        if(stateTimer < 0 && !hasDisapear)
        {
            hasDisapear = true;
            ragdoll?.SetColliderActive(false);
        }
    }
}


3.增加了简单的血量系统
    public override void GetHit()
    {
        base.GetHit();
        if(healthPoint <= 0)
            stateMachine.ChangeState(deadState);
    }


4.增加了带盾牌的特殊敌人
public class EnemyShield : MonoBehaviour
{
    [SerializeField] private int durability;
    private Enemy enemy;

    private void Awake()
    {
        enemy = GetComponentInParent<Enemy>();
    }

    public void ReduceDurability()
    {
        durability--;
        if(durability <= 0)
        {
            enemy.animator.SetFloat("ChaseIndex", 0);

            Destroy(gameObject);
        }
    }

}


    //初始化一些特殊的敌人功能
    private void InitializeSpeciality() 
    { 
        if(meleeType == EnemyType_Melee.Shield)
        {
            animator.SetFloat("ChaseIndex", 1);
            shieldTransform.gameObject.SetActive(true);
        }
    }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/895076.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTTP无状态的概念以及对后端服务的设计会产生的影响

HTTP无状态(Statelessness) 是指每个HTTP请求都是独立的,服务器不会记住或依赖于前一个请求的任何信息。每次请求的处理都与其他请求没有直接关系。也就是说,服务器在处理请求时,不会存储关于客户端状态的信息。 一、HTTP无状态的具体含义 ①每个请求独立:每个请求包含了…

操作系统—进程与线程

补充知识 PSW程序状态字寄存器PC程序计数器&#xff1a;存放下一条指令的地址IR指令寄存器&#xff1a;存放当前正在执行的指令通用寄存器&#xff1a;存放其他一些必要信息 进程 进程&#xff1a;进程是进程实体的运行过程&#xff0c;是系统进行资源分配和调度的一个独立单位…

【基于SprintBoot+Mybatis+Mysql】电脑商城项目之上传头像和新增收货地址

&#x1f9f8;安清h&#xff1a;个人主页 &#x1f3a5;个人专栏&#xff1a;【Spring篇】【计算机网络】【Mybatis篇】 &#x1f6a6;作者简介&#xff1a;一个有趣爱睡觉的intp&#xff0c;期待和更多人分享自己所学知识的真诚大学生。 目录 &#x1f680;1.上传头像 -持久…

Windows下ollama详细安装指南

文章目录 1、Windows下ollama详细安装指南1.1、ollama介绍1.2、系统要求1.3、下载安装程序1.4、安装步骤1.5、验证安装1.6、环境变量配置1.7、模型选择与安装【deepseek 示例】1.7.1、拉取并运行模型1.7.2、进阶使用技巧 1、Windows下ollama详细安装指南 1.1、ollama介绍 olla…

10vue3实战-----实现登录的基本功能

10vue3实战-----实现登录的基本功能 1.基本页面的搭建2.账号登录的验证规则配置3.点击登录按钮4.表单的校验5.账号的登录逻辑和登录状态保存6.定义IAccount对象类型 1.基本页面的搭建 大概需要搭建成这样子的页面: 具体的搭建界面就不多讲。各个项目都有自己的登录界面&#…

vue3 点击图标从相册选择二维码图片,并使用jsqr解析二维码(含crypto-js加密解密过程)

vue3 点击图标从相册选择二维码图片&#xff0c;并使用jsqr解析二维码&#xff08;含crypto-js加密解密过程&#xff09; 1.安装 jsqr 和 crypto-js npm install -d jsqr npm install crypto-js2.在util目录下新建encryptionHelper.js文件&#xff0c;写加密解密方法。 // e…

支持多种网络数据库格式的自动化转换工具——VisualXML

一、VisualXML软件介绍 对于DBC、ARXML……文件的编辑、修改等繁琐操作&#xff0c;WINDHILL风丘科技开发的总线设计工具——VisualXML&#xff0c;可轻松解决这一问题&#xff0c;提升工作效率。 VisualXML是一个强大且基于Excel表格生成多种网络数据库文件的转换工具&#…

【JVM详解四】执行引擎

一、概述 Java程序运行时&#xff0c;JVM会加载.class字节码文件&#xff0c;但是字节码并不能直接运行在操作系统之上&#xff0c;而JVM中的执行引擎就是负责将字节码转化为对应平台的机器码让CPU运行的组件。 执行引擎是JVM核心的组成部分之一。可以把JVM架构分成三部分&am…

mysql安装starting the server报错

win10家庭版无法启动服务的&#xff0c;先不要退出&#xff0c;返回上一栏&#xff0c;然后通过电脑搜索栏输入服务两个字&#xff0c;在里面找到mysql80&#xff0c;右键属性-登录&#xff0c;登录身份切换为本地系统就行了

萬有的函數關係速成2. 連續和導數

1.討論間斷點類型 定义: 若函数在某点不满足连续的条件,则该点为间断点。 第一类间断点是左右极限都存在的间断点,其中左右极限相等的是可去间断点,不相等的是跳跃间断点; 第二类间断点是左右极限至少有一个不存在的间断点,包括无穷间断点(极限为无穷)和振荡间断点…

【专题】2025年我国机器人产业发展形势展望:人形机器人量产及商业化关键挑战报告汇总PDF洞察(附原数据表)

原文链接&#xff1a;https://tecdat.cn/?p39668 机器人已广泛融入我们生活的方方面面。在工业领域&#xff0c;它们宛如不知疲倦的工匠&#xff0c;精准地完成打磨、焊接等精细工作&#xff0c;极大提升了生产效率和产品质量&#xff1b;在日常生活里&#xff0c;它们是贴心…

用docker在本地用open-webui部署网页版deepseek

前置条件 用Ollama在本地CMD窗口运行deepseek大模型-CSDN博客文章浏览阅读109次&#xff0c;点赞5次&#xff0c;收藏2次。首次运行需要下载deepseek的大模型包&#xff08;大约5GB&#xff0c;根据本地网速的不同在半个小时到几个小时之间下载完成&#xff09; &#xff0c;并…

DeepSeek-R1 云环境搭建部署流程

DeepSeek横空出世&#xff0c;在国际AI圈备受关注&#xff0c;作为个人开发者&#xff0c;AI的应用可以有效地提高个人开发效率。除此之外&#xff0c;DeepSeek的思考过程、思考能力是开放的&#xff0c;这对我们对结果调优有很好的帮助效果。 DeepSeek是一个基于人工智能技术…

x小兔鲜vue.js

LayoutFooter.vue <template><footer class"app_footer"><!-- 联系我们 --><div class"contact"><div class"container"><dl><dt>客户服务</dt><dd><i class"iconfont icon-kef…

磁盘分区损坏:深度解析与数据恢复策略

一、磁盘分区损坏现象概述 磁盘分区损坏是计算机数据存储领域的一个常见问题&#xff0c;它通常表现为硬盘上的某个分区无法正常访问&#xff0c;数据读写失败&#xff0c;甚至整个分区消失。这种损坏可能源于多种因素&#xff0c;不仅影响用户的正常使用&#xff0c;更可能导…

Python----Python高级(网络编程:网络基础:发展历程,IP地址,MAC地址,域名,端口,子网掩码,网关,URL,DHCP,交换机)

一、网络 早期的计算机程序都是在本机上运行的&#xff0c;数据存储和处理都在同一台机器上完成。随着技术的发展&#xff0c;人 们开始有了让计算机之间相互通信的需求。例如安装在个人计算机上的计算器或记事本应用&#xff0c;其运行环 境仅限于个人计算机内部。这种设置虽然…

k8sollama部署deepseek-R1模型,内网无坑

这是目录 linux下载ollama模型文件下载到本地,打包迁移到k8s等无网络环境使用下载打包ollama镜像非k8s环境使用k8s部署访问方式非ollama运行deepseek模型linux下载ollama 下载后可存放其他服务器 curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linu…

机器学习基本概念(附代码)

这里的“机器”指的是计算机软硬件组织&#xff0c;而非传统的机械装置&#xff1b;而“学习”&#xff0c;则是指软件通过训练过程&#xff0c;其性能得以提升的过程。 一、算法与模型的关系 在机器学习领域&#xff0c;算法和模型是两个核心概念。算法是一种偏抽象的概念&a…

白嫖RTX 4090?Stable Diffusion:如何给线稿人物快速上色?

大家都知道&#xff0c;在设计的初期&#xff0c;我们通常会先绘制草图&#xff0c;然后再进行上色处理&#xff0c;最终才开始进行最终的设计工作。在这个上色的过程中&#xff0c;配色是至关重要的一环。这不仅方便了内部同事的评审&#xff0c;也让产品方和客户可以直观地了…

Win10环境使用ChatBox集成Deep Seek解锁更多玩法

Win10环境使用ChatBox集成Deep Seek解锁更多玩法 前言 之前部署了14b的Deep Seek小模型&#xff0c;已经验证了命令行及接口方式的可行性。但是纯命令行或者PostMan方式调用接口显然不是那么友好&#xff1a; https://lizhiyong.blog.csdn.net/article/details/145505686 纯…