Example #1
0
        public NetworkIdentity CreateNetworkIdentity(string resourceName, long ownerId, Vector3 position)
        {
            NetworkIdentity networkIdentityPrefab = null;

            if (resourcePrefabCache.TryGetValue(resourceName, out networkIdentityPrefab) == false)
            {
                networkIdentityPrefab = Resources.Load <NetworkIdentity>(resourceName);
                resourcePrefabCache.Add(resourceName, networkIdentityPrefab);
            }

            var newNetworkIdentity = Pooler.Instantiate(networkIdentityPrefab);

            newNetworkIdentity.GenerateNewNetworkId();
            newNetworkIdentity.SetOwner(ownerId);
            newNetworkIdentity.ResourceName       = resourceName;
            newNetworkIdentity.Destroyed         += this.NetworkIdentityDestroyed;
            newNetworkIdentity.transform.position = position;

            // Registering it with the dynamic game objects
            this.dynamicNetworkObjectsHash.Add(newNetworkIdentity.NetworkId, newNetworkIdentity);
            this.dynamicNetworkObjectsList.Add(newNetworkIdentity);

            this.networkIdentityCreatedMessage.NetworkId    = newNetworkIdentity.NetworkId;
            this.networkIdentityCreatedMessage.OwnerId      = newNetworkIdentity.OwnerId;
            this.networkIdentityCreatedMessage.ResourceName = resourceName;
            this.networkIdentityCreatedMessage.Position     = position;
            this.SendNetworkMessage(this.networkIdentityCreatedMessage);

            return(newNetworkIdentity);
        }
Example #2
0
        public void AddItem(string name, UnityAction customAction)
        {
            var newItem = Pooler.Instantiate <DebugMenuItem>(this.debugMenuItemPrefab);

            newItem.transform.SetParent(this.contentTransform);
            newItem.transform.Reset();
            newItem.Initialize(name, customAction, this.Hide);
        }
Example #3
0
 private void Initialize()
 {
     if (this.prefabInstance == null && this.prefab != null)
     {
         this.prefabInstance           = Pooler.Instantiate(this.prefab);
         this.prefabInstance.hideFlags = HideFlags.HideAndDontSave;
         this.prefabInstance.transform.SetParent(this.transform);
         this.prefabInstance.transform.localPosition = Vector3.zero;
     }
 }
Example #4
0
        #pragma warning restore 0649

        private void Update()
        {
            this.waitTime -= Time.deltaTime;

            if (this.waitTime < 0.0f)
            {
                if (this.destroyEffect != null)
                {
                    GameObject destroyEffect = Pooler.Instantiate(this.destroyEffect);
                    destroyEffect.transform.position = this.transform.position;
                }

                Pooler.Destroy(this.gameObject);
            }
        }
Example #5
0
        public void InitializeDots()
        {
            // making sure it hasn't already been initialized
            if (this.dotContainer != null && this.dotContainer.transform.childCount > 0)
            {
                return;
            }

            // initializing the dots
            if (this.dotPrefab != null && this.dotContainer != null)
            {
                for (int i = 0; i < this.ChildCount; i++)
                {
                    var newDot = Pooler.Instantiate(this.dotPrefab);
                    newDot.transform.SetParent(this.dotContainer);
                    newDot.transform.localScale    = new Vector3(this.minScale, this.minScale, this.minScale);
                    newDot.transform.localPosition = Vector3.zero;
                }
            }
        }
        private NetworkIdentity CreateDynamicNetworkIdentity(string resourceName, long networkId, long ownerId, Vector3 position)
        {
            NetworkIdentity networkIdentityPrefab = null;

            if (resourcePrefabCache.TryGetValue(resourceName, out networkIdentityPrefab) == false)
            {
                networkIdentityPrefab = Resources.Load <NetworkIdentity>(resourceName);
                resourcePrefabCache.Add(resourceName, networkIdentityPrefab);
            }

            var newNetworkIdentity = Pooler.Instantiate(networkIdentityPrefab);

            newNetworkIdentity.SetNetworkId(networkId);
            newNetworkIdentity.SetOwner(ownerId);
            newNetworkIdentity.ResourceName       = resourceName;
            newNetworkIdentity.transform.position = position;

            // Registering the new dynamic object
            this.dynamicNetworkObjectsHash.Add(newNetworkIdentity.NetworkId, newNetworkIdentity);
            this.dynamicNetworkObjectsList.Add(newNetworkIdentity);

            return(newNetworkIdentity);
        }