Updated GarageServer.IO API calls to support client side prediction for entities - #20

This commit is contained in:
Jeremiah Billmann
2015-05-20 02:10:07 +00:00
parent 21d8fb2884
commit fbdcfe3da5
12 changed files with 48 additions and 25 deletions
+4 -1
View File
@@ -113,7 +113,7 @@ The current ping in milliseconds.
---
```js
options.onUpdateClientPredictionReady(callback(playerId, playerCurrentState, inputs, deltaTime))
options.onUpdateClientPredictionReady(callback(playerId, playerCurrentState, entityCurrentStates: [, {id, state}], inputs, deltaTime))
```
If using client side prediction, this callback will fire when you should update player and entity states, based on the current states for player and entities, inputs to be processed, and the delta time.
@@ -126,6 +126,9 @@ The id of the player.
`playerCurrentState` **object literal**
The current state of the player.
`entityCurrentStates` **array**
The list of all entities and their current state that were invoked by the player.
`inputs` **array**
List of all the inputs to be processed.
+1 -1
View File
@@ -52,7 +52,7 @@ GarageServerIO.initializeGarageServer('http://insertmygameserverurlhere.com', {
onReady: function () {
// Call your game loop
},
onUpdateClientPredictionReady: function (playerId, playerCurrentState, inputs, deltaTime) {
onUpdateClientPredictionReady: function (playerId, playerCurrentState, entityCurrentStates, inputs, deltaTime) {
var newState = {};
if (!playerCurrentState.x) {
playerCurrentState.x = 0;
+3 -1
View File
@@ -202,13 +202,15 @@ New state of the entity containing all of the properties specific to an entity f
#### addEntity
---
```js
GarageServerIO.addEntity(id)
GarageServerIO.addEntity(id, referrerId)
```
Notify GarageServer.IO that a new entity has been added to the game.
`id` **string**
Id of the entity to be added.
`referrerId` **string**
Id of the player who invoked/create the entity - optional and used primarily for client side prediction.
#### removeEntity
---
```js