Exemplo n.º 1
0
def Fighter(reserved_skills):

	#Print breif description
	print('\n\nYour class\n\nFighter\n -What does a fighter do best? Well, fight of course. A really versatile class, as it can work in numerous ways. Add the fighting style and you can choose to have a one handed weapon accompanied by a shield, have a two handed weapon, two one handed ones (dual wielding), a ranged weapon and more! Once you’ve got that decided, ready yourself to start demolishing your foes, be it with your mighty strength or dexterous precision!')

	print('\nFor stat priority, Strength followed by dexterity and then Constitution\n')

	#Hit points
	print('Hit Dice\n -d10')
	print('Hit points at Level 1\n 10 + Constitution_mod')
	print('Hit Points at Higher Levels: roll 1d10(or 6) + your constitution modifier per Fighter level after 1st')

	#Proficiencies
	print('\nProficiencies')
	print('-Armour:\n -All armor and shields')
	print('-Weapons:\n -Simple weapons, Martial weapons')
	print('-Tools:\n -None')
	print('-Saving Throws:\n -Strength, Constitution')

	#Skills
	skills = ['Acrobatics','Animal Handling','Athletics','History','Insight','Intimidation','Perception','Survival']
	#skill proficiencies overlap check
	for i in reserved_skills:
		if i in skills:
			skills.remove(i)
	
	chosen_skills = random.sample(skills,2)
	print(f'Skills:\n -{chosen_skills}')

	#equipment
	print('\nClass Equipment')

	#weapons
	print('-Weapons')

	#first choice weapon
	first_choice = random.choice([1,2])
	if first_choice == 1:
		weapon,damage = Weapons.martial_melee_weapon()
	elif first_choice == 2:
		weapon,damage= Weapons.martial_melee_weapon()
	print(f'  Primary weapon {weapon,damage}')

	#second weapon choice
	second_choice = random.choice([1,2])
	if second_choice == 1:
		weapon, damage = Weapons.simple_ranged_weapon('Light Crossbow')
	elif second_choice == 2:
		weapon, damage = Weapons.simple_melee_weapon('Handaxe')
	print(f'  Secondary weapon{weapon,damage}')

	#equipment pack
	print('-Equipment pack')
	Thrid_choice = random.choice([1,2])
	if Thrid_choice == 1:
		equipment_pack = Equipment_packs.equipment_pack('Dungeoneers_pack')
	elif Thrid_choice == 2:
		equipment_pack = Equipment_packs.equipment_pack('Explorers_pack')
	print(f'  {equipment_pack}')
def Wizard(reserved_skills):

	#Print breif description
	print('\n\nYour class\n\nWizard\n -Wizards decide to go in adventures to further their knowledge. The great world in front of them has thousands of spells for you to learn and master. With a spellbook at hand, they will look for or buy them to become a greater spellcaster. Just transcribe them to the book and you’ll understand why wizards are such a versatile class. The amount of spells they can learn greatly surpasses all other classes’ lists.')
	
	print('For stat priority, ')

	#Hit points
	print('Hit Dice\n -d6')
	print('Hit points at Level 1\n  + Constitution_mod')
	print('Hit Points at Higher Levels: 1d(or ) + your constitution modifier per level after 1st')

	#Proficiencies
	print('\nProficiencies')
	print('-Armour:\n -None')
	print('-Weapons:\n -Daggers, Darts, Slings, Quarterstaff, Light crossbow ')
	print('-Tools:\n -None')
	print('-Saving Throws:\n -Intelligence, Wisdom ')

	#Skills
	skills = ['Arcana','History','Insight','Investigation','Medicine','Religion']
	#skill proficiencies overlap check
	for i in reserved_skills:
		if i in skills:
			skills.remove(i)

	chosen_skills = random.sample(skills,2)
	print(f'Skills:\n -{chosen_skills}')

	#equipment
	print('\nClass Equipment')
	#weapons
	print('-Weapons')

	#first choice weapon
	first_choice = random.choice([1,2])
	if first_choice == 1:
		weapon,damage = Weapons.simple_melee_weapon('Quarterstaff')
	elif first_choice == 2:
		weapon,damage= Weapons.simple_melee_weapon('Dagger')

	print(f'  Primary weapon {weapon,damage}')

	#second weapon choice
	second_choice = random.choice(['c','a'])
	if second_choice == 'c':
		spellcast_helper = 'a component pouch'
	elif second_choice =='a':
		spellcast_helper = 'an arcance focus'
	print(f'  Spellcasting helper: {spellcast_helper}')

	#equipment pack
	print('-Equipment pack')
	Thrid_choice = random.choice([1,2])
	if Thrid_choice == 1:
		equipment_pack = Equipment_packs.equipment_pack('Scholars_pack')
	if Thrid_choice == 2:
		equipment_pack = Equipment_packs.equipment_pack('Explorers_pack')
	print(f'  {equipment_pack} and a spellbook')
