Skip to content
This repository was archived by the owner on Dec 5, 2018. It is now read-only.

Commit 831d4f0

Browse files
author
Chris
committed
Upgrading to use the new callback registration
1 parent dc395d8 commit 831d4f0

File tree

4 files changed

+20
-21
lines changed

4 files changed

+20
-21
lines changed

workers/unity/Assets/Gamelogic/Pirates/Behaviours/PlayerEntityLifecycleManager.cs

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ void OnEnable()
2727
PlayerLifecycleWriter.Send(new PlayerLifecycle.Update().SetCurrentMissedHeartbeats(0));
2828

2929
// Register command callbacks
30-
PlayerLifecycleWriter.CommandReceiver.OnDeletePlayer += OnDeletePlayer;
31-
PlayerLifecycleWriter.CommandReceiver.OnHeartbeat += OnHeartbeat;
30+
PlayerLifecycleWriter.CommandReceiver.OnDeletePlayer.RegisterResponse(OnDeletePlayer);
31+
PlayerLifecycleWriter.CommandReceiver.OnHeartbeat.RegisterResponse(OnHeartbeat);
3232

3333
// Periodic counter increase
3434
InvokeRepeating("IncrementMissedHeartbeats", 0f, PlayerLifecycleWriter.Data.playerHeartbeatInterval);
@@ -37,17 +37,16 @@ void OnEnable()
3737
void OnDisable()
3838
{
3939
// Deregister command callbacks
40-
PlayerLifecycleWriter.CommandReceiver.OnDeletePlayer -= OnDeletePlayer;
41-
PlayerLifecycleWriter.CommandReceiver.OnHeartbeat -= OnHeartbeat;
40+
PlayerLifecycleWriter.CommandReceiver.OnDeletePlayer.DeregisterResponse();
41+
PlayerLifecycleWriter.CommandReceiver.OnHeartbeat.DeregisterResponse();
4242

4343
CancelInvoke("IncrementMissedHeartbeats");
4444
}
4545

46-
// Command callback for requests for this entity to be deleted from the simulation
47-
private void OnDeletePlayer(ResponseHandle<PlayerLifecycle.Commands.DeletePlayer, DeletePlayerRequest, DeletePlayerResponse> responseHandle)
46+
private DeletePlayerResponse OnDeletePlayer(DeletePlayerRequest Request, ICommandCallerInfo CallerInfo)
4847
{
4948
DeletePlayer();
50-
responseHandle.Respond(new DeletePlayerResponse());
49+
return new DeletePlayerResponse();
5150
}
5251

5352
private void DeletePlayer()
@@ -65,16 +64,16 @@ private void DeletePlayer()
6564
}
6665

6766
// Command callback for handling heartbeats from clients indicating client is connect and missed heartbeat counter should be reset
68-
private void OnHeartbeat(ResponseHandle<PlayerLifecycle.Commands.Heartbeat, HeartbeatRequest, HeartbeatResponse> responseHandle)
67+
private HeartbeatResponse OnHeartbeat(HeartbeatRequest Request, ICommandCallerInfo CallerInfo)
6968
{
7069
// Heartbeats are issued by clients authoritative over the player entity and should only be sending heartbeats for themselves
71-
if (responseHandle.Request.senderEntityId == thisEntityId)
70+
if (Request.senderEntityId == thisEntityId)
7271
{
7372
// Reset missed heartbeat counter to avoid entity being deleted
7473
PlayerLifecycleWriter.Send(new PlayerLifecycle.Update().SetCurrentMissedHeartbeats(0));
7574
}
7675
// Acknowledge command receipt
77-
responseHandle.Respond(new HeartbeatResponse());
76+
return new HeartbeatResponse();
7877
}
7978

8079
private void IncrementMissedHeartbeats()

workers/unity/Assets/Gamelogic/Pirates/Behaviours/PlayerHeartbeatSender.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,13 @@ private void OnEnable()
3131
InvokeRepeating("SendHeartbeat", 0f, PlayerLifecycleReader.Data.playerHeartbeatInterval);
3232

