def hail_mary(self): import random kar = self kar.nev.set("Hail Mary") for adat_nev in resource.szemelyes_adat_nevek: if adat_nev in ("Iskola", "Kaszt altípus", "Isten", "Ország"): continue kar.szemelyes_adatok[adat_nev].set(random.choice(resource.szemelyes_adat_sz[adat_nev])) update.szemelyes_forrasok(kar) osszetett = ("Iskola", "Isten", "Ország") for adat_nev in osszetett: kar.szemelyes_adatok[adat_nev].set(random.choice(resource.szemelyes_adat_sz[adat_nev])) if kar.szemelyes_adatok["Kaszt"].get() in ("Tolvaj", "Fejvadász"): kar.szemelyes_adatok["Kaszt altípus"].set(random.choice(resource.szemelyes_adat_sz["Kaszt altípus"])) else: kar.szemelyes_adatok["Kaszt altípus"].set("Nincs") kar.update() eloszthato = self.foTul_eloszthato.get() if eloszthato < 0: for _ in range(5 - eloszthato): tul = random.choice(list(kar.fo_tulajdonsagok.values())) hasznos.mod_IntVar(tul, -1) update.foTul(self) for _ in range(self.foTul_eloszthato.get()): tul = random.choice(list(self.fo_tulajdonsagok.values())) hasznos.mod_IntVar(tul, 1) update.foTul(self) kar.update()
def pluszpont(self): if globz.kar.KAP.get() < 20: tkmb.showerror("Vigyázat", "Nincs elég Karakteralkotó Pontod!") return hasznos.mod_IntVar(globz.kar.foTul_KAP, 1) update.kap(globz.kar) update.foTul(globz.kar)
def hatterek_sb(melyik=None): """Ezt hívja az OK gomb és a spinboxokba kattintás is!""" update.kap(globz.kar) # ez az elosztható KAP-ot frissíti # Ez az IF lehet, hogy felesleges. A fő tulajdonságok állításakor # lehetne mindjárt update-elni a hátterek alapján. (végül is csak # az adottságból vásárolt elosztható pontok miatt kell ez ide if melyik == 'Adottság': update.foTul(globz.kar)
def randomize(self): import random eloszthato = globz.kar.foTul_eloszthato.get() if eloszthato <= 0: for _ in range(5 - eloszthato): tul = random.choice(list(globz.kar.fo_tulajdonsagok.values())) hasznos.mod_IntVar(tul, -1) update.foTul(globz.kar) for _ in range(globz.kar.foTul_eloszthato.get()): tul = random.choice(list(globz.kar.fo_tulajdonsagok.values())) hasznos.mod_IntVar(tul, 1) update.foTul(globz.kar)
def __init__(self, master, **kw): Frame.__init__(self, master, **kw) kar = globz.kar main_container = Frame(self) main_container.pack() left_container = Frame(main_container) left_container.pack(side=LEFT) right_container = Frame(main_container) right_container.pack(side=LEFT) bw = 3 for chain, container in zip(("Fizikai", "Szellemi"), (left_container, right_container)): Label(container, width=36, font=12, bd=bw, relief=RAISED, text=chain + " tulajdonságok" ).pack() namesf = Frame(container, bd=bw, relief=RIDGE) namesf.pack(fill=X) for col, colname in enumerate(('Tul.', 'Faji', 'Mód', 'Alap', 'Csúszka')): w = 4 if colname == 'Csúszka': w = 12 if colname == 'Tul.': w = 5 Label(namesf, text=colname, font="Courier", bd=bw, width=w, relief=RAISED ).grid(row=0, column=col) w, h = 4, 1 for rw, tul in enumerate(RES.tulajdonsagok[chain]): f = Frame(container, bd=bw, relief=RIDGE) f.pack() # Erre a button-ra be lehetne kötni valamiféle súgó funkciót Button(f, width=6, bd=bw, text=tul ).pack(side=LEFT) Label(f, bd=bw, width=w, relief=RAISED, height=h, font="Courier", textvar=kar.fo_tulajdonsagok_faji[tul] ).pack(side=LEFT) Label(f, bd=bw, width=w, relief=RAISED, height=h, font="Courier", text="0" ).pack(side=LEFT) Label(f, bd=bw, width=w, relief=RAISED, height=h, font="Courier", textvariable=kar.fo_tulajdonsagok[tul] ).pack(side=LEFT) Scale(f, width=13, length=120, orient=HORIZONTAL, bd=2, relief=RAISED, showvalue=0, from_=5, to=18 + int(kar.fo_tulajdonsagok_faji[tul].get()), variable=kar.fo_tulajdonsagok[tul], command=lambda x: update.foTul(kar) ).pack(side=LEFT, padx=1)
def reset(self): for tul in globz.kar.fo_tulajdonsagok.values(): tul.set(13) globz.kar.foTul_KAP.set(0) update.kap(globz.kar) update.foTul(globz.kar)