Exemplo n.º 3
0
def Ranger(reserved_skills):

	#Class
	print('\n\nYour class\n\nRanger\n -A natural explorer seeking adventures, who on their way found a special hatred towards a certain beast or monster. Able to master any fighting style as long as they don’t involve heavy weapons or armor. Spellcasters by default, due to their connection with nature and/or the Feywild, they are excellent scouts and allies to have by your side.')

	print('\nFor stat priority, Dexterity followed by Wisdom\n')

	#Hit points
	print('Hit Dice\n -1d10')
	print('Hit points at Level 1\n 10 + Constitution_mod')
	print('Hit Points at Higher Levels: roll 1d10(or6) + your constitution modifier per Ranger level after 1st')

	#Proficiencies
	print('\nProficiencies')
	print('-Armour:\n -Light armor, Medium armor, Shields')
	print('-Weapons:\n -Simple weapons, Martial weapons')
	print('-Tools:\n -None')
	print('-Saving Throws:\n -Strength, Dexterity')

	#Skills
	skills = ['Animal handling','Athletics','Insight','Investigation','Nature','Perception','Stealth','Survival']
	#skill proficiencies overlap check
	for i in reserved_skills:
		if i in skills:
			skills.remove(i)
	
	chosen_skills = random.sample(skills,3)
	print(f'Skills:\n -{chosen_skills}')

	#Equipment
	print('\nClass Equipment')

	#Weapons
	print('-Weapons')
	#first choice weapon
	first_choice = random.choice([1,2])
	if first_choice == 1:
		weapon,damage = Weapons.martial_melee_weapon('Shortsword')
	elif first_choice == 2:
		weapon,damage= Weapons.martial_melee_weapon()
	print(f'  Primary weapon 2{weapon,damage}')

	#second weapon choice
	second_choice = random.choice([1,2])
	weapon, damage = Weapons.martial_ranged_weapon('Longbow')
	print(f'  Secondary weapon{weapon,damage}')

	#equipment pack
	print('-Equipment pack')
	Thrid_choice = random.choice([1,2])
	if Thrid_choice == 1:
		equipment_pack = Equipment_packs.equipment_pack('Dungeoneers_pack')
	if Thrid_choice == 2:
		equipment_pack = Equipment_packs.equipment_pack('Explorers_pack')
	print(f'  {equipment_pack}')
