All pastes #1558582 Raw Edit

robertj

public text v1 · immutable
#1558582 ·published 2009-09-08 16:50 UTC
rendered paste body
from stats import StatBuffclass SlotContainer(set):    def __init__(self, ent):        self.ent = ent    def add(self, slot):        slot.ent = self.ent         set.add(self, slot)class Equipment:    def __init__(self):            self.slot = None    def equip(self, slot):        if self.slot:            self.unequip(slot)        self.onEquip(slot.ent)        slot.contents = self        self.slot = slot    def unequip(self):        if self.slot:            self.onUnequip(self.slot.ent)            self.slot.contents = None            self.slot = None        class ItemSlot:    def __init__(self):        self.contents = None    def equip(self, item):        item.equip(self)    def unequip(self):        if self.contents:            self.contents.unequip()class StatboostEquipment(Equipment):    def __init__(self):        self.bonus_description = []        Equipment.__init__(self)    def describeBuff(self, ent):        return []    def onEquip(self, ent):        self.statboost_buff = StatBuff(self.describeBuff(ent))        ent.effects.add(self.statboost_buff)    def onUnequip(self, ent):        ent.effects.remove(self.statboost_buff)