Beispiel #1
0
 Boolean isSkillRankingBetterThan(PersonSkill.SkillRanking requirement, PersonSkill.SkillRanking personskillranking)
 {
     if (requirement == PersonSkill.SkillRanking.Apprentice)
     {
         return(true);
     }
     else if (requirement == PersonSkill.SkillRanking.Novice &&
              (personskillranking == PersonSkill.SkillRanking.Novice || personskillranking == PersonSkill.SkillRanking.Master || personskillranking == PersonSkill.SkillRanking.Professional))
     {
         return(true);
     }
     else if (requirement == PersonSkill.SkillRanking.Professional &&
              (personskillranking == PersonSkill.SkillRanking.Master || personskillranking == PersonSkill.SkillRanking.Professional))
     {
         return(true);
     }
     else if (requirement == PersonSkill.SkillRanking.Master && personskillranking == PersonSkill.SkillRanking.Master)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Beispiel #2
0
        public EventOption(String optionTypeString, String optionTextDescriptionString, String optionRequiredSkillString, String optionRequiredSkillRankingString,
                           String optionRequiredTraitString, String optionAvoidedTraitString, int basesuccessrate, String[] influenceSkills, String[] influenceTraits, EventOptionOutcomes[] eventoutcomes)
        {
            thisOptionType        = (EventOptionType)Enum.Parse(typeof(EventOptionType), optionTypeString);
            optionTextDescription = optionTextDescriptionString;
            optionBaseSuccessRate = basesuccessrate;

            //skills and traits stuff
            if (optionRequiredSkillString != "")
            {
                requiresSkill   = true;
                requiredSkill   = (PersonSkill.SkillType)Enum.Parse(typeof(PersonSkill.SkillType), optionRequiredSkillString);
                requiredRanking = (PersonSkill.SkillRanking)Enum.Parse(typeof(PersonSkill.SkillRanking), optionRequiredSkillRankingString);
            }

            if (optionRequiredTraitString != "")
            {
                requiresTrait     = true;
                requiredTraitType = (Person.TraitType)Enum.Parse(typeof(Person.TraitType), optionRequiredTraitString);
            }

            if (optionAvoidedTraitString != "")
            {
                avoidsTrait      = true;
                avoidedTraitType = (Person.TraitType)Enum.Parse(typeof(Person.TraitType), optionAvoidedTraitString);
            }
            foreach (String s in influenceSkills)
            {
                influencialSkills.Add((PersonSkill.SkillType)Enum.Parse(typeof(PersonSkill.SkillType), s));
            }
            foreach (String t in influenceTraits)
            {
                influencialTraits.Add((Person.TraitType)Enum.Parse(typeof(Person.TraitType), t));
            }


            //outcomes
            foreach (EventOptionOutcomes o in eventoutcomes)
            {
                eventOptionOutcomes.Add(o);
            }
        }
Beispiel #3
0
        //passive event builder
        public Event(String thisEventBaseString, int percentChance, String[] eventText,
                     String requiredSkillString, String requireSkillRankingString, String requiredTraitString,
                     String itemType, String[] listOfItems, int stammin, int stammax, int stressmin, int stressmax, int healthmin, int healthmax,
                     String requiredTerrain, String requiredRoad, int staminaeffect, int stresseffect, int healtheffect, int partysizemin,
                     Boolean occurswhentravelling, Boolean occurswhensleeping, Boolean occurswhenwakingup)
        {
            //properties
            thisEventBaseType = (PassiveEventBase)Enum.Parse(typeof(PassiveEventBase), thisEventBaseString);
            eventChance       = percentChance;
            //text
            foreach (String t in eventText)
            {
                thisEventTextPossibilities.Add(t);
            }
            eventStaminaEffect = staminaeffect;
            eventStressEffect  = stresseffect;
            eventHealthEffect  = healtheffect;



            //requirements
            if (requiredSkillString != "")
            {
                requiresSkill = true;
                requiredSkill = (PersonSkill.SkillType)Enum.Parse(typeof(PersonSkill.SkillType), requiredSkillString);
            }
            if (requireSkillRankingString != "")
            {
                requiredRanking = (PersonSkill.SkillRanking)Enum.Parse(typeof(PersonSkill.SkillRanking), requireSkillRankingString);
            }
            if (requiredTraitString != "")
            {
                requiresTrait     = true;
                requiredTraitType = (Person.TraitType)Enum.Parse(typeof(Person.TraitType), requiredTraitString);
            }
            if (requiredTerrain != "")
            {
                requiresTerrain     = true;
                requiredTerrainType = (GridTile.GridTerrain)Enum.Parse(typeof(GridTile.GridTerrain), requiredTerrain);
            }
            if (requiredRoad != "")
            {
                requiresRoad = true;
                if (requiredRoad == "true")
                {
                    isonroadrequirement = true;
                }
                else if (requiredRoad == "false")
                {
                    isonroadrequirement = false;
                }
            }

            eventStaminaRequirementMin = stammin;
            eventStaminaRequirementMax = stammax;
            eventStressRequirementMin  = stressmin;
            eventStressRequirementMax  = stressmax;
            eventHealthRequirementMin  = healthmin;
            eventHealthRequirementMax  = healthmax;

            eventPartySizeMinimum = partysizemin;

            occursWhenTravelling = occurswhentravelling;
            occursWhileSleeping  = occurswhensleeping;
            occursWhenWakingUp   = occurswhenwakingup;

            //items
            if (itemType != "")
            {
                hasItem       = true;
                eventItemType = (Item.ItemType)Enum.Parse(typeof(Item.ItemType), itemType);

                foreach (String i in listOfItems)
                {
                    eventItemPosibilities.Add(i);
                }
            }
        }