Exemplo n.º 4
0
def Barbarian(reserved_skills):

    # brief description and features
    print(
        '\n\nYour class\n\nBarbarian\n -Filled with their destructive rage and primal instincts, the barbarian is the class you choose if you want to be the meat shield in the front line dealing great amounts of damage. Who needs a shield when you can stand your foes’ puny attacks with your hardened skin and/or high evasiveness?'
    )
    print('\nStat priority: Strength followed by Constitution.\n')

    # Hit Points
    print('Hit Dice\n -d12')
    print('Hit points at Level 1\n -12 + constitution modifier')
    print(
        'Hit Points at Higher Levels:\n -roll 1d12(or 7) + your constitution modifier per barbarian level after 1st'
    )

    #Proficiencies
    print('\nProficiencies:')
    print('-Armour:\n  -Light armor\n  -Medium armor\n  -Shields')
    print('-Weapons:\n  -Simple weapons\n  -Martial weapons')
    print('-Tools:\n  -None')
    print('-Saving Throws:\n  -Strength\n  -Constitution')

    #Skills
    skills = [
        'Animal Handling', 'Athletics', 'Intimidation', 'Nature', 'Perception',
        'Survival'
    ]
    #skill proficiencies overlap check algorithm
    for i in reserved_skills:
        if i in skills:
            skills.remove(i)

    chosen_skills = random.sample(skills, 2)
    print(f'Skills:\n -{chosen_skills}')

    #equipment
    print('\nClass Equipment')

    #Weapons
    print('\n-Weapons:\n[weapon]:[Damage,Damage_type]')
    #first choice weapon
    first_choice = random.choice([1, 2])
    if first_choice == 1:
        weapon, damage = Weapons.martial_melee_weapon('Greataxe')
    else:
        weapon, damage = Weapons.martial_melee_weapon()
    print(f'  -Primary weapon: {weapon, damage}')
    #second weapon choice
    second_choice = random.choice([1, 2])
    if second_choice == 1:
        s_weapon, s_damage = Weapons.simple_melee_weapon('Handaxe')
    else:
        s_weapon, s_damage = Weapons.simple_melee_weapon()
    print(f'  -Secondary weapon: {s_weapon, s_damage}')

    #equipment pack
    print('-Equipment pack')
    equipment_pack = Equipment_packs.equipment_pack('Explorers_pack')
    print(f'  Explorers pack: {equipment_pack}')
Exemplo n.º 5
0
def Warlock(reserved_skills):

    #Print breif description
    print(
        '\n\nYour class\n\nWarlock\n -Warlocks make pacts with extremely powerful beings, who don’t mind lending some power as they have so much they don’t even notice. However, it all comes with a price: There’s a reason this entity decided to accept the pact, and you might need to do some stuff to maintain the accord. Decide whether you want to have a big spellbook full of incantations, a strange summonable weapon or weird servants. Will you perish in the way to becoming an eldritch master?'
    )
    #Print Class Features
    print(
        '\nFor stat priority, Charisma followed by Wisdom and then Constitution\n'
    )

    #Hit points
    print('Hit Dice\n -1d6 per sorcerer level')
    print('Hit points at Level 1\n  6 + Constitution_mod')
    print(
        'Hit Points at Higher Levels: 1d6(or 4)+ your constitution modifier per Warlock level after 1st'
    )

    #Proficiencies
    print('\nProficiencies')
    print('-Armour:\n -None')
    print(
        '-Weapons:\n -Daggers, Darts, Slings, Quarterstaffs, Light Crossbows')
    print('-Tools:\n -None')
    print('-Saving Throws:\n -Constitution, Charisma')

    #Skills
    skills = [
        'Arcana', 'Deception', 'Insight', 'Intimidation', 'Persuassion',
        'Religion', 'Religion'
    ]
    #skill proficiencies overlap check
    for i in reserved_skills:
        if i in skills:
            skills.remove(i)

    chosen_skills = random.sample(skills, 2)
    print(f'Skills:\n -{chosen_skills}')

    #equipment
    print('\nClass Equipment')
    #weapons
    print('-Weapons')

    #first choice weapon
    first_choice = random.choice([1, 2])
    if first_choice == 1:
        weapon, damage = Weapons.simple_ranged_weapon('Light Crossbow')
        print(f'  -Primary weapon: {weapon,damage}')
    elif first_choice == 2:
        r_or_m = random.choice(['r', 'm'])
        if r_or_m == 'r':
            weapon, damage = Weapons.simple_ranged_weapon()
        elif r_or_m == 'm':
            weapon, damage = Weapons.simple_melee_weapon()
        print(f'  Primary weapon {weapon,damage}')

    #second weapon choice
    second_choice = random.choice(['c', 'a'])
    if second_choice == 'c':
        spellcast_helper = 'a component pouch'
    elif second_choice == 'a':
        spellcast_helper = 'an arcance focus'
    print(f'  Spellcasting helper: {spellcast_helper}')

    #equipment pack
    print('-Equipment pack')
    Thrid_choice = random.choice([1, 2])
    if Thrid_choice == 1:
        equipment_pack = Equipment_packs.equipment_pack('Dungeoneers_pack')
    if Thrid_choice == 2:
        equipment_pack = Equipment_packs.equipment_pack('Explorers_pack')
    print(f'  {equipment_pack}')
