日志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;是系统进行资源分配和调度的一个独立单位…

python:面向对象案例烤鸡翅

自助烤鸡翅的需求&#xff1a; 1.烤鸡翅的时间和对应的状态&#xff1a; 0-4min :生的 4-7min:半生不熟 7-12min&#xff1a;熟了 12min以上&#xff1a;烤糊了 2.添加调料&#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.基本页面的搭建 大概需要搭建成这样子的页面: 具体的搭建界面就不多讲。各个项目都有自己的登录界面&#…

RestTemplate Https 证书访问错误

错误信息 resttemplate I/O error on GET request for “https://21.24.6.6:9443/authn-api/v5/oauth/token”: java.security.cert.CertificateException: No subject alternative names present; nested exception is javax.net.ssl.SSLHandshakeException: java.security.c…

讲人话的理解ai学习原理

通过把各种东西打上分数标签存起来。ai不花算力是不可能的&#xff0c;需要巨大的算力&#xff0c;需要要大量gpu芯片&#xff0c;如果大大降低成本&#xff0c;就需要蒸馏别人成果&#xff0c;把这些参数偷偷弄过来。 比如”猫睡在石头上感觉很凉快&#xff0c;很舒服&#x…

【杂谈】-文明的量子跃迁:AI时代人类物种的自我重构

文章目录 文明的量子跃迁&#xff1a;AI时代人类物种的自我重构一、文明基因的双螺旋进化二、意识矩阵的拓扑重构三、伦理穹顶下的共生协议 文明的量子跃迁&#xff1a;AI时代人类物种的自我重构 在撒哈拉沙漠的岩壁上&#xff0c;史前人类用赭石颜料绘制出羚羊与猎人的身影&a…

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…

C++ 顺序表

顺序表的操作有以下&#xff1a; 1 顺序表的元素插入 给定一个索引和元素&#xff0c;这个位置往后的元素位置都要往后移动一次&#xff0c;元素插入的步骤有以下几步 &#xff08;1&#xff09;判断插入的位置是否合法&#xff0c;如果不合法则抛出异常 &#xff08;2&…

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;并…

android的DataBinding简介

Android DataBinding 简介 DataBinding 是 Android Jetpack 中的数据绑定库&#xff0c;用于将 UI 组件直接与数据模型绑定&#xff0c;减少模板代码并实现双向数据同步。它通过声明式布局简化 UI 更新逻辑&#xff0c;常用于 MVVM&#xff08;Model-View-ViewModel&#xff0…

企业如何利用DeepSeek提升网络安全管理水平

企业可以通过深度整合DeepSeek的AI能力&#xff0c;构建智能化、动态化的网络安全防御体系&#xff0c;以应对APT&#xff08;高级持续性威胁&#xff09;等复杂攻击。以下是具体策略与实践路径&#xff1a; 1. AI驱动的威胁检测与分析 多模态威胁狩猎 DeepSeek的深度学习技术能…

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

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