3333
// Register callback for when components change
34-
PlayerLifecycleReader.ComponentUpdated += OnComponentUpdated;
34+
PlayerLifecycleReader.ComponentUpdated.Add(OnComponentUpdated);
3535
}
3636

3737
private void OnDisable()
3838
{
3939
// Deregister callback for when components change
40-
PlayerLifecycleReader.ComponentUpdated -= OnComponentUpdated;
40+
PlayerLifecycleReader.ComponentUpdated.Remove(OnComponentUpdated);
4141
}
4242

4343
// Callback for whenever one or more property of the PlayerLifecycle component is updated

workers/unity/Assets/Gamelogic/Pirates/Behaviours/PlayerSpawnManager.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,22 +19,22 @@ public class PlayerSpawnManager : MonoBehaviour
1919
void OnEnable()
2020
{
2121
// Register command callback
22-
SpawnerWriter.CommandReceiver.OnSpawnPlayer += OnSpawnPlayer;
22+
SpawnerWriter.CommandReceiver.OnSpawnPlayer.RegisterAsyncResponse(OnSpawnPlayer);
2323
}
2424

2525
void OnDisable()
2626
{
2727
// Deregister command callback
28-
SpawnerWriter.CommandReceiver.OnSpawnPlayer -= OnSpawnPlayer;
28+
SpawnerWriter.CommandReceiver.OnSpawnPlayer.DeregisterResponse();
2929
}
3030

3131
// Command callback for requests by new clients for a new player ship to be spawned
3232
private void OnSpawnPlayer(
33-
ResponseHandle<Spawner.Commands.SpawnPlayer, SpawnPlayerRequest, SpawnPlayerResponse> responseHandle)
33+
ResponseHandle<Spawner.Commands.SpawnPlayer, SpawnPlayerRequest, SpawnPlayerResponse> Handle)
3434
{
35-
var request = responseHandle.Request;
36-
var playerEntityTemplate = PlayerShipEntityTemplate.GeneratePlayerShipEntityTemplate(responseHandle.CallerInfo.CallerWorkerId,
37-
request.initialPosition);
35+
36+
var playerEntityTemplate = PlayerShipEntityTemplate.GeneratePlayerShipEntityTemplate(Handle.CallerInfo.CallerWorkerId,
37+
Handle.Request.initialPosition);
3838
SpatialOS.Commands.CreateEntity(SpawnerWriter, "PlayerShip", playerEntityTemplate, result =>
3939
{
4040
if (result.StatusCode != StatusCode.Success)
@@ -46,7 +46,7 @@ private void OnSpawnPlayer(
4646
Debug.Log("PlayerSpawnManager created player entity with entity ID: " + createdEntityId);
4747

4848
// Acknowledge command receipt and provide client with ID for newly created entity
49-
responseHandle.Respond(new SpawnPlayerResponse(createdEntityId));
49+
Handle.Respond(new SpawnPlayerResponse(createdEntityId));
5050
});
5151
}
5252
}

workers/unity/Assets/Gamelogic/Pirates/Behaviours/TransformReceiver.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@ void OnEnable()
1818
transform.rotation = Quaternion.Euler(0.0f, WorldTransformReader.Data.rotation, 0.0f);
1919

2020
// Register callback for when component changes
21-
WorldTransformReader.ComponentUpdated += OnComponentUpdated;
21+
WorldTransformReader.ComponentUpdated.Add(OnComponentUpdated);
2222
}
2323

2424
void OnDisable()
2525
{
2626
// Deregister callback for when component changes
27-
WorldTransformReader.ComponentUpdated -= OnComponentUpdated;
27+
WorldTransformReader.ComponentUpdated.Add(OnComponentUpdated);
2828
}
2929

3030
// Callback for whenever one or more property of the WorldTransform component is updated

0 commit comments

Comments
 (0)