private void fire() { if (!LaunchEnable && Time.timeScale != 0) { LaunchEnable = true; StartCoroutine(Launch(BulletParticleEffectEvent)); } void BulletParticleEffectEvent() { fireBaseMethod((bullet) => { var message = FireMessage.CreateMessage(BlockBehaviour, Rigidbody.velocity, bullet.GetComponent <RayBulletScript>().Guid.ToString()); ModNetworking.SendToAll(message); }); } }
void fire() { if (!LaunchEnable && Time.timeScale != 0) { LaunchEnable = true; StartCoroutine(Launch(BulletParticleEffectEvent)); } void BulletParticleEffectEvent() { var bullet = (GameObject)Instantiate(BulletObject, transform.TransformPoint(SpawnPoint + Direction), transform.rotation); bullet.SetActive(true); var bs = bullet.GetComponent <BulletScript>(); bs.Fire(null, (value) => { bs.gameObject.AddComponent <ExplodeScript>().Explodey(ExplodeScript.explosionType.Small, bullet.transform.position, bulletPowerSlider.Value, 3f); bs.GetComponent <TimedSelfDestruct>().Begin(5f); } ); if (StatMaster.isMP && Modding.Common.Player.GetAllPlayers().Count > 1) { var message = FireMessage.CreateMessage(BlockBehaviour, Rigidbody.velocity, bs.Guid.ToString()); ModNetworking.SendToAll(message); } fireAudioSource.PlayOneShot(fireAudioSource.clip); fireAudioSource.pitch = UnityEngine.Random.Range(0.8f, 1.2f); EffectsObject.SetActive(true); EffectsObject.GetComponent <Reactivator>().Switch = true; } }