qianzhuqing 3 vuotta sitten
vanhempi
commit
8924cff102
3 muutettua tiedostoa jossa 585 lisäystä ja 211 poistoa
  1. 177 179
      cs/Front.cs
  2. 401 21
      cs/Sync.cs
  3. 7 11
      protos/front.proto

+ 177 - 179
cs/Front.cs

@@ -29,21 +29,20 @@ namespace Protos {
             "dGF0aW9uX3oYCCABKAISEgoKcm90YXRpb25fdxgJIAEoAhIZChFsaW5lYXJf",
             "dmVsb2NpdHlfeBgKIAEoAhIZChFsaW5lYXJfdmVsb2NpdHlfeRgLIAEoAhIZ",
             "ChFsaW5lYXJfdmVsb2NpdHlfehgMIAEoAhIPCgdib25lUG9zGA0gAygCEg8K",
-            "B2JvbmVSb3QYDiADKAISDAoEanVtcBgPIAEoBRIMCgRkb3duGBAgASgFIu0C",
+            "B2JvbmVSb3QYDiADKAISDAoEanVtcBgPIAEoBRIMCgRkb3duGBAgASgFIs4B",
             "CgpCb3hQYWNrYWdlEhEKCWVmZmVjdF9pZBgBIAEoBRIPCgdob2xkX2lkGAIg",
             "ASgFEhIKCnBvc2l0aW9uX3gYAyABKAISEgoKcG9zaXRpb25feRgEIAEoAhIS",
             "Cgpwb3NpdGlvbl96GAUgASgCEhIKCnJvdGF0aW9uX3gYBiABKAISEgoKcm90",
             "YXRpb25feRgHIAEoAhISCgpyb3RhdGlvbl96GAggASgCEhIKCnJvdGF0aW9u",
-            "X3cYCSABKAISGQoRbGluZWFyX3ZlbG9jaXR5X3gYCiABKAISGQoRbGluZWFy",
-            "X3ZlbG9jaXR5X3kYCyABKAISGQoRbGluZWFyX3ZlbG9jaXR5X3oYDCABKAIS",
-            "GAoQYW5nbGVfdmVsb2NpdHlfeBgNIAEoAhIYChBhbmdsZV92ZWxvY2l0eV95",
-            "GA4gASgCEhgKEGFuZ2xlX3ZlbG9jaXR5X3oYDyABKAISEAoIZXh0cmFTZXQY",
-            "ECABKAliBnByb3RvMw=="));
+            "X3cYCSABKAISEAoIZXh0cmFTZXQYCiABKAkiRgoMRXZlbnRQYWNrYWdlEhEK",
+            "CWV2ZW50Y29kZRgBIAEoBRIOCgZpc3Nob3cYAiABKAgSEwoLZXh0cmFQYXJh",
+            "bXMYAyABKAliBnByb3RvMw=="));
       descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
           new pbr::FileDescriptor[] { },
           new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
             new pbr::GeneratedClrTypeInfo(typeof(global::Protos.CharacterPackage), global::Protos.CharacterPackage.Parser, new[]{ "Hand", "HandGrab", "PositionX", "PositionY", "PositionZ", "RotationX", "RotationY", "RotationZ", "RotationW", "LinearVelocityX", "LinearVelocityY", "LinearVelocityZ", "BonePos", "BoneRot", "Jump", "Down" }, null, null, null),
-            new pbr::GeneratedClrTypeInfo(typeof(global::Protos.BoxPackage), global::Protos.BoxPackage.Parser, new[]{ "EffectId", "HoldId", "PositionX", "PositionY", "PositionZ", "RotationX", "RotationY", "RotationZ", "RotationW", "LinearVelocityX", "LinearVelocityY", "LinearVelocityZ", "AngleVelocityX", "AngleVelocityY", "AngleVelocityZ", "ExtraSet" }, null, null, null)
+            new pbr::GeneratedClrTypeInfo(typeof(global::Protos.BoxPackage), global::Protos.BoxPackage.Parser, new[]{ "EffectId", "HoldId", "PositionX", "PositionY", "PositionZ", "RotationX", "RotationY", "RotationZ", "RotationW", "ExtraSet" }, null, null, null),
+            new pbr::GeneratedClrTypeInfo(typeof(global::Protos.EventPackage), global::Protos.EventPackage.Parser, new[]{ "Eventcode", "Isshow", "ExtraParams" }, null, null, null)
           }));
     }
     #endregion
