private void sendKnockedDownEvent(Player player, string difficultyIndicator, Room.BossSummonMethod bossSummonMethod)
        {
            TrackingEvent e = new TrackingEvent("knocked_down");

            e.Payload.Add("difficulty_indicator", difficultyIndicator);
            e.Payload.Add("frenzy_summon", bossSummonMethod == Room.BossSummonMethod.Frenzy);
            this.injectStandardPayload(player, e);
            Service.Binder.TrackingService.AddEvent(e);
        }
Beispiel #2
0
 public CmdStartBossFight(Room.BossSummonMethod bossSummonMethod)
 {
     this.m_bossSummonMethod = bossSummonMethod;
 }
 public void sendBossFightEvent(Player player, string bossCharacterId, bool isEliteBoss, bool isWildBoss, bool won, Room.BossSummonMethod bossSummonMethod)
 {
     if (string.IsNullOrEmpty(bossCharacterId))
     {
         Debug.LogWarning("Trying to send boss_fight event with empty bossCharacterId");
     }
     else
     {
         Character character = GameLogic.Binder.CharacterResources.getResource(bossCharacterId);
         if (character != null)
         {
             TrackingEvent e = new TrackingEvent("boss_fight");
             if (isWildBoss)
             {
                 e.Payload.Add("boss_type", "wild");
             }
             else if (isEliteBoss)
             {
                 e.Payload.Add("boss_type", "elite");
             }
             else
             {
                 e.Payload.Add("boss_type", "normal");
             }
             e.Payload.Add("boss_character_id", bossCharacterId);
             e.Payload.Add("boss_ai", character.BossAiBehaviour.ToString());
             if ((character.BossAiParameters != null) && (character.BossAiParameters.Length > 0))
             {
                 e.Payload.Add("boss_ai_param1", character.BossAiParameters[0]);
             }
             else
             {
                 e.Payload.Add("boss_ai_param1", string.Empty);
             }
             if ((character.BossAiParameters != null) && (character.BossAiParameters.Length > 1))
             {
                 e.Payload.Add("boss_ai_param2", character.BossAiParameters[1]);
             }
             else
             {
                 e.Payload.Add("boss_ai_param2", string.Empty);
             }
             if ((character.BossAiParameters != null) && (character.BossAiParameters.Length > 2))
             {
                 e.Payload.Add("boss_ai_param3", character.BossAiParameters[2]);
             }
             else
             {
                 e.Payload.Add("boss_ai_param3", string.Empty);
             }
             PerkType bossPerkType = ConfigPerks.GetBossPerkType(player, bossCharacterId);
             if (isEliteBoss && (bossPerkType != PerkType.NONE))
             {
                 e.Payload.Add("boss_perk", bossPerkType.ToString());
             }
             else
             {
                 e.Payload.Add("boss_perk", string.Empty);
             }
             e.Payload.Add("boss_fight_won", won);
             e.Payload.Add("summon_method", bossSummonMethod.ToString());
             e.Payload.Add("frenzy_summon", bossSummonMethod == Room.BossSummonMethod.Frenzy);
             this.injectStandardPayload(player, e);
             Service.Binder.TrackingService.AddEvent(e);
         }
     }
 }