def Druid(reserved_skills):

    #Print breif description
    print(
        '\n\nYour class\n\nDruid\n -Preservers of balance and nature’s warriors, the druids aid their party members by using great support spells, as well as heavy damage dealing ones. They speak the language of the flora and fauna, as well as they can shapeshift into a wide amount of beasts for combat or situational purposes.'
    )
    print('\nFor stat priority, Wisdom followed by Constitution.\n')

    #Hit points
    print('Hit Dice\n -d8')
    print('Hit points at Level 1\n 8 + Constitution_mod')
    print(
        'Hit Points at Higher Levels: roll 1d8(or 5) + your constitution modifier per Druid level after 1st'
    )

    #Proficiencies
    print('\nProficiencies')
    print(
        '-Armour:\n -Light armor, medium armor, sheild,will not wear anything made of metal'
    )
    print(
        '-Weapons:\n -Clubs,Daggers,Darts,Javelins,Maces, Quarter staffs,Scimitars, Sickles, Slings, Spears'
    )
    print('-Tools:\n -Herbalism kit')
    print('-Saving Throws:\n -Wisdom, Intelligence')

    #Skills
    skills = [
        'Arcana', 'Animal Handling', 'Insight', 'Medicine', 'Nature',
        'Perception', 'Religion', 'Survival'
    ]
    #skill proficiencies overlap check algorithm
    for i in reserved_skills:
        if i in skills:
            skills.remove(i)

    chosen_skills = random.sample(skills, 2)
    print(f'Skills:\n -{chosen_skills}')

    #equipment
    print('\nClass Equipment')

    #weapons
    print('-Weapons')
    #first choice weapon
    First_choice = random.choice([1, 2, 3])
    if First_choice == 1:
        weapon, damage = 'Wooden shield', '+2ac'
    elif First_choice == 2:
        weapon, damage = Weapons.simple_melee_weapon()
    elif First_choice == 3:
        weapon, damage = Weapons.simple_ranged_weapon()
    print(f'  Primary weapon{weapon,damage}')

    #second weapon choice
    print('   Armour Leather armor')

    #Third choice
    Third_choice = random.choice([1, 2])
    if Third_choice == 1:
        weapon, damage = Weapons.simple_melee_weapon()
    elif Third_choice == 2:
        weapon, damage = Weapons.martial_melee_weapon('Scimitar')
    print(f'  Secondary weapon{weapon,damage}')

    #equipment pack
    print('-Equipment pack')
    equipment_pack = Equipment_packs.equipment_pack('Explorers_pack')
    print(f'  {equipment_pack}')
