void SyncComplete(object sender, ISyncEventArgs e) { ControlsContext.Current.ActionHandlerLocker.Release(); var common = (ICommonData)_context.ValueStack.Values["common"]; common.SyncIsOK = e.Ok; DbContext.Current.Database.SyncComplete(e.Ok); if (_handler != null) { _context.InvokeOnMainThread(() => { _handler.ExecuteCallback(_scriptEngine.Visitor, _state, null); _state = null; _handler = null; }); } if (!e.Ok) { LastError = e.Exception.Message; _context.HandleException(e.Exception); } }
void LoadComplete(object sender, ISyncEventArgs e) { _baseActivity.RunOnUiThread(() => { if (!_disposed) { if (e.Ok) { StartApplication(); } else { var ce = e.Exception as ConnectionException; if (ce != null) { ReturnToStartMenu(ce.FriendlyMessage, ce.Report); } else { HandleException(e.Exception); var ex = e.Exception as CustomException; if (ex != null) { ReturnToStartMenu(ex.FriendlyMessage, ex.Report); } } } } }); }
private void LoadComplete(object sender, ISyncEventArgs args) { _controller.BeginInvokeOnMainThread(() => { if (args.Ok) { OpenStartScreen(true); UIApplication.SharedApplication.EndBackgroundTask(_backgroundTaskId); } else { var ce = args.Exception as CustomException; if (ce != null) { string msg = ce.FriendlyMessage; Logon(Settings.ClearCacheOnStart, msg); } else { HandleException(args.Exception); } UIApplication.SharedApplication.EndBackgroundTask(_backgroundTaskId); } }); }
public static SynchronizerDto MapSynchronizer(ISyncEventArgs syncEventArgs, string userId) { var synchronizer = MapSynchronizer(syncEventArgs.SyncInfo, userId); synchronizer.Id = syncEventArgs.Scene.Id; synchronizer.RoundsPassed = syncEventArgs.Scene.PassedTime; synchronizer.Idle = syncEventArgs.Scene.Idle; synchronizer.TargetX = syncEventArgs.TargetX; synchronizer.TargetY = syncEventArgs.TargetY; synchronizer.SkillActionId = syncEventArgs.SkillActionId; synchronizer.ActorId = syncEventArgs.ActorId; synchronizer.Version = syncEventArgs.Version; synchronizer.TurnTime = syncEventArgs.Scene.RemainedTurnTime; return(synchronizer); }
private void SynchronizationInfoEventHandler(object sender, ISyncEventArgs e) { var battleHub = _serviceProvider.GetRequiredService <IHubContext <ArenaHub.ArenaHub> >(); string actionName = BattleHelper.GetBattleActionMethodName(e.Action); var uniqueUsers = e.Scene.ShortPlayers .GroupBy(key => key.UserId, res => res, (key, res) => new { UserId = key, Players = res }) .ToList(); foreach (var userPlayers in uniqueUsers) { if (userPlayers.Players.All(x => x.Left)) { continue; } var user = battleHub.Clients.User(userPlayers.UserId); if (user != null) { var synchronizer = BattleHelper.MapSynchronizer(e, userPlayers.UserId); foreach (var player in userPlayers.Players) { if (BattleHelper.CalculateReward(ref synchronizer, e.Scene, player.Id)) { Task.Run(async() => await PayRewardAsync(synchronizer.Reward, player.UserId)); } } battleHub.Clients.User(userPlayers.UserId).SendAsync(actionName, synchronizer); } } }
void LoadComplete (object sender, ISyncEventArgs args) { if (args.Ok) _controller.BeginInvokeOnMainThread (() => { OpenStartScreen (true); UIApplication.SharedApplication.EndBackgroundTask (_backgroundTaskId); }); else { CustomException ce = args.Exception as CustomException; if (ce != null) { string msg = ce.FriendlyMessage; Logon (Settings.ClearCacheOnStart, msg); } else HandleException (args.Exception); UIApplication.SharedApplication.EndBackgroundTask (_backgroundTaskId); } }
void LoadComplete(object sender, ISyncEventArgs e) { _baseActivity.RunOnUiThread(() => { if (!_disposed) if (e.Ok) StartApplication(); else { var ce = e.Exception as ConnectionException; if (ce != null) ReturnToStartMenu(ce.FriendlyMessage, ce.Report); else { HandleException(e.Exception); var ex = e.Exception as CustomException; if (ex != null) ReturnToStartMenu(ex.FriendlyMessage, ex.Report); } } }); }
protected void EventHandler(object sender, ISyncEventArgs e) { SyncMessages.Add(e); }
void SyncComplete(object sender, ISyncEventArgs e) { ControlsContext.Current.ActionHandlerLocker.Release(); var common = (ICommonData)_context.ValueStack.Values["common"]; common.SyncIsOK = e.Ok; DbContext.Current.Database.SyncComplete(e.Ok); if (_handler != null) _context.InvokeOnMainThread(() => { _handler.ExecuteCallback(_scriptEngine.Visitor, _state, null); _state = null; _handler = null; }); if (!e.Ok) { LastError = e.Exception.Message; _context.HandleException(e.Exception); } }