Section 1
//Card (BlackJack.Card)
package BlackJack {
import flash.display.*;
public dynamic class Card extends MovieClip {
public var spade_mc:MovieClip;
public var ic1_mc:MovieClip;
public function Card(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package BlackJack
Section 2
//GameStats (game.GameStats)
package game {
import flash.display.*;
import flash.text.*;
public class GameStats extends MovieClip {
public var computer_bags_txt:TextField;
public var player_score_txt:TextField;
public var player_bags_txt:TextField;
public var computer_score_txt:TextField;
public function set PlayerScore(_arg1:int):void{
player_score_txt.text = ("Player Score: " + _arg1);
}
public function set ComputerBags(_arg1:int):void{
computer_bags_txt.text = ("Computer Bags: " + _arg1);
}
public function set ComputerScore(_arg1:int):void{
computer_score_txt.text = ("Computer Score: " + _arg1);
}
public function set PlayerBags(_arg1:int):void{
player_bags_txt.text = ("Player Bags: " + _arg1);
}
}
}//package game
Section 3
//MovingCard (game.MovingCard)
package game {
import BlackJack.*;
import flash.display.*;
public class MovingCard extends MovieClip {
private var spades_game:Spades;
public var npc2_card:Card;
public var player_card:Card;
public var npc3_card:Card;
public var npc1_card:Card;
public function MovingCard(){
addFrameScript(0, frame1, 1, frame2, 20, frame21, 21, frame22, 40, frame41, 41, frame42, 60, frame61, 61, frame62, 80, frame81);
super();
}
function frame1(){
stop();
}
public function WinCards(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int):void{
spades_game.HideCards();
visible = true;
player_card.gotoAndStop(_arg1);
npc1_card.gotoAndStop(_arg2);
npc2_card.gotoAndStop(_arg3);
npc3_card.gotoAndStop(_arg4);
if (_arg5 == 0){
gotoAndPlay("player wins");
} else {
if (_arg5 == 1){
gotoAndPlay("npc 1 wins");
} else {
if (_arg5 == 2){
gotoAndPlay("npc 2 wins");
} else {
gotoAndPlay("npc 3 wins");
};
};
};
player_card.gotoAndStop(_arg1);
npc1_card.gotoAndStop(_arg2);
npc2_card.gotoAndStop(_arg3);
npc3_card.gotoAndStop(_arg4);
}
function frame61(){
stop();
}
function frame62(){
play();
}
function frame41(){
stop();
}
function frame2(){
play();
}
function frame22(){
play();
}
function frame42(){
play();
}
public function SetGame(_arg1:Spades):void{
spades_game = _arg1;
}
function frame81(){
stop();
}
function frame21(){
stop();
}
}
}//package game
Section 4
//PickBidAmount (game.PickBidAmount)
package game {
import flash.events.*;
import flash.media.*;
import flash.display.*;
public class PickBidAmount extends MovieClip {
public var bid_12_btn:SimpleButton;
public var bid_13_btn:SimpleButton;
public var bid_1_btn:SimpleButton;
public var bid_2_btn:SimpleButton;
public var bid_3_btn:SimpleButton;
public var bid_4_btn:SimpleButton;
public var bid_5_btn:SimpleButton;
public var bid_6_btn:SimpleButton;
public var bid_7_btn:SimpleButton;
public var bid_8_btn:SimpleButton;
public var bid_9_btn:SimpleButton;
private var spades_game:Spades;
public var bid_nil_btn:SimpleButton;
private var click_snd:Sound;
public var bid_10_btn:SimpleButton;
public var bid_11_btn:SimpleButton;
public function Bid9(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(9);
visible = false;
}
public function Bid8(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(8);
visible = false;
}
public function Bid10(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(10);
visible = false;
}
public function Bid12(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(12);
visible = false;
}
public function ShowPickBid():void{
visible = true;
}
public function Bid13(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(13);
visible = false;
}
public function SetSpadesGame(_arg1:Spades):void{
spades_game = _arg1;
click_snd = new Click();
bid_1_btn.addEventListener(MouseEvent.CLICK, Bid1);
bid_2_btn.addEventListener(MouseEvent.CLICK, Bid2);
bid_3_btn.addEventListener(MouseEvent.CLICK, Bid3);
bid_4_btn.addEventListener(MouseEvent.CLICK, Bid4);
bid_5_btn.addEventListener(MouseEvent.CLICK, Bid5);
bid_6_btn.addEventListener(MouseEvent.CLICK, Bid6);
bid_7_btn.addEventListener(MouseEvent.CLICK, Bid7);
bid_8_btn.addEventListener(MouseEvent.CLICK, Bid8);
bid_9_btn.addEventListener(MouseEvent.CLICK, Bid9);
bid_10_btn.addEventListener(MouseEvent.CLICK, Bid10);
bid_11_btn.addEventListener(MouseEvent.CLICK, Bid11);
bid_12_btn.addEventListener(MouseEvent.CLICK, Bid12);
bid_13_btn.addEventListener(MouseEvent.CLICK, Bid13);
bid_nil_btn.addEventListener(MouseEvent.CLICK, BidNil);
}
public function BidNil(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(0);
visible = false;
}
public function Bid2(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(2);
visible = false;
}
public function Bid3(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(3);
visible = false;
}
public function Bid4(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(4);
visible = false;
}
public function Bid5(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(5);
visible = false;
}
public function Bid6(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(6);
visible = false;
}
public function Bid7(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(7);
visible = false;
}
public function Bid1(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(1);
visible = false;
}
public function Bid11(_arg1:MouseEvent):void{
click_snd.play(0, 1);
spades_game.SetBidAmt(11);
visible = false;
}
}
}//package game
Section 5
//RoundResults (game.RoundResults)
package game {
import flash.events.*;
import flash.display.*;
import flash.text.*;
public class RoundResults extends MovieClip {
public var player_round_bags_txt:TextField;
public var computer_round_bags_txt:TextField;
public var player_total_bags_txt:TextField;
public var computer_total_bags_txt:TextField;
public var next_round_btn:SimpleButton;
private var spades_game:Spades;
public var computer_total_score_txt:TextField;
public var computer_round_score_txt:TextField;
public var player_null_mc:MovieClip;
public var player_total_score_txt:TextField;
public var player_round_score_txt:TextField;
public function RoundResults(){
this.visible = false;
next_round_btn.addEventListener(MouseEvent.CLICK, NextRound);
player_null_mc.visible = false;
}
public function NextRound(_arg1:MouseEvent):void{
visible = false;
spades_game.CallStartRound();
}
public function set Game(_arg1:Spades):void{
spades_game = _arg1;
}
public function DisplayResults(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:int, _arg9:Boolean, _arg10:int=1):void{
visible = true;
player_round_score_txt.text = ("Round Score: " + _arg1);
player_round_bags_txt.text = ("Round Bags: " + _arg2);
player_total_score_txt.text = ("Total Score: " + _arg3);
player_total_bags_txt.text = ("Total Bags: " + _arg4);
computer_round_score_txt.text = ("Round Score: " + _arg5);
computer_round_bags_txt.text = ("Round Bags: " + _arg6);
computer_total_score_txt.text = ("Total Score: " + _arg7);
computer_total_bags_txt.text = ("Total Bags: " + _arg8);
if (_arg9 == true){
player_null_mc.gotoAndStop(_arg10);
player_null_mc.visible = true;
} else {
player_null_mc.visible = false;
};
}
}
}//package game
Section 6
//Spades (game.Spades)
package game {
import flash.events.*;
import flash.media.*;
import BlackJack.*;
import flash.display.*;
import flash.net.*;
import flash.utils.*;
public class Spades extends MovieClip {
public var npc2_cards_mc:MovieClip;
public var player_card_13_mc:Card;
public var battleline_games_mc:MovieClip;
private var player_bags:int;// = 0
private var computer_bags:int;// = 0
public var player_card_3_mc:Card;
public var broken_spade_mc:MovieClip;
public var npc3_cards_mc:MovieClip;
private var tone_snd:Sound;
public var npc1_stats_mc:StatBox;
private var current_suit:int;
public var player_card_6_mc:Card;
public var moving_cards:MovingCard;
private var bell_snd:Sound;
public var play_game_btn:SimpleButton;
private var deck_array:Array;
public var player_card_11_mc:Card;
private var characters_played:int;// = 0
public var npc2_stats_mc:StatBox;
public var player_card_9_mc:Card;
private var spades_played:Boolean;// = false
public var player_card_1_mc:Card;
public var npc1_card_mc:Card;
public var npc2_card_mc:Card;
public var npc3_card_mc:Card;
private var npc3_card_array:Array;
public var npc3_stats_mc:StatBox;
private var dealer_num:int;// = -1
private var computer_score:int;// = 0
private var tricks_played:int;// = 0
private var spades_broken:Boolean;// = false
private var current_player:int;// = 0
public var player_card_4_mc:Card;
private var card_shuffle_snd:Sound;
private var total_bid:int;// = 0
public var your_turn_mc:MovieClip;
public var player_card_7_mc:Card;
private var thump_snd:Sound;
private var npc1_card_array:Array;
public var win_lose_mc:WinnerScreen;
public var player_card_12_mc:Card;
public var how_to_play_btn:SimpleButton;
public var loadbar_mc:MovieClip;
public var player_card_2_mc:Card;
private var characters_bid:int;// = 0
private var player_score:int;// = 0
private var player_card_array:Array;
public var player_card_mc:Card;
public var round_results_mc:RoundResults;
public var player_card_5_mc:Card;
public var player_stats_mc:StatBox;
public var npc1_cards_mc:MovieClip;
public var pick_bet_mc:PickBidAmount;
public var player_card_10_mc:Card;
private var card_flip_snd:Sound;
public var game_stats_mc:GameStats;
public var player_card_8_mc:Card;
private var players_turn:Boolean;// = false
private var npc2_card_array:Array;
static var CLUBS:int = 3;
static var HEARTS:int = 2;
static var SPADES:int = 1;
static var DIAMONDS:int = 4;
public function Spades(){
deck_array = new Array();
player_card_array = new Array();
npc1_card_array = new Array();
npc2_card_array = new Array();
npc3_card_array = new Array();
current_suit = HEARTS;
super();
addFrameScript(0, frame1, 1, frame2, 23, frame24, 24, frame25);
}
public function DealToAll():void{
while (deck_array.length >= 4) {
AddPlayerCard();
AddNPC1Card();
AddNPC2Card();
AddNPC3Card();
};
}
public function ClickPlayerCard13(_arg1:MouseEvent):void{
trace("ClickPlayerCard13");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_13_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("PlaySuit=" + GetSuit(player_card_13_mc.currentFrame)));
trace(("current_suit=" + current_suit));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_13_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
}
public function NPC1PlayCard():void{
trace("NPC1PlayCard");
var _local1:Boolean;
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int;
var _local7:int;
var _local8:int;
var _local9:int;
var _local10:int;
npc1_card_mc.visible = true;
card_flip_snd.play(0, 1);
if (characters_played == 0){
_local10 = GetLead(npc1_card_array);
current_suit = GetSuit(_local10);
RemoveCard(npc1_card_array, _local10);
npc1_card_mc.gotoAndStop(_local10);
if (npc1_card_array.length > 0){
npc1_cards_mc.gotoAndStop(npc1_card_array.length);
} else {
npc1_cards_mc.visible = false;
};
return;
};
_local2 = GetSuitCount(npc1_card_array, current_suit);
_local4 = GetSuitCount(npc3_card_array, current_suit);
_local6 = GetHighCard(npc1_card_array, current_suit);
if (_local6 == -1){
_local1 = false;
};
if (player_card_mc.visible == true){
_local9 = player_card_mc.currentFrame;
} else {
_local9 = GetHighCard(player_card_array, current_suit);
};
if (GetCardValue(_local9) > GetCardValue(_local6)){
_local1 = false;
};
if (npc2_card_mc.visible == true){
_local7 = npc2_card_mc.currentFrame;
} else {
_local7 = GetHighCard(npc2_card_array, current_suit);
};
if (GetCardValue(_local7) > GetCardValue(_local6)){
_local1 = false;
};
if (npc3_card_mc.visible == true){
_local8 = npc3_card_mc.currentFrame;
} else {
_local8 = GetHighCard(npc3_card_array, current_suit);
};
if (GetCardValue(_local8) > GetCardValue(_local6)){
_local1 = false;
};
if (((_local1) && (!((_local6 == -1))))){
_local10 = _local6;
RemoveCard(npc1_card_array, _local10);
npc1_card_mc.gotoAndStop(_local10);
} else {
_local10 = GetLowCard(npc1_card_array, current_suit);
RemoveCard(npc1_card_array, _local10);
npc1_card_mc.gotoAndStop(_local10);
};
if (GetSuit(_local10) == Spades.SPADES){
BreakSpades();
};
if (npc1_card_array.length > 0){
npc1_cards_mc.gotoAndStop(npc1_card_array.length);
} else {
npc1_cards_mc.visible = false;
};
}
public function NPC2PlayCard():void{
trace("NPC2PlayCard");
var _local1:Boolean;
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int;
var _local7:int;
var _local8:int;
var _local9:int;
var _local10:int;
npc2_card_mc.visible = true;
card_flip_snd.play(0, 1);
if (characters_played == 0){
_local10 = GetLead(npc2_card_array);
current_suit = GetSuit(_local10);
RemoveCard(npc2_card_array, _local10);
npc2_card_mc.gotoAndStop(_local10);
if (npc2_card_array.length > 0){
npc2_cards_mc.gotoAndStop(npc2_card_array.length);
} else {
npc2_cards_mc.visible = false;
};
return;
};
_local2 = GetSuitCount(npc1_card_array, current_suit);
_local3 = GetSuitCount(npc1_card_array, current_suit);
_local4 = GetSuitCount(npc3_card_array, current_suit);
_local7 = GetHighCard(npc2_card_array, current_suit);
if (_local7 == -1){
_local1 = false;
};
if (player_card_mc.visible == true){
_local9 = player_card_mc.currentFrame;
} else {
_local9 = GetHighCard(player_card_array, current_suit);
};
if (GetCardValue(_local9) > GetCardValue(_local7)){
_local1 = false;
};
if (npc1_card_mc.visible == true){
_local6 = npc1_card_mc.currentFrame;
} else {
_local6 = GetHighCard(npc1_card_array, current_suit);
};
if (GetCardValue(_local6) > GetCardValue(_local7)){
_local1 = false;
};
if (npc3_card_mc.visible == true){
_local8 = npc3_card_mc.currentFrame;
} else {
_local8 = GetHighCard(npc3_card_array, current_suit);
};
if (GetCardValue(_local8) > GetCardValue(_local7)){
_local1 = false;
};
if (((_local1) && (!((_local7 == -1))))){
_local10 = _local7;
RemoveCard(npc2_card_array, _local10);
npc2_card_mc.gotoAndStop(_local10);
} else {
_local10 = GetLowCard(npc2_card_array, current_suit);
RemoveCard(npc2_card_array, _local10);
npc2_card_mc.gotoAndStop(_local10);
};
if (GetSuit(_local10) == Spades.SPADES){
BreakSpades();
};
if (npc2_card_array.length > 0){
npc2_cards_mc.gotoAndStop(npc2_card_array.length);
} else {
npc2_cards_mc.visible = false;
};
}
public function NPC3PlayCard():void{
trace("NPC3PlayCard");
var _local1:Boolean;
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int;
var _local7:int;
var _local8:int;
var _local9:int;
var _local10:int;
npc3_card_mc.visible = true;
card_flip_snd.play(0, 1);
if (characters_played == 0){
_local10 = GetLead(npc3_card_array);
current_suit = GetSuit(_local10);
RemoveCard(npc3_card_array, _local10);
npc3_card_mc.gotoAndStop(_local10);
if (npc3_card_array.length > 0){
npc3_cards_mc.gotoAndStop(npc3_card_array.length);
} else {
npc3_cards_mc.visible = false;
};
return;
};
_local2 = GetSuitCount(npc1_card_array, current_suit);
_local3 = GetSuitCount(npc1_card_array, current_suit);
_local4 = GetSuitCount(npc3_card_array, current_suit);
_local8 = GetHighCard(npc3_card_array, current_suit);
if (_local8 == -1){
_local1 = false;
};
if (player_card_mc.visible == true){
_local9 = player_card_mc.currentFrame;
} else {
_local9 = GetHighCard(player_card_array, current_suit);
};
if (GetCardValue(_local9) > GetCardValue(_local8)){
_local1 = false;
};
if (npc1_card_mc.visible == true){
_local6 = npc1_card_mc.currentFrame;
} else {
_local6 = GetHighCard(npc1_card_array, current_suit);
};
if (GetCardValue(_local6) > GetCardValue(_local8)){
_local1 = false;
};
if (npc2_card_mc.visible == true){
_local7 = npc2_card_mc.currentFrame;
} else {
_local7 = GetHighCard(npc2_card_array, current_suit);
};
if (GetCardValue(_local7) > GetCardValue(_local8)){
_local1 = false;
};
if (((_local1) && (!((_local8 == -1))))){
_local10 = _local8;
RemoveCard(npc3_card_array, _local10);
npc3_card_mc.gotoAndStop(_local10);
} else {
_local10 = GetLowCard(npc3_card_array, current_suit);
RemoveCard(npc3_card_array, _local10);
npc3_card_mc.gotoAndStop(_local10);
};
if (GetSuit(_local10) == Spades.SPADES){
BreakSpades();
};
if (npc3_card_array.length > 0){
npc3_cards_mc.gotoAndStop(npc3_card_array.length);
} else {
npc3_cards_mc.visible = false;
};
}
public function HideCards():void{
player_card_mc.visible = false;
npc1_card_mc.visible = false;
npc2_card_mc.visible = false;
npc3_card_mc.visible = false;
}
public function WhoWon():int{
var _local1:int = player_card_mc.currentFrame;
var _local2:int = npc1_card_mc.currentFrame;
var _local3:int = npc2_card_mc.currentFrame;
var _local4:int = npc3_card_mc.currentFrame;
if ((((((GetCardValue(_local1) > GetCardValue(_local2))) && ((GetCardValue(_local1) > GetCardValue(_local3))))) && ((GetCardValue(_local1) > GetCardValue(_local4))))){
return (0);
};
if ((((((GetCardValue(_local2) > GetCardValue(_local1))) && ((GetCardValue(_local2) > GetCardValue(_local3))))) && ((GetCardValue(_local2) > GetCardValue(_local4))))){
return (1);
};
if ((((((GetCardValue(_local3) > GetCardValue(_local1))) && ((GetCardValue(_local3) > GetCardValue(_local2))))) && ((GetCardValue(_local3) > GetCardValue(_local4))))){
return (2);
};
return (3);
}
public function GetHighCard(_arg1:Array, _arg2:int):int{
var _local3:int = GetSuitCount(_arg1, _arg2);
var _local4:int;
var _local5:int;
if (_local3 > 0){
trace(("suit_count=" + _local3));
_local4 = 0;
while (_local4 < _arg1.length) {
if (GetSuit(_arg1[_local4]) == _arg2){
if (_arg1[_local4] > _local5){
_local5 = _arg1[_local4];
};
};
_local4++;
};
trace(("high_card=" + _local5));
return (_local5);
//unresolved jump
};
trace("suit count is 0");
trace(("cards=" + _arg1));
_local3 = GetSuitCount(_arg1, SPADES);
if (_local3 > 0){
_local4 = 0;
while (_local4 < _arg1.length) {
if (GetSuit(_arg1[_local4]) == SPADES){
if (((_arg1[_local4] - 1) % 13) > ((_local5 - 1) % 13)){
_local5 = _arg1[_local4];
};
};
_local4++;
};
return (_local5);
//unresolved jump
};
return (-1);
}
public function StartTrick(_arg1:TimerEvent):void{
trace("StartTrick");
characters_played = 0;
trace("call 6");
CallDelay(NextCharacter, 1000);
}
public function ClickPlayerCard4(_arg1:MouseEvent):void{
trace("ClickPlayerCard4");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_4_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("PlaySuit=" + GetSuit(player_card_4_mc.currentFrame)));
trace(("current_suit=" + current_suit));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_4_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_4_mc.currentFrame);
if (player_card_5_mc.visible == true){
player_card_4_mc.gotoAndStop(player_card_5_mc.currentFrame);
if (player_card_6_mc.visible == true){
player_card_5_mc.gotoAndStop(player_card_6_mc.currentFrame);
if (player_card_7_mc.visible == true){
player_card_6_mc.gotoAndStop(player_card_7_mc.currentFrame);
if (player_card_8_mc.visible == true){
player_card_7_mc.gotoAndStop(player_card_8_mc.currentFrame);
if (player_card_9_mc.visible == true){
player_card_8_mc.gotoAndStop(player_card_9_mc.currentFrame);
if (player_card_10_mc.visible == true){
player_card_9_mc.gotoAndStop(player_card_10_mc.currentFrame);
if (player_card_11_mc.visible == true){
player_card_10_mc.gotoAndStop(player_card_11_mc.currentFrame);
if (player_card_12_mc.visible == true){
player_card_11_mc.gotoAndStop(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
} else {
player_card_11_mc.visible = false;
};
} else {
player_card_10_mc.visible = false;
};
} else {
player_card_9_mc.visible = false;
};
} else {
player_card_8_mc.visible = false;
};
} else {
player_card_7_mc.visible = false;
};
} else {
player_card_6_mc.visible = false;
};
} else {
player_card_5_mc.visible = false;
};
} else {
player_card_4_mc.visible = false;
};
}
public function ClickPlayerCard6(_arg1:MouseEvent):void{
trace("ClickPlayerCard6");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_6_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("PlaySuit=" + GetSuit(player_card_6_mc.currentFrame)));
trace(("current_suit=" + current_suit));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_6_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_6_mc.currentFrame);
if (player_card_7_mc.visible == true){
player_card_6_mc.gotoAndStop(player_card_7_mc.currentFrame);
if (player_card_8_mc.visible == true){
player_card_7_mc.gotoAndStop(player_card_8_mc.currentFrame);
if (player_card_9_mc.visible == true){
player_card_8_mc.gotoAndStop(player_card_9_mc.currentFrame);
if (player_card_10_mc.visible == true){
player_card_9_mc.gotoAndStop(player_card_10_mc.currentFrame);
if (player_card_11_mc.visible == true){
player_card_10_mc.gotoAndStop(player_card_11_mc.currentFrame);
if (player_card_12_mc.visible == true){
player_card_11_mc.gotoAndStop(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
} else {
player_card_11_mc.visible = false;
};
} else {
player_card_10_mc.visible = false;
};
} else {
player_card_9_mc.visible = false;
};
} else {
player_card_8_mc.visible = false;
};
} else {
player_card_7_mc.visible = false;
};
} else {
player_card_6_mc.visible = false;
};
}
public function ClickPlayerCard1(_arg1:MouseEvent):void{
trace("ClickPlayerCard1");
if (players_turn != true){
trace("players_turn is false");
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_1_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("current_suit=" + current_suit));
trace(("PlaySuit=" + GetSuit(player_card_1_mc.currentFrame)));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_1_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_1_mc.currentFrame);
if (player_card_2_mc.visible == true){
player_card_1_mc.gotoAndStop(player_card_2_mc.currentFrame);
if (player_card_3_mc.visible == true){
player_card_2_mc.gotoAndStop(player_card_3_mc.currentFrame);
if (player_card_4_mc.visible == true){
player_card_3_mc.gotoAndStop(player_card_4_mc.currentFrame);
if (player_card_5_mc.visible == true){
player_card_4_mc.gotoAndStop(player_card_5_mc.currentFrame);
if (player_card_6_mc.visible == true){
player_card_5_mc.gotoAndStop(player_card_6_mc.currentFrame);
if (player_card_7_mc.visible == true){
player_card_6_mc.gotoAndStop(player_card_7_mc.currentFrame);
if (player_card_8_mc.visible == true){
player_card_7_mc.gotoAndStop(player_card_8_mc.currentFrame);
if (player_card_9_mc.visible == true){
player_card_8_mc.gotoAndStop(player_card_9_mc.currentFrame);
if (player_card_10_mc.visible == true){
player_card_9_mc.gotoAndStop(player_card_10_mc.currentFrame);
if (player_card_11_mc.visible == true){
player_card_10_mc.gotoAndStop(player_card_11_mc.currentFrame);
if (player_card_12_mc.visible == true){
player_card_11_mc.gotoAndStop(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
} else {
player_card_11_mc.visible = false;
};
} else {
player_card_10_mc.visible = false;
};
} else {
player_card_9_mc.visible = false;
};
} else {
player_card_8_mc.visible = false;
};
} else {
player_card_7_mc.visible = false;
};
} else {
player_card_6_mc.visible = false;
};
} else {
player_card_5_mc.visible = false;
};
} else {
player_card_4_mc.visible = false;
};
} else {
player_card_3_mc.visible = false;
};
} else {
player_card_2_mc.visible = false;
};
} else {
player_card_1_mc.visible = false;
};
}
public function ClickPlayerCard2(_arg1:MouseEvent):void{
trace("ClickPlayerCard2");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_2_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("current_suit=" + current_suit));
trace(("PlaySuit=" + GetSuit(player_card_2_mc.currentFrame)));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_2_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_2_mc.currentFrame);
if (player_card_3_mc.visible == true){
player_card_2_mc.gotoAndStop(player_card_3_mc.currentFrame);
if (player_card_4_mc.visible == true){
player_card_3_mc.gotoAndStop(player_card_4_mc.currentFrame);
if (player_card_5_mc.visible == true){
player_card_4_mc.gotoAndStop(player_card_5_mc.currentFrame);
if (player_card_6_mc.visible == true){
player_card_5_mc.gotoAndStop(player_card_6_mc.currentFrame);
if (player_card_7_mc.visible == true){
player_card_6_mc.gotoAndStop(player_card_7_mc.currentFrame);
if (player_card_8_mc.visible == true){
player_card_7_mc.gotoAndStop(player_card_8_mc.currentFrame);
if (player_card_9_mc.visible == true){
player_card_8_mc.gotoAndStop(player_card_9_mc.currentFrame);
if (player_card_10_mc.visible == true){
player_card_9_mc.gotoAndStop(player_card_10_mc.currentFrame);
if (player_card_11_mc.visible == true){
player_card_10_mc.gotoAndStop(player_card_11_mc.currentFrame);
if (player_card_12_mc.visible == true){
player_card_11_mc.gotoAndStop(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
} else {
player_card_11_mc.visible = false;
};
} else {
player_card_10_mc.visible = false;
};
} else {
player_card_9_mc.visible = false;
};
} else {
player_card_8_mc.visible = false;
};
} else {
player_card_7_mc.visible = false;
};
} else {
player_card_6_mc.visible = false;
};
} else {
player_card_5_mc.visible = false;
};
} else {
player_card_4_mc.visible = false;
};
} else {
player_card_3_mc.visible = false;
};
} else {
player_card_2_mc.visible = false;
};
}
public function InitGame():void{
card_shuffle_snd = new CardShuffle();
card_flip_snd = new CardFlip();
bell_snd = new Bell();
thump_snd = new Thump();
tone_snd = new Tone();
moving_cards.visible = false;
moving_cards.SetGame(this);
npc1_cards_mc.gotoAndStop(13);
npc2_cards_mc.gotoAndStop(13);
npc3_cards_mc.gotoAndStop(13);
npc1_card_mc.visible = false;
npc2_card_mc.visible = false;
npc3_card_mc.visible = false;
player_card_mc.visible = false;
ResetDeck();
DealToAll();
pick_bet_mc.SetSpadesGame(this);
round_results_mc.Game = this;
win_lose_mc.Game = this;
pick_bet_mc.visible = false;
player_stats_mc.Dealer();
player_card_1_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard1);
player_card_2_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard2);
player_card_3_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard3);
player_card_4_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard4);
player_card_5_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard5);
player_card_6_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard6);
player_card_7_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard7);
player_card_8_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard8);
player_card_9_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard9);
player_card_10_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard10);
player_card_11_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard11);
player_card_12_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard12);
player_card_13_mc.addEventListener(MouseEvent.CLICK, ClickPlayerCard13);
how_to_play_btn.addEventListener(MouseEvent.CLICK, HowToPlay);
trace("call 5");
StartRound(null);
}
public function ClickPlayerCard7(_arg1:MouseEvent):void{
trace("ClickPlayerCard7");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_7_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("PlaySuit=" + GetSuit(player_card_7_mc.currentFrame)));
trace(("current_suit=" + current_suit));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_7_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_7_mc.currentFrame);
if (player_card_8_mc.visible == true){
player_card_7_mc.gotoAndStop(player_card_8_mc.currentFrame);
if (player_card_9_mc.visible == true){
player_card_8_mc.gotoAndStop(player_card_9_mc.currentFrame);
if (player_card_10_mc.visible == true){
player_card_9_mc.gotoAndStop(player_card_10_mc.currentFrame);
if (player_card_11_mc.visible == true){
player_card_10_mc.gotoAndStop(player_card_11_mc.currentFrame);
if (player_card_12_mc.visible == true){
player_card_11_mc.gotoAndStop(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
} else {
player_card_11_mc.visible = false;
};
} else {
player_card_10_mc.visible = false;
};
} else {
player_card_9_mc.visible = false;
};
} else {
player_card_8_mc.visible = false;
};
} else {
player_card_7_mc.visible = false;
};
}
public function ClickPlayerCard9(_arg1:MouseEvent):void{
trace("ClickPlayerCard9");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_9_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("PlaySuit=" + GetSuit(player_card_9_mc.currentFrame)));
trace(("current_suit=" + current_suit));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_9_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_9_mc.currentFrame);
if (player_card_10_mc.visible == true){
player_card_9_mc.gotoAndStop(player_card_10_mc.currentFrame);
if (player_card_11_mc.visible == true){
player_card_10_mc.gotoAndStop(player_card_11_mc.currentFrame);
if (player_card_12_mc.visible == true){
player_card_11_mc.gotoAndStop(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
} else {
player_card_11_mc.visible = false;
};
} else {
player_card_10_mc.visible = false;
};
} else {
player_card_9_mc.visible = false;
};
}
public function ClickPlayerCard3(_arg1:MouseEvent):void{
trace("ClickPlayerCard3");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_3_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("current_suit=" + current_suit));
trace(("PlaySuit=" + GetSuit(player_card_3_mc.currentFrame)));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_3_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_3_mc.currentFrame);
if (player_card_4_mc.visible == true){
player_card_3_mc.gotoAndStop(player_card_4_mc.currentFrame);
if (player_card_5_mc.visible == true){
player_card_4_mc.gotoAndStop(player_card_5_mc.currentFrame);
if (player_card_6_mc.visible == true){
player_card_5_mc.gotoAndStop(player_card_6_mc.currentFrame);
if (player_card_7_mc.visible == true){
player_card_6_mc.gotoAndStop(player_card_7_mc.currentFrame);
if (player_card_8_mc.visible == true){
player_card_7_mc.gotoAndStop(player_card_8_mc.currentFrame);
if (player_card_9_mc.visible == true){
player_card_8_mc.gotoAndStop(player_card_9_mc.currentFrame);
if (player_card_10_mc.visible == true){
player_card_9_mc.gotoAndStop(player_card_10_mc.currentFrame);
if (player_card_11_mc.visible == true){
player_card_10_mc.gotoAndStop(player_card_11_mc.currentFrame);
if (player_card_12_mc.visible == true){
player_card_11_mc.gotoAndStop(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
} else {
player_card_11_mc.visible = false;
};
} else {
player_card_10_mc.visible = false;
};
} else {
player_card_9_mc.visible = false;
};
} else {
player_card_8_mc.visible = false;
};
} else {
player_card_7_mc.visible = false;
};
} else {
player_card_6_mc.visible = false;
};
} else {
player_card_5_mc.visible = false;
};
} else {
player_card_4_mc.visible = false;
};
} else {
player_card_3_mc.visible = false;
};
}
public function ClickPlayerCard8(_arg1:MouseEvent):void{
trace("ClickPlayerCard8");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_8_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("PlaySuit=" + GetSuit(player_card_8_mc.currentFrame)));
trace(("current_suit=" + current_suit));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_8_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_8_mc.currentFrame);
if (player_card_9_mc.visible == true){
player_card_8_mc.gotoAndStop(player_card_9_mc.currentFrame);
if (player_card_10_mc.visible == true){
player_card_9_mc.gotoAndStop(player_card_10_mc.currentFrame);
if (player_card_11_mc.visible == true){
player_card_10_mc.gotoAndStop(player_card_11_mc.currentFrame);
if (player_card_12_mc.visible == true){
player_card_11_mc.gotoAndStop(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
} else {
player_card_11_mc.visible = false;
};
} else {
player_card_10_mc.visible = false;
};
} else {
player_card_9_mc.visible = false;
};
} else {
player_card_8_mc.visible = false;
};
}
public function FixSpades():void{
spades_broken = false;
broken_spade_mc.gotoAndStop(1);
}
public function ClickPlayerCard5(_arg1:MouseEvent):void{
trace("ClickPlayerCard5");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_5_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("PlaySuit=" + GetSuit(player_card_5_mc.currentFrame)));
trace(("current_suit=" + current_suit));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_5_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_5_mc.currentFrame);
if (player_card_6_mc.visible == true){
player_card_5_mc.gotoAndStop(player_card_6_mc.currentFrame);
if (player_card_7_mc.visible == true){
player_card_6_mc.gotoAndStop(player_card_7_mc.currentFrame);
if (player_card_8_mc.visible == true){
player_card_7_mc.gotoAndStop(player_card_8_mc.currentFrame);
if (player_card_9_mc.visible == true){
player_card_8_mc.gotoAndStop(player_card_9_mc.currentFrame);
if (player_card_10_mc.visible == true){
player_card_9_mc.gotoAndStop(player_card_10_mc.currentFrame);
if (player_card_11_mc.visible == true){
player_card_10_mc.gotoAndStop(player_card_11_mc.currentFrame);
if (player_card_12_mc.visible == true){
player_card_11_mc.gotoAndStop(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
} else {
player_card_11_mc.visible = false;
};
} else {
player_card_10_mc.visible = false;
};
} else {
player_card_9_mc.visible = false;
};
} else {
player_card_8_mc.visible = false;
};
} else {
player_card_7_mc.visible = false;
};
} else {
player_card_6_mc.visible = false;
};
} else {
player_card_5_mc.visible = false;
};
}
public function AddNPC1Card():void{
npc1_card_array.push(deck_array.pop());
npc1_cards_mc.gotoAndStop(npc1_card_array.length);
npc1_card_array = npc1_card_array.sort();
}
public function StartBid(_arg1:TimerEvent):void{
trace("StartBid");
var _local2:int;
trace(("current_player=" + current_player));
if (current_player == 0){
players_turn = false;
your_turn_mc.gotoAndStop(1);
pick_bet_mc.visible = true;
current_player++;
return;
};
if (current_player == 1){
_local2 = SimpleBidCount(npc1_card_array);
if (_local2 <= 0){
_local2 = 1;
};
total_bid = (total_bid + _local2);
tone_snd.play();
npc1_stats_mc.SetBid(_local2);
} else {
if (current_player == 2){
_local2 = SimpleBidCount(npc2_card_array);
if (_local2 <= 0){
_local2 = 1;
};
total_bid = (total_bid + _local2);
tone_snd.play();
npc2_stats_mc.SetBid(_local2);
} else {
_local2 = SimpleBidCount(npc3_card_array);
if (_local2 > (13 - total_bid)){
_local2 = (13 - total_bid);
};
if (_local2 <= 0){
_local2 = 1;
};
tone_snd.play();
npc3_stats_mc.SetBid(_local2);
};
};
characters_bid++;
if (characters_bid == 4){
current_player = dealer_num;
trace("call 1");
CallDelay(NextCharacter, 1000);
} else {
current_player++;
if (current_player == 4){
current_player = 0;
};
CallDelay(StartBid, 1000);
};
}
public function NextCharacter(_arg1:TimerEvent):void{
trace(((("NextCharacter current_player=" + current_player) + " characters_played=") + characters_played));
if (current_player == 0){
players_turn = true;
your_turn_mc.gotoAndPlay(2);
return;
};
if (current_player == 1){
NPC1PlayCard();
} else {
if (current_player == 2){
NPC2PlayCard();
} else {
if (current_player == 3){
NPC3PlayCard();
};
};
};
current_player++;
if (current_player >= 4){
current_player = 0;
};
characters_played++;
if (characters_played >= 4){
CallDelay(EndTrick, 1000);
} else {
trace("call 2");
CallDelay(NextCharacter, 1000);
};
}
public function BattleLineGames(_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.battlelinegames.com"), "_blank");
}
public function AddNPC3Card():void{
npc3_card_array.push(deck_array.pop());
npc3_cards_mc.gotoAndStop(npc3_card_array.length);
npc3_card_array = npc3_card_array.sort();
}
public function PlayGame(_arg1:MouseEvent):void{
gotoAndStop("game");
}
public function GetSuit(_arg1:int):int{
if (_arg1 < 14){
return (CLUBS);
};
if (_arg1 < 27){
return (DIAMONDS);
};
if (_arg1 < 40){
return (SPADES);
};
return (HEARTS);
}
function frame1(){
stop();
this.addEventListener(Event.ENTER_FRAME, LoadFunction);
}
public function GetSuitCount(_arg1:Array, _arg2:int):int{
var _local3:int;
var _local4:int;
while (_local4 < _arg1.length) {
if (GetSuit(_arg1[_local4]) == _arg2){
_local3++;
};
_local4++;
};
return (_local3);
}
public function SetBidAmt(_arg1:int):void{
total_bid = (total_bid + _arg1);
player_stats_mc.SetBid(_arg1);
characters_bid++;
if (characters_bid < 4){
CallDelay(StartBid, 1000);
} else {
trace("call 4");
CallDelay(NextCharacter, 1000);
};
}
public function EndTrick(_arg1:TimerEvent):void{
trace("EndTrick");
var _local2:int = WhoWon();
moving_cards.WinCards(player_card_mc.currentFrame, npc1_card_mc.currentFrame, npc2_card_mc.currentFrame, npc3_card_mc.currentFrame, _local2);
if (_local2 == 0){
player_stats_mc.TakeTrick();
bell_snd.play(0, 1);
} else {
if (_local2 == 1){
npc1_stats_mc.TakeTrick();
thump_snd.play(0, 1);
} else {
if (_local2 == 2){
npc2_stats_mc.TakeTrick();
bell_snd.play(0, 1);
} else {
npc3_stats_mc.TakeTrick();
thump_snd.play(0, 1);
};
};
};
current_player = _local2;
tricks_played++;
if (tricks_played >= 13){
trace("START NEW ROUND");
CallDelay(EndRound, 500);
} else {
CallDelay(StartTrick, 1000);
};
}
public function CallStartRound():void{
CallDelay(StartRound, 200);
}
public function GetLowCard(_arg1:Array, _arg2:int):int{
var _local3:int = GetSuitCount(_arg1, _arg2);
var _local4:int;
var _local5 = 999;
if (_arg1.length == 1){
return (_arg1[0]);
};
if (_local3 > 0){
_local4 = 0;
while (_local4 < _arg1.length) {
if (GetSuit(_arg1[_local4]) == _arg2){
if (_arg1[_local4] < _local5){
_local5 = _arg1[_local4];
};
};
_local4++;
};
if (_local5 == 999){
trace("LOW CARD IS 999???????????????????");
_local5 = _arg1[0];
};
return (_local5);
//unresolved jump
};
_local4 = 0;
while (_local4 < _arg1.length) {
if (GetSuit(_arg1[_local4]) != SPADES){
if (((_arg1[_local4] - 1) % 13) < ((_local5 - 1) % 13)){
_local5 = _arg1[_local4];
};
};
_local4++;
};
if (_local5 == 999){
trace("LOW CARD IS 999???????????????????");
_local5 = _arg1[0];
};
return (_local5);
}
public function SimpleBidCount(_arg1:Array):int{
var _local2:int;
var _local3:int;
var _local4:int;
while (_local4 < _arg1.length) {
_local2 = _arg1[_local4];
if ((((((((((((((_local2 == 12)) || ((_local2 == 13)))) || ((_local2 == 25)))) || ((_local2 == 26)))) || ((_local2 == 51)))) || ((_local2 == 52)))) || ((((_local2 >= 33)) && ((_local2 <= 39)))))){
_local3++;
};
_local4++;
};
if (_local3 == 0){
_local3 = 1;
};
return (_local3);
}
public function ResetDeck():void{
var _local3:int;
player_card_1_mc.visible = false;
player_card_2_mc.visible = false;
player_card_3_mc.visible = false;
player_card_4_mc.visible = false;
player_card_5_mc.visible = false;
player_card_6_mc.visible = false;
player_card_7_mc.visible = false;
player_card_8_mc.visible = false;
player_card_9_mc.visible = false;
player_card_10_mc.visible = false;
player_card_11_mc.visible = false;
player_card_12_mc.visible = false;
player_card_13_mc.visible = false;
while (deck_array.length > 0) {
deck_array.pop();
};
while (player_card_array.length > 0) {
player_card_array.pop();
};
while (npc1_card_array.length > 0) {
npc1_card_array.pop();
};
while (npc2_card_array.length > 0) {
npc2_card_array.pop();
};
while (npc3_card_array.length > 0) {
npc3_card_array.pop();
};
var _local1:int;
var _local2:Boolean;
while (deck_array.length <= 52) {
_local1 = Math.ceil((Math.random() * 52));
_local2 = false;
_local3 = 0;
while (_local3 < deck_array.length) {
if (deck_array[_local3] == _local1){
_local2 = true;
break;
};
_local3++;
};
if (_local2 == false){
deck_array.push(_local1);
if (deck_array.length == 52){
break;
};
};
};
}
function frame2(){
play();
}
function frame24(){
stop();
play_game_btn.addEventListener(MouseEvent.CLICK, PlayGame);
battleline_games_mc.addEventListener(MouseEvent.CLICK, BattleLineGames);
}
function frame25(){
stop();
InitGame();
}
public function StartRound(_arg1:TimerEvent):void{
trace("StartRound");
card_shuffle_snd.play(0, 1);
if (characters_played == 0){
};
moving_cards.visible = false;
moving_cards.SetGame(this);
npc1_cards_mc.gotoAndStop(13);
npc2_cards_mc.gotoAndStop(13);
npc3_cards_mc.gotoAndStop(13);
npc1_cards_mc.visible = true;
npc2_cards_mc.visible = true;
npc3_cards_mc.visible = true;
npc1_card_mc.visible = false;
npc2_card_mc.visible = false;
npc3_card_mc.visible = false;
player_card_mc.visible = false;
player_stats_mc.ClearBid();
npc1_stats_mc.ClearBid();
npc2_stats_mc.ClearBid();
npc3_stats_mc.ClearBid();
player_stats_mc.ClearTaken();
npc1_stats_mc.ClearTaken();
npc2_stats_mc.ClearTaken();
npc3_stats_mc.ClearTaken();
ResetDeck();
DealToAll();
dealer_num++;
if (dealer_num == 4){
dealer_num = 0;
};
if (dealer_num == 0){
player_stats_mc.Dealer();
} else {
if (dealer_num == 1){
npc1_stats_mc.Dealer();
} else {
if (dealer_num == 2){
npc2_stats_mc.Dealer();
} else {
npc3_stats_mc.Dealer();
};
};
};
current_player = dealer_num;
characters_played = 0;
tricks_played = 0;
total_bid = 0;
FixSpades();
characters_bid = 0;
trace("CALL START BID");
CallDelay(StartBid, 200);
}
public function PlayCard(_arg1:int):void{
trace("PlayCard");
if (characters_played == 0){
current_suit = GetSuit(_arg1);
};
if (GetSuit(_arg1) == Spades.SPADES){
BreakSpades();
};
card_flip_snd.play(0, 1);
player_card_mc.visible = true;
player_card_mc.gotoAndStop(_arg1);
players_turn = false;
your_turn_mc.gotoAndStop(1);
current_player++;
characters_played++;
if (characters_played >= 4){
CallDelay(EndTrick, 1000);
} else {
trace("call 3");
CallDelay(NextCharacter, 1000);
};
}
public function PlayerHasSuit(_arg1:int):Boolean{
if ((((((((((((((((((((((((((((_arg1 == GetSuit(player_card_1_mc.currentFrame))) && ((player_card_1_mc.visible == true)))) || ((((_arg1 == GetSuit(player_card_2_mc.currentFrame))) && ((player_card_2_mc.visible == true)))))) || ((((_arg1 == GetSuit(player_card_3_mc.currentFrame))) && ((player_card_3_mc.visible == true)))))) || ((((_arg1 == GetSuit(player_card_4_mc.currentFrame))) && ((player_card_4_mc.visible == true)))))) || ((((_arg1 == GetSuit(player_card_5_mc.currentFrame))) && ((player_card_5_mc.visible == true)))))) || ((((_arg1 == GetSuit(player_card_6_mc.currentFrame))) && ((player_card_6_mc.visible == true)))))) || ((((_arg1 == GetSuit(player_card_7_mc.currentFrame))) && ((player_card_7_mc.visible == true)))))) || ((((_arg1 == GetSuit(player_card_8_mc.currentFrame))) && ((player_card_8_mc.visible == true)))))) || ((((_arg1 == GetSuit(player_card_9_mc.currentFrame))) && ((player_card_9_mc.visible == true)))))) || ((((_arg1 == GetSuit(player_card_10_mc.currentFrame))) && ((player_card_10_mc.visible == true)))))) || ((((_arg1 == GetSuit(player_card_11_mc.currentFrame))) && ((player_card_11_mc.visible == true)))))) || ((((_arg1 == GetSuit(player_card_12_mc.currentFrame))) && ((player_card_12_mc.visible == true)))))) || ((((_arg1 == GetSuit(player_card_13_mc.currentFrame))) && ((player_card_13_mc.visible == true)))))){
trace("PLAYER HAS SUIT");
trace(("CARD 1=" + GetSuit(player_card_1_mc.currentFrame)));
trace(("CARD 2=" + GetSuit(player_card_2_mc.currentFrame)));
trace(("CARD 3=" + GetSuit(player_card_3_mc.currentFrame)));
trace(("CARD 4=" + GetSuit(player_card_4_mc.currentFrame)));
trace(("CARD 5=" + GetSuit(player_card_5_mc.currentFrame)));
trace(("CARD 6=" + GetSuit(player_card_6_mc.currentFrame)));
trace(("CARD 7=" + GetSuit(player_card_7_mc.currentFrame)));
trace(("CARD 8=" + GetSuit(player_card_8_mc.currentFrame)));
trace(("CARD 9=" + GetSuit(player_card_9_mc.currentFrame)));
trace(("CARD 10=" + GetSuit(player_card_10_mc.currentFrame)));
trace(("CARD 11=" + GetSuit(player_card_11_mc.currentFrame)));
trace(("CARD 12=" + GetSuit(player_card_12_mc.currentFrame)));
trace(("CARD 13=" + GetSuit(player_card_13_mc.currentFrame)));
return (true);
};
return (false);
}
public function HowToPlay(_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.icardgames.com/HowToPlaySpades.html"), "_blank");
}
public function CallDelay(_arg1:Function, _arg2:int):void{
trace("CallDelay");
var _local3:Timer = new Timer(_arg2, 1);
_local3.addEventListener(TimerEvent.TIMER, _arg1);
_local3.start();
}
public function EndRound(_arg1:TimerEvent):void{
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int = (player_stats_mc.Bid + npc2_stats_mc.Bid);
var _local7:int = (player_stats_mc.Taken + npc2_stats_mc.Taken);
var _local8:Boolean;
var _local9 = 1;
if (player_stats_mc.Bid == 0){
_local8 = true;
if (player_stats_mc.Taken == 0){
_local9 = 1;
_local3 = (_local3 + 100);
} else {
_local9 = 2;
_local3 = (_local3 - 100);
};
};
if (_local6 <= _local7){
_local2 = (_local7 - _local6);
player_bags = (player_bags + _local2);
_local3 = (_local3 + ((_local6 * 10) + _local2));
player_score = (player_score + _local3);
if (player_bags >= 10){
player_bags = (player_bags - 10);
player_score = (player_score - 100);
};
} else {
_local3 = (_local3 + -((_local6 * 10)));
_local2 = 0;
player_score = (player_score + _local3);
};
game_stats_mc.PlayerBags = player_bags;
game_stats_mc.PlayerScore = player_score;
var _local10:int = (npc1_stats_mc.Bid + npc3_stats_mc.Bid);
var _local11:int = (npc1_stats_mc.Taken + npc3_stats_mc.Taken);
if (_local10 <= _local11){
_local4 = (_local11 - _local10);
computer_bags = (computer_bags + _local4);
_local5 = ((_local10 * 10) + _local4);
computer_score = (computer_score + _local5);
if (computer_bags >= 10){
computer_bags = (computer_bags - 10);
computer_score = (computer_score - 100);
};
} else {
_local5 = (_local5 + -((_local10 * 10)));
_local4 = 0;
computer_score = (computer_score + _local5);
};
game_stats_mc.ComputerBags = computer_bags;
game_stats_mc.ComputerScore = computer_score;
if ((((player_score < 500)) && ((computer_score < 500)))){
round_results_mc.DisplayResults(_local3, _local2, player_score, player_bags, _local5, _local4, computer_score, computer_bags, _local8, _local9);
} else {
if (player_score >= computer_score){
win_lose_mc.Winner(true);
} else {
win_lose_mc.Winner(false);
};
};
}
public function BreakSpades():void{
spades_broken = true;
broken_spade_mc.gotoAndStop(2);
}
public function GetWinningCard(_arg1:int, _arg2:int, _arg3:int):Boolean{
var _local4:int = GetSuit(_arg1);
var _local5:int = GetSuit(_arg2);
if ((((_local4 == SPADES)) && (!((_local5 == SPADES))))){
return (true);
};
if (((!((_local4 == SPADES))) && ((_local5 == SPADES)))){
return (false);
};
if ((((_local4 == SPADES)) && ((_local5 == SPADES)))){
if (_arg1 > _arg2){
return (true);
};
return (false);
} else {
if ((((_local4 == _arg3)) && (!((_local5 == _arg3))))){
return (true);
};
if (((!((_local4 == _arg3))) && ((_local5 == _arg3)))){
return (false);
};
if ((((_local4 == _arg3)) && ((_local5 == _arg3)))){
if (_arg1 > _arg2){
return (true);
};
return (false);
};
};
return (true);
}
public function GetCardValue(_arg1:int):int{
if (((!((current_suit == GetSuit(_arg1)))) && (!((GetSuit(_arg1) == Spades.SPADES))))){
return (0);
};
var _local2:int = ((_arg1 - 1) % 13);
(_local2 + 1);
if (GetSuit(_arg1) == Spades.SPADES){
_local2 = (_local2 + 13);
};
return (_local2);
}
public function GetLead(_arg1:Array):int{
var _local2:int;
_local2 = 0;
while (_local2 < _arg1.length) {
if ((((GetCardValue(_arg1[_local2]) == 13)) && (!((GetSuit(_arg1[_local2]) == Spades.SPADES))))){
return (_arg1[_local2]);
};
_local2++;
};
if (spades_broken){
_local2 = 0;
while (_local2 < _arg1.length) {
if (GetCardValue(_arg1[_local2]) == 26){
return (_arg1[_local2]);
};
_local2++;
};
};
_local2 = 0;
while (_local2 < _arg1.length) {
if ((((GetCardValue(_arg1[_local2]) == 12)) && (!((GetSuit(_arg1[_local2]) == Spades.SPADES))))){
return (_arg1[_local2]);
};
_local2++;
};
_local2 = 0;
while (_local2 < _arg1.length) {
if ((((GetCardValue(_arg1[_local2]) == 11)) && (!((GetSuit(_arg1[_local2]) == Spades.SPADES))))){
return (_arg1[_local2]);
};
_local2++;
};
var _local3 = 999;
_local2 = 0;
while (_local2 < _arg1.length) {
if ((((GetCardValue(_arg1[_local2]) < _local3)) && (!((GetSuit(_arg1[_local2]) == Spades.SPADES))))){
_local3 = _arg1[_local2];
};
_local2++;
};
if (_local3 == 999){
_local3 = _arg1[0];
_local2 = 0;
while (_local2 < _arg1.length) {
if (GetCardValue(_arg1[_local2]) < _local3){
_local3 = _arg1[_local2];
};
_local2++;
};
};
trace(("low_card=" + _local3));
return (_local3);
}
public function ResetGame():void{
player_score = 0;
player_bags = 0;
computer_score = 0;
computer_bags = 0;
dealer_num = -1;
current_player = 0;
characters_played = 0;
tricks_played = 0;
characters_bid = 0;
total_bid = 0;
spades_broken = false;
moving_cards.visible = false;
moving_cards.SetGame(this);
npc1_cards_mc.gotoAndStop(13);
npc2_cards_mc.gotoAndStop(13);
npc3_cards_mc.gotoAndStop(13);
npc1_card_mc.visible = false;
npc2_card_mc.visible = false;
npc3_card_mc.visible = false;
player_card_mc.visible = false;
ResetDeck();
DealToAll();
pick_bet_mc.SetSpadesGame(this);
round_results_mc.Game = this;
win_lose_mc.Game = this;
pick_bet_mc.visible = false;
player_stats_mc.Dealer();
game_stats_mc.PlayerBags = player_bags;
game_stats_mc.PlayerScore = player_score;
game_stats_mc.ComputerBags = computer_bags;
game_stats_mc.ComputerScore = computer_score;
StartRound(null);
}
public function AddNPC2Card():void{
npc2_card_array.push(deck_array.pop());
npc2_cards_mc.gotoAndStop(npc2_card_array.length);
npc2_card_array = npc2_card_array.sort();
}
public function RemoveCard(_arg1:Array, _arg2:int):Array{
var _local3:int;
while (_local3 < _arg1.length) {
if (_arg1[_local3] == _arg2){
return (_arg1.splice(_local3, 1));
};
_local3++;
};
return (_arg1);
}
public function AddPlayerCard():void{
var _local1:int;
player_card_array.push(deck_array.pop());
if (player_card_array.length == 13){
player_card_array = player_card_array.sort(Array.NUMERIC);
player_card_array = player_card_array.reverse();
_local1 = 0;
while (_local1 < 13) {
if (_local1 == 0){
player_card_1_mc.gotoAndStop(player_card_array[_local1]);
player_card_1_mc.visible = true;
} else {
if (_local1 == 1){
player_card_2_mc.gotoAndStop(player_card_array[_local1]);
player_card_2_mc.visible = true;
} else {
if (_local1 == 2){
player_card_3_mc.gotoAndStop(player_card_array[_local1]);
player_card_3_mc.visible = true;
} else {
if (_local1 == 3){
player_card_4_mc.gotoAndStop(player_card_array[_local1]);
player_card_4_mc.visible = true;
} else {
if (_local1 == 4){
player_card_5_mc.gotoAndStop(player_card_array[_local1]);
player_card_5_mc.visible = true;
} else {
if (_local1 == 5){
player_card_6_mc.gotoAndStop(player_card_array[_local1]);
player_card_6_mc.visible = true;
} else {
if (_local1 == 6){
player_card_7_mc.gotoAndStop(player_card_array[_local1]);
player_card_7_mc.visible = true;
} else {
if (_local1 == 7){
player_card_8_mc.gotoAndStop(player_card_array[_local1]);
player_card_8_mc.visible = true;
} else {
if (_local1 == 8){
player_card_9_mc.gotoAndStop(player_card_array[_local1]);
player_card_9_mc.visible = true;
} else {
if (_local1 == 9){
player_card_10_mc.gotoAndStop(player_card_array[_local1]);
player_card_10_mc.visible = true;
} else {
if (_local1 == 10){
player_card_11_mc.gotoAndStop(player_card_array[_local1]);
player_card_11_mc.visible = true;
} else {
if (_local1 == 11){
player_card_12_mc.gotoAndStop(player_card_array[_local1]);
player_card_12_mc.visible = true;
} else {
if (_local1 == 12){
player_card_13_mc.gotoAndStop(player_card_array[_local1]);
player_card_13_mc.visible = true;
};
};
};
};
};
};
};
};
};
};
};
};
};
_local1++;
};
};
}
public function ClickPlayerCard11(_arg1:MouseEvent):void{
trace("ClickPlayerCard11");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_11_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("PlaySuit=" + GetSuit(player_card_11_mc.currentFrame)));
trace(("current_suit=" + current_suit));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_11_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_11_mc.currentFrame);
if (player_card_12_mc.visible == true){
player_card_11_mc.gotoAndStop(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
} else {
player_card_11_mc.visible = false;
};
}
public function ClickPlayerCard12(_arg1:MouseEvent):void{
trace("ClickPlayerCard12");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_12_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("PlaySuit=" + GetSuit(player_card_12_mc.currentFrame)));
trace(("current_suit=" + current_suit));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_12_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
}
public function LoadFunction(_arg1:Event):void{
var _local2:LoaderInfo = loaderInfo;
if (_local2.bytesLoaded < _local2.bytesTotal){
loadbar_mc.gotoAndStop(Math.floor(((_local2.bytesLoaded / _local2.bytesTotal) * 100)));
} else {
removeEventListener(Event.ENTER_FRAME, LoadFunction);
loadbar_mc.gotoAndStop(100);
gotoAndPlay(2);
};
}
public function ClickPlayerCard10(_arg1:MouseEvent):void{
trace("ClickPlayerCard10");
if (players_turn != true){
return;
};
if (((((!((characters_played == 0))) && (!((GetSuit(player_card_10_mc.currentFrame) == current_suit))))) && (PlayerHasSuit(current_suit)))){
trace(("PlaySuit=" + GetSuit(player_card_10_mc.currentFrame)));
trace(("current_suit=" + current_suit));
return;
};
if ((((((spades_broken == false)) && ((characters_played == 0)))) && ((GetSuit(player_card_10_mc.currentFrame) == Spades.SPADES)))){
return;
};
PlayCard(player_card_10_mc.currentFrame);
if (player_card_11_mc.visible == true){
player_card_10_mc.gotoAndStop(player_card_11_mc.currentFrame);
if (player_card_12_mc.visible == true){
player_card_11_mc.gotoAndStop(player_card_12_mc.currentFrame);
if (player_card_13_mc.visible == true){
player_card_12_mc.gotoAndStop(player_card_13_mc.currentFrame);
player_card_13_mc.visible = false;
} else {
player_card_12_mc.visible = false;
};
} else {
player_card_11_mc.visible = false;
};
} else {
player_card_10_mc.visible = false;
};
}
}
}//package game
Section 7
//StatBox (game.StatBox)
package game {
import flash.display.*;
import flash.text.*;
public class StatBox extends MovieClip {
public var dealer_flag_mc:MovieClip;
private var bid:int;// = 0
private var taken:int;// = 0
public var bid_txt:TextField;
public var taken_txt:TextField;
public function StatBox(){
dealer_flag_mc.visible = false;
ClearBid();
ClearTaken();
}
public function ClearTaken():void{
taken = 0;
taken_txt.text = "";
}
public function IsDealer():Boolean{
return (dealer_flag_mc.visible);
}
public function TakeTrick():void{
taken++;
taken_txt.text = ("Taken: " + taken);
}
public function get Taken():int{
return (taken);
}
public function ClearBid():void{
bid = 0;
bid_txt.text = "";
dealer_flag_mc.visible = false;
}
public function Dealer():void{
dealer_flag_mc.visible = true;
}
public function SetBid(_arg1:int):void{
bid = _arg1;
bid_txt.text = ("Bid: " + bid);
taken_txt.text = ("Taken: " + taken);
}
public function get Bid():int{
return (bid);
}
}
}//package game
Section 8
//WinnerScreen (game.WinnerScreen)
package game {
import flash.events.*;
import flash.display.*;
public class WinnerScreen extends MovieClip {
private var spades_game:Spades;
public var play_again_btn:SimpleButton;
public function WinnerScreen(){
addFrameScript(0, frame1, 1, frame2, 79, frame80, 80, frame81, 158, frame159);
super();
play_again_btn.addEventListener(MouseEvent.CLICK, PlayAgainClick);
play_again_btn.visible = false;
}
function frame1(){
stop();
}
function frame2(){
play();
}
function frame159(){
stop();
play_again_btn.visible = true;
}
public function set Game(_arg1:Spades):void{
spades_game = _arg1;
}
function frame80(){
stop();
play_again_btn.visible = true;
}
function frame81(){
play();
}
public function PlayAgainClick(_arg1:MouseEvent):void{
gotoAndStop(1);
play_again_btn.visible = false;
visible = false;
spades_game.ResetGame();
}
public function Winner(_arg1:Boolean):void{
visible = true;
if (_arg1){
gotoAndPlay("player wins");
} else {
gotoAndPlay("player loses");
};
}
}
}//package game
Section 9
//AceOfClubs_67 (MB_fla.AceOfClubs_67)
package MB_fla {
import flash.display.*;
public dynamic class AceOfClubs_67 extends MovieClip {
public var spade_mc:MovieClip;
public function AceOfClubs_67(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package MB_fla
Section 10
//BrokenSpade_30 (MB_fla.BrokenSpade_30)
package MB_fla {
import flash.display.*;
public dynamic class BrokenSpade_30 extends MovieClip {
public function BrokenSpade_30(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package MB_fla
Section 11
//CardTrack_113 (MB_fla.CardTrack_113)
package MB_fla {
import flash.display.*;
public dynamic class CardTrack_113 extends MovieClip {
public var ic1_mc:MovieClip;
public function CardTrack_113(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package MB_fla
Section 12
//LoadBar_1 (MB_fla.LoadBar_1)
package MB_fla {
import flash.display.*;
public dynamic class LoadBar_1 extends MovieClip {
public function LoadBar_1(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package MB_fla
Section 13
//NullBidBonus_142 (MB_fla.NullBidBonus_142)
package MB_fla {
import flash.display.*;
public dynamic class NullBidBonus_142 extends MovieClip {
public function NullBidBonus_142(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package MB_fla
Section 14
//YourTurn_33 (MB_fla.YourTurn_33)
package MB_fla {
import flash.display.*;
public dynamic class YourTurn_33 extends MovieClip {
public function YourTurn_33(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
play();
}
}
}//package MB_fla
Section 15
//Bell (Bell)
package {
import flash.media.*;
public dynamic class Bell extends Sound {
}
}//package
Section 16
//CardFlip (CardFlip)
package {
import flash.media.*;
public dynamic class CardFlip extends Sound {
}
}//package
Section 17
//CardShuffle (CardShuffle)
package {
import flash.media.*;
public dynamic class CardShuffle extends Sound {
}
}//package
Section 18
//Click (Click)
package {
import flash.media.*;
public dynamic class Click extends Sound {
}
}//package
Section 19
//Thump (Thump)
package {
import flash.media.*;
public dynamic class Thump extends Sound {
}
}//package
Section 20
//Tone (Tone)
package {
import flash.media.*;
public dynamic class Tone extends Sound {
}
}//package