예제 #1
0
        private void HandleProvideSuccess(int productId, int amount, ProductTrader consumer)
        {
            _inventory.TryRemoveProduct(productId, amount);
            var currencyTraded = GetCreditsValue(productId, amount);

            _inventory.TryAddProduct(_creditsProductId, currencyTraded);
            MessageHub.Instance.QueueMessage(
                TradeSuccessMessageArgs.MessageName, new TradeSuccessMessageArgs
            {
                Provider  = _trader,
                Consumer  = consumer,
                ProductId = productId,
                Amount    = amount,
                Credits   = currencyTraded
            });
        }
예제 #2
0
 private void BindToTrader()
 {
     _trader = gameObject.AddComponent <ProductTrader>();
     _trader.OnProvideSuccess += HandleProvideSuccess;
     _trader.OnConsumeSucess  += HandleConsumeSuccess;
 }