@@ -615,12 +614,6 @@ namespace Protos {
       rotationY_ = other.rotationY_;
       rotationZ_ = other.rotationZ_;
       rotationW_ = other.rotationW_;
-      linearVelocityX_ = other.linearVelocityX_;
-      linearVelocityY_ = other.linearVelocityY_;
-      linearVelocityZ_ = other.linearVelocityZ_;
-      angleVelocityX_ = other.angleVelocityX_;
-      angleVelocityY_ = other.angleVelocityY_;
-      angleVelocityZ_ = other.angleVelocityZ_;
       extraSet_ = other.extraSet_;
     }
 
@@ -734,80 +727,8 @@ namespace Protos {
       }
     }
 
-    /// <summary>Field number for the "linear_velocity_x" field.</summary>
-    public const int LinearVelocityXFieldNumber = 10;
-    private float linearVelocityX_;
-    /// <summary>
-    ///线速度
-    /// </summary>
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
-    public float LinearVelocityX {
-      get { return linearVelocityX_; }
-      set {
-        linearVelocityX_ = value;
-      }
-    }
-
-    /// <summary>Field number for the "linear_velocity_y" field.</summary>
-    public const int LinearVelocityYFieldNumber = 11;
-    private float linearVelocityY_;
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
-    public float LinearVelocityY {
-      get { return linearVelocityY_; }
-      set {
-        linearVelocityY_ = value;
-      }
-    }
-
-    /// <summary>Field number for the "linear_velocity_z" field.</summary>
-    public const int LinearVelocityZFieldNumber = 12;
-    private float linearVelocityZ_;
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
-    public float LinearVelocityZ {
-      get { return linearVelocityZ_; }
-      set {
-        linearVelocityZ_ = value;
-      }
-    }
-
-    /// <summary>Field number for the "angle_velocity_x" field.</summary>
-    public const int AngleVelocityXFieldNumber = 13;
-    private float angleVelocityX_;
-    /// <summary>
-    ///角速度
-    /// </summary>
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
-    public float AngleVelocityX {
-      get { return angleVelocityX_; }
-      set {
-        angleVelocityX_ = value;
-      }
-    }
-
-    /// <summary>Field number for the "angle_velocity_y" field.</summary>
-    public const int AngleVelocityYFieldNumber = 14;
-    private float angleVelocityY_;
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
-    public float AngleVelocityY {
-      get { return angleVelocityY_; }
-      set {
-        angleVelocityY_ = value;
-      }
-    }
-
-    /// <summary>Field number for the "angle_velocity_z" field.</summary>
-    public const int AngleVelocityZFieldNumber = 15;
-    private float angleVelocityZ_;
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
-    public float AngleVelocityZ {
-      get { return angleVelocityZ_; }
-      set {
-        angleVelocityZ_ = value;
-      }
-    }
-
     /// <summary>Field number for the "extraSet" field.</summary>
-    public const int ExtraSetFieldNumber = 16;
+    public const int ExtraSetFieldNumber = 10;
     private string extraSet_ = "";
     /// <summary>
     ///额外设置
@@ -842,12 +763,6 @@ namespace Protos {
       if (RotationY != other.RotationY) return false;
       if (RotationZ != other.RotationZ) return false;
       if (RotationW != other.RotationW) return false;
-      if (LinearVelocityX != other.LinearVelocityX) return false;
-      if (LinearVelocityY != other.LinearVelocityY) return false;
-      if (LinearVelocityZ != other.LinearVelocityZ) return false;
-      if (AngleVelocityX != other.AngleVelocityX) return false;
-      if (AngleVelocityY != other.AngleVelocityY) return false;
-      if (AngleVelocityZ != other.AngleVelocityZ) return false;
       if (ExtraSet != other.ExtraSet) return false;
       return true;
     }
@@ -864,12 +779,6 @@ namespace Protos {
       if (RotationY != 0F) hash ^= RotationY.GetHashCode();
       if (RotationZ != 0F) hash ^= RotationZ.GetHashCode();
       if (RotationW != 0F) hash ^= RotationW.GetHashCode();
-      if (LinearVelocityX != 0F) hash ^= LinearVelocityX.GetHashCode();
-      if (LinearVelocityY != 0F) hash ^= LinearVelocityY.GetHashCode();
-      if (LinearVelocityZ != 0F) hash ^= LinearVelocityZ.GetHashCode();
-      if (AngleVelocityX != 0F) hash ^= AngleVelocityX.GetHashCode();
-      if (AngleVelocityY != 0F) hash ^= AngleVelocityY.GetHashCode();
-      if (AngleVelocityZ != 0F) hash ^= AngleVelocityZ.GetHashCode();
       if (ExtraSet.Length != 0) hash ^= ExtraSet.GetHashCode();
       return hash;
     }
