232 lines
7.8 KiB
Python
232 lines
7.8 KiB
Python
|
import pandas as pd
|
||
|
|
||
|
|
||
|
class Mutations(object):
|
||
|
def __init__(self):
|
||
|
self.raw_mutations_table = {
|
||
|
'Score': list(range(1, 101)),
|
||
|
'Physical': [
|
||
|
'No Nerve Endings',
|
||
|
'Poison Susceptibility',
|
||
|
'Poison Susceptibility',
|
||
|
'Dark Dependency',
|
||
|
'Dark Dependency',
|
||
|
'Arterial Weakness',
|
||
|
'Arterial Weakness',
|
||
|
'Diminished Sense',
|
||
|
'Energy Sensitivity',
|
||
|
'Doubled Pain',
|
||
|
'Heat Reaction',
|
||
|
'Insanity',
|
||
|
'Insanity',
|
||
|
'Insanity',
|
||
|
'Attraction Odor',
|
||
|
'Anti-Charisma',
|
||
|
'Anti-Charisma',
|
||
|
'Body Structure Change',
|
||
|
'Body Structure Change',
|
||
|
'Fat Cell Accumulation',
|
||
|
'Increased Metabolism',
|
||
|
'Inhibiting Field',
|
||
|
'Water Dependency',
|
||
|
'Weight Decrease',
|
||
|
'Vision Defect',
|
||
|
'Vision Defect',
|
||
|
'Light Dependency',
|
||
|
'Skin Structure Change',
|
||
|
'Narcolepsy',
|
||
|
'Bacterial Susceptibility',
|
||
|
'Phobia',
|
||
|
'Phobia',
|
||
|
'Phobia',
|
||
|
'Poor Duel Brain',
|
||
|
'Poor Respiration',
|
||
|
'Actual Metamorphosis',
|
||
|
'Kinetic Absorption',
|
||
|
'Kinetic Absorption',
|
||
|
'Sound Imitation',
|
||
|
'Bodily Control',
|
||
|
'Horns or Antlers',
|
||
|
'Heightened Physical Attribute',
|
||
|
'Heightened Physical Attribute',
|
||
|
'Heightened Physical Attribute',
|
||
|
'Heightened Physical Attribute',
|
||
|
'Heightened Sense',
|
||
|
'Heightened Sense',
|
||
|
'Heightened Precision',
|
||
|
'Heightened Precision',
|
||
|
'Heightened Precision',
|
||
|
'Heightened Precision',
|
||
|
'Heightened Precision',
|
||
|
'Modified Body Parts',
|
||
|
'Modified Body Parts',
|
||
|
'Multiplied Body Parts',
|
||
|
'Multiplied Body Parts',
|
||
|
'Multiplied Body Parts',
|
||
|
'Oversize Body Parts',
|
||
|
'New Body Parts',
|
||
|
'New Body Parts',
|
||
|
'Regeneration',
|
||
|
'Quills / Spines',
|
||
|
'Radar / Sonar',
|
||
|
'Ultra vision',
|
||
|
'Shorter',
|
||
|
'Electrical Generation',
|
||
|
'Gills',
|
||
|
'Taller',
|
||
|
'Photosynthetic Skin',
|
||
|
'Physical Reflection',
|
||
|
'Mane & Bristles',
|
||
|
'Skeletal Enhancement',
|
||
|
'Density Control (self)',
|
||
|
'Displacement',
|
||
|
'Wings',
|
||
|
'Gas Bags',
|
||
|
'Speed Increase',
|
||
|
'Carapace',
|
||
|
'Radiation Eyes',
|
||
|
'Chameleon Powers',
|
||
|
'Chameleon Powers',
|
||
|
'Light Generation',
|
||
|
'Shape change',
|
||
|
'Anti-Life Leach',
|
||
|
'Infra vision',
|
||
|
'Heightened Balance',
|
||
|
'Energy Absorption',
|
||
|
'Energy Metamorphosis',
|
||
|
'Gas Generation',
|
||
|
'Heat Generation',
|
||
|
'Hands of Power',
|
||
|
'Hands of Power',
|
||
|
'Dual Brain',
|
||
|
'Duality',
|
||
|
'Sonic Blast',
|
||
|
'YOU PICK ONE',
|
||
|
'YOU PICK ONE',
|
||
|
'YOU PICK ONE',
|
||
|
'YOU INVENT ONE',
|
||
|
'YOU INVENT ONE'
|
||
|
],
|
||
|
'Mental': [
|
||
|
'Attack Reversal',
|
||
|
'Mental Block',
|
||
|
'Mental Block',
|
||
|
'Seizures',
|
||
|
'Seizures',
|
||
|
'Fear Impulse',
|
||
|
'Fear Impulse',
|
||
|
'Hostility Field',
|
||
|
'Mental Defenselessness',
|
||
|
'Multiple Damage',
|
||
|
'Energy Sensitivity',
|
||
|
'Periodic Amnesia',
|
||
|
'Periodic Amnesia',
|
||
|
'Periodic Amnesia',
|
||
|
'Unconscious Summoning',
|
||
|
'Empathy',
|
||
|
'Empathy',
|
||
|
'Beguiling',
|
||
|
'Beguiling',
|
||
|
'Confusion',
|
||
|
'Psychometry',
|
||
|
'Directional Sense',
|
||
|
'Intuition',
|
||
|
'Precognition',
|
||
|
'Summoning',
|
||
|
'Summoning',
|
||
|
'Absorption',
|
||
|
'Time Suspension',
|
||
|
'Reflection',
|
||
|
'Devolution',
|
||
|
'Genius Capability',
|
||
|
'Genius Capability',
|
||
|
'Genius Capability',
|
||
|
'Repelling Force',
|
||
|
'Mass Mind',
|
||
|
'Magnetic Control',
|
||
|
'Heightened Brain Talent',
|
||
|
'Heightened Brain Talent',
|
||
|
'Heightened Intelligence',
|
||
|
'Density Control (Others)',
|
||
|
'Light Manipulation',
|
||
|
'Mental Blast',
|
||
|
'Mental Blast',
|
||
|
'Mental Blast',
|
||
|
'Mental Blast',
|
||
|
'Mental Shield',
|
||
|
'Mental Shield',
|
||
|
'Mental Control Of Body',
|
||
|
'Mental Control Of Body',
|
||
|
'Mental Control Of Body',
|
||
|
'Mental Control Of Body',
|
||
|
'Mental Control Of Body',
|
||
|
'Mental Multiplier',
|
||
|
'Mental Multiplier',
|
||
|
'Mental Control',
|
||
|
'Mental Control',
|
||
|
'Mental Control',
|
||
|
'Mental Paralysis',
|
||
|
'Fear Generation',
|
||
|
'Fear Generation',
|
||
|
'Force Field Generation',
|
||
|
'Illusion Generation',
|
||
|
'Molecular Sense',
|
||
|
'Molecular Disruption',
|
||
|
'Repulsion Field',
|
||
|
'Plant Control',
|
||
|
'Stunning Force',
|
||
|
'Telepathy',
|
||
|
'Pyro/Cryokinesis',
|
||
|
'Telekinesis',
|
||
|
'Telekinetic Arm',
|
||
|
'Telekinetic Flight',
|
||
|
'Symbiotic Attachment',
|
||
|
'Levitation',
|
||
|
'Temporal Fugue',
|
||
|
'Temporal Fugue',
|
||
|
'Teleport Object',
|
||
|
'Teleportation',
|
||
|
'Thought Imitation',
|
||
|
'The Gamma Eye',
|
||
|
'The Gamma Eye',
|
||
|
'Will Force',
|
||
|
'Total Healing',
|
||
|
'Time Manipulation',
|
||
|
'Time Manipulation',
|
||
|
'Weather Manipulation',
|
||
|
'Weather Manipulation',
|
||
|
'Time Distortion',
|
||
|
'Death Field Generation',
|
||
|
'Life Leach',
|
||
|
'Planar Travel',
|
||
|
'YOU PICK ONE',
|
||
|
'YOU PICK ONE',
|
||
|
'YOU PICK ONE',
|
||
|
'YOU PICK ONE',
|
||
|
'YOU PICK ONE',
|
||
|
'YOU PICK ONE',
|
||
|
'YOU PICK ONE',
|
||
|
'YOU INVENT ONE',
|
||
|
'YOU INVENT ONE'
|
||
|
]
|
||
|
}
|
||
|
|
||
|
self.mutations_table = pd.DataFrame(self.raw_mutations_table)
|
||
|
|
||
|
def get_physical_mutation(self, score):
|
||
|
mutation = self.mutations_table.loc[self.mutations_table['Score'] == score, 'Physical']
|
||
|
return mutation.iloc[0] if not mutation.empty else None
|
||
|
|
||
|
def get_mental_mutation(self, score):
|
||
|
mutation = self.mutations_table.loc[self.mutations_table['Score'] == score, 'Mental']
|
||
|
return mutation.iloc[0] if not mutation.empty else None
|
||
|
|
||
|
def get_table_shape(self):
|
||
|
return self.mutations_table.shape
|
||
|
|
||
|
def get_table_row_count(self):
|
||
|
return self.mutations_table.shape[0]
|
||
|
|
||
|
def get_table_column_count(self):
|
||
|
return self.mutations_table.shape[1]
|