public void Init(IBootConfig bootConfig = null)
        {
            if (bootConfig == null)
            {
                bootConfig = new DefaultBootConfig();
            }

            _gameObject = new GameObject("GameContext");

            resourceStore = new ResourceStore();

            sceneDirector = _gameObject.AddComponent <SceneDirectorMock>();
            sceneDirector.Init(_gameObject, bootConfig, resourceStore);

            timeKeeper = new TimeKeeper(sceneDirector);

            bgmPlayer = new BgmPlayer();
            bgmPlayer.Init(_gameObject, bootConfig.numBgmSourcePool, sceneDirector, resourceStore);

            sePlayer = new SePlayer();
            sePlayer.Init(_gameObject, bootConfig.numSeSourcePool, sceneDirector, resourceStore);

            signalHub = new SignalHub(sceneDirector);

            tweenerHub = new TweenerHub(sceneDirector, timeKeeper);

            objectPoolHub = new ObjectPoolHub(sceneDirector);

            bootConfig.OnGameBoot();
        }
Example #2
0
        private void Start()
        {
            SignalHub hub = new SignalHub();

            button1.onClick.AddListener(() => hub.Get <OnClick>().Dispatch(button1));
            button2.onClick.AddListener(() => hub.Get <OnClick>().Dispatch(button2));

            hub.Get <OnClick>()
            .On(btn =>
            {
                Debug.Log($"On Click Handler 1. Dispatcher {btn.name}");
            });

            hub.Get <OnClick>()
            .On(btn => Debug.Log($"On Click Handler 2. But should go first. Dispatcher {btn.name}"))
            .Priority(100);

            var count = 3;

            hub.Get <OnClick>()
            .On(btn =>
            {
                count--;
                Debug.Log($"On Click Handler 3. Left {count}. Dispatcher {btn.name}");
            })
            .Countdown(3);

            hub.Get <OnClick>()
            .On(btn =>
            {
                Debug.Log($"On Click Handler 4. Dispatch when count == 0 {count}. Dispatcher {btn.name}");
            })
            .When(() => count == 0);
        }
Example #3
0
    private void Start()
    {
        SimonSaysPuzzle Parent = GetComponentInParent <SimonSaysPuzzle>();

        if (Parent)
        {
            SSSignals = Parent.SimonSaysHub;
        }
        SSSignals.Get <LightOnGreenSignal>().AddListener(OnGreen);
        SSSignals.Get <LightOnYellowSignal>().AddListener(OnYellow);
        SSSignals.Get <LightOnRedSignal>().AddListener(OnRed);
        SSSignals.Get <LightOffSignal>().AddListener(OffDull);
    }
        public ActionResult TransferMoney(TransferMoneyViewModel viewModel)
        {
            var userId = User.Identity.GetUserId();

            if (!ModelState.IsValid)
            {
                viewModel.CustomerBankAccs = unitOfWork.BankAccounts.GetCheckingAndSavingsBankAccs(userId);
                return(View("TransferMoney", viewModel));
            }

            var transactions    = new List <Transaction>();
            var transactionType = unitOfWork.TransactionTypes.GetTransactionType(viewModel.TransactionCategory);
            var debitAccount    = unitOfWork.BankAccounts.GetJustBankAccount(viewModel.DebitAccNo);
            var creditAccNo     = viewModel.CreditAccNo ?? viewModel.CreditAccIban.Substring(10);
            var creditAccount   = unitOfWork.BankAccounts.GetJustBankAccount(creditAccNo);

            if (creditAccount == null)
            {
                viewModel.CustomerBankAccs = unitOfWork.BankAccounts.GetCheckingAndSavingsBankAccs(userId);
                viewModel.ErrorMessage     = "Credit Bank Account could not be found.";
                return(View("TransferMoney", viewModel));
            }

            if (!debitAccount.InitiateTransaction(creditAccount, viewModel.Amount.Value, transactionType, null, out transactions))
            {
                viewModel.CustomerBankAccs = unitOfWork.BankAccounts.GetCheckingAndSavingsBankAccs(userId);
                viewModel.ErrorMessage     = "Could not complete transaction.";
                return(View("TransferMoney", viewModel));
            }

            foreach (var transaction in transactions)
            {
                unitOfWork.Transactions.AddTransaction(transaction);
            }
            unitOfWork.Complete();

            var transHub = new
            {
                DebitAccountNo  = debitAccount.AccountNumber,
                DebitBalance    = debitAccount.Balance,
                CreditAccountNo = creditAccount.AccountNumber,
                CreditBalance   = creditAccount.Balance,
                DebitAmount     = transactions[0].DebitAmount,
                Time            = transactions[0].ValueDateTime.ToLongTimeString(),
                Date            = transactions[0].ValueDateTime.ToLongDateString()
            };

            SignalHub.GetTransactions(transHub);
            return(RedirectToAction("Index", new { AccountNumber = debitAccount.AccountNumber }));
        }
