----------------------------------------------------------------------------------------------------------------------------
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Skill : MonoBehaviour
{
public string skillName;// 技能名子
public Image icon;// 技能的圖
public Animator anim;//指定動畫(人物)
private float currentCoolDown;// 保存當前技能的冷卻時間
private Button skillButton; // 技能的按鈕
public float coolDown;// 技能的冷卻時間
[Header("當技能時間為10,可以按的時間為0.1,以此類推")]
public float frequency;// 可以按的時間(技能)
public GameObject Tda;//指定人物
[Header("配合動畫播放時間,去開關腳本")]
public float TdaTime;//配合動畫播放
public void UseSkill()
{
if (currentCoolDown >= coolDown)
{
currentCoolDown = 0;// 重置冷卻時間
}
}
void Start()
{
skillButton = GetComponent<Button>();// 獲得技能按鈕,然后绑定點擊事件
skillButton.onClick.AddListener(() => UseSkill());
currentCoolDown = coolDown;
}
void Update()
{
if (Input.GetKeyDown(KeyCode.F1))
{
UseSkill();
currentCoolDown += Time.deltaTime;// 更新冷卻
anim.SetBool("Atk1", true);
Tda.transform.GetComponent<NewBehaviourScript1>().enabled = false;
}
if (currentCoolDown < coolDown)
{
currentCoolDown += Time.deltaTime;// 更新冷卻
icon.fillAmount = currentCoolDown / coolDown;// 顯示冷卻動畫
anim.SetBool("Atk1", true);
}
if (icon.fillAmount > frequency)
{
anim.SetBool("Atk1", false);
}
if (icon.fillAmount > TdaTime)
{
Tda.transform.GetComponent<NewBehaviourScript1>().enabled = true;
}
}
public void OnButton()
{
Tda.transform.GetComponent<NewBehaviourScript1>().enabled = false;
}
}