public AnimationClip getBuffAnimation(StatusBuffBasis buff) { if (buff.BuffAnimationName.Length == 0) return null; if (LoadedClips.ContainsKey(buff.BuffAnimationName)) return LoadedClips[buff.BuffAnimationName]; var anime = Resources.Load<AnimationClip>(buffdirectory + buff.BuffAnimationName); if (anime != null) { LoadedClips.Add(buff.BuffAnimationName, anime); //GameObject.DontDestroyOnLoad(anime); return anime; } else { Debug.logger.LogError("Not Found File", buff.BuffAnimationName); return null; //throw new System.IO.FileNotFoundException(); } }
public void updateBuff(StatusBuffBasis buff) { }
public void startBuff(StatusBuffBasis buff) { }
public void showInvalidateLog(StatusBuffBasis buff) { }
public void exitBuff(StatusBuffBasis buff) { }
public bool canRegisterBuff(StatusBuffBasis buff) { return buff.GetType() != this.InvalidateStatusBuffType; }
public void registerBuff(StatusBuffBasis buff,bool islogged = true) { if (buffRegisterd(buff.GetType())) { buff.alreadyRegisterdAction(islogged); } else if(Parameter.canRegisterBuff(buff)){ buff.start(islogged); if (!buff.isInstantEffect) { Parameter.CurrentBuffs.Add(buff); BuffAnimationEntity.startBuff(buff); } } }
public void overwriteBuff(StatusBuffBasis buff) { if (buffRegisterd(buff.GetType())) { var find = Parameter.CurrentBuffs.Find(b => b.GetType() == this.GetType()); exitBuff(find.GetType(), false); } registerBuff(buff); }
public bool canRegisterBuff(StatusBuffBasis buff) { //if (!buff.canRegister()) return false; var findA = Abilities.Find(a => a is IStatusBaffReactionAbility && !(a as IStatusBaffReactionAbility).canRegisterBuff(buff)) as IStatusBaffReactionAbility; var findB = CurrentBuffs.Find(b => b is InvalidateBuff && (b as InvalidateBuff).canInvlidate(buff)) as InvalidateBuff; if (findB != null) { findB.showInvalidateLog(); return false; } else if (findA != null) { findA.showInvalidateLog(buff); return false; } return true; }
public bool canRegisterBuff(StatusBuffBasis buff) { return !(buff is Steal); }
public override void showInvalidateLog(StatusBuffBasis buff) { GameController.PlayingLogger.addLog("腕輪のおかげで麻痺しなかった!"); }
public abstract void showInvalidateLog(StatusBuffBasis buff);
public virtual void exitBuff(StatusBuffBasis buff) { }
public virtual bool canRegisterBuff(StatusBuffBasis buff) { return buff.GetType() != InvalidateStatusBuffType; }
public bool canInvlidate(StatusBuffBasis buff) { return buff.GetType() == InvalidateBuffType; }