def compilestring(self, text): '''Converts a text to a PokeString object.''' #... using the Pokescript ScriptParser textparts = [] for line in text.split("\n"): textparts.append("= %s" % line) r = PokeString() self.parser.parselines(textparts, r) return r
def search(self, string): #String to bytes, strip the END OF STRING byte. searchbytes = PokeString(string).bytestring()[:-1] results = self.rom.findall(searchbytes) results_list = [] for offset in results: thestr = self.rom.getRM().get(PokeString, offset) occ_count = len(self.rom.findall(array('B', offsetToGBA(offset)))) results_list.append((offset, occ_count, thestr)) self.mainview.setResults(results_list)
def save(self, name, ismale, trainerclass, trainersprite, songid, item1, item2, item3, item4, doublebattle, pokes): self.trainer.setName(PokeString(name)) self.trainer.setSong(songid) self.trainer.setMale(ismale) self.trainer.trainerclass = trainerclass self.trainer.trainerspriteid = trainersprite self.trainer.doublebattle = doublebattle self.trainer.item1 = item1 self.trainer.item2 = item2 self.trainer.item3 = item3 self.trainer.item4 = item4 self.trainer.setBattlePokemon(pokes) self.trainer.update(self.rom, self.traineroffset)
def encodeText(self, text): return PokeString(text).bytestring()
def decompileString(self, pointer): '''Decompiles a String at a given pointer.''' return PokeString.read(self.rom, pointer)
def getName(self): '''Returns the trainer name as a PokeString resource.''' return PokeString.frombytes(self.get('namebytes'))
def textDef(self, name): '''Get a new string, which will be registered as a known resource.''' r = PokeString() self._scriptgroup.register(r, varname=name) return r