1
0
Fork 0
mirror of https://github.com/demostf/demo.js synced 2026-06-03 16:44:12 +02:00
This commit is contained in:
Robin Appelman 2018-03-09 00:21:13 +01:00
commit 56442cab7b
6 changed files with 14 additions and 17 deletions

View file

@ -2,6 +2,7 @@ import {BitStream} from 'bit-buffer';
import {GameEventDefinition} from './GameEvent';
import {GameEvent, GameEventType} from './GameEventTypes';
import {EntityId, PacketEntity} from './PacketEntity';
import {Game} from './ParserState';
import {SendTable} from './SendTable';
import {ServerClass} from './ServerClass';
import {StringTable, StringTableEntry} from './StringTable';
@ -11,7 +12,6 @@ import {
UserMessageType, UserMessageTypeMap, VoiceSubtitlePacket
} from './UserMessage';
import {Vector} from './Vector';
import {Game} from './ParserState';
export interface StringTablePacket {
packetType: 'stringTable';

View file

@ -1,7 +1,7 @@
import {Vector} from '../Data/Vector';
import {PacketEntity} from '../Data/PacketEntity';
import {Match} from '../Data/Match';
import {PacketMessage} from '../Data/Message';
import {PacketEntity} from '../Data/PacketEntity';
import {Vector} from '../Data/Vector';
export function handleBaseEntity(entity: PacketEntity, match: Match, message: PacketMessage) {
for (const prop of entity.props) {

View file

@ -1,21 +1,18 @@
import {Vector} from '../Data/Vector';
import {PacketEntity} from '../Data/PacketEntity';
import {Match} from '../Data/Match';
import {TeamNumber} from '../Data/Team';
import {PacketMessage} from '../Data/Message';
import {PacketEntity} from '../Data/PacketEntity';
import {Player} from '../Data/Player';
import {TeamNumber} from '../Data/Team';
import {Vector} from '../Data/Vector';
export function handleHL2DMEntity(entity: PacketEntity, match: Match, message: PacketMessage) {
switch (entity.serverClass.name) {
case 'CHL2MP_Player':
const userInfo = match.getUserInfoForEntity(entity);
if (!userInfo) {
console.log(match.parserState.userInfo);
throw new Error(`No user info for entity ${entity.entityIndex}`);
}
if (userInfo.entityId !== entity.entityIndex) {
console.log(match.parserState.userInfo);
console.log(userInfo);
throw new Error(`Invalid user info for entity ${entity.entityIndex} vs ${userInfo.entityId}`);
}
const player: Player = (match.playerEntityMap.has(entity.entityIndex)) ?

View file

@ -9,9 +9,9 @@ import {SendProp} from '../Data/SendProp';
import {TeamNumber} from '../Data/Team';
import {Vector} from '../Data/Vector';
import {CWeaponMedigun, Weapon} from '../Data/Weapon';
import {handleTFEntity} from './TFEntityHandler';
import {handleHL2DMEntity} from './HL2DMEntityHandler';
import {handleBaseEntity} from './BaseEntityHandler';
import {handleHL2DMEntity} from './HL2DMEntityHandler';
import {handleTFEntity} from './TFEntityHandler';
export function handlePacketEntities(packet: PacketEntitiesPacket, match: Match, message: PacketMessage) {
for (const entity of packet.entities) {

View file

@ -61,7 +61,7 @@ function calculateUserInfoFromEntry(text: string, extraData: BitStream, state: P
name: '',
userId,
steamId: '',
entityId: entityId
entityId
};
state.userInfo.set(userState.userId, userState);

View file

@ -1,12 +1,12 @@
import {Vector} from '../Data/Vector';
import {PacketEntity, PVS} from '../Data/PacketEntity';
import {SendProp} from '../Data/SendProp';
import {Building, Dispenser, Sentry, Teleporter} from '../Data/Building';
import {CWeaponMedigun} from '../Data/Weapon';
import {Match} from '../Data/Match';
import {TeamNumber} from '../Data/Team';
import {PacketMessage} from '../Data/Message';
import {PacketEntity, PVS} from '../Data/PacketEntity';
import {Player} from '../Data/Player';
import {SendProp} from '../Data/SendProp';
import {TeamNumber} from '../Data/Team';
import {Vector} from '../Data/Vector';
import {CWeaponMedigun} from '../Data/Weapon';
export function handleTFEntity(entity: PacketEntity, match: Match, message: PacketMessage) {
switch (entity.serverClass.name) {