mirror of
https://github.com/demostf/demo.js
synced 2026-06-04 00:54:14 +02:00
initial typescript conversions
This commit is contained in:
parent
564e8995c7
commit
06860cc3fe
12 changed files with 96 additions and 16 deletions
|
|
@ -1,15 +1,26 @@
|
|||
import {ServerClass} from "./ServerClass";
|
||||
import {SendTable} from "./SendTable";
|
||||
import {SendProp} from "./SendProp";
|
||||
import {SendPropDefinition} from "./SendPropDefinition";
|
||||
export class Entity {
|
||||
constructor(serverClass, sentTable, entityIndex, serialNumber) {
|
||||
serverClass: ServerClass;
|
||||
sendTable: SendTable;
|
||||
entityIndex: number;
|
||||
serialNumber: number;
|
||||
props: SendProp[];
|
||||
inPVS: boolean;
|
||||
|
||||
constructor(serverClass: ServerClass, sendTable: SendTable, entityIndex: number, serialNumber: number) {
|
||||
this.serverClass = serverClass;
|
||||
this.sendTable = sentTable;
|
||||
this.sendTable = sendTable;
|
||||
this.entityIndex = entityIndex;
|
||||
this.serialNumber = serialNumber;
|
||||
this.props = [];
|
||||
this.inPVS = false;
|
||||
}
|
||||
|
||||
getPropByDefinition(definition) {
|
||||
for (let i = 0; i < this.props; i++) {
|
||||
getPropByDefinition(definition: SendPropDefinition) {
|
||||
for (let i = 0; i < this.props.length; i++) {
|
||||
if (this.props[i].definition === definition) {
|
||||
return this.props[i];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,13 +1,17 @@
|
|||
import clone from 'clone';
|
||||
import * as clone from 'clone';
|
||||
import {SendPropDefinition} from "./SendPropDefinition";
|
||||
|
||||
export class SentProp {
|
||||
constructor(definition) {
|
||||
export class SendProp {
|
||||
definition: SendPropDefinition;
|
||||
value: any;
|
||||
|
||||
constructor(definition: SendPropDefinition) {
|
||||
this.definition = definition;
|
||||
this.value = null;
|
||||
}
|
||||
|
||||
clone() {
|
||||
const prop = new SentProp(this.definition);
|
||||
const prop = new SendProp(this.definition);
|
||||
prop.value = clone(this.value);
|
||||
return prop;
|
||||
}
|
||||
|
|
|
|||
13
src/Data/ServerClass.ts
Normal file
13
src/Data/ServerClass.ts
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
import {SendTable} from "./SendTable";
|
||||
|
||||
export class ServerClass {
|
||||
id: number;
|
||||
name: string;
|
||||
dataTable: SendTable;
|
||||
|
||||
constructor(id, name, dataTable) {
|
||||
this.id = id;
|
||||
this.name = name;
|
||||
this.dataTable = dataTable;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
import {SendTable} from './Data/SendTable';
|
||||
import {SendPropDefinition} from './Data/SendPropDefinition';
|
||||
import {ServerClass} from './Data/ServerClass';
|
||||
|
||||
var DataTableParser = function (type, tick, stream, length, match) {
|
||||
this.type = type;
|
||||
|
|
@ -104,10 +105,4 @@ DataTableParser.prototype.parse = function () {
|
|||
return tables;
|
||||
};
|
||||
|
||||
var ServerClass = function (id, name, dataTable) {
|
||||
this.id = id;
|
||||
this.name = name;
|
||||
this.dataTable = dataTable;
|
||||
};
|
||||
|
||||
module.exports = DataTableParser;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import {SendPropParser} from '../../Parser/SendPropParser';
|
||||
import {Entity} from '../../Data/Entity';
|
||||
import {SentProp} from '../../Data/SendProp';
|
||||
import {SendProp} from '../../Data/SendProp';
|
||||
|
||||
var PVS = {
|
||||
PRESERVE: 0,
|
||||
|
|
@ -169,7 +169,7 @@ var applyEntityUpdate = function (entity, stream) {
|
|||
if (existingProp) {
|
||||
prop = existingProp;
|
||||
} else {
|
||||
prop = new SentProp(propDefinition);
|
||||
prop = new SendProp(propDefinition);
|
||||
}
|
||||
prop.value = SendPropParser.decode(propDefinition, stream);
|
||||
console.log(prop);
|
||||
|
|
|
|||
|
|
@ -1,19 +0,0 @@
|
|||
{
|
||||
"name": "tf2-demo",
|
||||
"description": "A parser for TF2 demo files",
|
||||
"version": "0.2.5",
|
||||
"bin": {
|
||||
"demo-analyse": "./bin/analyse.js"
|
||||
},
|
||||
"main": "demo.js",
|
||||
"dependencies": {
|
||||
"bit-buffer": "icewind1991/bit-buffer#readBitStream",
|
||||
"clone": "^2.1.0",
|
||||
"minimist": "1.1.x",
|
||||
"smart-buffer": "^1.0.1",
|
||||
"typedarray-to-buffer": "^3.1.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"babel-preset-es2015-node6": "^0.4.0"
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue