def __init__(self, name): store = DirStore(name) self.drop = DropPattern([s.strip() for s in store.read("drop").strip().split("\n")]) self.pattern = self.drop.render() self.stats = store.read("description").strip().split("\n") if "quips" in store: self.quips = store.read("quips").strip().split("\n") else: self.quips = Character.default.quips self.description = self.stats.pop() self.name = self.stats.pop(0).strip() self.stats.append("Attack: %0.2fx" % self.drop.cost) self.images = {} for image in [ "bl-corner", "bottom-bar", "br-corner", "left-bar", "panel-bg", "portrait", "right-bar", "top-bar", "ul-corner", "ur-corner", "background", ]: filename = image + ".png" if filename in store: self.images[image] = pygame.image.load(store.open(filename)) else: self.images[image] = Character.default.images[image]
def image(filename): path = os.path.join(angrydd_path, "images") if os.path.exists(path + ".zip"): store = DirStore(path + ".zip") else: store = DirStore(path) try: return pygame.image.load(store.open(filename)) except pygame.error: raise SystemExit("E: Unable to load %s %s" % (filename, err))
def sound(filename): path = os.path.join(angrydd_path, "sounds") if os.path.exists(path + ".zip"): store = DirStore(path + ".zip") else: store = DirStore(path) try: return pygame.mixer.Sound(store.open(filename)) except ValueError, s: #print "W: Unable to load %s: %s" % (filename, s) return pygame_ext.FakeSound()