import random from tools import addSpacing class character: def __init__(self,**kwargs): self.fName = kwargs.get("fName","TESTfName") self.lName = kwargs.get("lName","TESTlName") self.name = "" self.characteristics ={ "Weapon Skill":kwargs.get("WS",character.generateCharacteristic(0)), "Ballistic Skill":kwargs.get("BS",character.generateCharacteristic(0)), "Strength":kwargs.get("Strength",character.generateCharacteristic(0)), "Toughness":kwargs.get("Toughness",character.generateCharacteristic(0)), "Agility":kwargs.get("Agility",character.generateCharacteristic(0)), "Intelligence":kwargs.get("Intelligence",character.generateCharacteristic(0)), "Perception":kwargs.get("Perception",character.generateCharacteristic(0)), "Will Power":kwargs.get("WP",character.generateCharacteristic(0)), "Fellowship":kwargs.get("Fell",character.generateCharacteristic(0)), } self.charClass = "TEST CLASS" self.totalWounds = kwargs.get("tWounds",10) self.currentWounds = kwargs.get("cWounds",0) self.fatique = 0 self.expierencePoints = 0 self.experienceToSpend = 0 self.skills = [] self.traits = [] self.talents = [] self.bonus = [] self.affinity = {} self.bodyParts = { "head":"notDamaged", "torso":"notDamaged", "left arm":"notDamaged", "right arm":"notDamaged", "left leg":"notDamaged", "right leg":"notDamaged" } self.armor = { "head":"notArmored", "head":"notArmored", "torso":"notArmored", "left arm":"notArmored", "right arm":"notArmored", "left leg":"notArmored", "right leg":"notArmored" } self.armaments = { "head":"unArmed", "right fore-arm":"unArmed", "rigth hand":"unArmed", "left fore-arm":"unArmed", "left hand":"unArmed", "rifle":"unArmed", "hold out slot 1":"unArmed", } def generateCharacteristic(bonus=0): '''generates 1 core characteristic, an int between 0 and 20 and applies any supplied bonus''' return random.randint(2,20)+bonus def setFullName(self): self.name = self.fName+" "+self.lName def getFullName(self): return self.fName+" "+self.lName def getCharacteristicByName(self,name): return self.characteristics.get(name) def setCharacteristicByName(self,name,valueToMod): try: self.characteristics[name] += valueToMod print(f"{self.getFullName()}'s {name} has been modded by {valueToMod}.") except KeyError: print("no characteristic \'{name}\' found.")