public NPCData.CharTraits setTrait(int iter, NPCData.CharClass charClass, NPCData.CharRace charRace, NPCData.CharPersonality charPersonality, NPCData.BgUpgring upbring, float beauty, NPCData.CharSex charSex) { int multi = 100 / iter; iterator += 1; int retValue = 0; Random.InitState(hashcode + WorldControl.day * System.DateTime.Now.Millisecond + iterator); //randNum = Random.Range (0, count); randNum = Random.Range(0, 100); if (randNum <= multi) { iterator += 1; Random.InitState(hashcode + WorldControl.day * System.DateTime.Now.Millisecond + iterator + 50); randNum = Random.Range(0, 100); if (randNum >= 83) { retValue = (int)setRaceTraits(charRace); } else if (randNum >= 66) { retValue = (int)setClassTraits(charClass); } else if (randNum >= 50) { retValue = (int)setPersonalityTraits(charPersonality); } else if (randNum >= 34) { retValue = (int)setUpbringTraits(upbring, charSex); } else if (randNum >= 16) { retValue = (int)setBeautyTraits(beauty); } else { retValue = (int)setRandomTrait(); } } if (retValue == trait1) { return(NPCData.CharTraits.NONE); } else if (retValue == trait2) { return(NPCData.CharTraits.NONE); } else if (retValue == trait3) { return(NPCData.CharTraits.NONE); } else if (retValue == trait4) { return(NPCData.CharTraits.NONE); } else if (retValue == trait5) { return(NPCData.CharTraits.NONE); } else if (retValue == trait6) { return(NPCData.CharTraits.NONE); } else if (retValue == trait7) { return(NPCData.CharTraits.NONE); } else if (retValue == trait8) { return(NPCData.CharTraits.NONE); } else if (retValue == trait9) { return(NPCData.CharTraits.NONE); } else if (retValue == trait10) { return(NPCData.CharTraits.NONE); } switch (iter) { case 1: trait1 = retValue; break; case 2: trait2 = retValue; break; case 3: trait3 = retValue; break; case 4: trait4 = retValue; break; case 5: trait5 = retValue; break; case 6: trait6 = retValue; break; case 7: trait7 = retValue; break; case 8: trait8 = retValue; break; case 9: trait9 = retValue; break; case 10: trait10 = retValue; break; default: break; } return((NPCData.CharTraits)retValue); }
} // // // // NPCData.CharTraits setPersonalityTraits(NPCData.CharPersonality personality) { iterator += 1; Random.InitState(hashcode + WorldControl.day * System.DateTime.Now.Millisecond + iterator); switch (personality) { case NPCData.CharPersonality.Plain: randNum = Random.Range(0, 2); switch (randNum) { case 0: return(NPCData.CharTraits.Craven); case 1: return(NPCData.CharTraits.WeakPersonality); case 2: return(NPCData.CharTraits.Distracted); default: return(setRandomTrait()); } case NPCData.CharPersonality.Boring: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.LowEnergy); case 1: return(NPCData.CharTraits.WeakPersonality); case 2: return(NPCData.CharTraits.Dull); case 3: return(NPCData.CharTraits.Introverted); default: return(setRandomTrait()); } case NPCData.CharPersonality.Delicate: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Frail); case 1: return(NPCData.CharTraits.Sensitive); case 2: return(NPCData.CharTraits.Musician); case 3: return(NPCData.CharTraits.Slothful); default: return(setRandomTrait()); } case NPCData.CharPersonality.Lively: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Vigorous); case 1: return(NPCData.CharTraits.StrongPersonality); case 2: return(NPCData.CharTraits.Affable); case 3: return(NPCData.CharTraits.Extroverted); default: return(setRandomTrait()); } case NPCData.CharPersonality.Proud: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Prideful); case 1: return(NPCData.CharTraits.Duelist); case 2: return(NPCData.CharTraits.Arrogant); case 3: return(NPCData.CharTraits.Volatile); default: return(setRandomTrait()); } case NPCData.CharPersonality.Lazy: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Slothful); case 1: return(NPCData.CharTraits.LowEnergy); case 2: return(NPCData.CharTraits.Slow); case 3: return(NPCData.CharTraits.WeakPersonality); default: return(setRandomTrait()); } case NPCData.CharPersonality.Serious: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Disciplined); case 1: return(NPCData.CharTraits.Diligent); case 2: return(NPCData.CharTraits.StrongPersonality); case 3: return(NPCData.CharTraits.Elegant); default: return(setRandomTrait()); } case NPCData.CharPersonality.Virtous: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Saint); case 1: return(NPCData.CharTraits.Disciplined); case 2: return(NPCData.CharTraits.Heroic); case 3: return(NPCData.CharTraits.Elegant); default: return(setRandomTrait()); } case NPCData.CharPersonality.Lewd: randNum = Random.Range(0, 4); switch (randNum) { case 0: return(NPCData.CharTraits.Lustful); case 1: return(NPCData.CharTraits.Lascivious); case 2: return(NPCData.CharTraits.Seducer); case 3: return(NPCData.CharTraits.Eccentric); case 4: return(NPCData.CharTraits.Nymphomaniac); default: return(setRandomTrait()); } case NPCData.CharPersonality.Assertive: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.StrongPersonality); case 1: return(NPCData.CharTraits.StrongPersonality); case 2: return(NPCData.CharTraits.Forceful); case 3: return(NPCData.CharTraits.Volatile); default: return(setRandomTrait()); } case NPCData.CharPersonality.Cheerful: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Extroverted); case 1: return(NPCData.CharTraits.Hopeful); case 2: return(NPCData.CharTraits.Dependant); case 3: return(NPCData.CharTraits.Charming); default: return(setRandomTrait()); } case NPCData.CharPersonality.Stoic: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.StrongPersonality); case 1: return(NPCData.CharTraits.Vigorous); case 2: return(NPCData.CharTraits.Diligent); case 3: return(NPCData.CharTraits.Disciplined); default: return(setRandomTrait()); } case NPCData.CharPersonality.Kind: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Affable); case 1: return(NPCData.CharTraits.Cooperative); case 2: return(NPCData.CharTraits.Humble); case 3: return(NPCData.CharTraits.Hopeful); default: return(setRandomTrait()); } case NPCData.CharPersonality.Irritable: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.StrongPersonality); case 1: return(NPCData.CharTraits.Volatile); case 2: return(NPCData.CharTraits.Prideful); case 3: return(NPCData.CharTraits.Bloodthirsty); default: return(setRandomTrait()); } case NPCData.CharPersonality.Uptight: randNum = Random.Range(0, 4); switch (randNum) { case 0: return(NPCData.CharTraits.Celibate); case 1: return(NPCData.CharTraits.Organized); case 2: return(NPCData.CharTraits.Studious); case 3: return(NPCData.CharTraits.Introverted); case 4: return(NPCData.CharTraits.Elegant); default: return(setRandomTrait()); } case NPCData.CharPersonality.Friendly: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Extroverted); case 1: return(NPCData.CharTraits.Affable); case 2: return(NPCData.CharTraits.Cooperative); case 3: return(NPCData.CharTraits.Honest); default: return(setRandomTrait()); } case NPCData.CharPersonality.Harsh: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Rough); case 1: return(NPCData.CharTraits.Fierce); case 2: return(NPCData.CharTraits.Volatile); case 3: return(NPCData.CharTraits.Scars); default: return(setRandomTrait()); } case NPCData.CharPersonality.Schemer: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Schemer); case 1: return(NPCData.CharTraits.Craven); case 2: return(NPCData.CharTraits.Strategist); case 3: return(NPCData.CharTraits.Deceitful); default: return(setRandomTrait()); } case NPCData.CharPersonality.Savage: randNum = Random.Range(0, 6); switch (randNum) { case 0: return(NPCData.CharTraits.Volatile); case 1: return(NPCData.CharTraits.Fierce); case 2: return(NPCData.CharTraits.Slow); case 3: return(NPCData.CharTraits.Imbecile); case 4: return(NPCData.CharTraits.Impaler); case 5: return(NPCData.CharTraits.Fearless); case 6: return(NPCData.CharTraits.Sportive); default: return(setRandomTrait()); } case NPCData.CharPersonality.Courteous: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Elegant); case 1: return(NPCData.CharTraits.Eccentric); case 2: return(NPCData.CharTraits.Affable); case 3: return(NPCData.CharTraits.Brave); default: return(setRandomTrait()); } case NPCData.CharPersonality.Shy: randNum = Random.Range(0, 3); switch (randNum) { case 0: return(NPCData.CharTraits.Introverted); case 1: return(NPCData.CharTraits.WeakPersonality); case 2: return(NPCData.CharTraits.Lascivious); case 3: return(NPCData.CharTraits.Distracted); default: return(setRandomTrait()); } case NPCData.CharPersonality.Belligerent: randNum = Random.Range(0, 5); switch (randNum) { case 0: return(NPCData.CharTraits.Volatile); case 1: return(NPCData.CharTraits.Rough); case 2: return(NPCData.CharTraits.Impaler); case 3: return(NPCData.CharTraits.Duelist); case 4: return(NPCData.CharTraits.Forceful); case 5: return(NPCData.CharTraits.Insane); default: return(setRandomTrait()); } case NPCData.CharPersonality.Romantic: randNum = Random.Range(0, 5); switch (randNum) { case 0: return(NPCData.CharTraits.Affable); case 1: return(NPCData.CharTraits.Charming); case 2: return(NPCData.CharTraits.Musician); case 3: return(NPCData.CharTraits.Dependant); case 4: return(NPCData.CharTraits.Honest); case 5: return(NPCData.CharTraits.Seducer); default: return(setRandomTrait()); } default: return(setRandomTrait()); } }
public void charCreator(int sexselector, int factionselector, int recruitselector, int positionselector, int classselector, int rankselector, int fetishselector, int beautyselector, int upbringselector, int raceselector, int racespecific, bool pregnantselector) { //public enum CharSex { Woman, Man, Dickgirl, Futanari, Cuntboy, Trap, Eunuch }; // 0 female, trap 5 // faction: use 0 //0 recruited, 1 enemy, 2 monster, 3 neutral, 4 your prisoner, 5 your slave // use 12 for retainer in position selector, 1000 for none //class: 0 soldier,1 warrior, 2 clerk, 3 bureaucrat, 4 monk/nun, 5 priest, 6 alchemist UNC, 7 mystic UNC, 8 thief, 9 infiltrator, 10 paladin, 11 dark paladin, 12 feral, 13 barbarian //14 scout, 15 ranger, 16 community worker, 17 w***e, 18 farmer, 19 industry worker, 20 politician, 21 diplomat, 22 inquisitor, 23 enforcer, 24 Performer, 25 Artist, 26 Scholar // 0 C, 1 B, 2 A, 3 S, 1000 random // Fetish: 0 None, 1 Dominant, 2 Submissive, AnalWhore, GroupSex, CumSlut, Incest, Crossdressing, Exhibitionism, PetPlay, RapeFantasy, Voyeurism, Monsters, SizeDifference, 1000 random // beauty selector: 0, 20, 40, etc. up to 80+ enter more or less what you want from 0 to 100, it will be random. Any other number is a random //upbring: VeryPoor, Poor, MiddleClass, Rich, VeryRich, Noble, Royal, Count, 1000 for random // race: 0 human, 1 furry, 2 avian. 3 aquatic, 4 exotics //race specific: 0 human, else check list // pregnant selector, use false to have her non pregnant. Need texts for pregnancy before adding this feature //race specific: 1000 random, check NPCSettlerRace for info charID = NPCControl.NPCGenID; // id thats going to be used to look for him, should use a genNPC control for this NPCControl.NPCGenID += 1; charSexC = npcSettlerSex.setSex(sexselector); charName = npcSettlerName.setName(charSexC); charSurname = npcSettlerName.setSurname(); charGenderC = npcSettlerSex.setGender(charSexC); cityFactionC = npcSettlerfaction.setFaction(factionselector); isRecruited = npcSettlerSide.recruitStatus(recruitselector); isEnemy = npcSettlerSide.enemyStatus(recruitselector); isMonster = npcSettlerSide.monsterStatus(recruitselector); isPrisoner = npcSettlerSide.prisonerStatus(recruitselector); isNeutral = npcSettlerSide.neutralStatus(recruitselector); isSlave = npcSettlerSide.slaveStatus(recruitselector); cityPositionC = npcSettlerPosition.setPosition(positionselector); charClassC = npcSettlerClass.setClass(classselector); charRankC = npcSettlerRank.setRank(rankselector); charFetishC = npcSettlerFetish.setFetish(fetishselector); charPersonalityC = npcSettlerPersonAtt.setPersonality(); attPhysical = npcSettlerAttributes.setPhysical(charClassC); attMental = npcSettlerAttributes.setMental(charClassC); attSocial = npcSettlerAttributes.setSocial(charClassC); attMagicPower = npcSettlerAttributes.setMagicPower(charClassC); coreSkillMartial = npcSettlerCoreSkills.setCoreMartial(charClassC); //0 coreSkillSecurity = npcSettlerCoreSkills.setCoreSecurity(charClassC); coreSkillLabor = npcSettlerCoreSkills.setCoreLabor(charClassC); coreSkillTactics = npcSettlerCoreSkills.setCoreTactics(charClassC); coreSkillGovernance = npcSettlerCoreSkills.setCoreGovernance(charClassC); coreSkillStewardship = npcSettlerCoreSkills.setStewardship(charClassC); coreSkillPersuasion = npcSettlerCoreSkills.setCorePersuasion(charClassC); coreSkillIntrigue = npcSettlerCoreSkills.setIntrigue(charClassC); coreSkillDiplomacy = npcSettlerCoreSkills.setDiplomacy(charClassC); utilitySkillCrafting = npcSettlerUtilitySkills.setUtilityCrafting(charClassC); utilitySkillHouseKeeping = npcSettlerUtilitySkills.setHouseKeeping(charClassC); utilitySkillFarmHand = npcSettlerUtilitySkills.setUtilityFarm(charClassC); utilitySkillMedicine = npcSettlerUtilitySkills.setUtilityMedicine(charClassC); utilitySkillAlchemy = npcSettlerUtilitySkills.setUtilityAlchemy(charClassC); utilitySkillLearning = npcSettlerUtilitySkills.setUtilityLearning(charClassC); utilitySkillPerformance = npcSettlerUtilitySkills.setUtilityPerformance(charClassC); utilitySkillEtiquette = npcSettlerUtilitySkills.setUtilityEtiquette(charClassC); utilitySkillStreetwise = npcSettlerUtilitySkills.setUtilityStreetwise(charClassC); sexSkillMasseuse = npcSettlerSexSkills.setSkillMasseuse(charClassC); sexSkillStripping = npcSettlerSexSkills.setSkillStripping(charClassC); sexSkillBondage = npcSettlerSexSkills.setSkillBondage(charClassC); sexSkillPetplay = npcSettlerSexSkills.setSkillPetPlay(charClassC); sexSkillPetting = npcSettlerSexSkills.setSkillPetting(charClassC); sexSkillGroupSex = npcSettlerSexSkills.setSkillGroupSex(charClassC); sexSkillPenetration = npcSettlerSexSkills.setSkillDemonstration(charClassC); sexSkillWhoring = npcSettlerSexSkills.setSkillWhoring(charClassC); sexSkillEscorting = npcSettlerSexSkills.setSkillEscorting(charClassC); attBeauty = npcSettlerPersonAtt.setBeauty(beautyselector); //(ugly, plain, good looking, captivating, stunning) attTemperament = npcSettlerPersonAtt.setTemperament(charClassC); //(apathethic,cold, reserved, lively, passional) attWillpower = npcSettlerPersonAtt.setWillpower(charClassC); // (submissive, docile, humble, assertive, willful) attNature = npcSettlerPersonAtt.setNature(charClassC); //(spinless, coward, uncertain, brave, determined) attOpenness = npcSettlerPersonAtt.setOpenness(charClassC); //(Frigthened, uninterested, timid, open, unashamed) attDignity = npcSettlerPersonAtt.setDignity(charClassC); // how much self worth it has attObedience = npcSettlerPersonAtt.setObedience(charClassC); attHappiness = npcSettlerPersonAtt.setHappiness(charClassC); attLibido = npcSettlerPersonAtt.setLibido(charClassC); // attMorality = npcSettlerPersonAtt.setMorality(charClassC); // how good and bad, it can be corrupt good, it means the person is just twisted attPiety = npcSettlerPersonAtt.setPiety(charClassC); bgUpbringC = npcSettlerBG.setUpbring(upbringselector); if (isPrisoner == true || isSlave == true || isNeutral == true) { charGold = 0; } else { charGold = npcSettlerBG.setGold(bgUpbringC); } bgChildhoodC = npcSettlerBG.setBGChildhood(); bgAdulthoodC = npcSettlerBG.setBGAdulthood(); bgStory [0] = npcSettlerBG.setChildStory(bgChildhoodC); bgStory [1] = npcSettlerBG.setAdultStory(bgAdulthoodC); bgStory [2] = npcSettlerBG.setCurrentStory(charClassC); charRaceC = npcSettlerRace.setRace(raceselector, racespecific); charRaceC = npcSettlerRace.adjustRaceGender(charRaceC, charSexC); charFurColorC = raceCreator.setFur(charRaceC); charFeatherColorC = raceCreator.setFeathers(charRaceC); charSkinColorC = raceCreator.setSkinColor(charRaceC); charSkinTypeC = raceCreator.setSkinType(charRaceC); dickTypeC = raceCreator.setDickType(charRaceC); lowerBackC = raceCreator.setLowerBack(charRaceC); shoulderBladesC = raceCreator.setShoulderBlades(charRaceC); headTypeC = raceCreator.setHeadType(charRaceC); //tailTypeC = raceCreator.setTailType (charRaceC); armsTypeC = raceCreator.setArms(charRaceC); legsTypeC = raceCreator.setLegs(charRaceC); headAccesory1C = raceCreator.setHeadAcc1(charRaceC); headAccesory2C = raceCreator.setHeadAcc2(charRaceC); eyesTypeC = raceCreator.setEyes(charRaceC); hasFur = raceCreator.setHasFur(charRaceC); // everyone uses the fur colours tho hasFeathers = raceCreator.setHasFeathers(charRaceC); hasScales = raceCreator.setHasScales(charRaceC); hasTentacles = raceCreator.setHasTentacles(charRaceC); isFlying = raceCreator.setIsFlying(charRaceC); isFurry = raceCreator.setIsFurry(charRaceC); // to determine portrait isFuta = raceCreator.setIsFuta(charSexC); beardStyleC = npcSettlerHead.setBeardStyle(charSexC, charRaceC); beardLengthC = npcSettlerHead.setBeardLength(charSexC, charRaceC); hairColorC = npcSettlerHead.setHairColor(); hairStyleC = npcSettlerHead.setHairStyle(); hairTypeC = npcSettlerHead.setHairType(charRaceC); hairLengthCM = npcSettlerHead.setHairLengthCM(); hairLengthC = npcSettlerHead.setHairLength(hairLengthCM); eyesColorC = npcSettlerHead.setEyesColor(charRaceC); genderBehaviorStat = npcSettlerPersonAtt.setBehaviorStat(charGenderC); genderBehaviorC = npcSettlerPersonAtt.setGenderBehavior(genderBehaviorStat); facialFeaturesStat = npcSettlerHead.setFacialFeatStat(charGenderC); facialFeaturesC = npcSettlerHead.setFacialFeat(facialFeaturesStat); bodyFeaturesStat = npcSettlerBody.setBodyFeatStat(charGenderC); bodyFeaturesC = npcSettlerBody.setBodyFeatures(facialFeaturesStat); heightChar = npcSettlerBody.SetHeightChar(charRaceC); // in cm heightNameC = npcSettlerBody.setHeightName(heightChar); bodyPhysStat = npcSettlerBody.SetBodyPhysStat(); // to change it, 0 to 100 bodyPhysiqueC = npcSettlerBody.setBodyPhysique(bodyPhysStat); bodyBuildStat = npcSettlerBody.setBodyBuildStat(); // to change it bodyBuildC = npcSettlerBody.setBodyBuild(bodyBuildStat); dickNum = npcSettlerBody.setDickNum(charSexC); //how many dicks it has dickSizeCM = npcSettlerBody.setDickSizeCM(heightChar, charSexC); // in cm dickSizeC = npcSettlerBody.setDickSize(dickSizeCM); testicleSizeCM = npcSettlerBody.setTesticleSizeCM(charSexC, heightChar); testiclesSizeC = npcSettlerBody.setTesticlesSize(testicleSizeCM); // in cm, used to determine if you have or not clitorisSize = npcSettlerBody.setClitorisSize(); breastRow = npcSettlerBody.setBreastRow(charRaceC); breast1Size = npcSettlerBody.setBreast1Size(charSexC, charRaceC); // to determine its current size. Each point is +1 cup, each X changes name, check NPCSettler breast2Size = npcSettlerBody.setBreast2Size(breastRow); // to determine its current size. Each point is +1 cup, each X changes name, check NPCSettler breast1NameC = npcSettlerBody.setBreastName(breast1Size); breast2NameC = npcSettlerBody.setBreastName(breast2Size); breast1CupC = npcSettlerBody.setBreastCup(breast1Size); breast2CupC = npcSettlerBody.setBreastCup(breast2Size); areola1Size = npcSettlerBody.setAureoleSize(); // aerola size of the first row, 1 change, in cm areola2Size = areola1Size; // aerola size of the first row, 1 change, in cm waistSize = npcSettlerBody.waistSize(); waistNameC = npcSettlerBody.setWaistName(waistSize); hipsSize = npcSettlerBody.setHipsSize(waistSize); hipsNameC = npcSettlerBody.setHipsName(hipsSize); assSize = npcSettlerBody.setAssSize(hipsSize); assNameC = npcSettlerBody.setAssName(assSize); hasKnot = npcSettlerFertility.setHasKnot(charRaceC); hasVagina = npcSettlerFertility.setHasVagina(charSexC); isVirgin = npcSettlerFertility.setIsVirgin(charRaceC); isFertile = npcSettlerFertility.setIsFertile(); charFertility = npcSettlerFertility.setCharFertility(); isPregnant = npcSettlerFertility.isPregnant(pregnantselector, charSexC); childRaceC = npcSettlerFertility.setChildRace(charRaceC); pregnantCD = npcSettlerFertility.setPregnantCD(isPregnant); // turns until giving birth pregnantText = npcSettlerFertility.pregnantText(isPregnant, childRaceC); // isLactating = isPregnant; lactationML = npcSettlerFertility.setLactationML(charRaceC); // how much it lactates in ml vagLooseness = npcSettlerFertility.setVagLooseness(isVirgin); vagLoose = npcSettlerFertility.setVagLoose(vagLooseness); maxHealth = npcSettlerCombatStats.setMaxHealth(charRaceC); currentHealth = maxHealth; maxArousal = npcSettlerCombatStats.setMaxArousal(charRaceC); currentArousal = 0; maxMP = npcSettlerCombatStats.setMaxMP(charRaceC, charClassC); currentMP = maxMP; // power and politics charReputation = npcSettlerPosition.setCharReputation(cityPositionC, charClassC); politicalPower = npcSettlerPosition.setPoliticalPower(cityPositionC); charAgeC = npcSettlerPersonAtt.setCharAge(charRaceC); charLoyalty = npcSettlerPersonAtt.setLoyalty(charRaceC, charClassC); charCorruption = npcSettlerPersonAtt.setCorruption(charRaceC, charClassC); int i; i = 0; while (i < 8) { charAddictions [i] = npcSettlerPersonAtt.setAddiction(i, charRaceC, charClassC); i++; } charValue = npcSettlerPersonAtt.setCharValue(charRankC, charClassC, bgUpbringC, charRaceC, attBeauty, attWillpower, attObedience); // public List<NPCData.CharTraits> charTraits; TempList.Clear(); setChar(); TempList[0].charTattoos = new string[18]; i = 0; while (i < 18) { TempList[0].charTattoos[i] = ""; i++; } TempList[0].charPiercings = new string[21]; i = 0; while (i < 21) { TempList[0].charPiercings[i] = ""; i++; } TempList[0].charEquipment = new int[12]; i = 0; while (i < 12) { TempList[0].charEquipment[i] = npcSettlerEquip.setCharEquipment(i, bgUpbringC, charClassC, charRaceC); i++; } //CHANGE TO SOMETHING MORE DYNAMIC... LATER TempList [0].charDodge = 10; NPCSettlerTraits.trait1 = 1000; NPCSettlerTraits.trait2 = 1000; NPCSettlerTraits.trait3 = 1000; NPCSettlerTraits.trait4 = 1000; NPCSettlerTraits.trait5 = 1000; NPCSettlerTraits.trait6 = 1000; NPCSettlerTraits.trait7 = 1000; NPCSettlerTraits.trait8 = 1000; NPCSettlerTraits.trait9 = 1000; NPCSettlerTraits.trait10 = 1000; i = 0; while (i < 10) { i++; TempList[0].charTraits.Add(npcSettlerTraits.setTrait(i, charClassC, charRaceC, charPersonalityC, bgUpbringC, attBeauty, charSexC)); } i = TempList[0].charTraits.Count; while (i > 0) { i--; if (TempList[0].charTraits[i] == NPCData.CharTraits.NONE) { TempList[0].charTraits.RemoveAt(i); } } int count = TempList[0].charTraits.Count; i = 0; while (i < count) { npcSettlerTraitsBonus.setTraitBonus(TempList[0].charTraits[i]); i++; } npcSettlerRankAdjustment.rankAdjustment(); i = 0; while (i < 4) { iterator += 1; Random.InitState(hashcode + WorldControl.day * System.DateTime.Now.Millisecond + iterator); if (i >= 2 && Random.Range(0, 100) >= 85) { break; } attacksTempList.Add(npcSettlerAttacks.classAttacks(charClassC, charRaceC)); i++; } i = 0; while (i < 4) { iterator += 1; Random.InitState(hashcode + WorldControl.day * System.DateTime.Now.Millisecond + iterator); if (i >= 2 && Random.Range(0, 100) >= 85) { break; } attacksTempList.Add(npcSettlerAttacks.raceAttacks(charRaceC)); i++; } List <NPCData.CharAttacks> attacksDistinctList = attacksTempList.Distinct().ToList(); foreach (NPCData.CharAttacks value in attacksDistinctList) { TempList [0].charAttacks.Add(value); } NPCSettlerPortrait.createPortrait(); if (isRecruited == true && isPrisoner == false && isSlave == false) { NPCCharList.CharRetainers.Add(TempList [0]); } if (isEnemy == true && isPrisoner == false && isSlave == false) { NPCCharList.CharEnemies.Add(TempList [0]); } if (isNeutral == true) { NPCCharList.CharRetainers.Add(TempList [0]); //NPCCharList.CharNeutral.Add (TempList [0]); } if (isMonster == true) { //this is for debug, remove NPCCharList.CharMonster.Add(TempList[0]); } if (isPrisoner == true && isRecruited == true) { NPCCharList.CharRetainerPrisoner.Add(TempList [0]); } if (isSlave == true && isRecruited == true) { NPCCharList.CharRetainers.Add(TempList [0]); } if (isPrisoner == true && isEnemy == true) { NPCCharList.CharEnemyPrisoner.Add(TempList [0]); } if (isSlave == true && isEnemy == true) { NPCCharList.CharEnemySlave.Add(TempList [0]); } // attStyle; sets after equipment, use the dedicated settler in game for this }