mirror of
https://github.com/NotAKidoS/NAK_CVR_Mods.git
synced 2025-09-01 22:09:23 +00:00
further cleanup of repo
This commit is contained in:
parent
4f8dcb0cd0
commit
323eb92f2e
140 changed files with 1 additions and 2430 deletions
|
@ -0,0 +1,62 @@
|
|||
using ABI_RC.Systems.ModNetwork;
|
||||
using MoonSharp.Interpreter;
|
||||
|
||||
namespace NAK.LuaNetVars;
|
||||
|
||||
public partial class LuaNetVarController
|
||||
{
|
||||
private static DynValue DeserializeDynValue(ModNetworkMessage msg)
|
||||
{
|
||||
msg.Read(out byte dataTypeByte);
|
||||
DataType dataType = (DataType)dataTypeByte;
|
||||
|
||||
switch (dataType)
|
||||
{
|
||||
case DataType.Boolean:
|
||||
msg.Read(out bool boolValue);
|
||||
return DynValue.NewBoolean(boolValue);
|
||||
case DataType.Number:
|
||||
msg.Read(out double numberValue);
|
||||
return DynValue.NewNumber(numberValue);
|
||||
case DataType.String:
|
||||
msg.Read(out string stringValue);
|
||||
return DynValue.NewString(stringValue);
|
||||
case DataType.Nil:
|
||||
return DynValue.Nil;
|
||||
default:
|
||||
LuaNetVarsMod.Logger.Error($"Unsupported data type received: {dataType}");
|
||||
return DynValue.Nil;
|
||||
}
|
||||
}
|
||||
|
||||
private static void SerializeDynValue(ModNetworkMessage msg, DynValue value)
|
||||
{
|
||||
switch (value.Type)
|
||||
{
|
||||
case DataType.Boolean:
|
||||
msg.Write((byte)DataType.Boolean);
|
||||
msg.Write(value.Boolean);
|
||||
break;
|
||||
case DataType.Number:
|
||||
msg.Write((byte)DataType.Number);
|
||||
msg.Write(value.Number);
|
||||
break;
|
||||
case DataType.String:
|
||||
msg.Write((byte)DataType.String);
|
||||
msg.Write(value.String);
|
||||
break;
|
||||
case DataType.Nil:
|
||||
msg.Write((byte)DataType.Nil);
|
||||
break;
|
||||
default:
|
||||
LuaNetVarsMod.Logger.Error($"Unsupported DynValue type: {value.Type}");
|
||||
msg.Write((byte)DataType.Nil);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private static bool IsSupportedDynValue(DynValue value)
|
||||
{
|
||||
return value.Type is DataType.Boolean or DataType.Number or DataType.String or DataType.Nil;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue