public async Task Build() { BuildContext buildContext = null; try { var dataSource = _pluginManager.Resolve <IDataSource>(_project.DataSource.Name); if (OnStartup != null) { await OnStartup.Invoke(this, new OnProjectBuildStartupEventArgs { Project = _project }); } await dataSource.InitData(); foreach (var buildKV in _project.BuildTasks) { _logger.LogInformation($"-------- BuildTask:{buildKV.Key} Start! ---------"); var output = buildKV.Value.Output; buildContext = new BuildContext { PluginManager = _pluginManager, Project = _project, DataSource = dataSource, BuildKey = buildKV.Key, Build = buildKV.Value, Output = output == null ? null : new Output { Type = output.Type, Path = output.Path, Name = output.Name, Mode = output.Mode, Extension = output.Extension } }; await _pluginManager.Resolve <IBuildTask>(buildKV.Value.Type).Build(buildContext); _logger.LogInformation($"-------- BuildTask:{buildKV.Key} End! ---------"); } if (OnSucceed != null) { await OnSucceed.Invoke(this, new OnProjectBuildSucceedEventArgs { Project = _project }); } } catch (Exception ex) { if (OnFailed != null) { await OnFailed.Invoke(this, new OnProjectBuildFailedEventArgs { Project = _project, Context = buildContext, ErrorException = ex }); } throw; } }
private void Init() { startupAnime = new Anime(); startupAnime.AnimateColor((color) => this.Glow.Color = color) .AddTime(0f, new Color(1f, 1f, 1f, 0f), EaseType.QuadEaseOut) .AddTime(0.1f, new Color(1f, 1f, 1f, 1f), EaseType.QuadEaseIn) .AddTime(1f, new Color(0f, 0f, 0f, 1f)) .Build(); startupAnime.AnimateColor((color) => this.Outer.Color = color) .AddTime(0f, new Color(1f, 1f, 1f, 0f), EaseType.QuadEaseOut) .AddTime(0.1f, new Color(1f, 1f, 1f, 1f), EaseType.QuadEaseIn) .AddTime(1f, new Color(0.25f, 0.25f, 0.25f, 1f)) .Build(); startupAnime.AnimateColor((color) => this.Inner.Color = color) .AddTime(0.1f, new Color(1f, 1f, 1f, 0f), EaseType.QuadEaseIn) .AddTime(1f, new Color(0.25f, 0.25f, 0.25f, 1f)) .Build(); startupAnime.AnimateColor((color) => this.Title.Color = color) .AddTime(0.5f, new Color(), EaseType.QuartEaseIn) .AddTime(1f, new Color(0.75f, 0.75f, 0.75f, 1f)) .Build(); startupAnime.AddEvent(startupAnime.Duration, () => OnStartup?.Invoke()); breatheAnime = new Anime(); breatheAnime.WrapMode = WrapModeType.Loop; breatheAnime.AnimateColor((color) => this.Glow.Color = color) .AddTime(0f, Color.black, EaseType.SineEaseOut) .AddTime(1.1f, Color.gray, EaseType.SineEaseIn) .AddTime(2.2f, Color.black) .Build(); breatheAnime.AnimateColor((color) => this.Title.Color = color) .AddTime(0f, new Color(0.75f, 0.75f, 0.75f, 1f), EaseType.SineEaseOut) .AddTime(1.1f, Color.white, EaseType.SineEaseIn) .AddTime(2.2f, new Color(0.75f, 0.75f, 0.75f, 1f)) .Build(); endAnime = new Anime(); endAnime.AnimateColor((color) => this.Glow.Color = color) .AddTime(0f, () => this.Glow.Color, EaseType.QuartEaseIn) .AddTime(1.5f, Color.white) .Build(); endAnime.AnimateColor((color) => this.Outer.Color = color) .AddTime(0f, () => this.Outer.Color, EaseType.QuartEaseIn) .AddTime(1.5f, Color.white) .Build(); endAnime.AnimateColor((color) => this.Inner.Color = color) .AddTime(0f, () => this.Inner.Color, EaseType.QuartEaseIn) .AddTime(1.5f, Color.white) .Build(); endAnime.AnimateColor((color) => this.Title.Color = color) .AddTime(0f, () => this.Title.Color, EaseType.QuartEaseIn) .AddTime(1.5f, Color.white) .Build(); endAnime.AnimateVector3((scale) => this.Scale = scale) .AddTime(0f, Vector3.one, EaseType.SineEaseOut) .AddTime(1.5f, new Vector3(1.1f, 1.1f, 1.1f)) .Build(); endAnime.AddEvent(endAnime.Duration, () => OnEnd?.Invoke()); }
/// <summary> /// Does the on startup. /// </summary> static internal void DoOnStartup() { try { OnStartup?.Invoke(); } catch (Exception ex) { RIExceptionManager.Publish(ex, "Failed during: RIEventManager.DoOnStartup()"); } }
private void OnDota2Startup() { DotaClient.JoinChat(_config.PrivateChat, DOTAChatChannelType_t.DOTAChannelType_Custom); foreach (var map in _config.Games) { ulong id; if (ulong.TryParse(map.Chat, out id)) { DotaClient.JoinChat(map.CustomGameMode.ToString(), DOTAChatChannelType_t.DOTAChannelType_CustomGame); } else { DotaClient.JoinChat(map.Chat, DOTAChatChannelType_t.DOTAChannelType_Custom); } } OnStartup?.Invoke(); }
/// <summary> /// /// </summary> /// <param name="cred"></param> public virtual void Start(Credentials cred) { OnStartup?.Invoke(this); Connect(); this.cred = cred; Login(true); Join(superusers); RequestTags("twitch.tv/tags", "twitch.tv/commands"); foreach (var msg in messages) { EH.InvokePlugins(msg); } Disconnect(); OnShutdown?.Invoke(this); }
public static void InvokeStartup() => OnStartup?.Invoke(null, EventArgs.Empty);