Skip to content

five-on-it / apps/server/src/input-queue / InputQueue

Class: InputQueue ​

Defined in: apps/server/src/input-queue.ts:65

One client's inputs waiting for their ticks (see the module documentation).

Constructors ​

Constructor ​

new InputQueue(max?): InputQueue

Defined in: apps/server/src/input-queue.ts:86

A queue that holds max inputs at most.

Parameters ​

max? ​

number = 8

Returns ​

InputQueue

Properties ​

dropped ​

dropped: number = 0

Defined in: apps/server/src/input-queue.ts:79

Inputs given up from a full queue.


duplicates ​

duplicates: number = 0

Defined in: apps/server/src/input-queue.ts:83

Inputs that came again (or too old to count).


lastSeq ​

lastSeq: number = 0

Defined in: apps/server/src/input-queue.ts:77

The client's last tick run (on its input or on a guess): what the snapshots acknowledge.


late ​

late: number = 0

Defined in: apps/server/src/input-queue.ts:81

Inputs that came after their tick was run on a guess.

Accessors ​

length ​

Get Signature ​

get length(): number

Defined in: apps/server/src/input-queue.ts:91

How many inputs wait.

Returns ​

number

Methods ​

next() ​

next(pinOut): VehicleInput

Defined in: apps/server/src/input-queue.ts:138

The input the client's next tick runs on: its own when it has come; a guess when not, the last input held without its presses and its trigger (unless pinOut: a grenade's pin stays out). Either way the tick is spent. A client that has sent nothing yet stands idle, no tick spent.

Parameters ​

pinOut ​

boolean

Returns ​

VehicleInput


offer() ​

offer(seq, input): Offered

Defined in: apps/server/src/input-queue.ts:96

Puts an input numbered seq where it belongs, or takes its presses, or skips it (see the module documentation).

Parameters ​

seq ​

number

input ​

VehicleInput

Returns ​

Offered