i’m having a bit of trouble figuring how to reset my game. i have a button that will reset when clicked. anyone have any clue what i should do here?
{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
[SWF(width="800", height="600", backgroundColor="#E6FCFF")] // changing the width, height and bg color of the page
public class Main extends Sprite
{
// creating properties
private var _sittingDucks:Array = []; //always set your arrays with [] at the top
public var board:ScoreDisplay;
private var _waves:WaveBase;
public function Main()
{
// adding the background, and positioning it
var background:Background = new Background(); // instantiating
this.addChild(background); // addChild() adds to display list
background.x = 30; // positiioning left or right
background.y = 100; // positioning up or down
for(var i:uint = 0; i < 5; i++) // creates 5 clouds
{
//adding the first cloud, and positioning it
var clouds:Clouds = new Clouds(); // instantiating
this.addChild(clouds);// addChild() adds to display list
clouds.x = 130 + Math.random() * 600; //130 to 730
clouds.y = 230; // positioning 230px
clouds.speedX = Math.random() * 3; // adding random speeds between each cloud
clouds.width = clouds.height = 200 * Math.random()//randomly changes the clouds demensions
}
//adding the first cloud, and positioning it
var _waves:Waves = new Waves(); // instantiating
this.addChild(_waves);// addChild() adds to display list
_waves.x = 0;// positioning 0px
_waves.y = 510;// positioning 510px
_waves.speedX = Math.random() * 3;// adding random speeds between the background wave
for(var j:uint = 0; j < 8; j++)// creates 8 ducks
{
var ducks:Ducks = new Ducks();// instantiating
this.addChild(ducks);// addChild() adds to display list
ducks.x = 100 + j * 100;// positioning at 100px plus, spacing out the ducks at 100px
ducks.y = 475;// positioning 475px
_sittingDucks.push(ducks); //adding the ducks to the array
//object.addEventListener(Event.TYPE, Function);
ducks.addEventListener(MouseEvent.CLICK, ducksDestroy); // event which triggers the click function
}
//i tried adding the waves as a forloop like the clouds and ducks, but it never came out right, idk why?
var _waves2:Waves = new Waves();// instantiating
this.addChild(_waves2);// addChild() adds to display list
_waves2.x = 0;// positioning at 0px
_waves2.y = 520;// positioning at 520px
_waves2.speedX = Math.random() * 3;// adding random speeds between the foreground wave
var setting:ForeGround = new ForeGround();// instantiating
this.addChild(setting);// addChild() adds to display list
setting.x = 0;// positioning at 0px
setting.y = 50;// positioning at 50px
setting.width = 920;// setting the width of the curtains at 920px. it wasn't right as default
board = new ScoreDisplay();// instantiating
this.addChild(board);// addChild() adds to display list
board.x = 570;// positioning at 570px
board.y = 35;// positioning at 35px
board.scoreUpdate(8) //this displays the number of ducks from the start
}
private function ducksDestroy(event:MouseEvent):void
{
//store the ducks we clicked on in a new array
var clickedDuck:Ducks = Ducks(event.currentTarget);
//remove it from the ducks array
//find the address of the ducks we are removing
var index:uint = _sittingDucks.indexOf(clickedDuck);
//remove it from the array with splice
_sittingDucks.splice(index, 1);
//remove it from my document's display list
this.removeChild(clickedDuck);
board.scoreUpdate(_sittingDucks.length);
//update the score
//Check if all the ducks are gone
if (_sittingDucks.length == 0) //meaning, if the amount of ducks is zero, do the code below
{
//showing the you win sign after all the ducks are gone
var win:YouWonSignBase = new YouWonSignBase();// instantiating
this.addChild(win);// addChild() adds to display list
win.x = 380;// positioning at 380px
win.y = 300;// positioning at 300px
}
}
}
}