def Rogue(reserved_skills):

	#Print breif description
	print('\n\nYour class\n\nRogue\n -Let’s get shady, grab a dagger and start stabbing. Rogues excel at sneaking around, scouting ahead, being dexterous and about everything you would expect a thief to be good at. In dungeons, they can help their party by deactivating traps or opening locked doors. Don’t expect them to wear much armor, nor be able to carry heavy stuff; but were your task to need some delicacy or swashbuckling, you’ve found the right person.')

	print('\nFor stat priority, Dexterity followed by Intelligence or Charisma\n')

	#Hit points
	print('Hit Dice\n -d8')
	print('Hit points at Level 1\n 8 + Constitution_mod')
	print('Hit Points at Higher Levels: 1d8(or 5) + your constitution modifier per Rogue level after 1st')

	#Proficiencies
	print('\nProficiencies')
	print('-Armour:\n -Light armour')
	print('-Weapons:\n -Simple weapons,Hand crossbow,Longswords,Rapiers, Shortswords')
	print("-Tools:\n -Theive's tools")
	print('-Saving Throws:\n -Dexterity, Intelligence')

	#Skills
	skills = ['Acrobatics','Athletics','Deception','Insight','Intimidation','Investigation','Perception','Performance','Persuassion','Sleight of hand','Stealth']
	#skill proficiencies overlap check
	for i in reserved_skills:
		if i in skills:
			skills.remove(i)

	chosen_skills = random.sample(skills,2)
	print(f'Skills:\n -{chosen_skills}')

	#equipment
	print('\nClass Equipment')

	#weapons
	print('-Weapons')

	#first choice weapon
	first_choice = random.choice([1,2])
	if first_choice == 1:
		weapon,damage = Weapons.martial_melee_weapon('Rapier')
	elif first_choice == 2:
		weapon,damage= Weapons.martial_melee_weapon('Shortsword')
	print(f'  Primary weapon {weapon,damage}')

	#second weapon choice
	second_choice = random.choice([1,2])
	if second_choice == 1:
		weapon, damage = Weapons.simple_ranged_weapon('Light Crossbow')
		print(f'  Secondary weapon{weapon,damage} with 20 arrows')
	elif second_choice == 2:
		weapon, damage = Weapons.martial_melee_weapon('Shortsword')
		print(f'  Secondary weapon{weapon,damage}')
	#third weapon choice
	weapon, damage = Weapons.simple_melee_weapon('Dagger')
	print(f'  Third weapon 2{weapon,damage}')

	#armor
	print('-Armor')
	print(' Leather armor')

	#equipment pack
	print('-Equipment pack')
	packs = random.choice([1,2,3])
	if packs == 1:
		equipment_pack = Equipment_packs.equipment_pack('Dungeoneers_pack')
	if packs == 2:
		equipment_pack = Equipment_packs.equipment_pack('Explorers_pack')
	if packs == 3:
		equipment_pack = Equipment_packs.equipment_pack('Burglars_pack')
	print(f'  {equipment_pack}')
def Monk(reserved_skills):

    #Print breif description
    print(
        '\n\nYour class\n\nMonk\n -Martial artists who can channel their Ki to do impressive feats as if they were magic users. No armor is necessary, just dexterity and the power of your mind. Deflect missiles thrown at you, changing the target to your enemies, move at the speed of the wind and fill your foes’ faces with a flurry blows.'
    )

    print(
        '\nFor stat priority, Dexterity followed by Wisdom and then Constitution\n'
    )

    #Hit points
    print('Hit Dice\n -d8')
    print('Hit points at Level 1\n 8 + Constitution_mod')
    print(
        'Hit Points at Higher Levels: roll 1d8(or 5) + your constitution modifier per Fighter level after 1st'
    )

    #Proficiencies
    print('\nProficiencies')
    print('-Weapons:\n -Simple weapons, Shortswords')
    print(
        "-Tools:\n -Choose one type of artisan's tools or one musical instrument."
    )
    print('-Saving Throws:\n -Strength, Dexterity')

    #Skills
    skills = [
        'Acrobatics', 'Athletics', 'History', 'Insight', 'Religion', 'Stealth'
    ]
    #skill proficiencies overlap check
    for i in reserved_skills:
        if i in skills:
            skills.remove(i)

    chosen_skills = random.sample(skills, 2)
    print(f'Skills:\n -{chosen_skills}')

    #equipment
    print('\nEquipment')

    #weapons
    print('-Weapons')

    #first choice weapon
    first_choice = random.choice([1, 2])
    if first_choice == 1:
        weapon, damage = Weapons.martial_melee_weapon('Shortsword')
    elif first_choice == 2:
        weapon, damage = Weapons.simple_melee_weapon()
    print(f'  Primary weapon {weapon,damage}')

    #second weapon
    weapon, damage = Weapons.simple_ranged_weapon('Dart')
    print(f'  Secondary weapon 10{weapon,damage}')

    #equipment pack
    print('-Equipment pack')
    Thrid_choice = random.choice([1, 2])
    if Thrid_choice == 1:
        equipment_pack = Equipment_packs.equipment_pack('Dungeoneers_pack')
    if Thrid_choice == 2:
        equipment_pack = Equipment_packs.equipment_pack('Explorers_pack')
    print(f'  {equipment_pack}')
