Esempio n. 1
0
        void NetworkInstantiate(int senderId, int objectId, string prefabName, float posX, float posY, float posZ, float rotX, float rotY, float rotZ, float rotW)
        {
            Debug.Log("NetworkInstantiate");
            string groupName = _MultiplayerServer.Actors[senderId].GroupName;

            if (!_NetworkObjectDictionary.ContainsKey(groupName))
            {
                _NetworkObjectDictionary[groupName] = new Dictionary <int, GameObject>();
            }

            GameObject prefab = Resources.Load <GameObject>(prefabName);

            _NetworkObjectDictionary[groupName][objectId]      = Instantiate(prefab, new Vector3(posX, posY, posZ), new Quaternion(rotX, rotY, rotZ, rotW));
            _NetworkObjectDictionary[groupName][objectId].name = objectId.ToString();

            NetDataWriter dataWriter = new NetDataWriter();

            dataWriter.Put(NetworkDataType.NetworkInstantiate);
            dataWriter.Put(objectId);
            dataWriter.Put(prefabName);
            dataWriter.Put(posX);
            dataWriter.Put(posY);
            dataWriter.Put(posZ);
            dataWriter.Put(rotX);
            dataWriter.Put(rotY);
            dataWriter.Put(rotZ);
            dataWriter.Put(rotW);

            _MultiplayerServer.SendToGroupExceptSelf(senderId, dataWriter);
        }