Пример #1
0
        public void TriggerBark(EBarks p_BarkType, Character p_character)
        {
            BarkEventArgs barkEventArgs = GenerateBarkEventArgs(p_BarkType, p_character);

            if (!p_character.ConditionHandler.HasCondition(ECondition.UNCONSCIOUS) && !p_character.ConditionHandler.HasCondition(ECondition.DEAD) && barkEventArgs != null)
            {
                LegacyLogic.Instance.EventManager.InvokeEvent(p_character, EEventType.CHARACTER_BARK, barkEventArgs);
            }
        }
Пример #2
0
        public void RandomPartyMemberBark(EBarks p_Bark)
        {
            BarksPartyStaticData staticData = StaticDataHandler.GetStaticData <BarksPartyStaticData>(EDataType.BARKS_PARTY, (Int32)p_Bark);

            m_CurrentPartyBarkData.CoolDown = staticData.CoolDown;
            m_CurrentPartyBarkData.Bark     = p_Bark;
            if (m_CurrentPartyBarkData.CoolDown == 0)
            {
                ChooseRandomPartyMember();
            }
            if (m_CurrentPartyBarkData.CoolDown > 0)
            {
                CheckPartyBarkCooldown();
            }
        }
		protected override void ParseExtra(String p_BarkData)
		{
			String[] array = p_BarkData.Split(new Char[]
			{
				','
			});
			m_Bark = (EBarks)Enum.Parse(typeof(EBarks), array[0]);
			m_LevelCheckDungeonEntry = Convert.ToBoolean(array[1]);
			m_DungeonMinPartyLv = Convert.ToInt32(array[2]);
			m_DungeonMaxPartyLv = Convert.ToInt32(array[3]);
			if (!Enum.IsDefined(typeof(EBarks), m_Bark))
			{
				throw new FormatException("The string in TriggerBarkInteraction " + array[0] + " doesn't exists in EBarks");
			}
		}
Пример #4
0
 public BarkEventArgs GenerateBarkEventArgs(EBarks p_BarkType, Character p_character)
 {
     if (!p_character.ConditionHandler.HasCondition(ECondition.UNCONSCIOUS) && !p_character.ConditionHandler.HasCondition(ECondition.DEAD))
     {
         if (p_BarkType < EBarks.DEAD)
         {
             BarksPartyStaticData staticData = StaticDataHandler.GetStaticData <BarksPartyStaticData>(EDataType.BARKS_PARTY, (Int32)p_BarkType);
             return(new BarkEventArgs(p_character, staticData.Clipname));
         }
         BarksCharacterStaticData staticData2 = StaticDataHandler.GetStaticData <BarksCharacterStaticData>(EDataType.BARKS_CHARACTER, (Int32)p_BarkType);
         Single value = Random.Value;
         if (value <= staticData2.Probability)
         {
             return(new BarkEventArgs(p_character, staticData2.Clipname, staticData2.Priority, staticData2.OnRecieve));
         }
     }
     return(null);
 }
Пример #5
0
 public CharacterBarkHandler(EBarks p_type)
 {
     m_CharData  = StaticDataHandler.GetStaticData <BarksCharacterStaticData>(EDataType.BARKS_CHARACTER, (Int32)p_type);
     m_PartyData = StaticDataHandler.GetStaticData <BarksPartyStaticData>(EDataType.BARKS_PARTY, (Int32)p_type);
     m_BarkType  = p_type;
 }
Пример #6
0
 public void TriggerBark(EBarks p_BarkType)
 {
     TriggerBark(p_BarkType, m_Character);
 }
Пример #7
0
 public BarkEventArgs GenerateBarkEventArgs(EBarks p_BarkType)
 {
     return(GenerateBarkEventArgs(p_BarkType, m_Character));
 }