Example #1
0
 public void NetReadFrom(EiBuffer buffer)
 {
     inputDirection = buffer.ReadVector2().ToVector3_XZ();
     Body.MovePosition(buffer.ReadVector3());
     isRunning = buffer.ReadBoolean();
     isWalking = buffer.ReadBoolean();
 }
Example #2
0
 public void NetWriteTo(EiBuffer buffer)
 {
     buffer.Write(inputDirection.ToVector2_XZ());
     buffer.Write(Body.position);
     buffer.Write(isRunning);
     buffer.Write(isWalking);
 }
Example #3
0
        public virtual void WriteTo(EiBuffer buffer)
        {
            buffer.Write(NetworkId);
            buffer.Write(EntityPackageSize);
            var comps = Components;

            for (int i = 0; i < comps; i++)
            {
                networkComponents [i].NetWriteTo(buffer);
            }
        }
Example #4
0
 public void ReadFrom(EiBuffer buffer)
 {
     seed   = buffer.ReadInt();
     level  = buffer.ReadInt();
     data   = new string[buffer.ReadInt()];
     amount = buffer.ReadInt();
     for (int i = 0; i < data.Length; i++)
     {
         data [i] = buffer.ReadASCII();
     }
     Load();
 }
Example #5
0
 public void WriteTo(EiBuffer buffer)
 {
     if (saveItemBeforeWritingToDisk)
     {
         Save();
     }
     buffer.Write(seed);
     buffer.Write(level);
     buffer.Write(data.Length);
     buffer.Write(amount);
     for (int i = 0; i < data.Length; i++)
     {
         buffer.WriteASCII(data [i]);
     }
 }
Example #6
0
        public void ReceiveRPC(byte[] rpcData)
        {
            EiBuffer buffer   = new EiBuffer(rpcData);
            var      viewId   = buffer.ReadInt();
            var      methodId = buffer.ReadByte();
            var      array    = buffer.ReadByteArray(rpcData.Length - 5);
            var      view     = EiNetworkView.Find(viewId);

            if (view)
            {
                //view.ReceiveRPC(methodId, array);
            }
            else
            {
                Debug.LogWarning("Received an RPC for a network View that does not exists");
            }
        }
Example #7
0
        public virtual void ReadFrom(EiBuffer buffer)
        {
            var packageSize = buffer.ReadInt();

            if (packageSize != EntityPackageSize)
            {
                buffer.Skip(packageSize);
            }
            else
            {
                var comps = Components;
                for (int i = 0; i < comps; i++)
                {
                    networkComponents [i].NetReadFrom(buffer);
                }
            }
        }
Example #8
0
        public void Instantiate(byte[] data)
        {
            EiBuffer buffer   = new EiBuffer(data);
            var      unpack   = (EiNetworkInstantiateMask)buffer.ReadByte();
            var      prefabId = buffer.ReadInt();
            var      viewId   = buffer.ReadInt();
            var      ownerId  = buffer.ReadInt();
            EiPrefab prefab   = Eitrum.Database.EiPrefabDatabase.Instance [prefabId];

            // Calculate Unpack type
            Vector3    position = unpack.HasFlag(EiNetworkInstantiateMask.Position) ? buffer.ReadVector3() : Vector3.zero;
            Quaternion rotation = unpack.HasFlag(EiNetworkInstantiateMask.Rotation) ? buffer.ReadQuaternion() : Quaternion.identity;
            float      scale    = unpack.HasFlag(EiNetworkInstantiateMask.Scale) ? buffer.ReadFloat() : 1f;
            Vector3    scale3D  = unpack.HasFlag(EiNetworkInstantiateMask.Scale3D) ? buffer.ReadVector3() : new Vector3(scale, scale, scale);
            Transform  parent   = null;

            if (unpack.HasFlag(EiNetworkInstantiateMask.Parent))
            {
                var parentViewId = buffer.ReadInt();
                var parentView   = EiNetworkView.Find(parentViewId);
                if (parentView)
                {
                    parent = parentView.transform;
                }
            }

            // Instantiate Prefab
            var go   = prefab.Instantiate(position, rotation, scale3D, parent);
            var view = go.GetComponent <EiNetworkView> ();

            if (view)
            {
                EiNetworkView.SetViewId(view, viewId);
                EiNetworkView.SetOwnerId(view, ownerId);
                EiNetworkView.SetNetwork(view, this);
            }
        }
Example #9
0
 public void NetReadFrom(EiBuffer buffer)
 {
     baseMaxStamina.Value           = buffer.ReadFloat();
     maxStaminaMultiplier.Value     = buffer.ReadFloat();
     currentStaminaPercentage.Value = buffer.ReadFloat();
 }
Example #10
0
 public void NetWriteTo(EiBuffer buffer)
 {
     buffer.Write(baseMaxStamina.Value);
     buffer.Write(maxStaminaMultiplier.Value);
     buffer.Write(currentStaminaPercentage.Value);
 }
Example #11
0
 public void NetReadFrom(EiBuffer buffer)
 {
     throw new NotImplementedException();
 }
Example #12
0
 public void NetWriteTo(EiBuffer buffer)
 {
     throw new NotImplementedException();
 }