Example #1
0
        public static long GetMarketingFinancingCostMultiplier(GameEntity product, GameContext gameContext, int financing)
        {
            var clientCost = Markets.GetClientAcquisitionCost(product.product.Niche, gameContext);
            var flow       = Marketing.GetClientFlow(gameContext, product.product.Niche);

            // not released
            // needs to depend on own size
            if (financing == 0)
            {
                return((long)(clientCost * flow / 10));
            }

            // released
            if (financing == 1)
            {
                return((long)(clientCost * flow));
            }

            // capturing market
            var audience = Markets.GetAudienceSize(gameContext, product.product.Niche);

            return((long)(clientCost * audience));

            //var marketing = MarketingUtils.GetAudienceReachModifierBasedOnMarketingFinancing(financing);

            //return Mathf.Pow(marketing, 1.78f);
        }