2021-11-26 19:33:56 +00:00
|
|
|
|
using QuantumUNET.Transport;
|
2021-11-26 22:31:52 +00:00
|
|
|
|
using System;
|
2021-11-26 19:33:56 +00:00
|
|
|
|
|
|
|
|
|
namespace QSB.Utility.VariableSync
|
|
|
|
|
{
|
|
|
|
|
public class BoolVariableSyncer : BaseVariableSyncer
|
|
|
|
|
{
|
2021-11-26 22:31:52 +00:00
|
|
|
|
public VariableReference<bool> ValueToSync { get; private set; } = new();
|
2021-11-26 19:33:56 +00:00
|
|
|
|
|
2021-11-26 22:31:52 +00:00
|
|
|
|
public void Init(Func<bool> getter, Action<bool> setter)
|
2021-11-26 19:33:56 +00:00
|
|
|
|
{
|
2021-11-26 22:31:52 +00:00
|
|
|
|
ValueToSync.Getter = getter;
|
|
|
|
|
ValueToSync.Setter = setter;
|
|
|
|
|
_ready = true;
|
2021-11-26 19:33:56 +00:00
|
|
|
|
}
|
|
|
|
|
|
2021-11-26 22:31:52 +00:00
|
|
|
|
public void OnDestroy()
|
|
|
|
|
=> _ready = false;
|
2021-11-26 19:33:56 +00:00
|
|
|
|
|
2021-11-26 22:31:52 +00:00
|
|
|
|
public override void WriteData(QNetworkWriter writer)
|
|
|
|
|
=> writer.Write(ValueToSync.Value);
|
|
|
|
|
|
|
|
|
|
public override void ReadData(QNetworkReader writer)
|
|
|
|
|
=> ValueToSync.Value = writer.ReadBoolean();
|
2021-11-26 19:33:56 +00:00
|
|
|
|
}
|
|
|
|
|
}
|