Hi ! in my code i am creating a shield power up … what i want when i collide(collect) RollerShoes powerup, then in my script OnCollitionEnter with Hardle my first block turns false if (rollerShoes== false); and second turns true if (rollerShoes==true), but whats happening OnCollition it executes both of the block… i don’t where is the problim
here is the code
#pragma strict
var powerUpSound: AudioClip;
var rollerShoes: boolean= false; //this is for the rollerShoes power up,when true power up is on
GetComponent(forwardmove);
GetComponent(Timer);
GetComponent(MagnetPwup);
GetComponent(PowerRun);
GetComponent(TouchJump);
function OnCollisionEnter(player: Collision)
{
//////////////Hardle////////////////
if(player.gameObject.tag=="Hardle")
{
if (rollerShoes== false); // for roller shoes power up
{
print("rollerShoes is On");
Application.LoadLevel(0);
// Timer.timer=false;
// forwardmove.flag1= false;
// MagnetPwup.magnet= false;
// PowerRun.shield=false;
// TouchJump.flag=false;
// TouchMovement.flag=false;
}
// }
if (rollerShoes==true)
{
Destroy(player.gameObject);
print("destroy");
yield WaitForSeconds(2);
rollerShoes=false;
}
}
else if(player.gameObject.tag=="Magnet")
{
audio.PlayOneShot(powerUpSound);
Destroy(player.gameObject);
MagnetPwup.magnet= true;
yield WaitForSeconds(12);
MagnetPwup.magnet= false;
}
else if(player.gameObject.tag=="PowerShield")
{
audio.PlayOneShot(powerUpSound);
Destroy(player.gameObject);
PowerRun.shield= true;
// Time.timeScale=2.0;
yield WaitForSeconds(12);
Time.timeScale=1.0;
PowerRun.shield= false;
}
else if (player.gameObject.tag=="RollerShoes")
{
Destroy(player.gameObject);
rollerShoes=true;
print("its true");
}
}