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
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