public void CreateSonar(Vector3 _pos, float lifeTime = 0, float startSpeed = 0) { if (!poolExist) { return; } ParticleBehaviour _part = pool.Dequeue(); _part.gameObject.SetActive(true); _part.gameObject.transform.position = _pos; if (lifeTime > 0) { _part.SetLifeTime(lifeTime); } if (startSpeed > 0) { _part.SetStartSpeed(startSpeed); } _part.PlayParticle(); pool.Enqueue(_part); }
private void CreatePoolObject() { ParticleBehaviour _part = Instantiate(poolObjectPrefab.gameObject, transform.position, poolObjectPrefab.transform.rotation, poolParent.transform).GetComponent <ParticleBehaviour>(); _part.gameObject.SetActive(false); pool.Enqueue(_part); }
/// <summary> /// <see cref="ParticleBehaviour.CopyAttributesTo"/> /// </summary> /// <param name="affector"></param> public void CopyAttributesTo(ParticleBehaviour affector) { if (affector == null) { throw new ArgumentNullException("affector cannot be null!"); } SlaveBehaviour_CopyAttributesTo(nativePtr, affector.nativePtr); }
public void SetPoolColor(Color _col) { for (int i = 0; i < pool.Count; i++) { ParticleBehaviour p = pool.Dequeue(); p.SetColor(_col); pool.Enqueue(p); } }
// Use this for initialization void Start() { screens = screensObject.transform.GetComponent<ScreenBehaviour>(); targets = targetsObject.transform.GetComponent<TargetsBehaviour>(); watergun = watergunObject.transform.GetComponent<WaterGunBehavior>(); particles = watergunObject.transform.GetComponentInChildren<ParticleBehaviour>(); screens.startScreenStart(); }
private void Awake() { if (photonView.IsMine) { photonView.RPC(nameof(RPC_SetSubSettings), RpcTarget.AllBufferedViaServer, GameManager.SP.playerData.subBaseSelected, GameManager.SP.playerData.subEngineSelected, GameManager.SP.playerData.subCannonSelected); } sp = GetComponent <SonarPool>(); pm = GetComponent <PlayerMovement>(); pb = GetComponentInChildren <ParticleBehaviour>(); pc = GetComponent <PlayerCannon>(); ph = GetComponent <PlayerHealth>(); }
void SpawnParticle() { Vector2 position = transform.position; position += RandomMovement; GameObject ParticleGo = Instantiate(Template, new Vector3(position.x, position.y, transform.position.z), Quaternion.identity); ParticleGo.transform.SetParent(transform, true); SmoothedParticle particle = ParticleGo.GetComponent <SmoothedParticle>(); var particleInfo = particle.particleInfo; particle.Manager = Manager; particleInfo.Velocity = InitVelocity; particleInfo.Position = position; particle.particleInfo = particleInfo; ParticleBehaviour behaviour = ParticleGo.GetComponent <ParticleBehaviour>(); behaviour.RenderManager = RenderManager; }
// Handle the bullet hitting something private void Hit(RaycastHit hit) { Debug.Log("Projectile hit: " + hit.collider, this); // apply damage if (hit.transform.ApplyDamage(damage, hit.point, direction * force, dealer)) { Debug.Log("Applied damage to: " + hit.transform, this); } // spawn hit particles if (hitParticles != null) { ParticleBehaviour p = (ParticleBehaviour)PoolManager.Instance.GetPooledObject(hitParticles); p.transform.position = hit.point; p.transform.LookAt(hit.point + hit.normal); p.Activate(); } StartCoroutine(StopProjectile()); }
public void GetBehaviour(ParticleBehaviour val) { SharpMochaPINVOKE.CParticleEmitter_GetBehaviour__SWIG_1(swigCPtr, (int)val); }
public ParticleBehaviour GetBehaviour() { ParticleBehaviour ret = (ParticleBehaviour)SharpMochaPINVOKE.CParticleEmitter_GetBehaviour__SWIG_0(swigCPtr); return(ret); }
public static Particle CreateParticle(ParticleBehaviour Behaviour, ParticleShape Shape, Rectangle Clip, Vector2 PositionModifier, Random RandomFeed, Int32 Opacity, Int32 Lifespan, Single SizeRatio, Vector2 VelocityModifier) { Particle p = new Particle(); p.Shape = Shape; switch (Behaviour) { case ParticleBehaviour.Explode: { p.Opacity = Opacity; p.BackColor = Color.FromNonPremultiplied(RandomFeed.Next(255), 0, 0, 255); p.Position = new Vector2((Single)Clip.Width / 2f + PositionModifier.X, (Single)Clip.Height / 2f + PositionModifier.Y); p.Lifespan = Lifespan; p.SizeRatioOverTime = SizeRatio; p.VelocityX = ((Single)RandomFeed.NextDouble() - 0.5f) * ((Single)RandomFeed.NextDouble() * VelocityModifier.X); p.VelocityY = ((Single)RandomFeed.NextDouble() - 0.5f) * ((Single)RandomFeed.NextDouble() * VelocityModifier.Y); p.FadeOut = true; p.FadeOutStartAt = 40; p.FadeIn = false; p.FadeInFrameCount = 0; p.CurrentSize = RandomFeed.Next(5) + 5; p.PMathX = new PixelMath("x * 2"); p.PMathY = new PixelMath("x * 2"); } break; case ParticleBehaviour.Focus: { p.Opacity = Opacity; p.BackColor = Color.FromNonPremultiplied(RandomFeed.Next(255), 0, 0, 255); p.Position = new Vector2(RandomFeed.Next(Clip.Width), RandomFeed.Next(Clip.Height)); p.Lifespan = Lifespan; p.SizeRatioOverTime = SizeRatio; p.VelocityX = (Single)RandomFeed.NextDouble(); p.VelocityY = (Single)RandomFeed.NextDouble(); p.FadeOut = true; p.FadeOutStartAt = 40; p.FadeIn = true; p.FadeInFrameCount = 20; p.CurrentSize = RandomFeed.Next(5) + 5; Single xVariation = ((Single)Clip.Width / 2f - p.Position.X) / (Single)p.Lifespan; Single yVariation = ((Single)Clip.Height / 2f - p.Position.Y) / (Single)p.Lifespan; p.PMathX = new PixelMath(xVariation.ToString()); p.PMathY = new PixelMath(yVariation.ToString()); } break; case ParticleBehaviour.Trail: { p.Opacity = Opacity; p.BackColor = Color.FromNonPremultiplied(RandomFeed.Next(255), 0, 0, 255); p.Position = new Vector2((Single)Clip.Width / 2f + PositionModifier.X, (Single)Clip.Height / 2f + PositionModifier.Y); p.Lifespan = Lifespan; p.SizeRatioOverTime = SizeRatio; p.VelocityX = ((Single)RandomFeed.NextDouble() - 0.5f) * ((Single)RandomFeed.NextDouble() * VelocityModifier.X); p.VelocityY = ((Single)RandomFeed.NextDouble() - 0.5f) * ((Single)RandomFeed.NextDouble() * VelocityModifier.Y); p.FadeOut = true; p.FadeOutStartAt = 40; p.FadeIn = false; p.FadeInFrameCount = 0; p.CurrentSize = RandomFeed.Next(5) + 2; p.PMathX = new PixelMath("x"); p.PMathY = new PixelMath("x"); } break; } return p; }
public void AddParticules(Int32 Number, ParticleBehaviour Behaviour, ParticleShape Shape, Vector2 PositionModifier) { Number.TimesDo(() => Particles.Add(Particle.CreateParticle(Behaviour, Shape, ClipTarget, PositionModifier, RandomFeed))); }
public static Particle CreateParticle(ParticleBehaviour Behaviour, Rectangle Clip, Random RandomFeed) { return Particle.CreateParticle(Behaviour, ParticleShape.Circle, Clip, new Vector2(0, 0), RandomFeed, 255, 60, 0.99f, new Vector2(3f, 3f)); }
public static Particle CreateParticle(ParticleBehaviour Behaviour, ParticleShape Shape, Rectangle Clip, Vector2 PositionModifier, Random RandomFeed) { return Particle.CreateParticle(Behaviour, Shape, Clip, PositionModifier, RandomFeed, 255, 60, 0.99f, new Vector2(3f, 3f)); }