void SpawnMeteor(PlayerSession session) { hurt.SendChatMessage(session, null, "test"); Vector3 vector = session.WorldPlayerEntity.transform.position; GameObject obj = Singleton <HNetworkManager> .Instance.NetInstantiate( uLink.NetworkPlayer.server, Prefabs.GetKey("meteor"), Vector3.zero, Quaternion.Euler(0, 180, 0), GameManager.GetSceneTime()); global::NetworkInstantiateConfig component = obj.GetComponent <NetworkInstantiateConfig>(); //Vector3 vector = this._dropPoints[this._dropPoints.Count - 1] + Vector3.up * 1000f; //this._dropPoints.RemoveAt(this._dropPoints.Count - 1); RaycastHit raycastHit; if (!Physics.Raycast(vector, Vector3.down, out raycastHit, 2000f, global::LayerMaskManager.TerrainAndConstructions)) { Debug.Log("No terrain at " + vector); return; } vector = raycastHit.point; global::MeteorEvent component2 = global::Singleton <global::HNetworkManager> .Instance.NetInstantiate(component, vector, Quaternion.identity, 0, ushort.MaxValue).GetComponent <global::MeteorEvent>(); if (component2 != null) { component2.SetRadius(20f); component2.MapMarker.Color = Color.yellow; //component2. //component2.OverrideResourceNode = this.ResourceNodeOverride; } }
private void SpawnMeteor2(PlayerSession session) { MeteorShowerEvent meteorShowerEvent = new MeteorShowerEvent(); GameObject obj = Singleton <HNetworkManager> .Instance.NetInstantiate( uLink.NetworkPlayer.server, Prefabs.GetKey("meteor"), Vector3.zero, Quaternion.Euler(0, 180, 0), GameManager.GetSceneTime()); Vector3 a = session.WorldPlayerEntity.transform.position; global::NetworkInstantiateConfig component = obj.GetComponent <global::NetworkInstantiateConfig>(); Vector3 vector = a + Vector3.up * 1000f; RaycastHit raycastHit; if (!Physics.Raycast(vector, Vector3.down, out raycastHit, 2000f, global::LayerMaskManager.TerrainAndConstructions)) { Debug.Log("No terrain at " + vector); return; } vector = raycastHit.point; global::MeteorEvent component2 = global::Singleton <global::HNetworkManager> .Instance.NetInstantiate(component, vector, Quaternion.identity, 0, ushort.MaxValue).GetComponent <global::MeteorEvent>(); if (component2 != null) { component2.SetRadius(20f); component2.MapMarker.Color = Color.blue; component2.OverrideResourceNode = meteorShowerEvent.ResourceNodeOverride; } component2.Update(); component2.FireLateUpdate(); }
void Init() { Prefabs.LoadKey(); }