Ejemplo n.º 1
0
 def write(self, reader: ByteIO):
     reader.write_uint16(self.objectInfoParent)
     reader.write_uint16(self.flags.getFlags())
     reader.write_int16(self.x)
     reader.write_int16(self.y)
     reader.write_int16(self.slope)
     reader.write_int16(self.angle)
     reader.write_int32(self.direction)
     reader.write_int16(self.typeParent)
     reader.write_int16(self.objectInfoList)
     reader.write_int16(self.layer)
Ejemplo n.º 2
0
 def write(self, reader: ByteIO):
     reader.write_int16(self.object_type)
     reader.write_int16(self.num)
     if self.object_type == 0 and self.num == 0:
         return
     dataReader = ByteIO(mode='wb')
     if self.object_type in system_loaders and self.num in system_loaders[self.object_type]:
         self.loader.write(dataReader)
     elif self.object_type >= 2 or self.object_type == -7:
         dataReader.write_uint16(self.object_info)
         dataReader.write_int16(self.object_info_list)
         if self.num in extensionLoaders:
             self.loader.write(dataReader)
     reader.write_uint16(len(dataReader) + 6)
     reader.write_bytes(dataReader.read_bytes())
Ejemplo n.º 3
0
    def write(self, reader: ByteIO):
        new_reader = ByteIO(mode='wb')
        new_reader.write_int16(self.object_type)
        new_reader.write_int16(self.num)
        new_reader.write_uint16(self.object_info)
        new_reader.write_int16(self.object_info_list)
        new_reader.write_uint8(self.flags.getFlags())
        new_reader.write_uint8(self.other_flags.getFlags())
        new_reader.write_int8(len(self.items))
        new_reader.write_int8(self.def_type)

        for item in self.items:
            item.write(new_reader)

        reader.write_uint16(len(new_reader) + 2)
        reader.write_bytes(new_reader.read_bytes())
Ejemplo n.º 4
0
    def write(self, reader: ByteIO):
        new_reader = ByteIO()

        new_reader.write_uint8(len(self.conditions))
        new_reader.write_uint8(len(self.actions))
        new_reader.write_uint16(self.flags.getFlags())
        new_reader.write_int16(self.is_restricted)
        new_reader.write_int16(self.restrictCpt)
        new_reader.write_int16(self.identifier)
        new_reader.write_int16(self.undo)

        for condition in self.conditions:
            condition.write(new_reader)

        for action in self.actions:
            action.write(new_reader)

        reader.write_int16((len(new_reader) + 2) * -1)
        reader.write_bytes(new_reader.read_bytes())
Ejemplo n.º 5
0
 def write(self, reader: ByteIO):
     new_reader = ByteIO(mode='wb')
     new_reader.write_int16(self.code)
     self.loader.write(new_reader.read_bytes())
     reader.write_uint16(len(new_reader) + 2)
     reader.write_int16(new_reader)
Ejemplo n.º 6
0
 def write(self, reader: ByteIO):
     reader.write_uint16(self.objectInfo)
     reader.write_int16(self.type)
Ejemplo n.º 7
0
 def write(self, reader: ByteIO):
     reader.write_uint16(self.flags.getFlags())
     reader.write_uint16(self.id)
     reader.write_ascii_string(self.name, 96)
     reader.write_int32(self.password)
Ejemplo n.º 8
0
 def write(self, reader: ByteIO):
     reader.write_uint16(self.flags.getFlags())
     filename = self.filename[:259]
     reader.write_ascii_string(filename, 260)
     reader.write_bytes(self.command.encode('ascii'))