mirror of
https://github.com/demostf/demo.js
synced 2026-06-04 00:54:14 +02:00
add encoder for parseSounds
This commit is contained in:
parent
f360011ef4
commit
9406937f08
7 changed files with 255 additions and 15 deletions
|
|
@ -10,7 +10,7 @@ import {ParseGameEventList} from '../Packet/GameEventList';
|
|||
import {ParseMenu} from '../Packet/Menu';
|
||||
import {ParsePacketEntities} from '../Packet/PacketEntities';
|
||||
import {PacketParserMap, voidEncoder} from '../Packet/Parser';
|
||||
import {ParseParseSounds} from '../Packet/ParseSounds';
|
||||
import {EncodeParseSounds, ParseParseSounds} from '../Packet/ParseSounds';
|
||||
import {EncodeSetConVar, ParseSetConVar} from '../Packet/SetConVar';
|
||||
import {ParseTempEntities} from '../Packet/TempEntities';
|
||||
import {EncodeUpdateStringTable, ParseUpdateStringTable} from '../Packet/UpdateStringTable';
|
||||
|
|
@ -45,7 +45,7 @@ export class Packet extends Parser {
|
|||
13: {parser: ParseUpdateStringTable, encoder: EncodeUpdateStringTable},
|
||||
14: {parser: ParseVoiceInit, encoder: EncodeVoiceInit},
|
||||
15: {parser: ParseVoiceData, encoder: EncodeVoiceData},
|
||||
17: {parser: ParseParseSounds, encoder: voidEncoder},
|
||||
17: {parser: ParseParseSounds, encoder: EncodeParseSounds},
|
||||
18: make('setView', 'index{11}'),
|
||||
19: make('fixAngle', 'relative{b}x{16}y{16}z{16}'),
|
||||
21: {parser: ParseBSPDecal, encoder: voidEncoder},
|
||||
|
|
|
|||
|
|
@ -5,11 +5,27 @@ export function ParseParseSounds(stream: BitStream): ParseSoundsPacket { // 17:
|
|||
const reliable = stream.readBoolean();
|
||||
const num = (reliable) ? 1 : stream.readUint8();
|
||||
const length = (reliable) ? stream.readUint8() : stream.readUint16();
|
||||
stream.index += length;
|
||||
const data = stream.readBitStream(length);
|
||||
|
||||
return {
|
||||
packetType: 'parseSounds',
|
||||
reliable,
|
||||
num,
|
||||
length,
|
||||
data
|
||||
};
|
||||
}
|
||||
|
||||
export function EncodeParseSounds(packet: ParseSoundsPacket, stream: BitStream) {
|
||||
stream.writeBoolean(packet.reliable);
|
||||
if (packet.reliable) {
|
||||
stream.writeUint8(packet.length);
|
||||
} else {
|
||||
stream.writeUint8(packet.num);
|
||||
stream.writeUint16(packet.length);
|
||||
}
|
||||
|
||||
packet.data.index = 0;
|
||||
stream.writeBitStream(packet.data, packet.length);
|
||||
packet.data.index = 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -23,9 +23,4 @@ export function EncodeVoiceData(packet: VoiceDataPacket, stream: BitStream) {
|
|||
packet.data.index = 0;
|
||||
stream.writeBitStream(packet.data, packet.length);
|
||||
packet.data.index = 0;
|
||||
|
||||
const length = stream.index;
|
||||
|
||||
stream.index = 0;
|
||||
console.log(stream.readArrayBuffer(Math.ceil(length / 8)));
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue