Hi,
I have declared my Vars as Numbers, but when I say If var 1 > var 2, go do something, the something does not happen!?
I have tried = and == but nothing seems to work.
If anyone could tell me what I am doing wrong, I would be greatful!
Here’s the AS:
//stop();
// Reset the comparison vars
var UserThrow:Number = 0;
var PCThrow:Number = 0;
// User controls - Left=rock Down=paper Right=scissors
var keyListener_obj:Object = new Object();
keyListener_obj.onKeyDown = function() {
switch (Key.getCode()) {
case Key.LEFT :
RPSUser_mc.getNextHighestDepth();
RPSUser_mc.gotoAndStop(2);
UserThrow = 1;
break;
case Key.DOWN :
RPSUser_mc.getNextHighestDepth();
RPSUser_mc.gotoAndStop(3);
UserThrow = 2;
break;
case Key.RIGHT :
RPSUser_mc.getNextHighestDepth();
RPSUser_mc.gotoAndStop(4);
UserThrow = 3;
break;
}
};
Key.addListener(keyListener_obj);
// This (thanks to Krilnon from Kirupa) sets the TimeOut for the user
var intervalID:Number = setInterval(killListener, 425);
function killListener():Void {
//trace("Killed");
clearInterval(intervalID);
Key.removeListener(keyListener_obj);
stop();
}
//PC Player contols
var PCPlayer = this.values = new Array(1, 2, 3);
//random number between 1 & 3
var player:Number = (PCPlayer[Math.floor(Math.random() * this.values.length)]);
// Lets see what the PC threw, and bring it to the correct frame in the MC
if (player = 1) {
//trace(player);
RPSPC_mc.getNextHighestDepth();
RPSPC_mc.gotoAndStop(2);
PCThrow = 1;
}
if (player = 2) {
//trace(player);
RPSPC_mc.getNextHighestDepth();
RPSPC_mc.gotoAndStop(3);
PCThrow = 2;
}
if (player = 3) {
//trace(player);
RPSPC_mc.getNextHighestDepth();
RPSPC_mc.gotoAndStop(4);
PCThrow = 3;
}
// Test to see who won
if (PCThrow < UserThrow) {
trace ("PC " & PCThrow);
trace ("You " & UserThrow);
trace("I win!"); **//ALWAYS COMES UP!!**
}
else if (PCThrow < UserThrow) {
trace ("PC " & PCThrow);
trace ("You " & UserThrow);
trace("You win!");
}
else if (PCThrow = UserThrow) {
trace ("PC " & PCThrow);
trace ("You " & UserThrow);
trace("TIE!");
}
//Will eventually use to add up scores
//var player_score:Number = 0;
//var pc_score:Number = 0;