def Paladin(reserved_skills):

    #Print breif description
    print(
        '\n\nYour class\n\nPaladin\n -A paladin is a person guided by an oath, their force of will and devotion so strong they are granted the ability to cast spells to smite their foes. They fight for justice and righteousness, with the idea of following their oath and ideals to the very end. For this, they use heavy armor to be front liners and protect their allies.'
    )

    print('\nFor stat priority, Strength followed by Charisma\n')

    #Hit points
    print('Hit Dice\n -d10')
    print('Hit points at Level 1\n 10 + Constitution_mod')
    print(
        'Hit Points at Higher Levels: roll 1d10(or 6) + your constitution modifier per Paladin level after 1st'
    )

    #Proficiencies
    print('\nProficiencies')
    print('-Armour:\n -All armor and shields')
    print('-Weapons:\n -Simple weapons, Martial weapons')
    print('-Tools:\n -None')
    print('-Saving Throws:\n -Wisdom, Charisma')

    #Skills
    skills = [
        'Acrobatics', 'Animal Handling', 'Arcana', 'Athletics', 'Deception',
        'History', 'Insight', 'Intimidation', 'Investigation', 'Medicine',
        'Nature', 'Perception', 'Performance', 'Persuassion', 'Religion',
        'Sleight of Hand', 'Stealth', 'Survival'
    ]
    #skill proficiencies overlap check
    for i in reserved_skills:
        if i in skills:
            skills.remove(i)

    chosen_skills = random.sample(skills, 2)
    print(f'Skills:\n -{chosen_skills}')

    #equipment
    print('\nClass Equipment')

    #weapons
    print('-Weapons')

    #first choice weapon
    first_choice = random.choice([1, 2])
    if first_choice == 1:
        weapon, damage = Weapons.martial_melee_weapon()
    elif first_choice == 2:
        weapon, damage = Weapons.martial_melee_weapon()
    print(f'  Primary weapon {weapon,damage}')

    #second weapon choice
    second_choice = random.choice([1, 2])
    if second_choice == 1:
        weapon, damage = Weapons.simple_ranged_weapon('Light Crossbow')
    elif second_choice == 2:
        weapon, damage = Weapons.simple_melee_weapon('Handaxe')
    print(f'  Secondary weapon{weapon,damage}')

    #equipment pack
    print('-Equipment pack')
    Thrid_choice = random.choice([1, 2])
    if Thrid_choice == 1:
        equipment_pack = Equipment_packs.equipment_pack('Dungeoneers_pack')
    if Thrid_choice == 2:
        equipment_pack = Equipment_packs.equipment_pack('Explorers_pack')
    print(f'  {equipment_pack}')
