Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="character"></param>
        /// <param name="skill"></param>
        private void Harvest(CharacterEntity character, SkillIdEnum skill)
        {
            if (!character.CanGameAction(GameActionTypeEnum.SKILL_HARVEST))
            {
                character.Dispatch(WorldMessage.IM_ERROR_MESSAGE(InformationEnum.ERROR_YOU_ARE_AWAY));
                return;
            }

            if (!IsActive)
            {
                return;
            }

            m_currentJob = character.CharacterJobs.GetJob(skill);
            if (m_currentJob == null)
            {
                return;
            }

            var duration = m_currentJob.HarvestDuration;

            m_quantityFarmed = Util.Next(m_currentJob.HarvestMinQuantity, m_currentJob.HarvestMaxQuantity);

            character.HarvestStart(this, duration);
            m_currentHarvester = character;

            Deactivate();

            m_harvestTimer = base.AddTimer(duration, StopHarvest, true);
        }
Example #2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="skill"></param>
 /// <param name="obtainLevel"></param>
 /// <param name="tools"></param>
 public CraftSkill(SkillIdEnum skill, int obtainLevel, int[] craftables, params int[] tools)
     : base(skill, obtainLevel, tools)
 {
     Craftables = new List <ItemTemplateDAO>();
     foreach (var craftableItem in craftables)
     {
         var template = ItemTemplateRepository.Instance.GetById(craftableItem);
         if (template != null)
         {
             Craftables.Add(template);
         }
     }
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public bool HasSkill(SkillIdEnum id)
 {
     return HasSkill((int)id);
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public bool HasSkill(CharacterEntity character, SkillIdEnum id, int level)
 {
     return HasSkill(character, (int)id, level);
 }
Example #5
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="skillId"></param>
 public JobSkill(SkillIdEnum id, int requiredLevel = 1, params int[] tools)
 {
     Id            = id;
     RequiredLevel = requiredLevel;
     Tools         = new List <int>(tools);
 }
Example #6
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="skillId"></param>
 public HarvestSkill(SkillIdEnum skillId, int obtainLevel, params int[] tools)
     : base(skillId, obtainLevel, tools)
 {
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="skillId"></param>
 public BasicSkill(SkillIdEnum skillId)
     : base(skillId)
 {
 }
Example #8
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="skillId"></param>
 /// <returns></returns>
 public CharacterJobDAO GetJob(SkillIdEnum skill)
 {
     return(Jobs.Find(job => job.HasSkill(m_character, (int)skill)));
 }
Example #9
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="skillId"></param>
 /// <returns></returns>
 public bool HasSkill(SkillIdEnum id)
 {
     return(HasSkill((int)id));
 }
Example #10
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public bool HasSkill(CharacterEntity character, SkillIdEnum id, int level)
 {
     return(HasSkill(character, (int)id, level));
 }
Example #11
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="skillId"></param>
 public BasicSkill(SkillIdEnum skillId)
     : base(skillId)
 {
 }
Example #12
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="skillId"></param>
 public JobSkill(SkillIdEnum id, int requiredLevel = 1, params int[] tools)
 {
     Id = id;
     RequiredLevel = requiredLevel;
     Tools = new List<int>(tools);
 }
Example #13
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="skillId"></param>
 /// <returns></returns>
 public CharacterJobDAO GetJob(SkillIdEnum skill)
 {
     return Jobs.Find(job => job.HasSkill(m_character, (int)skill));
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="skillId"></param>
 public HarvestSkill(SkillIdEnum skillId, int obtainLevel, params int[] tools)
     : base(skillId, obtainLevel, tools)
 {
 }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="character"></param>
        /// <param name="skill"></param>
        private void Harvest(CharacterEntity character, SkillIdEnum skill)
        {
            if(!character.CanGameAction(GameActionTypeEnum.SKILL_HARVEST))
            {
                character.Dispatch(WorldMessage.IM_ERROR_MESSAGE(InformationEnum.ERROR_YOU_ARE_AWAY));
                return;
            }

            if (!IsActive)
                return;

            m_currentJob = character.CharacterJobs.GetJob(skill);
            if (m_currentJob == null)
                return;

            var duration = m_currentJob.HarvestDuration;
            m_quantityFarmed = Util.Next(m_currentJob.HarvestMinQuantity, m_currentJob.HarvestMaxQuantity);

            character.HarvestStart(this, duration);
            m_currentHarvester = character;

            Deactivate();

            m_harvestTimer = base.AddTimer(duration, StopHarvest, true);
        }