博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Unity3D人物角色连招(只放了三招)
阅读量:6816 次
发布时间:2019-06-26

本文共 1813 字,大约阅读时间需要 6 分钟。

hot3.png

效果预览: (flash版本 文件3M,先等待一下) (webplayer版本 文件1.7M,先等待一下)
using UnityEngine;using System.Collections;public class PlayerAttackController : MonoBehaviour {	//记录当前攻击动画;	AnimationClip currentAttack;	//获取人物动画组件;	Animation playerAnimation;	//动画标签;	public enum ActionState	{		Attack_0,		Attack_1,		None	}	//记录当前动画标签;	private ActionState actionState = ActionState.None;		/**	 * 攻击的逻辑	 */	void AttackLogic(){		if (Input.GetButtonDown("Fire1")){			if (actionState != ActionState.Attack_0 && actionState != ActionState.Attack_1) {				actionState = ActionState.Attack_0;			}else if (actionState == ActionState.Attack_0 && playerAnimation[currentAttack.name].time > 1.0f){				actionState = ActionState.Attack_1;			}		}	}		/**	 * 攻击套路选择	 */	void Attacks (){		float delayTime =0.0f;		switch (actionState){			case ActionState.Attack_0:				delayTime = -0.1f;				playerAnimation.CrossFade("Attack", 0.15f);				currentAttack = playerAnimation["Attack"].clip;				break;							case ActionState.Attack_1:				delayTime = -0.1f;				playerAnimation.CrossFade("Attack01", 0.15f);				currentAttack = playerAnimation["Attack01"].clip;				break;							case ActionState.None:				break;		}				//Switch to default if an animation is almost over		if (playerAnimation[currentAttack.name].time > (playerAnimation[currentAttack.name].length +delayTime)){			actionState = ActionState.None;			currentAttack = playerAnimation["Idle"].clip;		}	}		void Awake(){		//程序开启前,获取人物动画组件;		playerAnimation = GetComponent 
() as Animation; } void Start () { if (playerAnimation.clip) { currentAttack = playerAnimation.clip; } else { currentAttack = playerAnimation["Idle"].clip; } } // Update is called once per frame void Update () { if (currentAttack != null){ AttackLogic(); Attacks(); } }}

转载于:https://my.oschina.net/fengLao/blog/94426

你可能感兴趣的文章
【01】模板模式
查看>>
在C++中,内存分成5个区
查看>>
华为SDN技术注入联通云清洗业务 从源头拒绝DDoS攻击
查看>>
python 学习day4
查看>>
ofbiz中的类加载机制classloader
查看>>
深入理解JS中的变量作用域
查看>>
go语言学习-内置函数
查看>>
vultr lemp php7.1 降级 php5.6
查看>>
《spring 4.x 企业应用开发实战》读者问题收集
查看>>
.NET英语单词 计算机英语 术语表1
查看>>
我的友情链接
查看>>
面试宝典系列-Hash碰撞是什么?
查看>>
我的友情链接
查看>>
产品管理的八大库
查看>>
可能存在安全威胁的端口及操作建议
查看>>
配置管理小报100323: 使用CVS中的常见故障
查看>>
Web 实时推送技术的总结
查看>>
OPENCV 使用系列 JAVA入门 之搭建环境
查看>>
Crypto API 学习
查看>>
EXTJS在IE9下出现兼容性问题
查看>>