I’m trying to get a sprite to toggle between its on and off sprite (a ball that shoots a laser and a ball that doesn’t shoot a laser) at random intervals.
The problem is I don’t know how to get past sprite renderer. The problem is in my fixedupdate code.
var interval: float = 0.5f; //random time to turn off and on each laser generated
var rotationSpeed: float = 0.0f; //makes lasers rotate
var isLaserOn: boolean = true; //tests if our laser is on
var timeUntilNextToggle: float; //time to toggle to the next on/off state
function Start ()
{
timeUntilNextToggle = interval; //will set the time until the laser will toggle its state for the first time
}
//function Update ()
function FixedUpdate ()
{
//Decreases time until next toggle
timeUntilNextToggle -= Time.fixedDeltaTime;
//If time is 0 or less then the laser will toggle states
if (timeUntilNextToggle <= 0)
{
//sets the correct state of the laser
isLaserOn = !isLaserOn;
//if our laser is on the collider is activated, if it is off then there is no collider to interfere with the player
collider2D.enabled = isLaserOn;
//will switch between our two sprite images
// SpriteRenderer.sprite = ((SpriteRenderer)this.renderer);
var newSprite : Sprite;
GetComponent(SpriteRenderer).sprite = newSprite;
if (isLaserOn)
spriteRenderer.sprite = laserOnSprite;
else
spriteRenderer.sprite = laserOffSprite;
//resets time until next toggle variable since it has just been toggled
timeUntilNextToggle = interval;
}
//rotates our lasers around the z axis (set rotationspeed to 0 to disable in the inspector)
transform.RotateAround(transform.position, Vector3.forward, rotationSpeed * Time. fixedDeltaTime);
}