public Character() { _class = CharacterEnums.CharacterClass.Explorer; _race = CharacterEnums.CharacterRace.Human; _gender = CharacterEnums.Genders.Female; _skinColor = CharacterEnums.SkinColors.Fair; _skinType = CharacterEnums.SkinType.Flesh; _hairColor = CharacterEnums.HairColors.Black; _eyeColor = CharacterEnums.EyeColors.Brown; _build = CharacterEnums.BodyBuild.Medium; _koCount = new Tuple<int, DateTime>(0, DateTime.Now); _actionState = CharacterActionState.None; _stanceState = CharacterStanceState.Standing; _primaryLanguage = CharacterEnums.Languages.Common; KnownLanguages = new HashSet<Languages>(); KnownLanguages.Add(_primaryLanguage); FirstName = ""; LastName = ""; Description = ""; Age = 17; //Do we want an age? And are we going to advance it every in game year? We'll need a birthdate for this. Weight = 180; //pounds or kilos? Height = 70; //inches or centimeters? Location = "A1"; InCombat = false; LastCombatTime = DateTime.MinValue.ToUniversalTime(); IsNPC = false; Leveled = false; MainHand = "WIELD_RIGHT"; NextLevelExperience = 300; Level = 1; Experience = 0; PointsToSpend = 0; Inventory = new Inventory(); Equipment = new Equipment(); Bonuses = new StatBonuses(); Inventory.playerID = this.ID; Equipment.playerID = this.ID; Attributes = new Dictionary<string, Attribute>(); Attributes.Add("Hitpoints", new Attribute(150, "Hitpoints", 150, 0.1, 1)); Attributes.Add("Dexterity", new Attribute(10, "Dexterity", 5, 0, 1)); Attributes.Add("Strength", new Attribute(10, "Strength", 5, 0, 1)); Attributes.Add("Intelligence", new Attribute(10, "Intelligence", 5, 0, 1)); Attributes.Add("Endurance", new Attribute(10, "Endurance", 5, 0, 1)); Attributes.Add("Charisma", new Attribute(10, "Charisma", 5, 0, 1)); SubAttributes = new Dictionary<string, double>(); SubAttributes.Add("Agility", 1); SubAttributes.Add("Toughness", 1); SubAttributes.Add("Cunning", 1); SubAttributes.Add("Wisdom", 1); SubAttributes.Add("Leadership", 1); }
public Character() { _class = CharacterEnums.CharacterClass.Explorer; _race = CharacterEnums.CharacterRace.Human; _gender = CharacterEnums.Genders.Female; _skinColor = CharacterEnums.SkinColors.Fair; _skinType = CharacterEnums.SkinType.Flesh; _hairColor = CharacterEnums.HairColors.Black; _eyeColor = CharacterEnums.EyeColors.Brown; _build = CharacterEnums.BodyBuild.Medium; _koCount = new Tuple <int, DateTime>(0, DateTime.Now); _actionState = CharacterActionState.None; _stanceState = CharacterStanceState.Standing; _primaryLanguage = CharacterEnums.Languages.Common; KnownLanguages = new HashSet <Languages>(); KnownLanguages.Add(_primaryLanguage); FirstName = ""; LastName = ""; Description = ""; Age = 17; //Do we want an age? And are we going to advance it every in game year? We'll need a birthdate for this. Weight = 180; //pounds or kilos? Height = 70; //inches or centimeters? Location = "A1"; InCombat = false; LastCombatTime = DateTime.MinValue.ToUniversalTime(); IsNPC = false; Leveled = false; MainHand = "WIELD_RIGHT"; NextLevelExperience = 300; Level = 1; Experience = 0; PointsToSpend = 0; Inventory = new Inventory(); Equipment = new Equipment(); Bonuses = new StatBonuses(); Inventory.playerID = this.ID; Equipment.playerID = this.ID; Attributes = new Dictionary <string, Attribute>(); Attributes.Add("Hitpoints", new Attribute(150, "Hitpoints", 150, 0.1, 1)); Attributes.Add("Dexterity", new Attribute(10, "Dexterity", 5, 0, 1)); Attributes.Add("Strength", new Attribute(10, "Strength", 5, 0, 1)); Attributes.Add("Intelligence", new Attribute(10, "Intelligence", 5, 0, 1)); Attributes.Add("Endurance", new Attribute(10, "Endurance", 5, 0, 1)); Attributes.Add("Charisma", new Attribute(10, "Charisma", 5, 0, 1)); SubAttributes = new Dictionary <string, double>(); SubAttributes.Add("Agility", 1); SubAttributes.Add("Toughness", 1); SubAttributes.Add("Cunning", 1); SubAttributes.Add("Wisdom", 1); SubAttributes.Add("Leadership", 1); }
/// <summary> /// Deep copy constructor /// </summary> /// <param name="copy"></param> public Character(Character copy) //copy constructor { _class = copy._class; _race = copy._race; _gender = copy._gender; _skinColor = copy._skinColor; _skinType = copy._skinType; _hairColor = copy._hairColor; _eyeColor = copy._eyeColor; _build = copy._build; _koCount = new Tuple <int, DateTime>(0, DateTime.Now); _actionState = CharacterActionState.None; _stanceState = CharacterStanceState.Standing; _primaryLanguage = copy._primaryLanguage; KnownLanguages = new HashSet <Languages>(); foreach (CharacterEnums.Languages lang in copy.KnownLanguages) { KnownLanguages.Add(lang); } FirstName = copy.FirstName; LastName = copy.LastName; Description = copy.Description; Age = copy.Age; //Do we want an age? And are we going to advance it every in game year? Players could be 400+ years old rather quick. Weight = copy.Weight; //pounds or kilos? Height = copy.Height; //inches or centimeters? Location = "A1"; InCombat = false; LastCombatTime = DateTime.MinValue.ToUniversalTime(); IsNPC = false; Leveled = false; NextLevelExperience = 300; Level = 1; Experience = 0; PointsToSpend = 0; MainHand = "WIELD_RIGHT"; Attributes = new Dictionary <string, Attribute>(); foreach (KeyValuePair <string, Attribute> attrib in copy.Attributes) { Attributes.Add(attrib.Key, attrib.Value); } SubAttributes = new Dictionary <string, double>(); foreach (KeyValuePair <string, double> subAttrib in copy.SubAttributes) { SubAttributes.Add(subAttrib.Key, subAttrib.Value); } Inventory = new Inventory(); this.Save(); }
public Character(CharacterRace race, CharacterClass characterClass, Genders gender, Languages language, SkinColors skinColor, SkinType skinType, HairColors hairColor, EyeColors eyeColor, BodyBuild build) { _class = characterClass; _race = race; _gender = gender; _skinColor = skinColor; _skinType = skinType; _hairColor = hairColor; _eyeColor = eyeColor; _build = build; _koCount = new Tuple <int, DateTime>(0, DateTime.Now); _actionState = CharacterActionState.None; _stanceState = CharacterStanceState.Standing; _primaryLanguage = language; KnownLanguages = new HashSet <Languages>(); KnownLanguages.Add(_primaryLanguage); FirstName = ""; LastName = ""; Description = ""; Age = 17; //Do we want an age? And are we going to advance it every in game year? Weight = 180.0d; //pounds or kilos? Height = 70.0d; //inches or centimeters? Location = "A1"; InCombat = false; LastCombatTime = DateTime.MinValue.ToUniversalTime(); IsNPC = false; Leveled = false; MainHand = "WIELD_RIGHT"; NextLevelExperience = 300; Level = 1; Experience = 0; PointsToSpend = 0; Inventory = new Inventory(); Bonuses = new StatBonuses(); Attributes = new Dictionary <string, Attribute>(); Attributes.Add("Hitpoints", new Attribute(150, "Hitpoints", 150, 0.1, 1)); Attributes.Add("Dexterity", new Attribute(10, "Dexterity", 5, 0, 1)); Attributes.Add("Strength", new Attribute(10, "Strength", 5, 0, 1)); Attributes.Add("Intelligence", new Attribute(10, "Intelligence", 5, 0, 1)); Attributes.Add("Endurance", new Attribute(10, "Endurance", 5, 0, 1)); Attributes.Add("Charisma", new Attribute(10, "Charisma", 5, 0, 1)); SubAttributes = new Dictionary <string, double>(); SubAttributes.Add("Agility", 1); SubAttributes.Add("Toughness", 1); SubAttributes.Add("Cunning", 1); SubAttributes.Add("Wisdom", 1); SubAttributes.Add("Leadership", 1); }
public virtual HashSet <string> GetSelectedFieldsList() { var hs = new HashSet <string>(); if (!String.IsNullOrEmpty(Location.CountryCode)) { hs.Add("Location"); } if (BodyBuild.Count > 0 && BodyBuild.Any(p => p > 0)) { hs.Add("BodyBuild"); } if (EyeColor.Count > 0 && EyeColor.Any(p => p > 0)) { hs.Add("EyeColor"); } if (HairColor.Count > 0 && HairColor.Any(p => p > 0)) { hs.Add("HairColor"); } if (Height.Count > 0 && Height.Any(p => p > 0)) { hs.Add("Height"); } if (Age.Count > 0 && Age.Any(p => p > 0)) { hs.Add("Age"); hs.Add("BirthYear"); } if (LookingFor.Count > 0 && LookingFor.Any(p => p > 0)) { hs.Add("LookingFor"); } if (CountryToGo.Count > 0 && CountryToGo.Any(p => !String.IsNullOrWhiteSpace(p))) { hs.Add("Country"); } if (Language.Count > 0 && Language.Any(p => !String.IsNullOrWhiteSpace(p))) { hs.Add("Language"); } return(hs); }
public Character(CharacterRace race, CharacterClass characterClass, Genders gender, Languages language, SkinColors skinColor, SkinType skinType, HairColors hairColor, EyeColors eyeColor, BodyBuild build) { Class = characterClass; Race = race; Gender = gender; SkinColor = skinColor; SkinType = skinType; HairColor = hairColor; EyeColor = eyeColor; Build = build; _koCount = new Tuple<int, DateTime>(0, DateTime.Now); _actionState = CharacterActionState.None; _stanceState = CharacterStanceState.Standing; _primaryLanguage = language; KnownLanguages = new HashSet<Languages>(); KnownLanguages.Add(_primaryLanguage); FirstName = ""; LastName = ""; Description = ""; Age = 17; //Do we want an age? And are we going to advance it every in game year? Weight = 180.0d; //pounds or kilos? Height = 70.0d; //inches or centimeters? Location = "A1000"; InCombat = false; LastCombatTime = DateTime.MinValue.ToUniversalTime(); IsNPC = false; Leveled = false; MainHand = "WIELD_RIGHT"; NextLevelExperience = 300; Level = 1; Experience = 0; PointsToSpend = 0; Inventory = new Inventory(); Equipment = new Equipment(); Bonuses = new Dictionary<BonusTypes, Bonus>(); StatBonus = new StatBonuses(); StatBonus.Bonuses = Bonuses; Inventory.playerID = Id; Equipment.playerID = Id; Attributes = new List<Attribute>(); Attributes.Add(new Attribute(150, "Hitpoints", 150, 0.1, 1)); Attributes.Add(new Attribute(10, "Dexterity", 5, 0, 1)); Attributes.Add(new Attribute(10, "Strength", 5, 0, 1)); Attributes.Add(new Attribute(10, "Intelligence", 5, 0, 1)); Attributes.Add( new Attribute(10, "Endurance", 5, 0, 1)); Attributes.Add(new Attribute(10, "Charisma", 5, 0, 1)); SubAttributes = new Dictionary<string, double>(); SubAttributes.Add("Agility", 1); SubAttributes.Add("Toughness", 1); SubAttributes.Add("Cunning", 1); SubAttributes.Add("Wisdom", 1); SubAttributes.Add("Leadership", 1); }
public float charInformation; // this determines how much you have spied of them, unlocking more knowledge and info about them. It increases with relationship or spies. 0 to 100 public NPCData(int charid, int charportrait, string charname, string charnickname, string charsurname, CharSex charsex, int corruptionstage, int slavestage, CharGender chargender, CharAge charage, CityFaction cityfaction, bool isrecruited, bool isenemy, bool ismonster, bool isneutral, bool isprisoner, bool isslave, bool isbroken, float chargold, float charvalue, bool isfurry, bool isfuta, float attphysical, float attmental, float attsocial, float attmagicpower, float attbeauty, float atttemperament, float attwillpower, float attnature, float attopenness, float attdignity, float attobedience, float atthappiness, float attlibido, float attmorality, float attpiety, float attstyle, CharRank charrank, CharPersonality charpersonality, CharFetish charfetish, CharClass charclass, Jobs cityposition, float coremartial, float coresecurity, float corelabor, float coretactics, float coregovernance, float corestewardship, float corepersuasion, float coreintrigue, float corediplomacy, float utilitycraft, float utilityhouse, float utilityfarm, float utilitymedicine, float utilityalchemy, float utilitylearning, float utilityperformance, float utilityetiquette, float utilitystreetwise, float sexmasseuse, float sexstripping, float sexbondage, float sexpetplay, float sexpetting, float sexgroupsex, float sexdemonstration, float sexwhoring, float sexescorting, BgAdulthood bgadult, BgChildhood bgchild, string[] bgstory, BgUpgring bgupbring, float charloy, float charlove, float charcorruption, float charrelation, float[] charaddictions, int charcd, CharRace charrace, HeadType headtype, CharFurColor charfurcolor, CharFeatherColor charfeathercolor, CharSkinColor charskincolor, CharSkinType charskintype, DickType dicktype, LowerBack lowerback, ShoulderBlades shoulderblades, ArmsType armstype, LegsType legstype, BeardStyle beardstyle, BeardLength beardlength, HeadAccesory1 headacc1, HeadAccesory2 headacc2, HairColor haircolor, HairStyle hairstyle, HairType hairtype, float hairlenghtcm, HairLength hairlength, EyesType eyestype, EyesColor eyescolor, bool hasfur, bool hasfeathers, bool hasscales, bool hastentacles, bool isflying, GenderBehavior genderbehavior, float genderbehstat, FacialFeatures facialfeatures, float facialfeatstat, BodyFeatures bodyfeatures, float bodyfeatstat, float heigthchar, HeightName heigthname, BodyPhysique bodyphys, float bodyphystat, BodyBuild bodybuild, float bodybuildstat, bool hasknot, bool hasvagina, bool isvirgin, bool isfertile, bool ispregnant, int pregcd, string pregtext, bool islactating, float charfertility, CharRace childrace, float lactationml, int dicknum, DickSize dicksize, float dicksizecm, TesticleSize testiclesize, float testiclesizecm, float clitorissize, int breastrow, float breast1size, float breast2size, BreastName breast1name, BreastName breast2name, BreastCup breast1cup, BreastCup breast2cup, float areola1size, float areola2size, VagLoose vagloose, float vaglooseness, AssName assname, float asssize, HipsName hipsname, float hipssize, WaistName waistname, float waistsize, float maxhealth, float currenthealth, float maxarousal, float currentarousal, float maxmp, float currentmp, /*int[] charequip,*/ float charreputation, float politicalpower, float charinfo ) { isMarried = new List <NPCFamily> (); isParent = new List <NPCFamily> (); isProgeny = new List <NPCFamily>(); // list of its two parents charTraits = new List <CharTraits>(); charAttacks = new List <CharAttacks> (); charTitles = new List <Titles> (); charID = charid; charPortraitLayer0 = charportrait; charName = charname; charNickname = charnickname; charSurname = charsurname; charSex = charsex; corruptionStage = corruptionstage; slaveStage = slavestage; charGender = chargender; charAge = charage; cityFaction = cityfaction; isRecruited = isrecruited; isEnemy = isenemy; isMonster = ismonster; isNeutral = isneutral; isPrisoner = isprisoner; isSlave = isslave; isBroken = isbroken; charGold = chargold; charValue = charvalue; isFurry = isfurry; isFuta = isfuta; attPhysical = attphysical; attMental = attmental; attSocial = attsocial; attMagicPower = attmagicpower; attBeauty = attbeauty; attTemperament = atttemperament; attWillpower = attwillpower; attNature = attnature; attOpenness = attopenness; attDignity = attdignity; attObedience = attobedience; attHappiness = atthappiness; attLibido = attlibido; attMorality = attmorality; attPiety = attpiety; attStyle = attstyle; charRank = charrank; charPersonality = charpersonality; charFetish = charfetish; charClass = charclass; cityJobs = cityposition; coreSkillMartial = coremartial; //0 coreSkillSecurity = coresecurity; coreSkillLabor = corelabor; coreSkillTactics = coretactics; coreSkillGovernance = coregovernance; coreSkillStewardship = corestewardship; coreSkillPersuasion = corepersuasion; coreSkillIntrigue = coreintrigue; coreSkillDiplomacy = corediplomacy; //8 utilitySkillCrafting = utilitycraft; utilitySkillHouseKeeping = utilityhouse; utilitySkillFarmHand = utilityfarm; utilitySkillMedicine = utilitymedicine; utilitySkillAlchemy = utilityalchemy; utilitySkillLearning = utilitylearning; utilitySkillPerformance = utilityperformance; utilitySkillEtiquette = utilityetiquette; utilitySkillStreetwise = utilitystreetwise; sexSkillMasseuse = sexmasseuse; sexSkillStripping = sexstripping; sexSkillBondage = sexbondage; sexSkillPetplay = sexpetplay; sexSkillPetting = sexpetting; sexSkillGroupSex = sexgroupsex; sexSkillPenetration = sexdemonstration; sexSkillWhoring = sexwhoring; sexSkillEscorting = sexescorting; bgAdulthood = bgadult; bgChildhood = bgchild; bgStory = bgstory; // childhood, young adulthood, current bgUpbring = bgupbring; charLoyalty = charloy; charLove = charlove; // how much it loves the MC charCorruption = charcorruption; charRelationship = charrelation; charAddictions = charaddictions; // alcohol, tobacco, opium, coke, shrooms, hero, s***n charCD = charcd; charRace = charrace; headType = headtype; //tailType = tailtype; charFurColor = charfurcolor; charFeatherColor = charfeathercolor; charSkinColor = charskincolor; charSkinType = charskintype; dickType = dicktype; lowerBack = lowerback; shoulderBlades = shoulderblades; armsType = armstype; legsType = legstype; beardStyle = beardstyle; beardLength = beardlength; headAccesory1 = headacc1; headAccesory2 = headacc2; hairColor = haircolor; hairStyle = hairstyle; hairType = hairtype; hairLengthCM = hairlenghtcm; hairLength = hairlength; eyesType = eyestype; eyesColor = eyescolor; hasFur = hasfur; hasFeathers = hasfeathers; hasScales = hasscales; hasTentacles = hastentacles; isFlying = isflying; genderBehavior = genderbehavior; genderBehaviorStat = genderbehstat; // this is what sets the above, this can make a char more feminine or masculine after certain point facialFeatures = facialfeatures; facialFeaturesStat = facialfeatstat; bodyFeatures = bodyfeatures; bodyFeaturesStat = bodyfeatstat; heightChar = heigthchar; // in cm heightName = heigthname; bodyPhysique = bodyphys; bodyPhysStat = bodyphystat; // to change it bodyBuild = bodybuild; bodyBuildStat = bodybuildstat; // to change it hasKnot = hasknot; hasVagina = hasvagina; isVirgin = isvirgin; isFertile = isfertile; isPregnant = ispregnant; pregnantCD = pregcd; // turns until giving birth pregnantText = pregtext; // charFertility = charfertility; isLactating = islactating; lactationML = lactationml; // how much it lactates in ml childRace = childrace; dickNum = dicknum; //how many dicks it has dickSize = dicksize; dickSizeCM = dicksizecm; // in cm testiclesSize = testiclesize; // in cm, used to determine if you have or not testicleSizeCM = testiclesizecm; clitorisSize = clitorissize; // in cm areola1Size = areola1size; // aerola size of the first row, 1 change, in cm areola2Size = areola2size; // aerola size of the first row, 1 change, in cm breastRow = breastrow; breast1Size = breast1size; breast2Size = breast2size; breast1Name = breast1name; breast2Name = breast2name; breast1Cup = breast1cup; breast2Cup = breast2cup; vagLooseness = vaglooseness; // 0 virgin, 1-5 etc assName = assname; assSize = asssize; hipsName = hipsname; hipsSize = hipssize; waistName = waistname; waistSize = waistsize; maxHealth = maxhealth; currentHealth = currenthealth; maxArousal = maxarousal; currentArousal = currentarousal; maxMP = maxmp; currentMP = currentmp; charReputation = charreputation; politicalPower = politicalpower; charInformation = charinfo; vagloose = vagLoose; }
/// <summary> /// Deep copy constructor /// </summary> /// <param name="copy"></param> public Character(Character copy) { //copy constructor _class = copy._class; _race = copy._race; _gender = copy._gender; _skinColor = copy._skinColor; _skinType = copy._skinType; _hairColor = copy._hairColor; _eyeColor = copy._eyeColor; _build = copy._build; _koCount = new Tuple<int, DateTime>(0, DateTime.Now); _actionState = CharacterActionState.None; _stanceState = CharacterStanceState.Standing; _primaryLanguage = copy._primaryLanguage; KnownLanguages = new HashSet<Languages>(); foreach (CharacterEnums.Languages lang in copy.KnownLanguages) { KnownLanguages.Add(lang); } FirstName = copy.FirstName; LastName = copy.LastName; Description = copy.Description; Age = copy.Age; //Do we want an age? And are we going to advance it every in game year? Players could be 400+ years old rather quick. Weight = copy.Weight; //pounds or kilos? Height = copy.Height; //inches or centimeters? Location = "A1"; InCombat = false; LastCombatTime = DateTime.MinValue.ToUniversalTime(); IsNPC = false; Leveled = false; NextLevelExperience = 300; Level = 1; Experience = 0; PointsToSpend = 0; MainHand = "WIELD_RIGHT"; Attributes = new Dictionary<string, Attribute>(); foreach (KeyValuePair<string, Attribute> attrib in copy.Attributes){ Attributes.Add(attrib.Key, attrib.Value); } SubAttributes = new Dictionary<string, double>(); foreach (KeyValuePair<string, double> subAttrib in copy.SubAttributes) { SubAttributes.Add(subAttrib.Key, subAttrib.Value); } Inventory = new Inventory(); this.Save(); }
public NPC(CharacterRace race, CharacterClass characterClass, Genders gender, Languages language, SkinColors skinColor, SkinType skinType, HairColors hairColor, EyeColors eyeColor, BodyBuild build) { Messages = new Queue <string>(); Fsm = AI.FSM.GetInstance(); Fsm.state = Fsm.GetStateFromName("Wander"); _class = characterClass; _race = race; _gender = gender; _skinColor = skinColor; _skinType = skinType; _hairColor = hairColor; _eyeColor = eyeColor; _build = build; _koCount = new Tuple <int, DateTime>(0, DateTime.Now); _actionState = CharacterActionState.None; _stanceState = CharacterStanceState.Standing; _primaryLanguage = language; KnownLanguages = new HashSet <Languages>(); KnownLanguages.Add(_primaryLanguage); Inventory = new Inventory(); damageTracker = new Dictionary <string, double>(); Triggers = new List <ITrigger>(); Bonuses = new StatBonuses(); FirstName = ""; LastName = ""; Description = ""; Age = 17; //Do we want an age? And are we going to advance it every in game year? Players could be 400+ years old rather quick. Weight = 180.0d; //pounds or kilos? Height = 70.0d; //inches or centimeters? Location = "A0"; InCombat = false; LastCombatTime = DateTime.MinValue.ToUniversalTime(); IsNPC = true; Leveled = false; MainHand = "WIELD_RIGHT"; NextLevelExperience = 300; Level = 1; Experience = 0; PointsToSpend = 0; IsMob = false; Inventory = new Inventory(); Equipment = new Equipment(); Inventory.playerID = this.ID; Equipment.playerID = this.ID; Attributes = new Dictionary <string, Attribute>(); Attributes.Add("Hitpoints", new Attribute(200.0d, "Hitpoints", 200.0d, 0.2d, 1)); Attributes.Add("Dexterity", new Attribute(10.0d, "Dexterity", 10.0d, 0.0d, 1)); Attributes.Add("Strength", new Attribute(10.0d, "Strength", 10.0d, 0.0d, 1)); Attributes.Add("Intelligence", new Attribute(10.0d, "Intelligence", 10.0d, 0.0d, 1)); Attributes.Add("Endurance", new Attribute(10.0d, "Endurance", 10.0d, 0.0d, 1)); Attributes.Add("Charisma", new Attribute(10.0d, "Charisma", 10.0d, 0.0d, 1)); SubAttributes = new Dictionary <string, double>(); SubAttributes.Add("Agility", 10.0d); SubAttributes.Add("Toughness", 10.0d); SubAttributes.Add("Cunning", 10.0d); SubAttributes.Add("Wisdom", 10.0d); SubAttributes.Add("Leadership", 10.0d); }
public NPC(CharacterRace race, CharacterClass characterClass, Genders gender, Languages language, SkinColors skinColor, SkinType skinType, HairColors hairColor, EyeColors eyeColor, BodyBuild build) { Messages = new Queue<string>(); Fsm = AI.FSM.GetInstance(); Fsm.state = Fsm.GetStateFromName("Wander"); _class = characterClass; _race = race; _gender = gender; _skinColor = skinColor; _skinType = skinType; _hairColor = hairColor; _eyeColor = eyeColor; _build = build; _koCount = new Tuple<int, DateTime>(0, DateTime.Now); _actionState = CharacterActionState.None; _stanceState = CharacterStanceState.Standing; _primaryLanguage = language; KnownLanguages = new HashSet<Languages>(); KnownLanguages.Add(_primaryLanguage); Inventory = new Inventory(); damageTracker = new Dictionary<string, double>(); Triggers = new List<ITrigger>(); Bonuses = new StatBonuses(); FirstName = ""; LastName = ""; Description = ""; Age = 17; //Do we want an age? And are we going to advance it every in game year? Players could be 400+ years old rather quick. Weight = 180.0d; //pounds or kilos? Height = 70.0d; //inches or centimeters? Location = "A0"; InCombat = false; LastCombatTime = DateTime.MinValue.ToUniversalTime(); IsNPC = true; Leveled = false; MainHand = "WIELD_RIGHT"; NextLevelExperience = 300; Level = 1; Experience = 0; PointsToSpend = 0; IsMob = false; Inventory = new Inventory(); Equipment = new Equipment(); Inventory.playerID = this.ID; Equipment.playerID = this.ID; Attributes = new Dictionary<string, Attribute>(); Attributes.Add("Hitpoints", new Attribute(200.0d, "Hitpoints", 200.0d, 0.2d, 1)); Attributes.Add("Dexterity", new Attribute(10.0d, "Dexterity", 10.0d, 0.0d, 1)); Attributes.Add("Strength", new Attribute(10.0d, "Strength", 10.0d, 0.0d, 1)); Attributes.Add("Intelligence", new Attribute(10.0d, "Intelligence", 10.0d, 0.0d, 1)); Attributes.Add("Endurance", new Attribute(10.0d, "Endurance", 10.0d, 0.0d, 1)); Attributes.Add("Charisma", new Attribute(10.0d, "Charisma", 10.0d, 0.0d, 1)); SubAttributes = new Dictionary<string, double>(); SubAttributes.Add("Agility", 10.0d); SubAttributes.Add("Toughness", 10.0d); SubAttributes.Add("Cunning", 10.0d); SubAttributes.Add("Wisdom", 10.0d); SubAttributes.Add("Leadership", 10.0d); }