本文整理汇总了Python中reader.Reader.readint方法的典型用法代码示例。如果您正苦于以下问题:Python Reader.readint方法的具体用法?Python Reader.readint怎么用?Python Reader.readint使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类reader.Reader
的用法示例。
在下文中一共展示了Reader.readint方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: checksumcontent
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
def checksumcontent(hdr, data):
if hdr.flags & 0x00000004:
r = Reader(data)
if hdr.flags & 0x00000100:
r.skip(8)
if hdr.flags & 0x00001000:
nseq = r.readint()
r.skip(nseq * 4)
if hdr.flags & 0x00002000:
nseq = r.readint()
r.skip(nseq * 4)
if hdr.flags & 0x00004000:
r.skip(4)
if hdr.flags & 0x00400000:
r.skip(8)
if hdr.flags & 0x01000000:
r.skip(8)
if hdr.flags & 0x02000000:
r.skip(4)
if hdr.flags & 0x04000000:
r.skip(8)
if hdr.flags & 0x08000000:
r.skip(6)
checksum = checksumdata(data[0 : r.position], True)
while len(r):
frag_start = r.position
r.readformat('Q')
r.readshort()
frag_len = r.readshort()
r.readshort()
r.readshort()
r.skip(frag_len - 16)
frag_checksum = checksumdata(data[frag_start : frag_start + frag_len], True)
checksum = (checksum + frag_checksum) & 0xFFFFFFFF
return checksum
else:
return checksumdata(data, True)
示例2: Reader
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
from reader import Reader
r = Reader(sys.stdin.buffer.raw.read())
#r.dump(1024)
flags = r.readint()
#print("{} {:08x}".format(sys.argv[1], flags))
if flags & 0x01:
thingie = r.readint()
print('thingie = {:08x}'.format(thingie))
#print('thingie = {:08x}'.format(thingie))
if flags & 0x02 or flags & 0x04:
textureId = r.readint()
zero = r.readint()
assert zero == 0
#print('textureId = {:08x}'.format(textureId))
s, t, p = r.readformat('fff')
if flags & 0x10:
assert s != 0.0
else:
assert s == 0.0
assert len(r) == 0
示例3: Reader
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
from reader import Reader
fid = sys.argv[1]
r = Reader(sys.stdin.buffer.raw.read())
#r.dump()
image_id, zero, two, num_palettes = r.readformat('=IIBI')
palettes = [r.readint() for i in range(num_palettes)]
#print("{:08x} {} {} {}".format(image_id, zero, two, num_palettes))
print(fid + ': ' + ' '.join(['{:08x}'.format(p) for p in palettes]) )
#print(palettes)
assert zero == 0
assert two == 2
assert len(r) == 0
#r.dump(1024)
#print("-----")
示例4: Reader
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
from reader import Reader
r = Reader(sys.stdin.buffer.raw.read())
fid = r.readint()
assert fid & 0xFF000000 == 0x34000000
print('=== fid {:08x}'.format(fid))
numTableData = r.readint()
for i in range(numTableData):
key = r.readint()
numInner = r.readint()
for j in range(numInner):
mod = r.readfloat()
physicsScript = r.readint()
assert physicsScript & 0xFF000000 == 0x33000000
assert len(r) == 0
示例5: Reader
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
from reader import Reader
r = Reader(sys.stdin.buffer.raw.read())
fid = r.readint()
anim_type = r.readint()
num_parts = r.readint()
num_frames = r.readint()
print('=== fid = {:08x}'.format(fid))
#if anim_type == 1 or anim_type == 3:
if anim_type & 1:
for i in range(num_frames):
r.readformat('7I') # there are floats in here
for i in range(num_frames):
#print("on frame {}".format(i))
for j in range(num_parts):
x, y, z = r.readformat('3f')
rw, rx, ry, rz = r.readformat('4f')
extra_count = r.readint()
for j in range(extra_count):
extra_type = r.readint()
extra_thing = r.readint()
assert extra_thing == 0 or extra_thing == 1 or extra_thing == 0xFFFFFFFF
if extra_type == 0x01:
a = r.readformat('I')
assert (a & 0xFF000000) == 0x0A000000
示例6: print
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#print("displace: {:.2f} {:.2f}".format(displace_x, displace_y))
min_scale, max_scale = r.readformat('2f')
max_rot = r.readformat('f')
min_slope, max_slope = r.readformat('2f')
align, orient, weenie_obj = r.readformat('3I')
print('resource_id = {:08x}'.format(resource_id))
#print(' p = {} {} {}'.format(px, py, pz))
#print(' r = {} {} {} {}'.format(rw, rx, ry, rz))
#print(' freq = {}'.format(freq))
#print(' displace_x displace_y = {} {}'.format(displace_x, displace_y))
#print(' min_scale max_scale = {} {}'.format(min_scale, max_scale))
#print(' max_rot = {}'.format(max_rot))
print(' min_slope, max_slope = {} {}'.format(min_slope, max_slope))
#print(' align = {} orient = {} weenie_obj = {}'.format(align, orient, weenie_obj))
r = Reader(sys.stdin.buffer.raw.read())
fid = r.readint()
assert fid & 0xFF000000 == 0x12000000
print('=== fid = {:08x}'.format(fid))
num_objects = r.readint()
for i in range(num_objects):
read_object_desc(r)
assert len(r) == 0
示例7: Reader
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
from reader import Reader
r = Reader(sys.stdin.buffer.raw.read())
fid = r.readint()
assert fid & 0xFF000000 == 0x22000000
print('=== fid = {:08x}'.format(fid))
base_mapper = r.readint()
assert base_mapper == 0 or base_mapper & 0xFF000000 == 0x22000000
unk = r.readbyte()
assert unk <= 7
numPairs = r.readvarint()
def readstring(s):
size = r.readvarint()
s = r.readformat('{}s'.format(size))
#r.align()
return s.decode('cp1252')
for i in range(numPairs):
key = r.readint()
value = readstring(r)
assert len(r) == 0
#r.dump(maxlen=256)
示例8: Reader
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
import wave
from reader import Reader
r = Reader(sys.stdin.buffer.raw.read())
#r.dump()
fid = r.readint()
assert fid & 0xFF000000 == 0x20000000
unk1 = r.readint()
assert unk1 == 0
unk2 = r.readint()
assert unk2 == 1
unk3 = r.readint()
assert unk3 == 0
unk4 = r.readint()
assert unk4 == 0
unk5 = r.readfloat()
assert unk5 == 1.0
unk6 = r.readfloat()
assert unk6 == 1.0
numcount1 = r.readint()
print('fid = {:08x}'.format(fid))
示例9: Reader
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
import math
from reader import Reader
r = Reader(sys.stdin.buffer.raw.read())
fid = r.readint()
assert fid & 0xFF000000 == 0x02000000
flags = r.readint()
assert flags <= 0xF
numParts = r.readint()
print('=== fid: {:08x}, flags: {:x}, numParts: {}'.format(fid, flags, numParts))
def read_location(r):
x, y, z = r.readformat('3f')
rw, rx, ry, rz = r.readformat('4f')
mag = math.sqrt(rw*rw + rx*rx + ry*ry + rz*rz)
assert mag >= 0.999 and mag <= 1.001
for i in range(numParts):
modelid = r.readint()
#print('{:02x} submodel: {:08x}'.format(i, modelid))
assert modelid & 0xFF000000 == 0x01000000
if flags & 1:
for i in range(numParts):
parent = r.readint()
示例10: Reader
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
from reader import Reader
r = Reader(sys.stdin.buffer.raw.read())
#r.dump(1024)
fid = r.readint()
assert fid & 0x0000FFFF == 0x0000FFFE
numCells = r.readint()
numObjects = r.readshort()
r.readshort()
for i in range(numObjects):
modelId = r.readint()
x, y, z = r.readformat('3f')
assert x >= 0.0 and x <= 192.0
assert y >= 0.0 and y <= 192.0
#assert z >= 0.0 and z <= 512.0
rw, rx, ry, rz = r.readformat('4f')
numBuildings = r.readshort()
hasthings = r.readshort()
#print('fid = {:08x} numBuildings = {} thing = {}'.format(fid, numBuildings, thing))
for i in range(numBuildings):
modelId = r.readint()
x, y, z = r.readformat('3f')
示例11: Reader
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
import wave
from reader import Reader
r = Reader(sys.stdin.buffer.raw.read())
fid = r.readint()
assert fid & 0xFF000000 == 0x0A000000
typ = r.readint()
dataLen = r.readint()
unk2 = r.readshort()
unk3 = r.readshort()
channelSampleRate = r.readint()
totalSampleRate = r.readint()
numChannels = r.readshort()
bitsPerSample = r.readint()
print('==== fid = {:08x}'.format(fid))
if typ == 18:
print('unk2 = {} unk3 = {} channelSampleRate = {} totalSampleRate = {} numChannels = {} bitsPerSample = {}'
.format(unk2, unk3, channelSampleRate, totalSampleRate, numChannels, bitsPerSample))
assert typ == 18
assert dataLen == len(r)
assert unk2 == 1
assert unk3 == 1 or unk3 == 2
assert bitsPerSample == 8 or bitsPerSample == 16
assert channelSampleRate * numChannels == totalSampleRate
示例12: print
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#print(' {} animid = {:08x} firstframe = {:08x} lastframe = {:08x} playspeed = {:.2f}'.format(j, animid, firstframe, lastframe, playspeed))
assert animid & 0xFF000000 == 0x03000000
assert animid & 0x00FFFFFF < 0x5000
if e == 0x01 or e == 0x02:
a = r.readfloat()
b = r.readfloat()
c = r.readfloat()
#print("a = {:.2f} b = {:.2f} c = {:.2f}".format(a, b, c))
#assert stance in [0x3C, 0x3D, 0x3E, 0x3F, 0x41, 0x40, 0x44, 0x46, 0x47, 0x49, 0xE8, 0xE9, 0x138, 0x139, 0x1000]
assert d == 0 or d == 1 or d == 2
assert e == 0 or e == 1 or e == 2
assert f == 0
fid = r.readint()
assert fid & 0xFF000000 == 0x09000000
print('=== fid = {:08x}'.format(fid))
unk1 = r.readint()
#print('default style = {:08x}'.format(unk1))
styleCount = r.readint()
for i in range(styleCount):
k = r.readint()
v = r.readint()
#print('k = {:08x} v = {:08x}'.format(k, v))
cycleCount = r.readint()
cycleKeys = {}
示例13: readstring
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
from reader import Reader
def readstring(r):
size = r.readshort()
s = r.readformat('{}s'.format(size))
r.align()
return s.decode('cp1252')
r = Reader(sys.stdin.buffer.raw.read())
fid = r.readint()
assert fid & 0xFF000000 == 0x13000000
print('=== fid = {:08x}'.format(fid))
version = r.readint()
assert version == 1
region_number = r.readint()
assert region_number == 3
region_name = readstring(r)
assert region_name == 'Dereth'
unk1 = r.readint()
assert unk1 == 0xFF
unk2 = r.readint()
assert unk2 == 0xFF
示例14: Reader
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
import math
from reader import Reader
from bsp import BSPNode
from model import unpack_vertex, unpack_trifan
r = Reader(sys.stdin.buffer.raw.read())
fid = r.readint()
assert fid & 0xFF000000 == 0x0D000000
numPieces = r.readint()
print('{:08x} numPieces = {}'.format(fid, numPieces))
for pi in range(numPieces):
#print('======')
pieceIndex = r.readshort()
#print('pieceIndex = {}'.format(pieceIndex))
assert pieceIndex == pi
unk4 = r.readshort()
#print('unk4 = {}'.format(unk4))
assert unk4 == 0
numTriangleFans = r.readint()
#print('numTriangleFans = {}'.format(numTriangleFans))
numCollisionTriangleFans = r.readint()
#print('numCollisionTriangleFans = {}'.format(numCollisionTriangleFans))
示例15: Reader
# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import readint [as 别名]
#!/usr/bin/env python
import sys
from reader import Reader
r = Reader(sys.stdin.buffer.raw.read())
fid = r.readint()
assert fid & 0xFF000000 == 0x32000000
print('=== fid = {:08x}'.format(fid))
unk = r.readint()
assert unk == 0
emitter_type = r.readint()
assert emitter_type >= 0x1 and emitter_type <= 0x2
particle_type = r.readint()
assert particle_type >= 0x1 and particle_type <= 0xc
print('unk = {:08x} emitter_type = {:08x} particle_type = {:08x}'.format(unk, emitter_type, particle_type))
gfxobj_id = r.readint()
print('gfxobj_id = {:08x}'.format(gfxobj_id))
assert gfxobj_id == 0 or (gfxobj_id & 0xFF000000) == 0x01000000
hw_gfxobj_id = r.readint()
print('hw_gfxobj_id = {:08x}'.format(hw_gfxobj_id))
assert hw_gfxobj_id == 0 or (hw_gfxobj_id & 0xFF000000) == 0x01000000
birthrate = r.readformat('d')
print('birthrate = {:.8f}'.format(birthrate))