Ejemplo n.º 1
0
 public LootedService(SignalBus signalBus)
 {
     signalBus.Subscribe <PlayerActionSignal>(signal =>
     {
         if (signal.Data.looted != null)
         {
             Looted = signal.Data.looted;
         }
     });
 }
Ejemplo n.º 2
0
 public void Dismiss()
 {
     Looted = null;
 }
Ejemplo n.º 3
0
        public void SetLooted(Looted lootedObj)
        {
            looted = lootedObj;
            switch (looted.type)
            {
            case LootedType.CHEST:
                title.text = "Chest opened";
                break;

            case LootedType.BATTLE:
                title.text = "Battle rewards";
                break;

            case LootedType.BREAKDOWN:
                title.text = "Remnants collected";
                break;

            case LootedType.STORY:
                title.text = "Docs gift";
                break;

            case LootedType.LEVEL_UP:
                title.text = $"Rewards for reaching level {progressService.Progress.level}";
                break;

            case LootedType.VIP_LEVEL_UP:
                title.text = $"Rewards for reaching vip level {progressService.Progress.level}";
                break;

            case LootedType.MERCHANT:
            case LootedType.BLACK_MARKET:
                title.text = "You bought";
                break;

            case LootedType.UPGRADE:
                title.text = "Upgrade finished";
                break;

            case LootedType.ODD_JOB:
                title.text = "Odd job rewards";
                break;

            case LootedType.DAILY_ACTIVITY:
                title.text = "Daily activity reward";
                break;

            case LootedType.TASK:
                title.text = "Task rewards";
                break;
            }

            lootContainer.gameObject.SetActive(true);
            actionButton.gameObject.SetActive(false);
            looted.items.ForEach(item =>
            {
                if (item.type == LootedItemType.GEAR)
                {
                    var gear = gearService.Gear(item.value);
                    gear.markedToBreakdown = forgeService.IsAutoBreakdown(gear);
                }
                var prefab = Instantiate(lootItemPrefab, lootContainer);
                prefab.SetItem(item, lootContainer.rect.height);
            });
        }