示例#1
0
    public static void SendSpawnedObjects(int connectionID)
    {
        ByteBuffer buffer = new ByteBuffer();

        for (int i = 0; i < _data.Index; i++)
        {
            SpawnedPrefab sp = _data.spawnedPrefabs[i];
            buffer.WriteLong((long)PacketType.NetSpawn);

            buffer.WriteInteger(sp.assignedID);

            buffer.WriteString(sp.slug);

            buffer.WriteFloat(sp.transform.position.x);
            buffer.WriteFloat(sp.transform.position.y);
            buffer.WriteFloat(sp.transform.position.z);

            buffer.WriteFloat(sp.transform.rotation.x);
            buffer.WriteFloat(sp.transform.rotation.y);
            buffer.WriteFloat(sp.transform.rotation.z);
            buffer.WriteFloat(sp.transform.rotation.w);

            SendDataTo(connectionID, buffer.ToArray());
            buffer.Dispose();
        }
    }
示例#2
0
        public void UpdateObject(int objectID, Vector3 pos)
        {
            int index = objectID - 1;

            if (index == -1 || index > spawnedPrefabs.Count - 1)
            {
                return;
            }
            SpawnedPrefab sp = spawnedPrefabs[index].Copy();

            sp.transform.position = pos;
            spawnedPrefabs[index] = sp;
        }
示例#3
0
        public void UpdateObject(int objectID, Quaternion rot)
        {
            int index = objectID - 1;

            if (index == -1 || index > spawnedPrefabs.Count - 1)
            {
                return;
            }

            SpawnedPrefab sp = spawnedPrefabs[index].Copy();

            sp.transform.rotation = rot;
            spawnedPrefabs[index] = sp;
        }