Example #5
0
        public async Task SendsUpdateToAllClients()
        {
            //arrange
            var context = Substitute.For <IHubContext <SignalHub> >();

            context.Clients.All.Returns(Substitute.For <IClientProxy>());

            var hub = new SignalHub(context);

            //act
            await hub.SendMessage(new Message());

            //assert
            await context.Clients.All.Received().SendCoreAsync("Update", Arg.Is <object[]>(array => array[0] is Message));
        }
    // Start is called before the first frame update
    void Start()
    {
        Parent = GetComponentInParent <SimonSaysPuzzle>();

        if (Parent)
        {
            SSSignals = Parent.SimonSaysHub;
        }

        SSSignals.Get <CorrectLightSignal>().AddListener(CorrectAndLock);
        SSSignals.Get <IncorrectLightSignal>().AddListener(IncorrectAndLock);
        SSSignals.Get <ClearLightSignal>().AddListener(Reset);
        SSSignals.Get <FlashLightSignal>().AddListener(StartFlashNoParams);
        SSSignals.Get <LockLightSignal>().AddListener(Lock);
    }
        private void UpdateSignalUsers()
        {
            if (!Hub)
            {
                return;
            }

            if (!EditorApplication.isPlaying)
            {
                Hub.FindReceivers();
            }

            FindSenders();
            MergeSignalUsers();
            ParentHub = SignalManager.FindParentHub(Hub);
            Repaint();
        }
Example #8
0
        public ActionResult BankAccountPetition(byte id)
        {
            var userId           = User.Identity.GetUserId();
            var individual       = unitOfWork.Individuals.GetJustIndividual(userId);                           //8
            var activeBankAccReq = unitOfWork.BankAccountRequests.GetBankAccountRequestWithStatus(userId, id); //9

            if (activeBankAccReq == null)
            {
                var bankAccRequest = new BankAccRequest(individual, RequestType.BankAccActivation, id);
                unitOfWork.BankAccountRequests.AddBankAccountRequest(bankAccRequest);//10

                var hubModel = new { Name = individual.FullName, Type = bankAccRequest.Type.ToString() };
                SignalHub.GetAccRequest(hubModel);

                unitOfWork.Complete();
                return(RedirectToAction("Index"));
            }
            else
            {
                return(View(activeBankAccReq));
            }
        }
Example #9
0
        public IHttpActionResult MakePayment(TransactionInfoDto transactionDto)
        {
            var transactions    = new List <Transaction>();
            var userId          = User.Identity.GetUserId();
            var transactionType = unitOfWork.TransactionTypes.GetTransactionType(transactionDto.Category);
            var debitAccount    = unitOfWork.BankAccounts.GetJustBankAccount(transactionDto.DebitAccNo);
            var creditAccount   = unitOfWork.BankAccounts.GetJustBankAccount(transactionDto.CreditAccNo);
            var tsmBankAcc      = unitOfWork.BankAccounts.GetTsmBankAcc();

            if (creditAccount == null || debitAccount == null)
            {
                return(NotFound());
            }

            if (!debitAccount.InitiateTransaction(creditAccount, transactionDto.Amount, transactionType, tsmBankAcc, out transactions))
            {
                return(BadRequest("Transaction could not be completed."));
            }

            foreach (var transaction in transactions)
            {
                unitOfWork.Transactions.AddTransaction(transaction);
            }
            unitOfWork.Complete();

            var transHub = new
            {
                DebitAccountNo  = debitAccount.AccountNumber,
                DebitBalance    = debitAccount.Balance,
                CreditAccountNo = creditAccount.AccountNumber,
                CreditBalance   = creditAccount.Balance,
                DebitAmount     = transactions[0].DebitAmount,
                Time            = transactions[0].ValueDateTime.ToLongTimeString(),
                Date            = transactions[0].ValueDateTime.ToLongDateString()
            };

            SignalHub.GetTransactions(transHub);
            return(Ok());
        }
Example #10
0
        public ActionResult CreateCardReq(CardReqViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(View("CreditCard", viewModel));
            }

            var userId     = User.Identity.GetUserId();
            var individual = context.Individuals.SingleOrDefault(i => i.Id == userId);

            var creditCardReq = new CardRequest(individual, RequestType.CardActivation, viewModel.CreditLimit.Value,
                                                viewModel.TransactionAmountLimit.Value, CardType.CreditCard);

            context.CardRequests.Add(creditCardReq);
            context.SaveChanges();

            var hubModel = new { Name = individual.FullName, Type = CardType.CreditCard.ToString() };

            SignalHub.GetRequest(hubModel);

            return(RedirectToAction("Index", "Individuals"));
        }
Example #11
0
        public ActionResult Save(IndividualFormViewModel ifvm)
        {
            var userId  = User.Identity.GetUserId();
            var appUser = unitOfWork.Users.GetUser(userId);

            if (!ModelState.IsValid)
            {
                var viewModel = new IndividualFormViewModel()
                {
                    Individual     = ifvm.Individual,
                    Phones         = ifvm.Phones,
                    PrimaryAddress = ifvm.PrimaryAddress
                };
                return(View("IndividualForm", viewModel));
            }
            Collection <Phone> viewPhones = new Collection <Phone>(ifvm.Phones);

            if (ifvm.IndividualId == null)
            {
                var individual = Individual.New(ifvm, appUser, viewPhones);
                appUser.RegisterCompletion = true;
                unitOfWork.Individuals.AddIndividual(individual); //2
                var request = new Request(individual, RequestType.UserAccActivation);
                unitOfWork.Requests.AddRequest(request);          //3

                var hubModel = new { Name = ifvm.Individual.FullName, Type = request.Type.ToString() };
                SignalHub.GetRequest(hubModel);
            }

            unitOfWork.Complete();
            if (User.IsInRole(RoleName.Administrator))
            {
                return(RedirectToAction("GetIndividuals"));
            }
            return(RedirectToAction("Index"));
        }
Example #12
0
 public Player(SignalHub hub)
 {
     _health = 100;
     _hub    = hub;
 }