ernestpasnik / blitzmaxstream
BlitzMax 中使用的二进制数据的便捷工具
v1.0.0
2023-09-09 11:21 UTC
Requires
- php: >=7.2
README
BlitzMax 中使用的二进制数据的便捷工具,详情请见 BlitzMax 文档。
安装
composer require ernestpasnik/blitzmaxstream
文档
读取
写入
其他
使用示例
此库可用于读取 Unreal Software 的 CS2D 地图文件,具体规范请见此处。
$mapData = file_get_contents('de_dust2.map'); $buffer = new BlitzMaxStream($mapData); $header = []; $header['header'] = $buffer->readLine(); $header['scrollMap'] = $buffer->readByte(); $header['useModifiers'] = $buffer->readByte(); $header['saveTileHeights'] = $buffer->readByte(); $header['use64pxTiles'] = $buffer->readByte(); $buffer->skipBytes(6); $header['sysUptime'] = $buffer->readInt(); $header['authorUSGN'] = $buffer->readInt(); $header['daylightTime'] = $buffer->readInt(); $buffer->skipBytes(28); $header['authorName'] = $buffer->readLine(); $header['programUsed'] = $buffer->readLine(); $buffer->skipBytes(16); $header['infoString'] = $buffer->readLine(); $header['tilesetImage'] = $buffer->readLine(); $header['tileCount'] = $buffer->readByte(); $header['mapWidth'] = $buffer->readInt(); $header['mapHeight'] = $buffer->readInt(); $header['backgroundImage'] = $buffer->readLine(); $header['bgScrollX'] = $buffer->readInt(); $header['bgScrollY'] = $buffer->readInt(); $header['bgColorRed'] = $buffer->readByte(); $header['bgColorGreen'] = $buffer->readByte(); $header['bgColorBlue'] = $buffer->readByte(); $header['headerTest'] = $buffer->readLine();
许可证
此软件包采用MIT 许可证授权。