Release v0.4.5.8

Some fixes and changes
This commit is contained in:
Kuji Kitamura
2019-05-26 22:22:08 +03:00
parent 834442e514
commit 8b5a939dee
7 changed files with 114 additions and 126 deletions
+23 -20
View File
@@ -289,6 +289,8 @@ namespace KKdMainLib.A3DA
{
name = "m_objhrc" + d + i0 + d;
Dict.FindValue(out Data.MObjectHRC[i0].Name, name + "name");
if (Dict.StartsWith(name + "joint_orient"))
{
Data.MObjectHRC[i0].JointOrient = new Vector3<double?>();
@@ -308,7 +310,7 @@ namespace KKdMainLib.A3DA
Dict.FindValue(out Data.MObjectHRC[i0].Instance[i1]. Shadow, nameView + "shadow");
Dict.FindValue(out Data.MObjectHRC[i0].Instance[i1].UIDName, nameView + "uid_name");
Data.MObjectHRC[i0].Instance[i1].MT = Dict.ReadMT(name);
Data.MObjectHRC[i0].Instance[i1].MT = Dict.ReadMT(nameView);
}
}
@@ -321,7 +323,7 @@ namespace KKdMainLib.A3DA
Dict.FindValue(out Data.MObjectHRC[i0].Node[i1].Name , nameView + "name" );
Dict.FindValue(out Data.MObjectHRC[i0].Node[i1].Parent, nameView + "parent");
Data.MObjectHRC[i0].Node[i1].MT = Dict.ReadMT(name);
Data.MObjectHRC[i0].Node[i1].MT = Dict.ReadMT(nameView);
}
}
@@ -427,12 +429,12 @@ namespace KKdMainLib.A3DA
Data.ObjectHRC[i0].Node = new Node[int.Parse(value)];
for (i1 = 0; i1 < Data.ObjectHRC[i0].Node.Length; i1++)
{
name = "objhrc" + d + i0 + d + "node" + d + i1 + d;
nameView = name + "node" + d + i1 + d;
Dict.FindValue(out Data.ObjectHRC[i0].Node[i1].Name , name + "name" );
Dict.FindValue(out Data.ObjectHRC[i0].Node[i1].Parent, name + "parent");
Dict.FindValue(out Data.ObjectHRC[i0].Node[i1].Name , nameView + "name" );
Dict.FindValue(out Data.ObjectHRC[i0].Node[i1].Parent, nameView + "parent");
Data.ObjectHRC[i0].Node[i1].MT = Dict.ReadMT(name);
Data.ObjectHRC[i0].Node[i1].MT = Dict.ReadMT(nameView);
}
}
}
@@ -525,10 +527,10 @@ namespace KKdMainLib.A3DA
IO.Write(Data.CameraRoot[SOi0].ViewPoint.FocalLength, nameView + "focal_length" + d, A3DC);
IO.Write(Data.CameraRoot[SOi0].ViewPoint.FOV, nameView + "fov" + d, A3DC);
IO.Write(nameView + "fov_is_horizontal=", Data.CameraRoot[i0].ViewPoint.FOVHorizontal);
IO.Write(Data.CameraRoot[SOi0].ViewPoint.MT, nameView, A3DC, IsX, 0b10000);
IO.Write(Data.CameraRoot[SOi0].ViewPoint.MT , nameView, A3DC, IsX, 0b10000);
IO.Write(Data.CameraRoot[SOi0].ViewPoint.Roll, nameView + "roll" + d, A3DC);
IO.Write(Data.CameraRoot[SOi0].ViewPoint.MT, nameView, A3DC, IsX, 0b01111);
IO.Write(Data.CameraRoot[SOi0].MT, name, A3DC, IsX, 0b00001);
IO.Write(Data.CameraRoot[SOi0].ViewPoint.MT , nameView, A3DC, IsX, 0b01111);
IO.Write(Data.CameraRoot[SOi0] .MT , name , A3DC, IsX, 0b00001);
}
IO.Write("camera_root.length=", Data.CameraRoot.Length);
}
@@ -617,7 +619,7 @@ namespace KKdMainLib.A3DA
IO.Write(Data.Light[SOi0].Diffuse , name, "Diffuse" , A3DC);
IO.Write(Data.Light[SOi0].Incandescence, name, "Incandescence", A3DC);
IO.Write(Data.Light[SOi0].Specular , name, "Specular" , A3DC);
IO.Write(name + "id=", Data.Light[SOi0].Id);
IO.Write(name + "id=" , Data.Light[SOi0].Id );
IO.Write(name + "name=", Data.Light[SOi0].Name);
IO.Write(Data.Light[SOi0].Position , name + "position" + d, A3DC, IsX);
IO.Write(Data.Light[SOi0].SpotDirection, name + "spot_direction" + d, A3DC, IsX);
@@ -677,10 +679,12 @@ namespace KKdMainLib.A3DA
for (i1 = 0; i1 < Data.MObjectHRC[i0].Node.Length; i1++)
{
SOi1 = SO1[i1];
IO.Write(Data.MObjectHRC[SOi0].Node[SOi1].MT, nameView + SOi1 + d, A3DC, IsX, 0b10000);
IO.Write(Data.MObjectHRC[SOi0].Node[SOi1].MT,
nameView + SOi1 + d, A3DC, IsX, 0b10000);
IO.Write(nameView + SOi1 + d + "name=", Data.MObjectHRC[SOi0].Node[SOi1].Name );
IO.Write(nameView + SOi1 + d + "parent=", Data.MObjectHRC[SOi0].Node[SOi1].Parent);
IO.Write(Data.MObjectHRC[SOi0].Node[SOi1].MT, nameView + SOi1 + d, A3DC, IsX, 0b01111);
IO.Write(Data.MObjectHRC[SOi0].Node[SOi1].MT,
nameView + SOi1 + d, A3DC, IsX, 0b01111);
}
IO.Write(nameView + "length=", Data. MObjectHRC[SOi0].Node.Length);
}
@@ -874,7 +878,7 @@ namespace KKdMainLib.A3DA
IO.Close();
}
private int CompressF16 => (int)Data._.CompressF16;
private int CompressF16 => Data._.CompressF16.GetValueOrDefault();
private void A3DCReader()
{
@@ -1640,8 +1644,8 @@ namespace KKdMainLib.A3DA
{
Name = _TT.ReadString("Name"),
C = _TT.ReadKeyUV ("C" ),
O = _TT.ReadKeyUV ("C" ),
R = _TT.ReadKeyUV ("C" ),
O = _TT.ReadKeyUV ("O" ),
R = _TT.ReadKeyUV ("R" ),
Ro = _TT.ReadKey ("Ro" ),
RF = _TT.ReadKey ("RF" ),
TF = _TT.ReadKeyUV ("TF" ),
@@ -2173,15 +2177,14 @@ namespace KKdMainLib.A3DA
public override string ToString() => ToString(true);
public string ToString(bool Brackets)
{
if (Value == null)
return Main.ToString(Frame);
if (Value == null) return Main.ToString(Frame);
string s = "";
if (Brackets && Type > 0) s += "(";
s += Main.ToString(Frame);
if (Type == 1 && Value.Length > 0) s += "," + Main.ToString(Value[0]);
if (Type == 2 && Value.Length > 1) s += "," + Main.ToString(Value[1]);
if (Type == 3 && Value.Length > 2) s += "," + Main.ToString(Value[2]);
if (Type > 0 && Value.Length > 0) s += "," + Main.ToString(Value[0]);
if (Type > 1 && Value.Length > 1) s += "," + Main.ToString(Value[1]);
if (Type > 2 && Value.Length > 2) s += "," + Main.ToString(Value[2]);
if (Brackets && Type > 0) s += ")";
return s;
}
+40 -9
View File
@@ -44,6 +44,7 @@ namespace KKdMainLib.A3DA
Dict.FindValue(out Key.BinOffset, Temp + BO );
Dict.FindValue(out Key.Type , Temp + "type");
if (Key.BinOffset == null && Key.Type == null) return null;
if (Key.Type == null) return Key;
if (Key.Type == 0x0000) return Key;
@@ -114,6 +115,7 @@ namespace KKdMainLib.A3DA
public static void Write(this Stream IO, RGBAKey RGBA, string Temp, string Data, bool A3DC = false)
{
if (RGBA.R == null && RGBA.B == null && RGBA.G == null && RGBA.A == null) return;
IO.Write(Temp + Data + "=", "true");
IO.Write(RGBA.A, Temp + Data + d + "a" + d, A3DC); IO.Write(RGBA.B, Temp + Data + d + "b" + d, A3DC);
IO.Write(RGBA.G, Temp + Data + d + "g" + d, A3DC); IO.Write(RGBA.R, Temp + Data + d + "r" + d, A3DC);
@@ -178,6 +180,8 @@ namespace KKdMainLib.A3DA
IO.Write(Temp + "raw_data_key_type=" , Key.RawData. KeyType );
}
IO.Write(Temp + "type=", Key.Type & 0xFF);
if (Key.RawData == null && Key.Trans == null && Key.Value != null)
if (Key.Value != 0) IO.Write(Temp + "value=", Key.Value);
}
public static void ReadMT(this Stream IO, ref ModelTransform MT, int C_F16)
@@ -186,10 +190,10 @@ namespace KKdMainLib.A3DA
IO.Position = IO.Offset + (int)MT.BinOffset;
IO.ReadOffset(ref MT.Scale);
IO.ReadOffset(ref MT.Rot );
IO.ReadOffset(ref MT.Trans);
MT.Visibility.BinOffset = IO.ReadInt32();
IO.ReadOffset(out MT.Scale);
IO.ReadOffset(out MT.Rot );
IO.ReadOffset(out MT.Trans);
MT.Visibility = new Key { BinOffset = IO.ReadInt32() };
IO.ReadVec3(ref MT.Scale , C_F16);
IO.ReadVec3(ref MT.Rot , C_F16, true);
@@ -202,13 +206,15 @@ namespace KKdMainLib.A3DA
IO.ReadKey(ref RGBA.B, C_F16); IO.ReadKey(ref RGBA.A, C_F16); }
public static void ReadVec3(this Stream IO, ref Vector3<Key> Key, int C_F16, bool F16 = false)
{ IO.ReadKey(ref Key.X, C_F16, F16); IO.ReadKey(ref Key.Y, C_F16, F16); IO.ReadKey(ref Key.Z, C_F16, F16); }
{ IO.ReadKey(ref Key.X, C_F16, F16); IO.ReadKey(ref Key.Y,
C_F16, F16); IO.ReadKey(ref Key.Z, C_F16, F16); }
public static void ReadKeyUV(this Stream IO, ref KeyUV UV, int C_F16)
{ IO.ReadKey(ref UV.U, C_F16); IO.ReadKey(ref UV.V, C_F16); }
public static void ReadKey(this Stream IO, ref Key Key, int C_F16, bool F16 = false)
{
if (Key == null) return;
if (Key.BinOffset == null || Key.BinOffset < 0) return;
IO.Position = IO.Offset + (int)Key.BinOffset;
@@ -238,8 +244,10 @@ namespace KKdMainLib.A3DA
}
}
public static void ReadOffset(this Stream IO, ref Vector3<Key> Key)
{ Key.X.BinOffset = IO.ReadInt32(); Key.Y.BinOffset = IO.ReadInt32(); Key.Z.BinOffset = IO.ReadInt32(); }
public static void ReadOffset(this Stream IO, out Vector3<Key> Key)
{ Key = new Vector3<Key> { X = new Key { BinOffset = IO.ReadInt32() },
Y = new Key { BinOffset = IO.ReadInt32() },
Z = new Key { BinOffset = IO.ReadInt32() }, }; }
public static void WriteOffset(this Stream IO, ref ModelTransform MT, bool ReturnToOffset)
{
@@ -292,11 +300,11 @@ namespace KKdMainLib.A3DA
new KeyUV { U = k.ReadKey("U"), V = k.ReadKey("V") };
public static Key ReadKey(this MsgPack k, string name)
{ if (k.Element(name, out MsgPack Name)) return Name.ReadKey(); return new Key(); }
{ if (k.Element(name, out MsgPack Name)) return Name.ReadKey(); return null; }
public static Key ReadKey(this MsgPack k)
{
if (k == null) return new Key();
if (k == null) return null;
Key Key = new Key { EPTypePost = k.ReadNDouble("Post"),
EPTypePre = k.ReadNDouble("Pre"), Max = k.ReadNDouble("M"),
@@ -386,5 +394,28 @@ namespace KKdMainLib.A3DA
else if (Key.Value != 0) Keys.Add("V", Key.Value);
return Keys;
}
public static void Write(this Stream IO, string Data, ref bool? val)
{ if (val != null) IO.Write(Data, ( bool)val ); }
public static void Write(this Stream IO, string Data, long? val)
{ if (val != null) IO.Write(Data, ( long)val ); }
public static void Write(this Stream IO, string Data, ulong? val)
{ if (val != null) IO.Write(Data, ( ulong)val ); }
public static void Write(this Stream IO, string Data, double? val)
{ if (val != null) IO.Write(Data, (double)val ); }
public static void Write(this Stream IO, string Data, double? val, byte r)
{ if (val != null) IO.Write(Data, (double)val, r); }
public static void Write(this Stream IO, string Data, ref bool val) =>
IO.Write(Data, Main.ToString(val));
public static void Write(this Stream IO, string Data, long val) =>
IO.Write(Data, val.ToString( ));
public static void Write(this Stream IO, string Data, ulong val) =>
IO.Write(Data, val.ToString( ));
public static void Write(this Stream IO, string Data, double val) =>
IO.Write(Data, val.ToString( ));
public static void Write(this Stream IO, string Data, double val, byte r) =>
IO.Write(Data, val.ToString(r ));
public static void Write(this Stream IO, string Data, string val)
{ if (val != null) IO.Write((Data + val + "\n").ToUTF8()); }
}
}
+1
View File
@@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using KKdMainLib.IO;
using KKdMainLib.A3DA;
using KKdMainLib.MessagePack;
using MPIO = KKdMainLib.MessagePack.IO;
+4 -2
View File
@@ -4,8 +4,10 @@ namespace KKdMainLib.IO
{
public static class IOExtensions
{
public static string NullTerminatedASCII(this Stream stream, byte End = 0) => stream.NullTerminated(End).ToASCII();
public static string NullTerminatedUTF8 (this Stream stream, byte End = 0) => stream.NullTerminated(End).ToUTF8 ();
public static string NullTerminatedASCII(this Stream stream, byte End = 0) =>
stream.NullTerminated(End).ToASCII();
public static string NullTerminatedUTF8 (this Stream stream, byte End = 0) =>
stream.NullTerminated(End).ToUTF8 ();
public static byte[] NullTerminated (this Stream stream, byte End = 0)
{
List<byte> s = new List<byte>();
+22 -82
View File
@@ -121,12 +121,9 @@ namespace KKdMainLib.IO
public uint ReadUInt32Endian() => ( uint)UIntFromArray(4, IsBE);
public long ReadInt64Endian() => IntFromArray(8, IsBE);
public ulong ReadUInt64Endian() => UIntFromArray(8, IsBE);
public Half ReadHalfEndian()
{ ushort a = ReadUInt16Endian(); return ( Half ) a; }
public float ReadSingleEndian()
{ uint a = ReadUInt32Endian(); return *( float*)&a; }
public double ReadDoubleEndian()
{ ulong a = ReadUInt64Endian(); return *(double*)&a; }
public Half ReadHalfEndian() { ushort a = ReadUInt16Endian(); return ( Half ) a; }
public float ReadSingleEndian() { uint a = ReadUInt32Endian(); return *( float*)&a; }
public double ReadDoubleEndian() { ulong a = ReadUInt64Endian(); return *(double*)&a; }
public short ReadInt16Endian(bool IsBE) => ( short) IntFromArray(2, IsBE);
public ushort ReadUInt16Endian(bool IsBE) => (ushort)UIntFromArray(2, IsBE);
@@ -174,45 +171,26 @@ namespace KKdMainLib.IO
public void Write( float? val) => Write(val.GetValueOrDefault());
public void Write(double? val) => Write(val.GetValueOrDefault());
public void Write( bool* val, int Length)
{ for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( sbyte* val, int Length)
{ for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( byte* val, int Length)
{ for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( short* val, int Length)
{ for (i = 0; i < Length; i++) Write(val[i]); }
public void Write(ushort* val, int Length)
{ for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( int* val, int Length)
{ for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( uint* val, int Length)
{ for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( long* val, int Length)
{ for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( ulong* val, int Length)
{ for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( float* val, int Length)
{ for (i = 0; i < Length; i++) Write(val[i]); }
public void Write(double* val, int Length)
{ for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( bool* val, int Length) { for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( sbyte* val, int Length) { for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( byte* val, int Length) { for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( short* val, int Length) { for (i = 0; i < Length; i++) Write(val[i]); }
public void Write(ushort* val, int Length) { for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( int* val, int Length) { for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( uint* val, int Length) { for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( long* val, int Length) { for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( ulong* val, int Length) { for (i = 0; i < Length; i++) Write(val[i]); }
public void Write( float* val, int Length) { for (i = 0; i < Length; i++) Write(val[i]); }
public void Write(double* val, int Length) { for (i = 0; i < Length; i++) Write(val[i]); }
public void WriteEndian( short* val, int Length)
{ for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian(ushort* val, int Length)
{ for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( int* val, int Length)
{ for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( uint* val, int Length)
{ for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( long* val, int Length)
{ for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( ulong* val, int Length)
{ for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( float* val, int Length)
{ for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian(double* val, int Length)
{ for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( short* val, int Length) { for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian(ushort* val, int Length) { for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( int* val, int Length) { for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( uint* val, int Length) { for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( long* val, int Length) { for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( ulong* val, int Length) { for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( float* val, int Length) { for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian(double* val, int Length) { for (i = 0; i < Length; i++) WriteEndian(val[i]); }
public void WriteEndian( short* val, int Length, bool IsBE)
{ for (i = 0; i < Length; i++) WriteEndian(val[i], IsBE); }
@@ -235,18 +213,6 @@ namespace KKdMainLib.IO
{ if (UTF8) Write(val.ToString().ToUTF8()); else Write(val.ToString().ToASCII()); }
public void Write(string val, bool UTF8 = true)
{ if (UTF8) Write(val .ToUTF8()); else Write(val .ToASCII()); }
public void Write(string Data, ref bool? val) => Write(Data, val.GetValueOrDefault() );
public void Write(string Data, long? val) => Write(Data, val.GetValueOrDefault() );
public void Write(string Data, ulong? val) => Write(Data, val.GetValueOrDefault() );
public void Write(string Data, double? val) => Write(Data, val.ToString( ));
public void Write(string Data, double? val, byte r) => Write(Data, val.ToString(r ));
public void Write(string Data, ref bool val) => Write(Data, Main.ToString(val));
public void Write(string Data, long val) => Write(Data, val.ToString( ));
public void Write(string Data, ulong val) => Write(Data, val.ToString( ));
public void Write(string Data, double val) => Write(Data, val.ToString( ));
public void Write(string Data, double val, byte r) => Write(Data, val.ToString(r ));
public void Write(string Data, string val) => Write((Data + val + "\n").ToUTF8());
public void WriteEndian( short val) => ToArray(2, Endian(val, 2, IsBE));
public void WriteEndian(ushort val) => ToArray(2, Endian(val, 2, IsBE));
@@ -274,32 +240,6 @@ namespace KKdMainLib.IO
{ if (IsBE) { for (byte i = 0; i < Length; i++) { buf[i] = (byte)BE; BE >>= 8; } BE = 0;
for (byte i = 0; i < Length; i++) { BE |= buf[i]; if (i < Length - 1) BE <<= 8; } } return BE; }
/*public void WriteEndian( short val) => ToArrayEndian(2, val, IsBE);
public void WriteEndian(ushort val) => ToArrayEndian(2, val, IsBE);
public void WriteEndian( int val) => ToArrayEndian(4, val, IsBE);
public void WriteEndian( uint val) => ToArrayEndian(4, val, IsBE);
public void WriteEndian( long val) => ToArrayEndian(8, val, IsBE);
public void WriteEndian( ulong val) => ToArrayEndian(8, val, IsBE);
public void WriteEndian( float val) => ToArrayEndian(4, *( uint*)&val, IsBE);
public void WriteEndian(double val) => ToArrayEndian(8, *(ulong*)&val, IsBE);
public void WriteEndian( short val, bool IsBE) => ToArrayEndian(2, val, IsBE);
public void WriteEndian(ushort val, bool IsBE) => ToArrayEndian(2, val, IsBE);
public void WriteEndian( int val, bool IsBE) => ToArrayEndian(4, val, IsBE);
public void WriteEndian( uint val, bool IsBE) => ToArrayEndian(4, val, IsBE);
public void WriteEndian( long val, bool IsBE) => ToArrayEndian(8, val, IsBE);
public void WriteEndian( ulong val, bool IsBE) => ToArrayEndian(8, val, IsBE);
public void WriteEndian( float val, bool IsBE) => ToArrayEndian(4, *( uint*)&val, IsBE);
public void WriteEndian(double val, bool IsBE) => ToArrayEndian(8, *(ulong*)&val, IsBE);
private void ToArrayEndian(byte L, long val, bool IsBE = false)
{ CheckWrited(); if (IsBE) for (i = L; i > 0; i--) { buf[i - 1] = (byte)val; val >>= 8; }
else for (i = 0; i < L; i++) { buf[i ] = (byte)val; val >>= 8; } Write(buf, L); }
private void ToArrayEndian(byte L, ulong val, bool IsBE = false)
{ CheckWrited(); if (IsBE) for (i = L; i > 0; i--) { buf[i - 1] = (byte)val; val >>= 8; }
else for (i = 0; i < L; i++) { buf[i ] = (byte)val; val >>= 8; } Write(buf, L); }*/
private void ToArray(byte L, long val)
{ CheckWrited(); for (i = 0; i < L; i++) { buf[i] = (byte)val; val >>= 8; } Write(buf, L); }
+22 -11
View File
@@ -13,7 +13,8 @@ namespace KKdMainLib.MessagePack
public MsgPack(string Name, Types Type = Types.Map32) => NewMsgPack(Name, Type);
public MsgPack( long Count) => NewMsgPack(null, Count);
public MsgPack(string Name, long Count) => NewMsgPack(Name, Count);
public MsgPack(string Name, Types Type, object Object) { this.Name = Name; this.Type = Type; this.Object = Object; }
public MsgPack(string Name, Types Type, object Object)
{ this.Name = Name; this.Type = Type; this.Object = Object; }
public static MsgPack Null => null;
@@ -60,16 +61,26 @@ namespace KKdMainLib.MessagePack
public MsgPack Add( float val) => Add(null, val);
public MsgPack Add(double val) => Add(null, val);
public MsgPack Add(string Val, sbyte? val) { if (val == null) Add(Null); else Add(Val, ( sbyte)val); return this; }
public MsgPack Add(string Val, byte? val) { if (val == null) Add(Null); else Add(Val, ( byte)val); return this; }
public MsgPack Add(string Val, short? val) { if (val == null) Add(Null); else Add(Val, ( short)val); return this; }
public MsgPack Add(string Val, ushort? val) { if (val == null) Add(Null); else Add(Val, (ushort)val); return this; }
public MsgPack Add(string Val, int? val) { if (val == null) Add(Null); else Add(Val, ( int)val); return this; }
public MsgPack Add(string Val, uint? val) { if (val == null) Add(Null); else Add(Val, ( uint)val); return this; }
public MsgPack Add(string Val, long? val) { if (val == null) Add(Null); else Add(Val, ( long)val); return this; }
public MsgPack Add(string Val, ulong? val) { if (val == null) Add(Null); else Add(Val, ( ulong)val); return this; }
public MsgPack Add(string Val, float? val) { if (val == null) Add(Null); else Add(Val, ( float)val); return this; }
public MsgPack Add(string Val, double? val) { if (val == null) Add(Null); else Add(Val, (double)val); return this; }
public MsgPack Add(string Val, sbyte? val)
{ if (val == null) Add(Null); else Add(Val, ( sbyte)val); return this; }
public MsgPack Add(string Val, byte? val)
{ if (val == null) Add(Null); else Add(Val, ( byte)val); return this; }
public MsgPack Add(string Val, short? val)
{ if (val == null) Add(Null); else Add(Val, ( short)val); return this; }
public MsgPack Add(string Val, ushort? val)
{ if (val == null) Add(Null); else Add(Val, (ushort)val); return this; }
public MsgPack Add(string Val, int? val)
{ if (val == null) Add(Null); else Add(Val, ( int)val); return this; }
public MsgPack Add(string Val, uint? val)
{ if (val == null) Add(Null); else Add(Val, ( uint)val); return this; }
public MsgPack Add(string Val, long? val)
{ if (val == null) Add(Null); else Add(Val, ( long)val); return this; }
public MsgPack Add(string Val, ulong? val)
{ if (val == null) Add(Null); else Add(Val, ( ulong)val); return this; }
public MsgPack Add(string Val, float? val)
{ if (val == null) Add(Null); else Add(Val, ( float)val); return this; }
public MsgPack Add(string Val, double? val)
{ if (val == null) Add(Null); else Add(Val, (double)val); return this; }
public MsgPack Add(string Val, byte[] val)
{ if (val == null) Add(Null); else
+2 -2
View File
@@ -11,5 +11,5 @@ using System.Runtime.InteropServices;
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
[assembly: Guid("2BA7EFC6-91D1-8BBC-C487-06C7F36CC789")]
[assembly: AssemblyVersion("0.4.5.7")]
[assembly: AssemblyFileVersion("0.4.5.7")]
[assembly: AssemblyVersion("0.4.5.8")]
[assembly: AssemblyFileVersion("0.4.5.8")]