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); }
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); }
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; } }
#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); } }
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); }