1
0
Fork 0
mirror of https://github.com/demostf/demo.js synced 2026-06-04 00:54:14 +02:00

dont mutate the match state when parsing datatables

This commit is contained in:
Robin Appelman 2017-02-14 22:26:21 +01:00
commit fc6d758a31
5 changed files with 55 additions and 26 deletions

View file

@ -14,6 +14,7 @@ import {handleSayText2} from "../PacketHandler/SayText2";
import {handleGameEvent} from "../PacketHandler/GameEvent";
import {handlePacketEntities} from "../PacketHandler/PacketEntities";
import {handleGameEventList} from "../PacketHandler/GameEventList";
import {handleDataTable} from "../PacketHandler/DataTable";
export class Match {
tick: number;
@ -125,6 +126,9 @@ export class Match {
case 'sayText2':
handleSayText2(packet, this);
break;
case 'dataTable':
handleDataTable(packet, this);
break;
case 'stringTable':
handleStringTable(packet, this);
break;

View file

@ -2,12 +2,20 @@ import {StringTable} from "./StringTable";
import {Vector} from "./Vector";
import {GameEvent, GameEventDefinitionMap} from "./GameEvent";
import {PacketEntity} from "./PacketEntity";
import {SendTable} from "./SendTable";
import {ServerClass} from "./ServerClass";
export interface StringTablePacket {
packetType: 'stringTable';
tables: StringTable[];
}
export interface DataTablePacket {
packetType: 'dataTable';
tables: SendTable[];
serverClasses: ServerClass[];
}
export interface BSPDecalPacket {
packetType: 'bspDecal';
position: Vector;
@ -92,6 +100,7 @@ export type UserMessagePacket = SayText2Packet | TextMessagePacket | UnknownUser
export type Packet = BSPDecalPacket |
StringTablePacket |
DataTablePacket |
ClassInfoPacket |
EntityMessagePacket |
GameEventPacket |