elevator message : world object message

This commit is contained in:
Aleksander Waage 2020-08-13 19:34:25 +02:00
parent 7e63d30dff
commit 04e9383b86
4 changed files with 9 additions and 12 deletions

View File

@ -17,7 +17,7 @@ namespace QSB.ElevatorSync
{
SenderId = PlayerRegistry.LocalPlayer.NetId,
Direction = direction,
ElevatorName = elevatorName
UniqueName = elevatorName
};
public override void OnReceiveRemote(ElevatorMessage message)
@ -26,7 +26,7 @@ namespace QSB.ElevatorSync
{
return;
}
WorldRegistry.GetObject<QSBElevator>(message.ElevatorName).RemoteCall(message.Direction);
WorldRegistry.GetObject<QSBElevator>(message.UniqueName).RemoteCall(message.Direction);
}
}
}

View File

@ -1,25 +1,22 @@
using QSB.Messaging;
using QSB.WorldSync;
using UnityEngine.Networking;
namespace QSB.ElevatorSync
{
public class ElevatorMessage : PlayerMessage
public class ElevatorMessage : WorldObjectMessage
{
public ElevatorDirection Direction { get; set; }
public string ElevatorName { get; set; }
public override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader);
Direction = (ElevatorDirection)reader.ReadInt32();
ElevatorName = reader.ReadString();
}
public override void Serialize(NetworkWriter writer)
{
base.Serialize(writer);
writer.Write((int)Direction);
writer.Write(ElevatorName);
}
}
}

View File

@ -16,7 +16,7 @@ namespace QSB.GeyserSync
private GeyserMessage CreateMessage(string name, bool state) => new GeyserMessage
{
SenderId = PlayerRegistry.LocalPlayer.NetId,
ObjectName = name,
UniqueName = name,
State = state
};
@ -26,7 +26,7 @@ namespace QSB.GeyserSync
{
return;
}
var geyser = WorldRegistry.GetObject<QSBGeyser>(message.ObjectName);
var geyser = WorldRegistry.GetObject<QSBGeyser>(message.UniqueName);
geyser.SetState(message.State);
}
}

View File

@ -5,18 +5,18 @@ namespace QSB.WorldSync
{
public class WorldObjectMessage : PlayerMessage
{
public string ObjectName { get; set; }
public string UniqueName { get; set; }
public override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader);
ObjectName = reader.ReadString();
UniqueName = reader.ReadString();
}
public override void Serialize(NetworkWriter writer)
{
base.Serialize(writer);
writer.Write(ObjectName);
writer.Write(UniqueName);
}
}
}