public Repository() { //Сингтоны движка и сессии Engine = GameEngine.getInstance(); Engine.Buy += (user) => { return(BuyRepo?.Invoke(user)); //Надеюсь, меня не исключат за это говно; }; Engine.BuybackFromPrison += (user) => { return(BuybackFromPrisonRepo?.Invoke(user)); }; Engine.GetUsersProperties += (user) => { GetUsersPropertiesRepo?.Invoke(user); }; Engine.JailRelease += (user) => { JailReleaseRepo?.Invoke(user); }; Engine.SetPrison += (user) => { SetPrisonRepo?.Invoke(user); }; Engine.Dice += (user, a, b) => { DiceRepo?.Invoke(user, a, b); }; Engine.CurrentCell += (user, position) => { CurrentCellRepo?.Invoke(user, position); }; Engine.GetCardPick += (user, card) => { GetCardPickRepo?.Invoke(user, card); }; Engine.NoEnoughMoney += (user) => { NoEnoughMoneyRepo?.Invoke(user); }; Engine.Transaction += (user, priviouse_m, current_m) => { TransactionRepo?.Invoke(user, priviouse_m, current_m); }; Engine.SetHouse += (user) => { return(ByeHouseRepo?.Invoke(user)); }; Engine.RemoveFromGame += (user) => { Session.Users.Remove(user); if (Session.Users.Count == 1) { if (Session.Users.Last() != null) { EndGame?.Invoke(Session.Users.Last()); } } }; Session = Session.getInstance(); }