def Sorcerer(reserved_skills):

	#Print breif description
	print('\n\nYour class\n\nSorcerer\n -Due to some random or pre-established occurrence, magic runs through you. This means you can “cheat” in a certain way to be able to use magic at will, instead of having to learn how to cast it. Sorcerers are also equipped with a pool of magic they get their sorcery points from, letting them twist spells to their will in different ways.')
	#Print Class Features
	print('\nFor stat priority, Charisma followed by Constitution\n')

	#Hit points
	print('Hit Dice\n -d6')
	print('Hit points at Level 1\n 6 + Constitution_mod')
	print('Hit Points at Higher Levels: 1d6(or 4) + your constitution modifier per Sorcerer level after 1st')

	#Proficiencies
	print('\nProficiencies')
	print('-Armour:\n -None')
	print('-Weapons:\n -Daggers, Darts, Slings, Quarterstaffs, Light crossbow')
	print('-Tools:\n -None')
	print('-Saving Throws:\n -Charisma, Constitution')

	#Skills
	skills = ['Arcana','Deception','Intimidation','Persuasion','Religion']
	#skill proficiencies overlap check
	for i in reserved_skills:
		if i in skills:
			skills.remove(i)

	chosen_skills = random.sample(skills,2)
	print(f'Skills:\n -{chosen_skills}')

	#equipment
	print('\nClass Equipment')

	#weapons
	print('-Weapons')

	#first choice weapon
	first_choice = random.choice([1,2])
	if first_choice == 1:
		weapon,damage = Weapons.simple_ranged_weapon('Light Crossbow')
		print(f'  Primary weapon{weapon,damage} and 20 bolts')
	elif first_choice == 2:
		r_or_m = random.choice(['r','m'])
		if r_or_m == 'r':
			weapon,damage = Weapons.simple_ranged_weapon()
		elif r_or_m == 'm':
			weapon,damage = Weapons.simple_melee_weapon()
		print(f'  Primary weapon {weapon,damage}')

	#second weapon choice
	second_choice = random.choice(['c','a'])
	if second_choice == 'c':
		spellcast_helper = 'a component pouch'
	elif second_choice =='a':
		spellcast_helper = 'an arcance focus'
	print(f'  Spellcasting helper: {spellcast_helper}')

	#equipment pack
	print('-Equipment pack')
	Thrid_choice = random.choice([1,2])
	if Thrid_choice == 1:
		equipment_pack = Equipment_packs.equipment_pack('Dungeoneers_pack')
		print(f'  Dungeoneers pack:{equipment_pack}')

	elif Thrid_choice == 2:
		equipment_pack = Equipment_packs.equipment_pack('Explorers_pack')
		weapon,damage = Weapons.simple_melee_weapon('Dagger')
		print(f'  Explorers pack:{equipment_pack} and 2{weapon,damage}')
Exemplo n.º 11
0
def Cleric(reserved_skills):

    #Print breif description
    print(
        '\n\nYour class\n\nCleric\n -As well as with bards, clerics cover a wide amount of possibilities depending on the god you choose to follow. They are high spirited servants of their deities and follow their domains to choose a way of life. Both a warrior and spellcaster, they are able to cover practically any role in a party. Depending on their subclass, their Channel Divinity ability acts in different ways, granting direct powers from their gods.'
    )

    print(
        '\nFor stat priority, Wisdom followed by Strength or Constitution.\n')

    #Hit points
    print('Hit Dice\n -d8')
    print('Hit points at Level 1\n 8 + Constitution_mod')
    print(
        'Hit Points at Higher Levels: roll 1d8(or 5) + your constitution modifier per Cleric level after 1st'
    )

    #Proficiencies
    print('\nProficiencies')
    print('-Armour:\n -Light armor, medium armor, shields')
    print('-Weapons:\n -Simple weapons')
    print('-Tools:\n -None')
    print('-Saving Throws:\n -Wisdom, Charisma')

    #Skills
    skills = ['History', 'Insight', 'Medicine', 'Persuasion', 'Religion']
    #skill proficiencies overlap check algorithm
    for i in reserved_skills:
        if i in skills:
            skills.remove(i)

    chosen_skills = random.sample(skills, 2)
    print(f'Skills:\n -{chosen_skills}')

    #equipment
    print('\nClass Equipment')

    #weapons
    print('-Weapons')
    #first choice weapon
    first_choice = random.choice([1, 2])
    if first_choice == 1:
        weapon, damage = Weapons.simple_melee_weapon('Mace')
    elif first_choice == 2:
        weapon, damage = Weapons.martial_melee_weapon('Warhammer')
    print(f'  Primary weapon{weapon,damage}')

    #second weapon choice
    second_choice = random.choice(
        ['Scale mail', 'Leather armor', 'Chain mail'])
    print(f'   Armour ({second_choice})')
    #Third choice
    Third_choice = random.choice([1, 2])
    if Third_choice == 1:
        weapon, damage = Weapons.simple_ranged_weapon('Light Crossbow')
    elif Third_choice == 2:
        melee_or_range = random.choice(['melee', 'range'])
        if melee_or_range == 'melee':
            weapon, damage = Weapons.simple_melee_weapon()
        elif melee_or_range == 'range':
            weapon, damage = Weapons.simple_ranged_weapon()
    print(f'  Secondary weapon{weapon,damage}')

    #equipment pack
    print('-Equipment pack')
    equipment_choice = random.choice([1, 2])
    if equipment_choice == 1:
        equipment_pack = Equipment_packs.equipment_pack('Explorers_pack')
    elif equipment_choice == 2:
        equipment_pack = Equipment_packs.equipment_pack('Priests_kit')
    print(f'  {equipment_pack}')
