public bool IsHave(TDBaseData unit) { if (unit == null) { return(false); } return(Data.ContainsID(unit.ID)); }
public virtual void SetConfig(TDBaseData config) { if (config == null) { config = new TDBaseData(); } BaseConfig = config; BaseConfig.OnBeAdded(this); }
protected void ReadUnlockData(TDBaseData data) { //设置科技解锁 foreach (var unlockData in data.Unlock) { if (!AllUnLockKeys.ContainsKey(unlockData.TDID)) { AllUnLockKeys.Add(unlockData.TDID, new List <TDBaseData>()); } if (!UnlockKeyVal.ContainsKey(data.TDID)) { UnlockKeyVal.Add(data.TDID, new Dictionary <string, UnlockData>()); } AllUnLockKeys[unlockData.TDID].Add(data); UnlockKeyVal[data.TDID].Add(unlockData.TDID, unlockData); } }
//获得与这个ID关联的unlock数据 public UnlockData GetUnlockData(TDBaseData data, string unlockID) { if (data == null) { return(null); } if (unlockID == null) { return(null); } if (!UnlockKeyVal.ContainsKey(data.TDID)) { return(null); } if (UnlockKeyVal[data.TDID].ContainsKey(unlockID)) { return(UnlockKeyVal[data.TDID][unlockID]); } return(null); }
public List <UnlockData> GetWillUnlockedDatas(TDBaseData data, float?curLevel) { List <UnlockData> ret = new List <UnlockData>(); if (data == null || curLevel == null) { return(ret); } if (!UnlockKeyVal.ContainsKey(data.TDID)) { return(ret); } foreach (var item in UnlockKeyVal[data.TDID].Values) { if ((curLevel.Value + 1) >= item.Level) { ret.Add(item); } } return(ret); }
public void Despawn(TDBaseData chara, float delay = 0) => Despawn(chara as TData, delay);