From 2cdea60982f07e7a7f4d71b6f606de009c0df086 Mon Sep 17 00:00:00 2001 From: Alan Mason <2xShirt@gmail.com> Date: Fri, 28 Sep 2012 02:19:19 -0600 Subject: [PATCH] First real release Still pretty rough though... --- SpellBurner.ico | Bin 0 -> 176485 bytes SpellBurner.py | 265 +++++++++++++++++++++++++++++------------------- 2 files changed, 161 insertions(+), 104 deletions(-) create mode 100644 SpellBurner.ico diff --git a/SpellBurner.ico b/SpellBurner.ico new file mode 100644 index 0000000000000000000000000000000000000000..1564c895da56adfb4df626e681f1ae3a4f49208e GIT binary patch literal 176485 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 b`*kw58pSc=&+k{{-eGxmSjs5t9q;~s@a5If literal 0 HcmV?d00001 diff --git a/SpellBurner.py b/SpellBurner.py index da45851..79971cf 100644 --- a/SpellBurner.py +++ b/SpellBurner.py @@ -1,7 +1,7 @@ # Burning Wheel - Spell Burner # By 2Shirt (Alan Mason) # -# Version 0.14a +# Version 1.0 from tkinter import * from tkinter import ttk from math import ceil, floor, log @@ -144,19 +144,26 @@ facetsMaBu = { weaponLength = ['Shortest', 'Short', 'Long', 'Longer', 'Longest'] -def getFacetTypes(): +def get_facet_types(): + """Return types of Facets as as list""" return sorted(facetsMaBu.keys()) -def getFacetOptions(facet): - return sorted(facetsMaBu[facet].keys()) +def get_facet_options(type): + """Return options of facet type 'type' as as list""" + return sorted(facetsMaBu[type].keys()) -def getFacetActions(facet, option): +def get_facet_actions(facet, option): + """Return actions of facet 'type', 'option' as an int()""" return facetsMaBu[facet][option]['Actions'] -def getFacetOb(facet, option): +def get_facet_ob(facet, option): + """Return obstacle of facet['type']['option'] as an int()""" return facetsMaBu[facet][option]['Ob'] -def getElementWeaponStats(elements, origins, aoes): +def get_weapon_stats(elements, origins, aoes): + """Return weapon stats, as a hash + + based on list(elements), list(origins), & list(aoes)""" weaponStats = {} for e in elements: try: @@ -184,7 +191,8 @@ def getElementWeaponStats(elements, origins, aoes): pass return weaponStats -def generateRange(min, max): +def generate_range(min, max): + """ Return a list of int()'s from min to max (inclusive)""" rangeList = [] if min > max: # Uh.... @@ -196,7 +204,10 @@ def generateRange(min, max): rangeList.append(str(i)) return rangeList -def roundMath(x): +def round_math(x): + """Round to the nearest int() + + (e.g. 1.5 -> 2.0, 2.5 -> 3.0, 2.4 -> 2.0)""" if (x - floor(x) >= 0.5): return floor(x) + 1 else: @@ -204,14 +215,16 @@ def roundMath(x): class Facet(): def reset(self, *args): + """Reset facet for a new spell""" self.actions.set('0') self.ob.set('0') self.option.set('') self.type.set(self.default) self.optionSelect['values'] = [] - self.updateOptions() + self.update_options() def destroy(self, *args): + """Destroy facet for a new spell""" try: self.obCombobox.destroy() except AttributeError: @@ -222,9 +235,10 @@ class Facet(): self.actionsLabel.destroy() self.actionsValueLabel.destroy() - def updateOptions(self, *args): + def update_options(self, *args): + """update obCombobox based on selected facet type""" try: - self.optionSelect['values'] = getFacetOptions(self.type.get()) + self.optionSelect['values'] = get_facet_options(self.type.get()) except KeyError: pass self.actions.set('0') @@ -236,9 +250,10 @@ class Facet(): self.obValueLabel.grid(column=6, row=self.row, sticky=W) except AttributeError: pass - self.frame.updateAll() + self.frame.update_all() - def updateStats(self, *args): + def update_stats(self, *args): + """update Actions on Ob based on selected facet type & option""" if self.option.get() == 'Anima': try: self.obValueLabel.destroy() @@ -248,29 +263,30 @@ class Facet(): self.obCombobox = ttk.Combobox(self.frame, textvariable=self.ob, width=2) self.obCombobox['values'] = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) self.obCombobox.state(['readonly']) - self.obCombobox.bind('<>', self.frame.updateAll) + self.obCombobox.bind('<>', self.frame.update_all) self.obCombobox.grid(column=6, row=self.row, sticky=W) else: try: self.obCombobox.destroy() except AttributeError: pass - self.ob.set(getFacetOb(self.type.get(), self.option.get())) + self.ob.set(get_facet_ob(self.type.get(), self.option.get())) self.obValueLabel = ttk.Label(self.frame, textvariable=self.ob) self.obValueLabel.grid(column=6, row=self.row, sticky=W) - self.actions.set(getFacetActions(self.type.get(), self.option.get())) - self.frame.updateAll() + self.actions.set(get_facet_actions(self.type.get(), self.option.get())) + self.frame.update_all() - def createWidgets(self): + def create_widgets(self): + """Create widgets upon instantiation""" self.typeSelect = ttk.Combobox(self.frame, textvariable=self.type, width=18) - self.typeSelect['values'] = getFacetTypes() + self.typeSelect['values'] = get_facet_types() self.typeSelect.state(['readonly']) - self.typeSelect.bind('<>', self.updateOptions) + self.typeSelect.bind('<>', self.update_options) self.typeSelect.grid(column=1, row=self.row, columnspan=2, sticky=(W, E)) self.optionSelect = ttk.Combobox(self.frame, textvariable=self.option) self.optionSelect.state(['readonly']) - self.optionSelect.bind('<>', self.updateStats) + self.optionSelect.bind('<>', self.update_stats) self.optionSelect.grid(column=3, row=self.row, columnspan=2, sticky=(W, E)) self.obLabel = ttk.Label(self.frame, text='Ob:', width=3) @@ -285,16 +301,28 @@ class Facet(): self.actionsValueLabel = ttk.Label(self.frame, textvariable=self.actions, width=3) self.actionsValueLabel.grid(column=8, row=self.row, sticky=W) - def getActions(self): + def get_actions(self): + """return Actions as float() + + Will return 0.0 if facet type/option not set""" return float(self.actions.get()) - def getOb(self): + def get_ob(self): + """return Ob as int() + + Will return 0 if facet type/option not set""" return float(self.ob.get()) - def getOption(self): + def get_option(self): + """return facet option as str() + + Will return '' if facet type not set""" return str(self.option.get()) - def getType(self): + def get_type(self): + """return facet type as str() + + Will return '' if facet type not set""" return str(self.type.get()) def __init__(self, frame, row, default=''): @@ -308,32 +336,34 @@ class Facet(): self.option = StringVar() self.type = StringVar() self.type.set(default) - self.createWidgets() + self.create_widgets() try: - self.optionSelect['values'] = getFacetOptions(self.type.get()) + self.optionSelect['values'] = get_facet_options(self.type.get()) except KeyError: pass class Distiller(): - def updateStats(self, *args): + def update_stats(self, *args): + """Update Actions/Ob totals based on facet selections""" self.obTmp = 0 self.actionsTmp = 0 for x in self.tobedistilled: try: - self.obTmp += x.getOb() - self.actionsTmp += x.getActions() + self.obTmp += x.get_ob() + self.actionsTmp += x.get_actions() except AttributeError: for y in x: - self.obTmp += y.getOb() - self.actionsTmp += y.getActions() + self.obTmp += y.get_ob() + self.actionsTmp += y.get_actions() if self.final: - self.ob.set(str(max(1,roundMath(self.obTmp/2)))) - self.actions.set(str(max(1,roundMath(self.actionsTmp/2)))) + self.ob.set(str(max(1,round_math(self.obTmp/2)))) + self.actions.set(str(max(1,round_math(self.actionsTmp/2)))) else: self.ob.set(str(self.obTmp/2)) self.actions.set(str(self.actionsTmp/2)) - def createWidgets(self): + def create_widgets(self): + """Create widgets upon instantiation""" ttk.Separator(self.frame, orient=HORIZONTAL).grid(column=1, row=self.row, columnspan=8, sticky=(W, E)) self.titleLabel = ttk.Label(self.frame, text=self.title, justify='right') @@ -353,10 +383,16 @@ class Distiller(): ttk.Separator(self.frame, orient=HORIZONTAL).grid(column=1, row=self.row + 2, columnspan=8, sticky=(W, E)) - def getActions(self): + def get_actions(self): + """return Actions as float() + + Will return 0.0 if facet type/option not set""" return float(self.actions.get()) - def getOb(self): + def get_ob(self): + """return Ob as float() + + Will return 0.0 if facet type/option not set""" return float(self.ob.get()) def __init__(self, frame, row, title, tobedistilled, final=False, *args): @@ -367,15 +403,19 @@ class Distiller(): self.final = final self.actions = StringVar() self.ob = StringVar() - self.createWidgets() - self.updateStats() + self.create_widgets() + self.update_stats() class MajorisSigil(): - def addSigil(self, *args): + def add_sigil(self, *args): + """Add an additional Majoris Sigil + + (and remove the '+' Button in the process)""" self.addButton.destroy() - self.frame.addMajorisSigil() + self.frame.add_majoris_sigil() def destroy(self, *args): + """destroy widgets for new Spell""" self.addButton.destroy() self.toggle.destroy() self.obCombobox.destroy() @@ -383,6 +423,7 @@ class MajorisSigil(): self.actionsEntry.destroy() def reset(self, *args): + """Reset widgets for new Spell""" self.enabled.set(False) self.ob.set('') self.obCombobox['values'] = ('') @@ -393,10 +434,11 @@ class MajorisSigil(): self.addButton.destroy() except: pass - self.addButton = ttk.Button(self.frame, text='+', command=self.addSigil, width=3) + self.addButton = ttk.Button(self.frame, text='+', command=self.add_sigil, width=3) self.addButton.grid(column=1, row=self.row) - def toggleSigil(self, *args): + def toggle_sigil(self, *args): + """Enable or Disable this Majoris Sigil""" if self.enabled.get(): self.ob.set('1') self.obCombobox.state(['!disabled']) @@ -410,9 +452,10 @@ class MajorisSigil(): self.obCombobox.state(['disabled']) self.actionsEntry.delete(0,'end') self.actionsEntry.state(['disabled']) - self.frame.updateAll() + self.frame.update_all() - def validateMultiplier(self, *args): + def validate_multiplier(self, *args): + """Handle monkey input for Actions Multiplier""" try: if (float(self.actionsEntry.get()) < 10): self.actionsEntry.delete(0,'end') @@ -426,24 +469,22 @@ class MajorisSigil(): except TypeError: self.actionsEntry.delete(0,'end') self.actionsEntry.insert(0, '10') - self.frame.updateAll() + self.frame.update_all() return 1 - def correctMultiplier(self, *args): - self.frame.updateAll() - - def createWidgets(self): - self.addButton = ttk.Button(self.frame, text='+', command=self.addSigil, width=3) + def create_widgets(self): + """Create widgets upon instantiation""" + self.addButton = ttk.Button(self.frame, text='+', command=self.add_sigil, width=3) self.addButton.grid(column=1, row=self.row) - self.toggle = Checkbutton(self.frame, text='Majoris', command=self.toggleSigil, + self.toggle = Checkbutton(self.frame, text='Majoris', command=self.toggle_sigil, variable=self.enabled, onvalue=True, offvalue=False) self.toggle.grid(column=2, row=self.row, sticky=W) self.obCombobox = ttk.Combobox(self.frame, textvariable=self.ob, width=2) self.obCombobox.state(['readonly']) self.obCombobox['values'] = ('') - self.obCombobox.bind('<>', self.frame.updateAll) + self.obCombobox.bind('<>', self.frame.update_all) self.obCombobox.grid(column=3, row=self.row, sticky=W) self.obCombobox.state(['disabled']) @@ -451,17 +492,23 @@ class MajorisSigil(): self.actionsLabel.grid(column=4, row=self.row, sticky=W) self.actionsEntry = ttk.Entry(self.frame, validate='focusout', - validatecommand=self.validateMultiplier, width=5) + validatecommand=self.validate_multiplier, width=5) self.actionsEntry.grid(column=5, row=self.row, sticky=W) self.actionsEntry.state(['disabled']) - def getMultiplier(self): + def get_multiplier(self): + """return Actions Multiplier as float() + + Will return 0.0 if Majoris Sigil is not set""" if self.enabled.get(): return float(self.actionsEntry.get()) else: return 1.0 - def getOb(self): + def get_ob(self): + """return Ob as int() + + Will return 0 if Majoris Sigil is not set""" if self.enabled.get(): return int(self.ob.get()) else: @@ -475,10 +522,11 @@ class MajorisSigil(): self.enabled = BooleanVar() self.enabled.set(False) self.ob = StringVar() - self.createWidgets() + self.create_widgets() class WeaponStats(): - def updateDisplay(self, *args): + def update_display(self, *args): + """Display weapon stats only if required facets are chosen""" if self.enabled: if not(self.prev): self.line = ttk.Separator(self.frame, orient=HORIZONTAL) @@ -520,25 +568,28 @@ class WeaponStats(): except AttributeError: pass - def updateStats(self, *args): + def update_stats(self, *args): + """Update weapon stats + + based on facets: 'Element', 'Origin', and 'Area of Effect'""" # Initialize self.prev = self.enabled & True # Not link? self.enabled = True self.spell = {} self.tmp = {} for f in self.frame.facets: - if f.getOption() == '': + if f.get_option() == '': pass - elif f.getType() in self.spell: - if f.getOption() in self.spell[f.getType()]: - self.spell[f.getType()][f.getOption()] += 1 + elif f.get_type() in self.spell: + if f.get_option() in self.spell[f.get_type()]: + self.spell[f.get_type()][f.get_option()] += 1 else: - self.spell[f.getType()][f.getOption()] = 1 + self.spell[f.get_type()][f.get_option()] = 1 else: - self.spell[f.getType()] = {} - self.spell[f.getType()][f.getOption()] = 1 + self.spell[f.get_type()] = {} + self.spell[f.get_type()][f.get_option()] = 1 try: - if self.spell[f.getType()][f.getOption()] > 1: + if self.spell[f.get_type()][f.get_option()] > 1: self.frame.valid = False except KeyError: pass @@ -554,7 +605,7 @@ class WeaponStats(): # Update Stats if self.enabled: - self.tmp = getElementWeaponStats( + self.tmp = get_weapon_stats( list(self.spell['Element']), list(self.spell['Origin']), list(self.spell['Area of Effect']) @@ -580,7 +631,7 @@ class WeaponStats(): self.frame.valid = False # Update display - self.updateDisplay() + self.update_display() def __init__(self, frame, row, *args): self.frame = frame @@ -595,7 +646,8 @@ class WeaponStats(): self.wVA = StringVar() class App(ttk.Frame): - def addExtraFacet(self, *args): + def add_extra_facet(self, *args): + """Add an extra Facet (limit 10)""" self.facets.append(Facet(self, self.extrafacetStartRow+len(self.facets[5:]))) # Update Distiller @@ -603,25 +655,28 @@ class App(ttk.Frame): (self.distiller1, self.distiller2, self.facets[4:]), final=True ) - self.configureGrid() + self.configure_grid() - def addMajorisSigil(self, *args): + def add_majoris_sigil(self, *args): + """Add an additional Majoris Sigil (limit 10)""" if len(self.majorisSigils) < self.majorisMaxRows: self.majorisSigils.append(MajorisSigil(self, self.majorisStartRow + len(self.majorisSigils))) - self.configureGrid() + self.configure_grid() - def configureGrid(self, *args): + def configure_grid(self, *args): + """Update window""" try: self.extraFacetButton.destroy() except: pass if len(self.facets[5:]) < self.extraFacetMaxRows: - self.extraFacetButton = ttk.Button(self, text='+', command=self.addExtraFacet, width=3) + self.extraFacetButton = ttk.Button(self, text='+', command=self.add_extra_facet, width=3) self.extraFacetButton.grid(column=1, row=19) for child in self.winfo_children(): child.grid_configure(padx=2, pady=2) def reset(self, *args): + """Reset all for a new Spell""" for f in self.facets[0:5]: f.reset() for f in self.facets[5:]: @@ -635,14 +690,15 @@ class App(ttk.Frame): self.minorisValue.set(0) self.compressValue.set(0) self.extendValue.set(0) - self.updateAll() - self.configureGrid() + self.update_all() + self.configure_grid() - def updateAll(self, *args): + def update_all(self, *args): + """Update all stats for this Spell""" ### Distillations ### - self.distiller1.updateStats() - self.distiller2.updateStats() - self.distiller3.updateStats() + self.distiller1.update_stats() + self.distiller2.update_stats() + self.distiller3.update_stats() ### Final Spell ### # Init Variables @@ -660,11 +716,11 @@ class App(ttk.Frame): self.majActTotal = 1 self.majObTotal = 0 for m in self.majorisSigils: - self.majObTotal += m.getOb() - self.majActTotal *= m.getMultiplier() + self.majObTotal += m.get_ob() + self.majActTotal *= m.get_multiplier() # After Final Distillation - self.subTotalAct = roundMath(self.distiller3.getActions()) - self.subTotalOb = roundMath(self.distiller3.getOb()) + self.subTotalAct = round_math(self.distiller3.get_actions()) + self.subTotalOb = round_math(self.distiller3.get_ob()) # Before rounding self.preAct = max(1, self.subTotalAct)*self.majActTotal*0.5**self.numCs self.preEs = self.subTotalOb @@ -724,9 +780,9 @@ class App(ttk.Frame): # Set limits if self.numCap == 0: self.capValue.set(False) - self.minorisCombobox['values'] = generateRange(self.minMin, self.maxMin) - self.compressCombobox['values'] = generateRange(self.minCs, self.maxCs) - self.extendCombobox['values'] = generateRange(self.minEs, self.maxEs) + self.minorisCombobox['values'] = generate_range(self.minMin, self.maxMin) + self.compressCombobox['values'] = generate_range(self.minCs, self.maxCs) + self.extendCombobox['values'] = generate_range(self.minEs, self.maxEs) # Misc Checks if self.preOb < ceil((self.preEs)/2): @@ -741,8 +797,8 @@ class App(ttk.Frame): self.finalActions.set(self.postAct) ### Weapon Stats ### - self.weapon.updateStats() - self.configureGrid() + self.weapon.update_stats() + self.configure_grid() ### Warnings ### if self.valid: @@ -753,7 +809,8 @@ class App(ttk.Frame): else: self.warningLabelText.set('[HOUSE RULED]') - def createWidgets(self): + def create_widgets(self): + """Create widgets upon instantiation""" # 1st Distillation self.facets.append(Facet(self, 0, 'Element')) self.facets.append(Facet(self, 1, 'Impetus')) @@ -773,7 +830,7 @@ class App(ttk.Frame): # 3rd Distillation self.facets.append(Facet(self, 10, 'Area of Effect')) - self.extraFacetButton = ttk.Button(self, text='+', command=self.addExtraFacet, width=3) + self.extraFacetButton = ttk.Button(self, text='+', command=self.add_extra_facet, width=3) self.extraFacetButton.grid(column=1, row=19) self.distiller3 = Distiller(self, 20, 'Final Distillation', @@ -785,7 +842,7 @@ class App(ttk.Frame): self.sigilsLabel = ttk.Label(self, text='Sigils').grid(column=1, row=24) # Adjustments - Cap & Minoris Sigil(S) - self.capCheckbutton = Checkbutton(self, text='Cap', command=self.updateAll, + self.capCheckbutton = Checkbutton(self, text='Cap', command=self.update_all, variable=self.capValue, onvalue=True, offvalue=False) self.capCheckbutton.grid(column=2, row=25, sticky=W) @@ -794,8 +851,8 @@ class App(ttk.Frame): self.minorisCombobox = ttk.Combobox(self, textvariable=self.minorisValue, width=2) self.minorisCombobox.state(['readonly']) - self.minorisCombobox['values'] = generateRange(0, 10) - self.minorisCombobox.bind('<>', self.updateAll) + self.minorisCombobox['values'] = generate_range(0, 10) + self.minorisCombobox.bind('<>', self.update_all) self.minorisCombobox.grid(column=5, row=25, sticky=W) # Adjustments - Majoris Sigil(S) @@ -807,8 +864,8 @@ class App(ttk.Frame): self.compressCombobox = ttk.Combobox(self, textvariable=self.compressValue, width=2) self.compressCombobox.state(['readonly']) - self.compressCombobox['values'] = generateRange(0, 10) - self.compressCombobox.bind('<>', self.updateAll) + self.compressCombobox['values'] = generate_range(0, 10) + self.compressCombobox.bind('<>', self.update_all) self.compressCombobox.grid(column=3, row=36, sticky=W) self.extendLabel = ttk.Label(self, text='Extensions') @@ -816,8 +873,8 @@ class App(ttk.Frame): self.extendCombobox = ttk.Combobox(self, textvariable=self.extendValue, width=2) self.extendCombobox.state(['readonly']) - self.extendCombobox['values'] = generateRange(0, 10) - self.extendCombobox.bind('<>', self.updateAll) + self.extendCombobox['values'] = generate_range(0, 10) + self.extendCombobox.bind('<>', self.update_all) self.extendCombobox.grid(column=5, row=36, sticky=W) # Final Spell Results @@ -864,7 +921,7 @@ class App(ttk.Frame): menu_file.add_command(label='Close', command=quit) menu_settings.add_checkbutton(label='Advanced Limiting', variable=self.advanceLimits, onvalue=True, offvalue=False, - command=self.updateAll + command=self.update_all ) self.capValue = BooleanVar() @@ -885,9 +942,9 @@ class App(ttk.Frame): self.finalActions = StringVar() self.finalActionsValue = 1 self.majorisSigils = [] - self.createWidgets() - self.updateAll() - self.configureGrid() + self.create_widgets() + self.update_all() + self.configure_grid() root = Tk() root.title('Spell Burner')