using System.Collections; using System.Collections.Generic; using UnityEngine; using Core.Utilities; using TowerDefense.Level; using System; /** * 无尽模式道具掉落管理器 * @Author: chenxin * @Date: 2020-10-20 15:00:12 */ namespace KTGMGemClient { public class EndlessDrop { /// /// 唯一id,用于区分每一个掉落,获得掉落时EndlessDropManager会为id分配值 /// public int Id; /// /// 配置数据 /// public reward Reward; /// /// 自动拾取时间 /// public float AutoPickupTime; /// /// 未拾取经历时间 > 自动拾取时间,自动获得 /// public float ElapsedTime; /// /// 是否拾取完成,自动拾取/玩家手动点击拾取完成,拾取完成意味着真正的获得了掉落,清理场景时也要获得所有还未拾取的掉落 /// public bool IsPickupCompleted; } public class EndlessDropReward : MonoBehaviour { /// /// 道具类型 /// 1- money 2-gold 3-rmb 4-gem 5-box (Table.cs请看) /// public int Type; /// /// 道具id,例如宝箱 1-初级宝箱 2-中级宝箱 3-高级宝箱 /// public int Id; /// /// 奖励数量 /// public int Count { get; set; } /// /// 自动拾取时间 /// public float AutoPickupTime = 5f; public EndlessDrop DropData; public event Action ClickDropEvent; // Start is called before the first frame update private void Start() { ClickDropEvent += EndlessDropManager.instance.OnClickDrop; } public void OnClick() { if (ClickDropEvent != null) ClickDropEvent(DropData); } } }