@@ -917,32 +826,8 @@ namespace Protos {
         output.WriteRawTag(77);
         output.WriteFloat(RotationW);
       }
-      if (LinearVelocityX != 0F) {
-        output.WriteRawTag(85);
-        output.WriteFloat(LinearVelocityX);
-      }
-      if (LinearVelocityY != 0F) {
-        output.WriteRawTag(93);
-        output.WriteFloat(LinearVelocityY);
-      }
-      if (LinearVelocityZ != 0F) {
-        output.WriteRawTag(101);
-        output.WriteFloat(LinearVelocityZ);
-      }
-      if (AngleVelocityX != 0F) {
-        output.WriteRawTag(109);
-        output.WriteFloat(AngleVelocityX);
-      }
-      if (AngleVelocityY != 0F) {
-        output.WriteRawTag(117);
-        output.WriteFloat(AngleVelocityY);
-      }
-      if (AngleVelocityZ != 0F) {
-        output.WriteRawTag(125);
-        output.WriteFloat(AngleVelocityZ);
-      }
       if (ExtraSet.Length != 0) {
-        output.WriteRawTag(130, 1);
+        output.WriteRawTag(82);
         output.WriteString(ExtraSet);
       }
     }
@@ -977,26 +862,8 @@ namespace Protos {
       if (RotationW != 0F) {
         size += 1 + 4;
       }
-      if (LinearVelocityX != 0F) {
-        size += 1 + 4;
-      }
-      if (LinearVelocityY != 0F) {
-        size += 1 + 4;
-      }
-      if (LinearVelocityZ != 0F) {
-        size += 1 + 4;
-      }
-      if (AngleVelocityX != 0F) {
-        size += 1 + 4;
-      }
-      if (AngleVelocityY != 0F) {
-        size += 1 + 4;
-      }
-      if (AngleVelocityZ != 0F) {
-        size += 1 + 4;
-      }
       if (ExtraSet.Length != 0) {
-        size += 2 + pb::CodedOutputStream.ComputeStringSize(ExtraSet);
+        size += 1 + pb::CodedOutputStream.ComputeStringSize(ExtraSet);
       }
       return size;
     }
