public void Add(ObjectId id, string name, int hp, int maxHp, StatusBarType type, string namePrefix = null) { Application.Current.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() => { var statusBar = Get(id); if (statusBar != null) { StatusBars.Remove(statusBar); } else { statusBar = new StatusBar(id, namePrefix) { Name = name, CurrentHealth = hp, MaxHealth = maxHp, Type = type, IsDead = false, IsPoisoned = false, }; } Add(statusBar); })); }
public void Add(Mobile mobile, StatusBarType type, string namePrefix = null) { Application.Current.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() => { var statusBar = Get(mobile.Id); if (statusBar != null) { StatusBars.Remove(statusBar); } else { statusBar = new StatusBar(mobile.Id, namePrefix) { Name = mobile.Name, CurrentHealth = mobile.CurrentHealth, MaxHealth = mobile.MaxHealth, Type = type, IsDead = mobile.IsDead, IsPoisoned = mobile.IsPoisoned, }; } Add(statusBar); })); }
internal void Add(StatusBar statusBar) { if (NeedsReopen) { Open(); } StatusBars.Add(statusBar); }
internal void Remove(StatusBar statusBar) { if (NeedsReopen) { Open(); } StatusBars.Remove(statusBar); }
public void Remove(ObjectId id) { var statusBar = Get(id); if (statusBar != null) { Application.Current.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() => { StatusBars.Remove(statusBar); })); } }
void Start() { //Instantiate //break everything out into a new method that gets called at start. inventory = Instantiate(inventoryPrefab); statusBars = Instantiate(statusBarPrefab); intox = ScriptableObject.CreateInstance <Stat>(); endurance = ScriptableObject.CreateInstance <Stat>(); stress = ScriptableObject.CreateInstance <Stat>(); //Intox intox.startValue = 0; intox.maxValue = 10; //Endurance endurance.startValue = 10; endurance.maxValue = 10; //Stress stress.startValue = 0; stress.maxValue = 100000; }
void Start() { bars = gameObject.GetComponentInChildren <StatusBars>(); }
public bool Contains(ObjectId id) => StatusBars.Any(x => x.Id == id);
public bool Contains(Mobile mobile) => StatusBars.Any(x => x.Id == mobile.Id);
private StatusBar Get(uint id) => StatusBars.FirstOrDefault(x => x.Id == id);