static public int constructor(IntPtr l) { UnityEngine.ParticleEmitter o; o = new UnityEngine.ParticleEmitter(); pushObject(l, o); return(1); }
static void ParticleEmitter_particleCount(JSVCall vc) { UnityEngine.ParticleEmitter _this = (UnityEngine.ParticleEmitter)vc.csObj; var result = _this.particleCount; JSApi.setInt32((int)JSApi.SetType.Rval, (System.Int32)(result)); }
public ParticleEffectInstanceManager(EffectManager effect_manager, Mesh character_mesh, bool letter_flipped, ParticleEffectSetup effect_setup, AnimationProgressionVariables progression_vars, AnimatePerOptions animate_per, ParticleEmitter particle_emitter = null, ParticleSystem particle_system = null) { m_particle_emitter = particle_emitter; m_particle_system = particle_system; m_letter_mesh = character_mesh; m_letter_flipped = letter_flipped; m_follow_mesh = effect_setup.m_follow_mesh; m_duration = effect_setup.m_duration.GetValue(progression_vars, animate_per); m_delay = effect_setup.m_delay.GetValue(progression_vars, animate_per); m_position_offset = effect_setup.m_position_offset.GetValue(progression_vars, animate_per); m_rotation_offset = Quaternion.Euler(effect_setup.m_rotation_offset.GetValue(progression_vars, animate_per)); m_rotate_with_letter = effect_setup.m_rotate_relative_to_letter; m_effect_manager_handle = effect_manager; m_active = false; if(m_particle_emitter != null) { m_transform = m_particle_emitter.transform; m_particle_emitter.emit = true; m_particle_emitter.enabled = false; } else if(m_particle_system != null) { m_transform = m_particle_system.transform; m_particle_system.playOnAwake = false; m_particle_system.Play(); #if !UNITY_3_5 && UNITY_EDITOR p_system_timer = 0; #endif } }
static void ParticleEmitter_particles(JSVCall vc) { if (vc.bGet) { UnityEngine.ParticleEmitter _this = (UnityEngine.ParticleEmitter)vc.csObj; var result = _this.particles; var arrRet = result; for (int i = 0; arrRet != null && i < arrRet.Length; i++) { JSMgr.datax.setObject((int)JSApi.SetType.SaveAndTempTrace, arrRet[i]); JSApi.moveSaveID2Arr(i); } JSApi.setArrayS((int)JSApi.SetType.Rval, (arrRet != null ? arrRet.Length : 0), true); } else { UnityEngine.Particle[] arg0 = JSDataExchangeMgr.GetJSArg <UnityEngine.Particle[]>(() => { int jsObjID = JSApi.getObject((int)JSApi.GetType.Arg); int length = JSApi.getArrayLength(jsObjID); var ret = new UnityEngine.Particle[length]; for (var i = 0; i < length; i++) { JSApi.getElement(jsObjID, i); ret[i] = (UnityEngine.Particle)JSMgr.datax.getObject((int)JSApi.GetType.SaveAndRemove); } return(ret); }); UnityEngine.ParticleEmitter _this = (UnityEngine.ParticleEmitter)vc.csObj; _this.particles = arg0; } }
public void Init( Vessel v, int type ) { attachedTo = v; AsteriodType = type; if( AsteriodType == 1 )//Comet { try { MainEmitter = (ParticleEmitter)v.rootPart.gameObject.AddComponent("MeshParticleEmitter"); ParticleRender = v.rootPart.gameObject.AddComponent<ParticleRenderer>(); ParticleAnim = v.rootPart.gameObject.AddComponent<ParticleAnimator>(); ParticleRender.material.mainTexture = Utils.LoadTexture( "GameData/KittopiaSpace/Textures/Default/Glow.png" ); MainEmitter.maxSize = 20; MainEmitter.minSize = 10; MainEmitter.maxEnergy = 5; MainEmitter.minEnergy = 2.5f; MainEmitter.useWorldSpace = false; MainEmitter.rndVelocity = new Vector3( 50, 50, 50 ); MainEmitter.emit = true; } catch{} } CanImpact = false; }
static public int set_rndVelocity(IntPtr l) { UnityEngine.ParticleEmitter o = (UnityEngine.ParticleEmitter)checkSelf(l); UnityEngine.Vector3 v; checkType(l, 2, out v); o.rndVelocity = v; return(0); }
static public int set_particles(IntPtr l) { UnityEngine.ParticleEmitter o = (UnityEngine.ParticleEmitter)checkSelf(l); UnityEngine.Particle[] v; checkType(l, 2, out v); o.particles = v; return(0); }
static public int set_maxEmission(IntPtr l) { UnityEngine.ParticleEmitter o = (UnityEngine.ParticleEmitter)checkSelf(l); float v; checkType(l, 2, out v); o.maxEmission = v; return(0); }
static public int set_emitterVelocityScale(IntPtr l) { UnityEngine.ParticleEmitter o = (UnityEngine.ParticleEmitter)checkSelf(l); float v; checkType(l, 2, out v); o.emitterVelocityScale = v; return(0); }
static public int set_useWorldSpace(IntPtr l) { UnityEngine.ParticleEmitter o = (UnityEngine.ParticleEmitter)checkSelf(l); bool v; checkType(l, 2, out v); o.useWorldSpace = v; return(0); }
static public int set_rndRotation(IntPtr l) { UnityEngine.ParticleEmitter o = (UnityEngine.ParticleEmitter)checkSelf(l); bool v; checkType(l, 2, out v); o.rndRotation = v; return(0); }
static public int set_rndAngularVelocity(IntPtr l) { UnityEngine.ParticleEmitter o = (UnityEngine.ParticleEmitter)checkSelf(l); float v; checkType(l, 2, out v); o.rndAngularVelocity = v; return(0); }
static public int set_enabled(IntPtr l) { UnityEngine.ParticleEmitter o = (UnityEngine.ParticleEmitter)checkSelf(l); bool v; checkType(l, 2, out v); o.enabled = v; return(0); }
static public int get_enabled(IntPtr l) { try { UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); pushValue(l, true); pushValue(l, self.enabled); return(2); } catch (Exception e) { return(error(l, e)); } }
static public int ClearParticles(IntPtr l) { try { UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); self.ClearParticles(); pushValue(l, true); return(1); } catch (Exception e) { return(error(l, e)); } }
static public int get_enabled(IntPtr l) { try { UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); pushValue(l, self.enabled); return(1); } catch (Exception e) { LuaDLL.luaL_error(l, e.ToString()); return(0); } }
static public int ClearParticles(IntPtr l) { try{ UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); self.ClearParticles(); return(0); } catch (Exception e) { LuaDLL.luaL_error(l, e.ToString()); return(0); } }
static public int get_rndAngularVelocity(IntPtr l) { try { UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); pushValue(l, true); pushValue(l, self.rndAngularVelocity); return(2); } catch (Exception e) { return(error(l, e)); } }
/*[ToolTip("This is a tooltip of String Field")] [Range(0,1)] [SerializeField] public float randomValue */ public void Start() { _waterfall = transform.FindChild("Water Fountain").particleEmitter; StopWaterFall(); // add send units script if (Game.IsSinglePlayer()) gameObject.AddComponent<SelectAndSendUnitsToTarget>(); else gameObject.AddComponent<SelectAndSendUnitsToTargetMp>(); }
static public int constructor(IntPtr l) { try { UnityEngine.ParticleEmitter o; o = new UnityEngine.ParticleEmitter(); pushValue(l, o); return(1); } catch (Exception e) { LuaDLL.luaL_error(l, e.ToString()); return(0); } }
static public int constructor(IntPtr l) { LuaDLL.lua_remove(l, 1); UnityEngine.ParticleEmitter o; if (matchType(l, 1)) { o = new UnityEngine.ParticleEmitter(); pushObject(l, o); return(1); } LuaDLL.luaL_error(l, "New object failed."); return(0); }
public static int constructor(IntPtr l) { try { UnityEngine.ParticleEmitter o; o=new UnityEngine.ParticleEmitter(); pushValue(l,o); return 1; } catch(Exception e) { LuaDLL.luaL_error(l, e.ToString()); return 0; } }
static public int set_enabled(IntPtr l) { try { UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); bool v; checkType(l, 2, out v); self.enabled = v; pushValue(l, true); return(1); } catch (Exception e) { return(error(l, e)); } }
static public int set_rndAngularVelocity(IntPtr l) { try { UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); float v; checkType(l, 2, out v); self.rndAngularVelocity = v; pushValue(l, true); return(1); } catch (Exception e) { return(error(l, e)); } }
static public int set_enabled(IntPtr l) { try { UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); bool v; checkType(l, 2, out v); self.enabled = v; return(0); } catch (Exception e) { LuaDLL.luaL_error(l, e.ToString()); return(0); } }
static public int set_rndAngularVelocity(IntPtr l) { try { UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); float v; checkType(l, 2, out v); self.rndAngularVelocity = v; return(0); } catch (Exception e) { LuaDLL.luaL_error(l, e.ToString()); return(0); } }
static public int Simulate(IntPtr l) { try{ UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); System.Single a1; checkType(l, 2, out a1); self.Simulate(a1); return(0); } catch (Exception e) { LuaDLL.luaL_error(l, e.ToString()); return(0); } }
static public int Simulate(IntPtr l) { try { UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); System.Single a1; checkType(l, 2, out a1); self.Simulate(a1); pushValue(l, true); return(1); } catch (Exception e) { return(error(l, e)); } }
static public int set_particles(IntPtr l) { try { UnityEngine.ParticleEmitter self = (UnityEngine.ParticleEmitter)checkSelf(l); UnityEngine.Particle[] v; checkArray(l, 2, out v); self.particles = v; pushValue(l, true); return(1); } catch (Exception e) { return(error(l, e)); } }
// fields // properties static void ParticleEmitter_emit(JSVCall vc) { if (vc.bGet) { UnityEngine.ParticleEmitter _this = (UnityEngine.ParticleEmitter)vc.csObj; var result = _this.emit; JSApi.setBooleanS((int)JSApi.SetType.Rval, (System.Boolean)(result)); } else { System.Boolean arg0 = (System.Boolean)JSApi.getBooleanS((int)JSApi.GetType.Arg); UnityEngine.ParticleEmitter _this = (UnityEngine.ParticleEmitter)vc.csObj; _this.emit = arg0; } }
public void ImportData(JSONObject json_data) { m_effect_type = (PARTICLE_EFFECT_TYPE) (int) json_data["m_effect_type"].Number; if(m_effect_type == PARTICLE_EFFECT_TYPE.LEGACY) m_legacy_particle_effect = json_data["m_legacy_particle_effect"].Str.PathToParticleEmitter(); else m_shuriken_particle_effect = json_data["m_shuriken_particle_effect"].Str.PathToParticleSystem(); m_duration.ImportData(json_data["m_duration"].Obj); m_follow_mesh = json_data["m_follow_mesh"].Boolean; m_position_offset.ImportData(json_data["m_position_offset"].Obj); m_rotation_offset.ImportData(json_data["m_rotation_offset"].Obj); m_rotate_relative_to_letter = json_data["m_rotate_relative_to_letter"].Boolean; ImportBaseData(json_data); }
static void ParticleEmitter_minEnergy(JSVCall vc) { if (vc.bGet) { UnityEngine.ParticleEmitter _this = (UnityEngine.ParticleEmitter)vc.csObj; var result = _this.minEnergy; JSApi.setSingle((int)JSApi.SetType.Rval, (System.Single)(result)); } else { System.Single arg0 = (System.Single)JSApi.getSingle((int)JSApi.GetType.Arg); UnityEngine.ParticleEmitter _this = (UnityEngine.ParticleEmitter)vc.csObj; _this.minEnergy = arg0; } }
static void ParticleEmitter_rndVelocity(JSVCall vc) { if (vc.bGet) { UnityEngine.ParticleEmitter _this = (UnityEngine.ParticleEmitter)vc.csObj; var result = _this.rndVelocity; JSApi.setVector3S((int)JSApi.SetType.Rval, result); } else { UnityEngine.Vector3 arg0 = (UnityEngine.Vector3)JSApi.getVector3S((int)JSApi.GetType.Arg); UnityEngine.ParticleEmitter _this = (UnityEngine.ParticleEmitter)vc.csObj; _this.rndVelocity = arg0; } }
static int get_localVelocity(IntPtr L) { object o = null; try { o = ToLua.ToObject(L, 1); UnityEngine.ParticleEmitter obj = (UnityEngine.ParticleEmitter)o; UnityEngine.Vector3 ret = obj.localVelocity; ToLua.Push(L, ret); return(1); } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e, o, "attempt to index localVelocity on a nil value")); } }
static int get_emitterVelocityScale(IntPtr L) { object o = null; try { o = ToLua.ToObject(L, 1); UnityEngine.ParticleEmitter obj = (UnityEngine.ParticleEmitter)o; float ret = obj.emitterVelocityScale; LuaDLL.lua_pushnumber(L, ret); return(1); } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e, o, "attempt to index emitterVelocityScale on a nil value")); } }
public ParticleEffectInstanceManager(TextFxAnimationManager animation_manager, LetterSetup letter_setup_ref, ParticleEffectSetup effect_setup, AnimationProgressionVariables progression_vars, AnimatePerOptions animate_per, ParticleEmitter particle_emitter = null, ParticleSystem particle_system = null) { m_particle_emitter = particle_emitter; m_particle_system = particle_system; m_letter_setup_ref = letter_setup_ref; m_follow_mesh = effect_setup.m_follow_mesh; m_duration = effect_setup.m_duration.GetValue(progression_vars, animate_per); m_delay = effect_setup.m_delay.GetValue(progression_vars, animate_per); m_position_offset = effect_setup.m_position_offset.GetValue(null, progression_vars, animate_per); m_rotation_offset = Quaternion.Euler(effect_setup.m_rotation_offset.GetValue(null, progression_vars, animate_per)); m_rotate_with_letter = effect_setup.m_rotate_relative_to_letter; m_animation_manager = animation_manager; m_active = false; if(m_particle_emitter != null) { m_transform = m_particle_emitter.transform; m_particle_emitter.emit = true; m_particle_emitter.enabled = false; // Set the layer of the effect if an override is specified if(animation_manager.AnimationInterface.LayerOverride >= 0) m_particle_emitter.gameObject.layer = animation_manager.AnimationInterface.LayerOverride; } else if(m_particle_system != null) { m_transform = m_particle_system.transform; m_particle_system.playOnAwake = false; m_particle_system.Play(); #if !UNITY_3_5 && UNITY_EDITOR p_system_timer = 0; #endif // Set the layer of the effect if an override is specified if(animation_manager.AnimationInterface.LayerOverride >= 0) m_particle_system.gameObject.layer = animation_manager.AnimationInterface.LayerOverride; } }
public void Setup() { if (part.partInfo == null) { return; } if (obj != null) { return; } var shaderName = config.GetValue("ShaderName"); var textureName = config.GetValue("TextureName"); obj = GameObject.CreatePrimitive(PrimitiveType.Sphere); obj.collider.enabled = false; obj.renderer.material.color = new Color(0, 0, 0, 0); obj.renderer.material.shader = Shader.Find("Transparent/Diffuse"); obj.transform.parent = part.transform; obj.transform.localRotation = Quaternion.identity; animator = (ParticleAnimator)obj.AddComponent<ParticleAnimator>(); emitter = (ParticleEmitter)obj.AddComponent("MeshParticleEmitter"); renderer = (ParticleRenderer)obj.AddComponent<ParticleRenderer>(); var material = new Material(Shader.Find(shaderName)); material.mainTexture = GameDatabase.Instance.GetTexture(textureName, false); material.color = Color.white; renderer.materials = new Material[] { material }; animator.colorAnimation = new Color[5]; if (Misc.Parse(config.GetValue("Collision"), false)) { obj.AddComponent("WorldParticleCollider"); } AngularVelocity = Misc.Parse(config.GetValue("AngularVelocity"), 0f); CameraVelocityScale = Misc.Parse(config.GetValue("CameraVelocityScale"), 0f); ColorAnimation1 = ConfigNode.ParseColor(config.GetValue("ColorAnimation1")); ColorAnimation2 = ConfigNode.ParseColor(config.GetValue("ColorAnimation2")); ColorAnimation3 = ConfigNode.ParseColor(config.GetValue("ColorAnimation3")); ColorAnimation4 = ConfigNode.ParseColor(config.GetValue("ColorAnimation4")); ColorAnimation5 = ConfigNode.ParseColor(config.GetValue("ColorAnimation5")); Damping = Misc.Parse(config.GetValue("Damping"), 1f); Emit = Misc.Parse(config.GetValue("Emit"), true); EmitterVelocityScale = Misc.Parse(config.GetValue("EmitterVelocityScale"), 1f); Force = Misc.Parse(config.GetValue("Force"), Vector3.zero); LengthScale = Misc.Parse(config.GetValue("LengthScale"), 1f); LocalRotationAxis = Misc.Parse(config.GetValue("LocalRotationAxis"), Vector3.zero); LocalVelocity = Misc.Parse(config.GetValue("LocalVelocity"), Vector3.zero); MaxEmission = Misc.Parse(config.GetValue("MaxEmission"), 0f); MaxEnergy = Misc.Parse(config.GetValue("MaxEnergy"), 0f); MaxParticleSize = Misc.Parse(config.GetValue("MaxParticleSize"), 0f); MaxSize = Misc.Parse(config.GetValue("MaxSize"), 0f); MinEmission = Misc.Parse(config.GetValue("MinEmission"), 0f); MinEnergy = Misc.Parse(config.GetValue("MinEnergy"), 0f); MinSize = Misc.Parse(config.GetValue("MinSize"), 0f); RandomAngularVelocity = Misc.Parse(config.GetValue("RandomAngularVelocity"), 0f); RandomForce = Misc.Parse(config.GetValue("RandomForce"), Vector3.zero); RandomRotation = Misc.Parse(config.GetValue("RandomRotation"), false); RandomVelocity = Misc.Parse(config.GetValue("RandomVelocity"), Vector3.zero); RenderMode = Misc.Parse(config.GetValue("RenderMode"), ParticleRenderMode.Billboard); SizeGrow = Misc.Parse(config.GetValue("SizeGrow"), 0f); UseWorldSpace = Misc.Parse(config.GetValue("UseWorldSpace"), false); VelocityScale = Misc.Parse(config.GetValue("VelocityScale"), 0f); WorldRotationAxis = Misc.Parse(config.GetValue("WorldRotationAxis"), Vector3.zero); WorldVelocity = Misc.Parse(config.GetValue("WorldVelocity"), Vector3.zero); EmitterPosition = Misc.Parse(config.GetValue("EmitterPosition"), Vector3.zero); EmitterScale = Misc.Parse(config.GetValue("EmitterScale"), Vector3.zero); }
public ParticleEmitter Emitter(ParticleEmitter pe) { ParticleEmitter fx; fx = (ParticleEmitter)UnityEngine.Object.Instantiate(pe); fx.transform.parent = groundInterfaceTransform; fx.transform.position = groundInterfaceTransform.position; fx.transform.rotation = groundInterfaceTransform.rotation; fx.gameObject.SetActive(false); return fx; }
public sParticleEmitter(ParticleEmitter p) { }
/// <summary> /// The main initialisation. Here we create the subcomponents. /// </summary> void Awake() { if (!GetComponent<ParticleEmitter>()) { emitter = (ParticleEmitter)gameObject.AddComponent("MeshParticleEmitter"); emitter.useWorldSpace = false; emitter.emit = true; } else { emitter = GetComponent<ParticleEmitter>(); } if (!GetComponent<ParticleAnimator>()) { animator = gameObject.AddComponent<ParticleAnimator>(); animator.doesAnimateColor = true; } else { animator = GetComponent<ParticleAnimator>(); } if (!GetComponent<ParticleRenderer>()) { renderer = gameObject.AddComponent<ParticleRenderer>(); renderer.material = new Material(Shader.Find("Particles/Alpha Blended")); } else { renderer = GetComponent<ParticleRenderer>(); } if (!GetComponent<MeshFilter>()) { filter = gameObject.AddComponent<MeshFilter>(); } else { filter = GetComponent<MeshFilter>(); } }
/// <summary> /// Calls GetComponent for all cached components if the currently cached instance is no longer valid. /// </summary> public void ResetCacheDestroyed() { if (!animation) { animation = GetComponent<Animation>(); } if (!audio) { audio = GetComponent<AudioSource>(); } if (!camera) { camera = GetComponent<Camera>(); } if (!collider) { collider = GetComponent<Collider>(); } if (!collider2D) { collider2D = GetComponent<Collider2D>(); } if (!constantForce) { constantForce = GetComponent<ConstantForce>(); } if (!guiText) { guiText = GetComponent<GUIText>(); } if (!guiTexture) { guiTexture = GetComponent<GUITexture>(); } if (!hingeJoint) { hingeJoint = GetComponent<HingeJoint>(); } if (!light) { light = GetComponent<Light>(); } if (!networkView) { networkView = GetComponent<NetworkView>(); } if (!particleEmitter) { particleEmitter = GetComponent<ParticleEmitter>(); } if (!particleSystem) { particleSystem = GetComponent<ParticleSystem>(); } if (!renderer) { renderer = GetComponent<Renderer>(); } if (!rigidbody) { rigidbody = GetComponent<Rigidbody>(); } if (!rigidbody2D) { rigidbody2D = GetComponent<Rigidbody2D>(); } if (!transform) { transform = GetComponent<Transform>(); } }
public SGenericParticleSystem(ParticleEmitter emitter, ParticleRenderer renderer, Particle[] particles) { if (emitter == null || renderer == null) return; instanceID = emitter.GetInstanceID(); goInstanceID = emitter.gameObject.GetInstanceID(); isLegacy = true; isWorldSpace = emitter.useWorldSpace; emit = emitter.emit; enabled = emitter.enabled; position = emitter.transform.position; name = emitter.gameObject.name; SetParticleRenderer(renderer); this.particles = new SGenericParticleArray(particles); }
private void addComponents() { pEmitter = (ParticleEmitter)gameObject.AddComponent("MeshParticleEmitter"); pRenderer = gameObject.AddComponent<ParticleRenderer>(); pAnimator = gameObject.AddComponent<ParticleAnimator>(); }
public ParticleEmitter Spawn(ParticleEmitter prefab, Vector3 pos, Quaternion rot, string colorPropertyName, Color color) { Transform inst = Spawn(prefab.transform, pos, rot); if (inst == null) return null; ParticleAnimator animator = inst.GetComponent<ParticleAnimator>(); if (animator != null) animator.autodestruct = false; ParticleEmitter emitter = inst.GetComponent<ParticleEmitter>(); emitter.GetComponent<Renderer>().material.SetColor(colorPropertyName, color); emitter.emit = true; StartCoroutine(ListenForEmitDespawn(emitter)); return emitter; }
public ParticleEmitter Spawn(ParticleEmitter prefab, Vector3 pos, Quaternion rot) { Transform inst = this.Spawn(prefab.transform, pos, rot); if (inst == null) return null; ParticleAnimator animator = inst.GetComponent<ParticleAnimator>(); if (animator != null) animator.autodestruct = false; ParticleEmitter emitter = inst.GetComponent<ParticleEmitter>(); emitter.emit = true; StartCoroutine(ListenForEmitDespawn(emitter)); return emitter; }
/// <summary> /// Caches all of the current standard components attached to the object. /// </summary> public void ResetCache() { animation = GetComponent<Animation>(); audio = GetComponent<AudioSource>(); camera = GetComponent<Camera>(); collider = GetComponent<Collider>(); collider2D = GetComponent<Collider2D>(); constantForce = GetComponent<ConstantForce>(); guiText = GetComponent<GUIText>(); guiTexture = GetComponent<GUITexture>(); hingeJoint = GetComponent<HingeJoint>(); light = GetComponent<Light>(); networkView = GetComponent<NetworkView>(); particleEmitter = GetComponent<ParticleEmitter>(); particleSystem = GetComponent<ParticleSystem>(); renderer = GetComponent<Renderer>(); rigidbody = GetComponent<Rigidbody>(); rigidbody2D = GetComponent<Rigidbody2D>(); transform = GetComponent<Transform>(); }
private static extern void INTERNAL_CALL_ClearParticles(ParticleEmitter self);
private void configureParticles() { GameObject obj = Instantiate(UnityEngine.Resources.Load("Effects/fx_exhaustFlame_blue")) as GameObject; obj.transform.parent = transform; obj.transform.localEulerAngles = Vector3.zero; obj.transform.localPosition = Vector3.zero; emitter = obj.particleEmitter; emitter.emit = true; emitter.minEnergy = 0.5f; emitter.maxEnergy = 1.5f; emitter.minSize = 0.2f; emitter.maxSize = 0.4f; emitter.minEmission = PARTICLES_IDLE; emitter.maxEmission = PARTICLES_IDLE * 2; emitter.rndVelocity = Vector3.one * 2; emitter.localVelocity = Vector3.zero; emitter.useWorldSpace = false; (obj.GetComponent<ParticleAnimator>() as ParticleAnimator).sizeGrow = 2f; }
private IEnumerator ListenForEmitDespawn(ParticleEmitter emitter) { yield return null; yield return new WaitForEndOfFrame(); float safetimer = 0; GameObject emitterGO = emitter.gameObject; while (emitter.particleCount > 0 && emitterGO.activeInHierarchy) { safetimer += Time.deltaTime; if (safetimer > MaxParticleDespawnTime) { Debug.LogWarning ( string.Format ( "SpawnPool {0}: " + "Timed out while listening for all particles to die. " + "Waited for {1}sec.", PoolName, MaxParticleDespawnTime ) ); } yield return null; } emitter.emit = false; if (emitterGO.activeInHierarchy) { Despawn(emitter.transform); } }
/// <summary> /// Caches the current ParticleEmitter attached to the object. /// </summary> public void ResetParticleEmitterCache() { particleEmitter = GetComponent<ParticleEmitter>(); }