@@ -1033,24 +900,6 @@ namespace Protos {
       if (other.RotationW != 0F) {
         RotationW = other.RotationW;
       }
-      if (other.LinearVelocityX != 0F) {
-        LinearVelocityX = other.LinearVelocityX;
-      }
-      if (other.LinearVelocityY != 0F) {
-        LinearVelocityY = other.LinearVelocityY;
-      }
-      if (other.LinearVelocityZ != 0F) {
-        LinearVelocityZ = other.LinearVelocityZ;
-      }
-      if (other.AngleVelocityX != 0F) {
-        AngleVelocityX = other.AngleVelocityX;
-      }
-      if (other.AngleVelocityY != 0F) {
-        AngleVelocityY = other.AngleVelocityY;
-      }
-      if (other.AngleVelocityZ != 0F) {
-        AngleVelocityZ = other.AngleVelocityZ;
-      }
       if (other.ExtraSet.Length != 0) {
         ExtraSet = other.ExtraSet;
       }
@@ -1100,32 +949,181 @@ namespace Protos {
             RotationW = input.ReadFloat();
             break;
           }
-          case 85: {
-            LinearVelocityX = input.ReadFloat();
-            break;
-          }
-          case 93: {
-            LinearVelocityY = input.ReadFloat();
-            break;
-          }
-          case 101: {
-            LinearVelocityZ = input.ReadFloat();
+          case 82: {
+            ExtraSet = input.ReadString();
             break;
           }
-          case 109: {
-            AngleVelocityX = input.ReadFloat();
+        }
+      }
+    }
+
+  }
+
+  public sealed partial class EventPackage : pb::IMessage<EventPackage> {
+    private static readonly pb::MessageParser<EventPackage> _parser = new pb::MessageParser<EventPackage>(() => new EventPackage());
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public static pb::MessageParser<EventPackage> Parser { get { return _parser; } }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public static pbr::MessageDescriptor Descriptor {
+      get { return global::Protos.FrontReflection.Descriptor.MessageTypes[2]; }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    pbr::MessageDescriptor pb::IMessage.Descriptor {
+      get { return Descriptor; }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public EventPackage() {
+      OnConstruction();
+    }
+
+    partial void OnConstruction();
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public EventPackage(EventPackage other) : this() {
+      eventcode_ = other.eventcode_;
+      isshow_ = other.isshow_;
+      extraParams_ = other.extraParams_;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public EventPackage Clone() {
+      return new EventPackage(this);
+    }
+
+    /// <summary>Field number for the "eventcode" field.</summary>
+    public const int EventcodeFieldNumber = 1;
+    private int eventcode_;
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public int Eventcode {
+      get { return eventcode_; }
+      set {
+        eventcode_ = value;
+      }
+    }
+
+    /// <summary>Field number for the "isshow" field.</summary>
+    public const int IsshowFieldNumber = 2;
+    private bool isshow_;
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public bool Isshow {
+      get { return isshow_; }
+      set {
+        isshow_ = value;
+      }
+    }
+
+    /// <summary>Field number for the "extraParams" field.</summary>
+    public const int ExtraParamsFieldNumber = 3;
+    private string extraParams_ = "";
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public string ExtraParams {
+      get { return extraParams_; }
+      set {
+        extraParams_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
+      }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override bool Equals(object other) {
+      return Equals(other as EventPackage);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public bool Equals(EventPackage other) {
+      if (ReferenceEquals(other, null)) {
+        return false;
+      }
+      if (ReferenceEquals(other, this)) {
+        return true;
+      }
+      if (Eventcode != other.Eventcode) return false;
+      if (Isshow != other.Isshow) return false;
+      if (ExtraParams != other.ExtraParams) return false;
+      return true;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override int GetHashCode() {
+      int hash = 1;
+      if (Eventcode != 0) hash ^= Eventcode.GetHashCode();
+      if (Isshow != false) hash ^= Isshow.GetHashCode();
+      if (ExtraParams.Length != 0) hash ^= ExtraParams.GetHashCode();
+      return hash;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override string ToString() {
+      return pb::JsonFormatter.ToDiagnosticString(this);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void WriteTo(pb::CodedOutputStream output) {
+      if (Eventcode != 0) {
+        output.WriteRawTag(8);
+        output.WriteInt32(Eventcode);
+      }
+      if (Isshow != false) {
+        output.WriteRawTag(16);
+        output.WriteBool(Isshow);
+      }
+      if (ExtraParams.Length != 0) {
+        output.WriteRawTag(26);
+        output.WriteString(ExtraParams);
+      }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public int CalculateSize() {
+      int size = 0;
+      if (Eventcode != 0) {
+        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Eventcode);
+      }
+      if (Isshow != false) {
+        size += 1 + 1;
+      }
+      if (ExtraParams.Length != 0) {
+        size += 1 + pb::CodedOutputStream.ComputeStringSize(ExtraParams);
+      }
+      return size;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void MergeFrom(EventPackage other) {
+      if (other == null) {
+        return;
+      }
+      if (other.Eventcode != 0) {
+        Eventcode = other.Eventcode;
+      }
+      if (other.Isshow != false) {
+        Isshow = other.Isshow;
+      }
+      if (other.ExtraParams.Length != 0) {
+        ExtraParams = other.ExtraParams;
+      }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void MergeFrom(pb::CodedInputStream input) {
+      uint tag;
+      while ((tag = input.ReadTag()) != 0) {
+        switch(tag) {
+          default:
+            input.SkipLastField();
             break;
-          }
-          case 117: {
-            AngleVelocityY = input.ReadFloat();
+          case 8: {
+            Eventcode = input.ReadInt32();
             break;
           }
-          case 125: {
-            AngleVelocityZ = input.ReadFloat();
+          case 16: {
+            Isshow = input.ReadBool();
             break;
           }
-          case 130: {
-            ExtraSet = input.ReadString();
+          case 26: {
+            ExtraParams = input.ReadString();
             break;
           }
         }

+ 401 - 21
cs/Sync.cs

@@ -33,22 +33,28 @@ namespace Protos {
             "CgxTeW5jUmVzcG9uc2USDgoGU3RhdHVzGAEgASgIEgwKBFN0ZXAYAiABKAQS",
             "MAoGVmFsdWVzGAMgAygLMiAucHJvdG9zLlN5bmNSZXNwb25zZS5WYWx1ZXNF",
             "bnRyeRotCgtWYWx1ZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiAB",
-            "KAw6AjgBInUKCFN5bmNQdXNoEgwKBFN0ZXAYASABKAQSLAoGVmFsdWVzGAIg",
-            "AygLMhwucHJvdG9zLlN5bmNQdXNoLlZhbHVlc0VudHJ5Gi0KC1ZhbHVlc0Vu",
-            "dHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoDDoCOAEieQoKTWFzdGVy",
-            "UHVzaBIMCgRTdGVwGAEgASgEEi4KBlZhbHVlcxgCIAMoCzIeLnByb3Rvcy5N",
-            "YXN0ZXJQdXNoLlZhbHVlc0VudHJ5Gi0KC1ZhbHVlc0VudHJ5EgsKA2tleRgB",
-            "IAEoCRINCgV2YWx1ZRgCIAEoDDoCOAEifQoMTWFzdGVyTm90aWZ5EgwKBFN0",
-            "ZXAYASABKAQSMAoGVmFsdWVzGAIgAygLMiAucHJvdG9zLk1hc3Rlck5vdGlm",
-            "eS5WYWx1ZXNFbnRyeRotCgtWYWx1ZXNFbnRyeRILCgNrZXkYASABKAkSDQoF",
-            "dmFsdWUYAiABKAw6AjgBInkKEU1hc3RlclN0b3JlTm90aWZ5EjUKBlZhbHVl",
-            "cxgBIAMoCzIlLnByb3Rvcy5NYXN0ZXJTdG9yZU5vdGlmeS5WYWx1ZXNFbnRy",
-            "eRotCgtWYWx1ZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAw6",
-            "AjgBIhMKEU1hc3RlckxvYWRSZXF1ZXN0IpsBChJNYXN0ZXJMb2FkUmVzcG9u",
-            "c2USHgoGUmVzdWx0GAEgASgLMg4ucHJvdG9zLlJlc3VsdBI2CgZWYWx1ZXMY",
-            "AiADKAsyJi5wcm90b3MuTWFzdGVyTG9hZFJlc3BvbnNlLlZhbHVlc0VudHJ5",
+            "KAw6AjgBIoYBCg9ETWVzc2FnZVJlcXVlc3QSDwoHVXNlcklEcxgBIAMoDRIz",
+            "CgZWYWx1ZXMYAiADKAsyIy5wcm90b3MuRE1lc3NhZ2VSZXF1ZXN0LlZhbHVl",
+            "c0VudHJ5Gi0KC1ZhbHVlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgC",
+            "IAEoDDoCOAEiMgoQRE1lc3NhZ2VSZXNwb25zZRIeCgZSZXN1bHQYASABKAsy",
+            "Di5wcm90b3MuUmVzdWx0Im8KDERNZXNzYWdlUHVzaBIwCgZWYWx1ZXMYASAD",
+            "KAsyIC5wcm90b3MuRE1lc3NhZ2VQdXNoLlZhbHVlc0VudHJ5Gi0KC1ZhbHVl",
+            "c0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoDDoCOAEidQoIU3lu",
+            "Y1B1c2gSDAoEU3RlcBgBIAEoBBIsCgZWYWx1ZXMYAiADKAsyHC5wcm90b3Mu",
+            "U3luY1B1c2guVmFsdWVzRW50cnkaLQoLVmFsdWVzRW50cnkSCwoDa2V5GAEg",
+            "ASgJEg0KBXZhbHVlGAIgASgMOgI4ASJ5CgpNYXN0ZXJQdXNoEgwKBFN0ZXAY",
+            "ASABKAQSLgoGVmFsdWVzGAIgAygLMh4ucHJvdG9zLk1hc3RlclB1c2guVmFs",
+            "dWVzRW50cnkaLQoLVmFsdWVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVl",
+            "GAIgASgMOgI4ASJ9CgxNYXN0ZXJOb3RpZnkSDAoEU3RlcBgBIAEoBBIwCgZW",
+            "YWx1ZXMYAiADKAsyIC5wcm90b3MuTWFzdGVyTm90aWZ5LlZhbHVlc0VudHJ5",
             "Gi0KC1ZhbHVlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoDDoC",
-            "OAFiBnByb3RvMw=="));
+            "OAEieQoRTWFzdGVyU3RvcmVOb3RpZnkSNQoGVmFsdWVzGAEgAygLMiUucHJv",
+            "dG9zLk1hc3RlclN0b3JlTm90aWZ5LlZhbHVlc0VudHJ5Gi0KC1ZhbHVlc0Vu",
+            "dHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoDDoCOAEiEwoRTWFzdGVy",
+            "TG9hZFJlcXVlc3QimwEKEk1hc3RlckxvYWRSZXNwb25zZRIeCgZSZXN1bHQY",
+            "ASABKAsyDi5wcm90b3MuUmVzdWx0EjYKBlZhbHVlcxgCIAMoCzImLnByb3Rv",
+            "cy5NYXN0ZXJMb2FkUmVzcG9uc2UuVmFsdWVzRW50cnkaLQoLVmFsdWVzRW50",
+            "cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgMOgI4AWIGcHJvdG8z"));
       descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
           new pbr::FileDescriptor[] { global::Protos.UserinfoReflection.Descriptor, global::Protos.ResultReflection.Descriptor, },
           new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
@@ -56,6 +62,9 @@ namespace Protos {
             new pbr::GeneratedClrTypeInfo(typeof(global::Protos.RestoreResponse), global::Protos.RestoreResponse.Parser, new[]{ "Users", "Step", "State" }, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
             new pbr::GeneratedClrTypeInfo(typeof(global::Protos.SyncRequest), global::Protos.SyncRequest.Parser, new[]{ "Step", "Values" }, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
             new pbr::GeneratedClrTypeInfo(typeof(global::Protos.SyncResponse), global::Protos.SyncResponse.Parser, new[]{ "Status", "Step", "Values" }, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
+            new pbr::GeneratedClrTypeInfo(typeof(global::Protos.DMessageRequest), global::Protos.DMessageRequest.Parser, new[]{ "UserIDs", "Values" }, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
+            new pbr::GeneratedClrTypeInfo(typeof(global::Protos.DMessageResponse), global::Protos.DMessageResponse.Parser, new[]{ "Result" }, null, null, null),
+            new pbr::GeneratedClrTypeInfo(typeof(global::Protos.DMessagePush), global::Protos.DMessagePush.Parser, new[]{ "Values" }, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
             new pbr::GeneratedClrTypeInfo(typeof(global::Protos.SyncPush), global::Protos.SyncPush.Parser, new[]{ "Step", "Values" }, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
             new pbr::GeneratedClrTypeInfo(typeof(global::Protos.MasterPush), global::Protos.MasterPush.Parser, new[]{ "Step", "Values" }, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
             new pbr::GeneratedClrTypeInfo(typeof(global::Protos.MasterNotify), global::Protos.MasterNotify.Parser, new[]{ "Step", "Values" }, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
@@ -635,6 +644,377 @@ namespace Protos {
   }
 
   /// <summary>
+  /// 客户端发送实时消息
+  /// </summary>
+  public sealed partial class DMessageRequest : pb::IMessage<DMessageRequest> {
+    private static readonly pb::MessageParser<DMessageRequest> _parser = new pb::MessageParser<DMessageRequest>(() => new DMessageRequest());
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public static pb::MessageParser<DMessageRequest> Parser { get { return _parser; } }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public static pbr::MessageDescriptor Descriptor {
+      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[4]; }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    pbr::MessageDescriptor pb::IMessage.Descriptor {
+      get { return Descriptor; }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public DMessageRequest() {
+      OnConstruction();
+    }
+
+    partial void OnConstruction();
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public DMessageRequest(DMessageRequest other) : this() {
+      userIDs_ = other.userIDs_.Clone();
+      values_ = other.values_.Clone();
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public DMessageRequest Clone() {
+      return new DMessageRequest(this);
+    }
+
+    /// <summary>Field number for the "UserIDs" field.</summary>
+    public const int UserIDsFieldNumber = 1;
+    private static readonly pb::FieldCodec<uint> _repeated_userIDs_codec
+        = pb::FieldCodec.ForUInt32(10);
+    private readonly pbc::RepeatedField<uint> userIDs_ = new pbc::RepeatedField<uint>();
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public pbc::RepeatedField<uint> UserIDs {
+      get { return userIDs_; }
+    }
+
+    /// <summary>Field number for the "Values" field.</summary>
+    public const int ValuesFieldNumber = 2;
+    private static readonly pbc::MapField<string, pb::ByteString>.Codec _map_values_codec
+        = new pbc::MapField<string, pb::ByteString>.Codec(pb::FieldCodec.ForString(10), pb::FieldCodec.ForBytes(18), 18);
+    private readonly pbc::MapField<string, pb::ByteString> values_ = new pbc::MapField<string, pb::ByteString>();
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public pbc::MapField<string, pb::ByteString> Values {
+      get { return values_; }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override bool Equals(object other) {
+      return Equals(other as DMessageRequest);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public bool Equals(DMessageRequest other) {
+      if (ReferenceEquals(other, null)) {
+        return false;
+      }
+      if (ReferenceEquals(other, this)) {
+        return true;
+      }
+      if(!userIDs_.Equals(other.userIDs_)) return false;
+      if (!Values.Equals(other.Values)) return false;
+      return true;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override int GetHashCode() {
+      int hash = 1;
+      hash ^= userIDs_.GetHashCode();
+      hash ^= Values.GetHashCode();
+      return hash;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override string ToString() {
+      return pb::JsonFormatter.ToDiagnosticString(this);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void WriteTo(pb::CodedOutputStream output) {
+      userIDs_.WriteTo(output, _repeated_userIDs_codec);
+      values_.WriteTo(output, _map_values_codec);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public int CalculateSize() {
+      int size = 0;
+      size += userIDs_.CalculateSize(_repeated_userIDs_codec);
+      size += values_.CalculateSize(_map_values_codec);
+      return size;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void MergeFrom(DMessageRequest other) {
+      if (other == null) {
+        return;
+      }
+      userIDs_.Add(other.userIDs_);
+      values_.Add(other.values_);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void MergeFrom(pb::CodedInputStream input) {
+      uint tag;
+      while ((tag = input.ReadTag()) != 0) {
+        switch(tag) {
+          default:
+            input.SkipLastField();
+            break;
+          case 10:
+          case 8: {
+            userIDs_.AddEntriesFrom(input, _repeated_userIDs_codec);
+            break;
+          }
+          case 18: {
+            values_.AddEntriesFrom(input, _map_values_codec);
+            break;
+          }
+        }
+      }
+    }
+
+  }
+
+  /// <summary>
+  /// 服务器响应用户实时消息结果
+  /// </summary>
+  public sealed partial class DMessageResponse : pb::IMessage<DMessageResponse> {
+    private static readonly pb::MessageParser<DMessageResponse> _parser = new pb::MessageParser<DMessageResponse>(() => new DMessageResponse());
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public static pb::MessageParser<DMessageResponse> Parser { get { return _parser; } }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public static pbr::MessageDescriptor Descriptor {
+      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[5]; }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    pbr::MessageDescriptor pb::IMessage.Descriptor {
+      get { return Descriptor; }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public DMessageResponse() {
+      OnConstruction();
+    }
+
+    partial void OnConstruction();
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public DMessageResponse(DMessageResponse other) : this() {
+      Result = other.result_ != null ? other.Result.Clone() : null;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public DMessageResponse Clone() {
+      return new DMessageResponse(this);
+    }
+
+    /// <summary>Field number for the "Result" field.</summary>
+    public const int ResultFieldNumber = 1;
+    private global::Protos.Result result_;
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public global::Protos.Result Result {
+      get { return result_; }
+      set {
+        result_ = value;
+      }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override bool Equals(object other) {
+      return Equals(other as DMessageResponse);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public bool Equals(DMessageResponse other) {
+      if (ReferenceEquals(other, null)) {
+        return false;
+      }
+      if (ReferenceEquals(other, this)) {
+        return true;
+      }
+      if (!object.Equals(Result, other.Result)) return false;
+      return true;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override int GetHashCode() {
+      int hash = 1;
+      if (result_ != null) hash ^= Result.GetHashCode();
+      return hash;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override string ToString() {
+      return pb::JsonFormatter.ToDiagnosticString(this);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void WriteTo(pb::CodedOutputStream output) {
+      if (result_ != null) {
+        output.WriteRawTag(10);
+        output.WriteMessage(Result);
+      }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public int CalculateSize() {
+      int size = 0;
+      if (result_ != null) {
+        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Result);
+      }
+      return size;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void MergeFrom(DMessageResponse other) {
+      if (other == null) {
+        return;
+      }
+      if (other.result_ != null) {
+        if (result_ == null) {
+          result_ = new global::Protos.Result();
+        }
+        Result.MergeFrom(other.Result);
+      }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void MergeFrom(pb::CodedInputStream input) {
+      uint tag;
+      while ((tag = input.ReadTag()) != 0) {
+        switch(tag) {
+          default:
+            input.SkipLastField();
+            break;
+          case 10: {
+            if (result_ == null) {
+              result_ = new global::Protos.Result();
+            }
+            input.ReadMessage(result_);
+            break;
+          }
+        }
+      }
+    }
+
+  }
+
+  /// <summary>
+  /// 服务器转发实时消息
+  /// </summary>
+  public sealed partial class DMessagePush : pb::IMessage<DMessagePush> {
+    private static readonly pb::MessageParser<DMessagePush> _parser = new pb::MessageParser<DMessagePush>(() => new DMessagePush());
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public static pb::MessageParser<DMessagePush> Parser { get { return _parser; } }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public static pbr::MessageDescriptor Descriptor {
+      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[6]; }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    pbr::MessageDescriptor pb::IMessage.Descriptor {
+      get { return Descriptor; }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public DMessagePush() {
+      OnConstruction();
+    }
+
+    partial void OnConstruction();
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public DMessagePush(DMessagePush other) : this() {
+      values_ = other.values_.Clone();
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public DMessagePush Clone() {
+      return new DMessagePush(this);
+    }
+
+    /// <summary>Field number for the "Values" field.</summary>
+    public const int ValuesFieldNumber = 1;
+    private static readonly pbc::MapField<string, pb::ByteString>.Codec _map_values_codec
+        = new pbc::MapField<string, pb::ByteString>.Codec(pb::FieldCodec.ForString(10), pb::FieldCodec.ForBytes(18), 10);
+    private readonly pbc::MapField<string, pb::ByteString> values_ = new pbc::MapField<string, pb::ByteString>();
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public pbc::MapField<string, pb::ByteString> Values {
+      get { return values_; }
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override bool Equals(object other) {
+      return Equals(other as DMessagePush);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public bool Equals(DMessagePush other) {
+      if (ReferenceEquals(other, null)) {
+        return false;
+      }
+      if (ReferenceEquals(other, this)) {
+        return true;
+      }
+      if (!Values.Equals(other.Values)) return false;
+      return true;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override int GetHashCode() {
+      int hash = 1;
+      hash ^= Values.GetHashCode();
+      return hash;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public override string ToString() {
+      return pb::JsonFormatter.ToDiagnosticString(this);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void WriteTo(pb::CodedOutputStream output) {
+      values_.WriteTo(output, _map_values_codec);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public int CalculateSize() {
+      int size = 0;
+      size += values_.CalculateSize(_map_values_codec);
+      return size;
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void MergeFrom(DMessagePush other) {
+      if (other == null) {
+        return;
+      }
+      values_.Add(other.values_);
+    }
+
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+    public void MergeFrom(pb::CodedInputStream input) {
+      uint tag;
+      while ((tag = input.ReadTag()) != 0) {
+        switch(tag) {
+          default:
+            input.SkipLastField();
+            break;
+          case 10: {
+            values_.AddEntriesFrom(input, _map_values_codec);
+            break;
+          }
+        }
+      }
+    }
+
+  }
+
+  /// <summary>
   /// 同步消息推送
   /// </summary>
   public sealed partial class SyncPush : pb::IMessage<SyncPush> {
@@ -644,7 +1024,7 @@ namespace Protos {
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
     public static pbr::MessageDescriptor Descriptor {
-      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[4]; }
+      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[7]; }
     }
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
@@ -784,7 +1164,7 @@ namespace Protos {
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
     public static pbr::MessageDescriptor Descriptor {
-      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[5]; }
+      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[8]; }
     }
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
@@ -924,7 +1304,7 @@ namespace Protos {
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
     public static pbr::MessageDescriptor Descriptor {
-      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[6]; }
+      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[9]; }
     }
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
@@ -1064,7 +1444,7 @@ namespace Protos {
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
     public static pbr::MessageDescriptor Descriptor {
-      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[7]; }
+      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[10]; }
     }
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
@@ -1176,7 +1556,7 @@ namespace Protos {
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
     public static pbr::MessageDescriptor Descriptor {
-      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[8]; }
+      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[11]; }
     }
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
@@ -1268,7 +1648,7 @@ namespace Protos {
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
     public static pbr::MessageDescriptor Descriptor {
-      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[9]; }
+      get { return global::Protos.SyncReflection.Descriptor.MessageTypes[12]; }
     }
 
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]

+ 7 - 11
protos/front.proto

@@ -39,16 +39,12 @@ message BoxPackage {
          float rotation_y=7;
          float rotation_z=8;
          float rotation_w=9;
-
-        //线速度
-         float linear_velocity_x=10;
-         float linear_velocity_y=11;
-         float linear_velocity_z=12;
-
-        //角速度
-         float angle_velocity_x=13;
-         float angle_velocity_y=14;
-         float angle_velocity_z=15;
         //额外设置
-         string extraSet=16;
+         string extraSet=10;
+}
+
+message EventPackage{
+         int32 eventcode=1;
+         bool isshow=2;
+         string extraParams=3;
 }