コード例 #1
0
 def save_to_rom(self):
     if self.rom is None:
         return
     prefix, postfix, complete = self.resolve_event_id()
     events_packed = self.rom.get_archive(f"data_lt2/event/ev_d{complete}.plz")
     file = events_packed.open(f"d{prefix}_{postfix}.dat", "wb+")
     self.write(binary.BinaryWriter(file))
     file.close()
     self.save_gds()
コード例 #2
0
    def test_SADExport(self):
        sad_file = self.get_sadl()
        sad_data = sad_file.read()
        sad_file.close()

        sad_obj = sadl.SADL()
        sad_obj.read_stream(sad_data)

        exported_wav = sad_obj.to_wav()
        binary_writer = binary.BinaryWriter()
        exported_wav.write_stream(binary_writer)
        assert hashlib.sha256(binary_writer.readall()).digest(
        ) == b'\xa1\xb3B\xed\xf2\xeb\x19\xc5\xc5\xe3\xd1\xfc\xde\xc4\xd5U:\x13x\x06!\xbay\xf0\x96\xb2\x8dwP\xc6\xcc\x86'

        sad_obj.from_wav(exported_wav)
        exported_wav = sad_obj.to_wav()

        binary_writer = binary.BinaryWriter()
        exported_wav.write_stream(binary_writer)
        assert hashlib.sha256(binary_writer.readall()).digest(
        ) == b'\xf7\xcb\xf3\xe2\x1d\x19\xa0\x9f\x0cW\x87>\x176n\xf1\xa9\x9b\x11\xce\x1f\x10\x97\xa7\x11\xd7\xa1\x82\x97?\x11<'
コード例 #3
0
    def test_SMDReadAndSave(self):
        smd_file = self.get_smd()
        smd_data = smd_file.read()
        smd_file.close()

        smd_obj = smdl.SMDL(filename="data_lt2/sound/BG_004.SMD", rom=self.rom)

        exported_file = io.BytesIO()
        exported_file = binary.BinaryWriter(exported_file)
        smd_obj.write_stream(exported_file)

        exported_data = exported_file.readall()
        assert smd_data == exported_data
コード例 #4
0
    def test_SADReadAndSave(self):
        sad_file = self.get_sadl()
        sad_data = sad_file.read()
        sad_file.close()

        sad_obj = sadl.SADL()
        sad_obj.read_stream(sad_data)

        exported_file = io.BytesIO()
        exported_file = binary.BinaryWriter(exported_file)
        sad_obj.write_stream(exported_file)

        exported_data = exported_file.readall()

        assert sad_data == exported_data
コード例 #5
0
    def test_loadAndSave(self) -> None:
        wav_obj = WAV()
        wav_obj.read_stream(self.wav_data)

        expected_file = self.open_file("expected.wav", "rb")
        expected_data = expected_file.read()
        expected_file.close()

        wav_obj.change_sample_rate(32768)

        exported_file = io.BytesIO()
        exported_file = binary.BinaryWriter(exported_file)
        wav_obj.write_stream(exported_file)

        exported_data = exported_file.readall()
        assert exported_data == expected_data
コード例 #6
0
ファイル: event.py プロジェクト: C3RV1/LaytonEditor
    def write(self, wtr):
        if not isinstance(wtr, binary.BinaryWriter):
            wtr = binary.BinaryWriter()
        wtr.write_uint16(self.map_bottom_id)
        wtr.write_uint16(self.map_top_id)
        wtr.c += 2

        for char in self.characters:
            wtr.write_uint8(char)
        for char_pos in self.characters_pos:
            wtr.write_uint8(char_pos)
        for char_show in self.characters_shown:
            wtr.write_uint8(1 if char_show else 0)
        for char_anim in self.characters_anim_index:
            wtr.write_uint8(char_anim)

        wtr.write(self.original[-2:])

        return wtr.data
コード例 #7
0
 def test_loading_saving(self):
     gds_f, gds_o = self.get_pzd()
     wtr = binary.BinaryWriter()
     gds_f.write_stream(wtr)
     assert wtr.data == gds_o