- Home /
invalid cast exception, array of particle systems
#pragma strict
// [...]
var fireEmitters : ParticleEmitter[];
// [...]
function LightFire(campfire : GameObject)
{
fireEmitters = campfire.GetComponentsInChildren(ParticleEmitter); // Error
for(var emitter : ParticleEmitter in fireEmitters)
emitter.emit = true;
// [...]
}
i'm getting an error with my array of particle systems saying implicit downcasting from component to particle system on line 71 the exact error being : InvalidCastException: Cannot cast from source type to destination type.
[Edit by Berenger : Cut out what's not relevant with the issue. The full code is in he comments]
gochi7's full message :
#pragma strict
static var charge : int = 0;
var collectSound : AudioClip;
//HUD
var hudCharge : Texture2D[];
var chargeHudGUI : GUITexture;
//Generator
var meterCharge : Texture[];
var meter : Renderer;
//$$anonymous$$atches
private var have$$anonymous$$atches : boolean = false;
var matchGUIprefab : GUITexture;
private var matchGUI : GUITexture;
var fireEmitters : ParticleEmitter[];
var TextHints : GUIText;
function Start ()
{
charge = 0;
}
function Update ()
{
}
function CellPickup()
{
AudioSource.PlayClipAtPoint(collectSound, transform.position);
charge++;
chargeHudGUI.texture = hudCharge[charge];
meter.material.mainTexture = meterCharge[charge];
HUDon();
}
function HUDon()
{
if(!chargeHudGUI.enabled)
{
chargeHudGUI.enabled = true;
}
}
function $$anonymous$$atchPickup()
{
have$$anonymous$$atches = true;
AudioSource.PlayClipAtPoint(collectSound, transform.position);
var matchHUD : GUITexture = Instantiate(matchGUIprefab, Vector3(0.15,0.1,0),transform.rotation);
matchGUI = matchHUD;
}
function OnControllerColliderHit(col : ControllerColliderHit)
{
if(col.gameObject.name == "campfire")
{
if(have$$anonymous$$atches)
{
LightFire(col.gameObject);
}
else
{
TextHints.Send$$anonymous$$essage("ShowHint", "i could use this campfire to signal for help... \n if only i could light it");
}
}
}
function LightFire(campfire : GameObject)
{
fireEmitters = campfire.GetComponentsInChildren(ParticleEmitter);
for(var emitter : ParticleEmitter in fireEmitters)
{
emitter.emit = true;
}
campfire.audio.Play();
Destroy(matchGUI);
have$$anonymous$$atches=false;
}
i'm getting an error with my array of particle systems saying implicit downcasting from component to particle system on line 71 the exact error being : InvalidCastException: Cannot cast from source type to destination type.
Your answer
Follow this Question
Related Questions
Cant get my gui in the quiwindow to load there functions... 1 Answer
Objects falling from the specific height randomly. 2 Answers
How to create a game object through a function 2 Answers
How to display previous players scores as well as current player score at the end of the game? 0 Answers
Spawning random terrain pieces 1 Answer