当前位置: 首页 > news >正文

嘉兴做网站费用电话销售电销系统

嘉兴做网站费用,电话销售电销系统,网站蓝色和红色搭配,好看的 网站正在建设中源码1.技能系统概念首先让我们了解一下游戏的技能本质是什么,以投掷剑为例子,当玩家使用这个技能时,首先会播放玩家的动画,随后通过技能脚本创建一个剑的对象,当剑回收时会再次调用脚本,让它朝向玩家飞来并销毁…

1.技能系统概念

首先让我们了解一下游戏的技能本质是什么,以投掷剑为例子,当玩家使用这个技能时,首先会播放玩家的动画,随后通过技能脚本创建一个剑的对象,当剑回收时会再次调用脚本,让它朝向玩家飞来并销毁自己,所以我们可以创建一个技能管理器,将我们所有的技能脚本放在这个管理器中。

2.创建玩家管理器

创建PlayerManage脚本:

    public static PlayerManage instance;//单例模式,使用单例模式可以使我们更加方便的找到玩家的组件
public Player player;//只需初始化一次,不需要我们反复用GameObject.Find来寻找玩家组件

    public void Awake()
{
if (instance != null)//确保我们只有一个实例
{
Destroy(instance.gameobject);
}
else
{
instance = this;
}
}

修改SkeletonBattleState脚本:

player =PlayerManage.instance.player.transform;//可以直接获取Player信息

在SkeletonGroundedState脚本中也做同样的修改

创建一个空对象PlayerManage并挂载PlayerManage脚本,指定Player的对象,这样我们就实现了玩家管理器

3.创建技能管理器

创建Skill脚本(所有技能的父类):

    [SerializeField] private float cooldown;
private float coolDownTime;//每个技能都有的冷却时间

    protected virtual void  Update()
{
coolDownTime -= Time.deltaTime;
}

    public virtual bool CanbeUsed()//判断是否可以使用技能
{
if(coolDownTime<0)
{
UseSkill();
coolDownTime = cooldown;
return true;
}

        else
{
Debug.Log("i am in cooldown");
return false;
}
}


    public virtual void UseSkill()//使用技能
{

    }

创建Dash_Skill脚本:

public class Dash_Skill : Skill//继承
{
public override void UseSkill()
{
base.UseSkill();

        Debug.Log("i am clone");//这里仅作调试,具体我们想实现一个冲刺后留下一个可以攻击敌人的幻影


    }
}

创建SkillManage脚本:

public static SkillManage instance;//同样单例模式

    public Dash_Skill dash {  get; private set; }//获取冲刺克隆技能


    public void Awake()
{
if(instance != null)
{
Destroy(instance);
}
else
{
instance = this;
}
}

    private void Start()
{
dash = GetComponent<Dash_Skill>();
}

    }

Player脚本:

我们可以删除这里定义的冲刺冷却时间

修改:

    public void CheckForDashInput()
{
if(isWallDetected())
{
return;
}

        if(Input.GetKeyDown(KeyCode.LeftShift)&&SkillManage.instance.dash.CanbeUsed())//这里调用CanbeUsed即可
{

            dashDir = Input.GetAxisRaw("Horizontal");

            if(dashDir==0)
{
dashDir = facingDir;
}
stateMachine.ChangeState(dashState);
}
}

演示:

http://www.dtcms.com/a/400281.html

相关文章:

  • 网站深度功能全网热度指数
  • 变电站智能激光语音综合驱鸟器的适用场景有哪些?
  • codex + windows 环境下使用 serena mcp
  • 测试方案缺少测试设计的推导过程-如何补充
  • 建设网站 翻译儋州个人建站哪家好
  • 网站推广技巧有哪些软件下载类型网站怎么做
  • IP地址管理:docker方式部署phpIPAMv1.7.3
  • 郑州一建集团工程建设有限公司网站网络公司哪个最好
  • 使用 LLVM 16.0.4 编译 MiBench 中的 patricia遇到的 rpc 库问题
  • 第一章:Qt概述
  • 榆次做企业网站猎头公司属于什么行业
  • 江苏省宿迁市建设局网站首页小内存vps WordPress
  • 如何利用网站赚钱网站地图调用
  • 手机网站分辨率做多大logo设计网站国外
  • 如何解决 pip install 安装报错 ModuleNotFoundError: No module named ‘torchaudio’ 问题
  • 4.DSP学习记录之直流电机和步进电机驱动
  • 苏州做网站的公司怎么把网站放到空间吗
  • 网站建设发展现状免费ppt课件下载网站
  • 站长之家seo查询凡科互动app
  • 推广免费网站创建全国文明城市我们应该怎么做
  • 做网站用花瓣上的图片会侵权吗thinkphp做的教育网站
  • 移动端性能监控探索:鸿蒙 NEXT 探针架构与技术实现
  • 我想在泉州做网站wordpress分类不同模板
  • 凡科删除建设的网站装修材料厂家哪家好
  • 二七区网站建设代码编辑器
  • ESP-32 WIFI ST模式
  • 硬件原理图知识体系
  • 初识seatunnel
  • 自己做网站除了域名还要买什么潍坊网站建设建站
  • 做的网站如何发布申请域名备案