public void Update(Object[] args) { if (StartMethod != null) { foreach (var instance in StartList) { var node = instance.Node; if (node != null && node.IsEnabled()) { if (node.Scene != null) { StartMethod.Invoke(instance, null); } } } // TODO: need to handle delayed starts when node isn't enabled StartList.Clear(); } if (UpdateMethod != null) { foreach (var instance in Instances) { bool remove = false; var node = instance.Node; if (node != null && node.IsEnabled()) { if (node.Scene != null) { UpdateMethod.Invoke(instance, args); } else { remove = true; } } else { remove = true; } if (remove) { RemoveList.Add(instance); } } } foreach (var instance in RemoveList) { Instances.Remove(instance); } RemoveList.Clear(); }
public string GetUpdate(ArchAngel.Interfaces.Scripting.DatabaseChanges.IChangedTable table) { object[] parms = new object[] { table }; string body = (string)UpdateMethod.Invoke(null, parms); if (body.StartsWith(" ")) { body = body.Substring(10); } return(body); }
public void RefreshUI(InputField[] inputs, object value) { UpdateUIMethod.Invoke(inputs, value); }
public void Update(float deltaTime) { _update?.Invoke(deltaTime); }
public void Update() { UpdateMethod?.Invoke(); }