Exemplo n.º 12
0
def Bard(reserved_skills):

    #Print breif description
    print(
        '\n\nYour class\n\nBard\n -A true jack of all trades; a bard can cover great amounts of ground when speaking about what they are able to do. A performer at heart, an inspiration to its allies, but above all a foul-mouthed to its foes. With its great charisma, his/her voice becomes its greatest weapon.'
    )
    #Print Class Features
    print('\nFor stat priority, Charisma followed by dexterity\n')

    #Hit points
    print('Hit Dice\n -d8')
    print('Hit points at Level 1\n 8 + Constitution_mod')
    print(
        'Hit Points at Higher Levels: roll 1d8(or 5) + your constitution modifier per barbarian level after 1st'
    )

    #Proficiencies
    print('\nProficiencies')
    print('-Armour:\n -Light armor')
    print(
        '-Weapons:\n -Simple weapons, Handcrossbows, longswords, rapiers, shortswords'
    )
    print('-Tools:\n -Three musical instruments of your choice')
    print('-Saving Throws:\n -Dexterity, Charisma')

    #Skills
    skills = [
        'Acrobatics', 'Animal Handling', 'Arcana', 'Athletics', 'Deception',
        'History', 'Insight', 'Intimidation', 'Investigation', 'Medicine',
        'Nature', 'Perception', 'Performance', 'Persuassion', 'Religion',
        'Sleight of Hand', 'Stealth', 'Survival'
    ]
    #skill proficiencies overlap check algorithm
    for i in reserved_skills:
        if i in skills:
            skills.remove(i)

    chosen_skills = random.sample(skills, 3)
    print(f'Skills:\n -{chosen_skills}')

    #equipment
    print('\nClass Equipment')

    #weapons
    print('-Weapons:\n[weapon]:[Damage,Damage_type]')
    #first choice weapon
    first_choice = random.choice([1, 3])
    if first_choice == 1:
        weapon, damage = Weapons.martial_melee_weapon('Rapier')
    elif first_choice == 2:
        weapon, damage = Weapons.martial_melee_weapon('Longsword')
    elif first_choice == 3:
        weapon, damage = Weapons.simple_melee_weapon()
    print(f'  Primary weapon: {weapon,damage}')
    #second weapon choice
    second_choice = random.choice([1, 3])
    if second_choice == 1:
        weapon, damage = Weapons.simple_melee_weapon('Handaxe')
    else:
        weapon, damage = Weapons.simple_melee_weapon()
    print(f'  Secondary weapon: {weapon,damage}')
    #third weapon choice
    fourth_choice = Weapons.simple_melee_weapon('Dagger')
    print(f'  Third weapon: {fourth_choice}')

    #armor
    print(f'-Armour')
    print('  Leather armor')

    #equipment pack
    print('-Equipment pack')
    e_pack = random.choice(['Diplomats_pack', 'Entertainers_pack'])
    if e_pack == 'Diplomats_pack':
        equipment_pack = Equipment_packs.equipment_pack(e_pack)
    elif e_pack == 'Entertainers_pack':
        equipment_pack = Equipment_packs.equipment_pack(e_pack)
    print(f'  {e_pack}:{equipment_pack}')