//solitaire-new 1.6.0 2019-03-19 //(C) Copyright 2019 WildTangent, Inc. All Rights Reserved. //Contact us at licensing@wildtangent.com function getFacebookPictureURL(a){facebookConnectPlugin.getLoginStatus(function(b){if("connected"===b.status){facebookConnectPlugin.api("/me?fields=picture",["public_profile"],function(b){profilePictureURL=b.picture.data.url,a&&a()},function(b){a&&a()})}else a&&a()},function(){a&&a()})}function initApp(){signedInUserName=null;var a=function(a){if(a){var b=a.displayName,c=null;isMobileApp?c=profilePictureURL:(a.displayName!==a.providerData[0].displayName&&(a.updateProfile({displayName:a.providerData[0].displayName}),b=a.providerData[0].displayName),c=a.providerData[0].photoURL),FirebaseBridge.UserID=a.uid,signedInUserName=b,database=defaultApp.database();var d=function(){profilePictureURL=c,signedInCallback&&signedInCallback()},e=new PIXI.loaders.Loader;resourcesLoaded[c]?d():(resourcesLoaded[c]=!0,e.add(c),e.load(d)),databaseCallback&&FirebaseBridge.ReadUserData(databaseCallback)}else signedOutCallback&&signedOutCallback(),FirebaseBridge.UserID=null,signedInUserName=null,database=null,profilePictureURL=null};firebase.auth().onAuthStateChanged(a)}function OptimizeThemeData(a){var b={};for(var c in a)"list"!==c&&(b[c]=a[c]);b.list=[];var d=null;TestDate&&void 0!==TestDate.day&&void 0!==TestDate.month&&(d=new Date(TestDate.year,TestDate.month-1,TestDate.day)),d||(d=new Date);var e=d.getFullYear(),f=d.getMonth()+1,g=d.getTime(),h=7,i={},j=function(a,b){var c={BlackFriday:[4,4,10,1]};"string"==typeof a&&(a=c[a]||c.BlackFriday);for(var d=a[2],e=a[1],f=a[0],g=a[3]||0,i=b||(new Date).getFullYear(),j=new Date(i,d,1);j.getDay()!==e;)j.setDate(j.getDate()+1);var k=(f-1)*h+g;return j.setDate(j.getDate()+k),j.getDate()}("BlackFriday",e);for(var k in a.ranges){d.setFullYear(e),i[k]=[];var l=a.ranges[k];"number"==typeof l[0]&&"number"==typeof l[1]&&l[0]>l[1]&&(l[1]>f?l[0]-=12:l[1]+=12);for(var m=0;m<2;m++)"BlackFriday"===l[m]?(d.setMonth(10),d.setDate(j)):(d.setMonth(l[m]-1),d.setDate(1)),i[k][m]=d.getTime(),1===m&&i[k][1]q[0]&&g-1){var s=Math.floor(Math.random()*(BaseGame.featuredThemeIndexArray.length+1));BaseGame.featuredThemeIndexArray.splice(s,0,r)}}else n.push(a.list[o]),n[n.length-1].isShown=!1}for(var t=0;tb&&(Downloader.interface.get(d+"?q="+Date.now().toString()),e=function(){})}},f.open("GET",c,!0),f.send()},document.addEventListener("DOWNLOADER_initialized",function(c){a("themes2017.json",function(a){b(!0)},function(a){b(!1)})}),document.addEventListener("DOWNLOADER_gotFileSystem",function(a){}),document.addEventListener("DOWNLOADER_gotFolder",function(a){}),document.addEventListener("DOWNLOADER_error",function(a){}),document.addEventListener("DOWNLOADER_downloadSuccess",function(a){}),document.addEventListener("DOWNLOADER_downloadError",function(a){}),document.addEventListener("DOWNLOADER_unzipSuccess",function(a){e&&e(),e=null}),document.addEventListener("DOWNLOADER_unzipError",function(a){}),document.addEventListener("DOWNLOADER_getFileError",function(a){})}function AddSideArtToWindow(a,b,c,d){if(void 0!==ContentPath.SIDEART_JSON_PATH&&void 0!==b){var e=PIXI.loader.resources[ContentPath.SIDEART_JSON_PATH].textures,f=d||1-.85,g=1;(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&window.innerWidth568&&(playerText.visible=!0)}else playerText.visible=!0}function signInHandler(){FirebaseBridge.IsSignedIn()?GameMenu.Profile():FirebaseBridge.SignIn()}function SetFirebaseNameAndPicture(){var a=FirebaseBridge.GetProfilePictureURL();profileImageSprite=UI.MaskedProfilePictureSprite(a,hudIconHeight),playerText.text=FirebaseBridge.GetSignedInUserName(),playerText.x=playerIconSprite.x-playerText.width-UI.iconSideMargin,GameHud.bg.width>=HUD_SIZE_THRESHOLD&&showPlayerNameText(),accountSignInButton.visible=!1,profileImageSprite.x=playerIconSprite.x,profileImageSprite.y=playerIconSprite.y,profileImageSprite.buttonMode=profileImageSprite.interactive=!0,profileImageSprite.name="Profile Image Sprite";var b=function(){Analytics.TrackEvent("CATEGORY_MENU","MENU_HUD","LABEL_PROFILE_ICON"),signInHandler(),Events.emit("fbIconClick",null)};profileImageSprite.on("pointerup",b),GameHud.container.addChild(profileImageSprite),GameHud.Resize()}function ResetAccountIcon(){profileImageSprite&&(GameHud.container.removeChild(profileImageSprite),profileImageSprite.destroy(),profileImageSprite=null),playerText.text="",playerText.visible=!1,accountSignInButton.visible=!0,GameHud.Resize()}function setStorage(a,b){try{window.localStorage.setItem(a,b)}catch(a){}}function getStorage(a){try{return window.localStorage.getItem(a)}catch(a){}}function setCookie(a,b){var c=new Date;c.setTime(c.getTime()+863136e5);var d="expires="+c.toUTCString();document.cookie=a+"="+b+"; "+d}function getCookie(a){for(var b=a+"=",c=document.cookie.split(";"),d=0;d0&&m%1013)&&(l=k[m%10-1]),d=f.toLocaleDateString("en-US",{weekday:"short"})+" "+m+l}return d}var databaseConfig={apiKey:"AIzaSyCYYt0ACo8XpkUnzRvRCVZAIq5vDxitd1U",authDomain:"freecell-solitaire-wt.firebaseapp.com",databaseURL:"https://freecell-solitaire-wt.firebaseio.com",projectId:"freecell-solitaire-wt"},Events={list:{newGameStart:[],gameWin:[],gameLose:[],gameRestart:[],menuButtonClick:[],fbButtonClick:[],fbIconClick:[],profileMenuOpen:[],profileMenuClose:[],profileFbLogin:[],profileFbLogout:[],settingsMenuOpen:[],settingsMenuClose:[],settingsChanged:[],howtoplayMenuOpen:[],howtoplayMenuClose:[],howtoplayPageChanged:[],userSignedIn:[],boardComplete:[]}};Events.register=function(a){this.list[a]=[]},Events.on=function(a,b){this.list[a]&&this.list[a].push(b)},Events.emit=function(a,b){if("object"==typeof this.list[a])for(var c=0;c5?signedInUserName.substring(0,5)+"...":signedInUserName:signedInUserName.length>12?signedInUserName.substring(0,11)+"...":signedInUserName),a},FirebaseBridge.IsSignedIn=function(){return isMobileApp?(getFacebookPictureURL(),!(!profilePictureURL||!FirebaseBridge.UserID)):!!testIsOnline&&!(!signedInUserName||!FirebaseBridge.UserID)},FirebaseBridge.UserDataIsRetrieved=function(){return FirebaseBridge.IsSignedIn()&&userDataIsRetrieved},FirebaseBridge.SignIn=function(){if(isMobileApp&&testIsOnline){if(!signedInUserName){var a=function(a){facebookConnectPlugin.api("/me?fields=picture",["public_profile"],function(a){profilePictureURL=a.picture.data.url;for(var b in a.picture.data);},function(a){});const b=firebase.auth.FacebookAuthProvider.credential(a.authResponse.accessToken);firebase.auth().signInWithCredential(b).then(function(a){FirebaseBridge.UserID=a.uid,signedInUserName=a.displayName,a&&Events.emit("userSignedIn",a)}).catch(function(a){})};facebookConnectPlugin.login(["public_profile","email"],a,function(a){})}}else if(!isMobileApp&&testIsOnline&&!firebase.auth().currentUser){var b=new firebase.auth.FacebookAuthProvider;firebase.auth().signInWithPopup(b).then(function(){}).catch(function(a){"auth/account-exists-with-different-credential"===a.code&&alert("You have already signed up with a different auth provider for that email.")})}},FirebaseBridge.SignOut=function(){isMobileApp?firebase.auth().signOut().then(function(){facebookConnectPlugin.logout()}):firebase.auth().currentUser&&firebase.auth().signOut()},FirebaseBridge.WriteUserData=function(a){database&&database.ref("users/"+FirebaseBridge.UserID).set(a)},FirebaseBridge.ReadUserData=function(a){return databaseCallback=a,FirebaseBridge.UserID&&database?database.ref("/users/"+FirebaseBridge.UserID).once("value").then(function(a){var b;b=a.val(),databaseCallback&&(userDataIsRetrieved=!0,databaseCallback(b))}):null};var BaseGame={},TestDate;BaseGame.cardFlipTweenDuration=.15,BaseGame.GRID_TIME_DELAY=.08,BaseGame.STOCK_TIME_DELAY=.03,BaseGame.CARD_DELAY_INCREMENT=.4,BaseGame.CARD_TWEENLITE_DELAY=.2;var themesConfigDirectory=ContentPath.config,themesImageDirectory=ContentPath.images;BaseGame.ImageLists={},BaseGame.ImageLists.howToPlay=ContentPath.howToPlayImage;var winFanfareTable=ContentPath.winFanfare||{},winFanfareParticles=winFanfareTable.particle||[Asset.i.fanfareSpark];BaseGame.isMobileApp=!0,BaseGame.tabLocation="_system",BaseGame.started=!1,BaseGame.hasFocus=!0,BaseGame.deviceReady=!1,BaseGame.initCalled=!1,BaseGame.tileBG=null,BaseGame.loaded=!1,BaseGame.reachedTime=!1,BaseGame.gameWonDelay=1.2,BaseGame.gameWonCountDown=5,BaseGame.newGameCountdownTextStyle={font:"34px Muli",fontWeight:700,align:"center",tint:16777215},BaseGame.countdownTextStart=" New game starts in ",BaseGame.countdownTextEnd=" ...",BaseGame.mouse={},BaseGame.mouse.dX=0,BaseGame.mouse.dY=0,BaseGame.mouse.x=0,BaseGame.mouse.touchX=0,BaseGame.mouse.y=0,BaseGame.mouse.touchY=0,BaseGame.mouse.touchstart={x:0,y:0},BaseGame.progressBarContainer=null,BaseGame.effects={},BaseGame.effects.fanfare=3;var preloadIcons=[],preloadCards=[];BaseGame.THEME_PRELOAD_COUNT=6,(window.location.href.indexOf("http://")>-1||window.location.href.indexOf("localhost")>-1||window.location.href.indexOf("https://")>-1)&&(BaseGame.isMobileApp=!1,BaseGame.tabLocation="_blank"),BaseGame.isAndroid=/Android/i.test(navigator.userAgent),BaseGame.isiOS=/iPhone|iPad|iPod/i.test(navigator.userAgent),BaseGame.isEdge=/Edge\/\d+/i.test(navigator.userAgent),BaseGame.isiOS&&"localhost:8080"===window.location.host&&(BaseGame.isMobileApp=!0,BaseGame.tabLocation="_system"),window.location.href.indexOf("com.wildtangent.")>-1&&(BaseGame.isMobileApp=!0,BaseGame.tabLocation="_system"),BaseGame.isWGS=!1,BaseGame.isMobileWeb=!1,(BaseGame.isAndroid||BaseGame.isiOS&&!BaseGame.isMobileApp)&&(BaseGame.isMobileWeb=!0),window.addEventListener("resize",function(a){ThemeMenu2.Resize()}),BaseGame.isMobileApp?document.addEventListener("DOMContentLoaded",BaseGame.StartApp,!1):window.self!==window.top&&window.parent&&(BaseGame.isWGS=!0),BaseGame.Sprite=function(a){var b;return a&&(b=Asset.MakeSprite(a)),b},BaseGame.getTexture=function(a){return Asset.GetTexture(a)},BaseGame.NormalizePointerEventData=function(a){var b={},c=a.data.originalEvent;return b.clientX=c.clientX,b.clientY=c.clientY,b.pageX=c.pageX,b.isTouch="touch"===c.pointerType,b},BaseGame.onDeviceReady=function(){BaseGame.deviceReady=!0,BaseGame.isMobileApp&&BaseGame.initCalled&&(BaseGame.started||BaseGame.StartApp()),BaseGame.isAndroid||StatusBar&&StatusBar.hide()},document.addEventListener("deviceready",BaseGame.onDeviceReady,!1),BaseGame.Init=function(){BaseGame.initCalled=!0,BaseGame.isMobileApp?BaseGame.deviceReady&&(BaseGame.started||BaseGame.StartApp()):BaseGame.started||BaseGame.StartApp(),window.scrollTo(0,0)},BaseGame.StartApp=function(){function a(){if(1==ThemePreviewUpsell.status){var a=ThemePreviewUpsell.getCurrentTheme();ThemePreviewUpsell.close(),new ThemePreviewUpsell(ThemeMenu.layer,1,a),ThemePreviewUpsell.open(),ThemePreviewUpsell.status=!0}if(1==GameMenu.born&&GameMenu.DetectScreen(),q.resize(window.innerWidth,window.innerHeight),BaseGame.innerWidth=window.innerWidth,BaseGame.innerHeight=window.innerHeight,BaseGame.gameLogoLoadingContainer){var b=window.innerWidth/380,c=window.innerHeight/window.innerWidth;if(380*b>n&&(b=window.innerWidth/380),window.innerHeight.5?.6:.8;b=window.innerHeight*d/BaseGame.gameLogoLoadingContainer.height}b>1&&(b=1);var e=c>.5?0:25;c<1&&window.innerHeight>520&&1===b?(b=.75,e=30):c<1&&window.innerHeight>480&&1===b&&(b=.65,e=30),BaseGame.gameLogoLoadingContainer.scale.x=BaseGame.gameLogoLoadingContainer.scale.y=b,BaseGame.gameLogoLoadingContainer.x=Math.round(.5*window.innerWidth-.5*BaseGame.gameLogoLoadingContainer.width),BaseGame.gameLogoLoadingContainer.y=Math.round(.5*window.innerHeight-.5*BaseGame.gameLogoLoadingContainer.height)+e,BaseGame.loadingImage&&(BaseGame.gameLogoLoadingContainer.y+=Math.round(BaseGame.loadingImage.height*(.8*b))),i.width-1){var n=BaseGame.assetsFolderUrl+"icons/"+y.list[m].icon;preloadIcons.push(n);var o=BaseGame.assetsFolderUrl+"cards/"+y.list[m].card;preloadCards.push(o)}m++}for(m=0;preloadIcons.lengthwindow.innerHeight?(window.innerWidth>700&&BaseGame.loadingImage.scale.set(1.5,1.5),window.innerWidth>900&&BaseGame.loadingImage.scale.set(1.7,1.7)):window.innerWidth650&&BaseGame.loadingImage.scale.set(1.5,1.5)),BaseGame.loadingImage.width-1&&(l="https://"),g.indexOf("https://"),g.indexOf("test.wildtangent.com")>-1?BaseGame.assetDomain=l+"solitaire-new.test.wildtangent.com/":g.indexOf("52.77.210.110")>-1||g.indexOf("127.0.0.1")>-1?BaseGame.assetDomain=window.location.protocol+"//"+window.location.host+"/":g.indexOf("localhost")>-1&&(BaseGame.assetDomain=l+"solitaire-new.test.wildtangent.com/"),BaseGame.isMobileApp&&(MobileAppBridge.init(),BaseGame.assetDomain="https://www.solitaire-new.com/");var m=document.getElementById("game-canvas");BaseGame.canvas=m;var n=window.innerWidth,o=window.innerHeight,p={antialiasing:!0,transparent:!1,resolution:window.devicePixelRatio,autoResize:!0,view:m,roundPixels:!0,antialias:!0},q=PIXI.autoDetectRenderer(n,o,p);BaseGame.renderer=q,PIXI.settings.RESOLUTION=window.devicePixelRatio,q.view.style.position="absolute",q.view.style.top="0px",q.view.style.left="0px",q.clearBeforeRender=!0,q.backgroundColor=ContentPath.loadingBackgroundColor||2510595,void 0!==ContentPath.loadingTileBackground&&(q.loadingTileBackground=ContentPath.loadingTileBackground,PIXI.loader.add(q.loadingTileBackground)),BaseGame.isMobileApp||BaseGame.isMobileWeb?(BaseGame.assetsFolderUrl="src/bundle/",BaseGame.dataFolderUrl="src/bundle/"):(BaseGame.dataFolderUrl=BaseGame.assetDomain+themesConfigDirectory,BaseGame.assetsFolderUrl=BaseGame.assetDomain+themesImageDirectory);var r="themes2017.json";(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&ContentPath.mobileThemeData&&(r=ContentPath.mobileThemeData),PIXI.loader.add(BaseGame.dataFolderUrl+r),PIXI.loader.add(ContentPath.loadingScreenLogo),h&&PIXI.loader.add(ContentPath.loadingBarFrame).add(ContentPath.loadingBarFill),ContentPath.loadingWTlogo&&PIXI.loader.add(ContentPath.loadingWTlogo),ContentPath.brandedLoadingScreenLogo&&PIXI.loader.add(ContentPath.brandedLoadingScreenLogo),PIXI.loader.load(c);var s=new PIXI.Container;BaseGame.gameLogoLoadingContainer=new PIXI.Container,s.addChild(BaseGame.gameLogoLoadingContainer),BaseGame.bar=new PIXI.Graphics;var t={fontSize:24,fontFamily:ContentPath.defaultFontFamily},u=new PIXI.Text("TEST",t);u.alpha=0,BaseGame.gameLogoLoadingContainer.addChild(u);var v=!1,w=!1;window.addEventListener("pointerdown",function(a){"touch"===a.pointerType?(w=!0,v=!0,BaseGame.UpdateMousePosition(a)):v=!1}),BaseGame.isiOS&&(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&(window.addEventListener("touchmove",function(a){BaseGame.UpdateMousePosition(a)}),window.addEventListener("touchstart",function(a){BaseGame.mouse.touchX=a.pageX,BaseGame.mouse.touchY=a.pageY,BaseGame.mouse.touchstart.x=a.pageX,BaseGame.mouse.touchstart.y=a.pageY})),window.addEventListener("pointermove",function(a){"touch"===a.pointerType&&(w&&(a.preventDefault(),w=!1),BaseGame.UpdateMousePosition(a))});var x=document.getElementById("like-button");BaseGame.isMobileWeb?BaseGame.actionBar=null:BaseGame.actionBar=x,BaseGame.isMobileApp&&(BaseGame.actionBar=null),BaseGame.ShowActionBar=function(){BaseGame.actionBar&&!BaseGame.isMobileApp&&(BaseGame.actionBar.style.display="inline")},BaseGame.HideActionBar=function(){BaseGame.actionBar&&(BaseGame.actionBar.style.display="none")},BaseGame.UpdateMousePositionManual=function(a,b){BaseGame.mouse.dX+=Math.abs(BaseGame.mouse.x-a),BaseGame.mouse.dY+=Math.abs(BaseGame.mouse.y-b),BaseGame.mouse.x=a,BaseGame.mouse.y=b},BaseGame.UpdateMousePosition=function(a){if(void 0==a)v||(BaseGame.mouse.dX+=Math.abs(BaseGame.mouse.x-BaseGame.renderer.plugins.interaction.mouse.global.x),BaseGame.mouse.dY+=Math.abs(BaseGame.mouse.y-BaseGame.renderer.plugins.interaction.mouse.global.y),BaseGame.mouse.x=BaseGame.renderer.plugins.interaction.mouse.global.x,BaseGame.mouse.y=BaseGame.renderer.plugins.interaction.mouse.global.y);else{var b=a.clientX||a.pageX,c=a.clientY||a.pageY;BaseGame.mouse.dX+=Math.abs(BaseGame.mouse.x-b),BaseGame.mouse.dY+=Math.abs(BaseGame.mouse.y-c),BaseGame.mouse.x=b,BaseGame.mouse.y=c,a.pageX&&a.pageY&&(BaseGame.mouse.touchX=b,BaseGame.mouse.touchY=c)}},Analytics.Init(Main.version);var y=null;BaseGame.LoseFocus=function(){BaseGame.hasFocus&&(BaseGame.hasFocus=!1)},BaseGame.GainFocus=function(){BaseGame.hasFocus||(BaseGame.hasFocus=!0,requestAnimationFrame(BaseGame.animate))},BaseGame.animate=function(){BaseGame.innerWidth==window.innerWidth&&BaseGame.innerHeight==window.innerHeight||a(),BaseGame.loaded&&Main.Update(),BaseGame.hasFocus&&requestAnimationFrame(BaseGame.animate),q.render(s)},BaseGame.animate()};var MobileAppBridge={};MobileAppBridge.deviceReady=!1,MobileAppBridge.analytics={};var analyticsPlugin=navigator.analytics;MobileAppBridge.init=function(){analyticsPlugin=navigator.analytics},MobileAppBridge.analytics.setTrackingId=function(a){analyticsPlugin&&analyticsPlugin.setTrackingId(a)},MobileAppBridge.analytics.sendAppView=function(a,b,c){analyticsPlugin&&analyticsPlugin.sendAppView(a,b,c)},MobileAppBridge.analytics.sendEvent=function(a,b,c,d,e,f){try{analyticsPlugin&&analyticsPlugin.sendEvent(a,b,c,d,e,f)}catch(a){}};var Analytics={};Analytics.deviceReady=!1;var gameVersion=null,trackingID_Android="UA-40526637-16",trackingID_iOS="UA-40526637-17";Analytics.Tags={DIMENSION_GAME_VERSION:"dimension1",DIMENSION_SCORING_MODE:"dimension2",DIMENSION_DRAW_MODE:"dimension3",DIMENSION_GAME_TIME:"dimension4",DIMENSION_GAME_SCORE:"dimension5",DIMENSION_TOTAL_MOVES:"dimension6",METRIC_GAME_PLAYED:"metric1",METRIC_GAME_WIN:"metric2",METRIC_GAME_LOSS:"metric3",CATEGORY_MENU:"Menu",CATEGORY_GAME:"Game",CATEGORY_LOADING:"Loading",CATEGORY_SETTINGS:"Settings Dialog",CATEGORY_THEMES:"Themes Browser",SCREENVIEW_NEWGAME:"New Game",SCREENVIEW_RESTART:"Restart Game",SCREENVIEW_THEMES:"Themes",SCREENVIEW_HOWTOPLAY:"How to Play",SCREENVIEW_SETTINGS:"Settings",SCREENVIEW_STATS:"Statistics",SCREENVIEW_PROFILE:"Player Profile",SCREENVIEW_MOREGAMES:"More Games",SCREENVIEW_LEGAL:"Legal",GAME_START:"Start",GAME_LOSE:"Lose",GAME_WON:"Won",GAME_COMPLETED:"Completed",GAME_RESTART:"Restart",MENU_HUD:"HUD",MENU_NEWGAME:"New Game Dialog",MENU_THEME_UPSELL:"Themes Upsell Dialog",MENU_GAMEWON:"Game Won Dialog",MENU_THEME_TRYOUT:"Theme Tryout",MENU_MORE_GAMES:"More Games Dialog",MENU_HOWTOPLAY:"How to Play Dialog",MENU_SETTINGS:"Settings Dialog",MENU_PROFILE:"Player Profile Dialog",MENU_WELCOME:"Welcome Dialog",MENU_MOBILE_UPSELL:"Mobile App Upsell",MENU_STATISTICS:"Statistics",MENU_LEGAL:"Legal",MENU_MOBILE_UI_BTN:"Mobile UI button",MENU_PROFILE_LOGIN:"Sign In",MENU_PROFILE_LOGOUT:"Sign Out",LOADING_LOAD_SCREEN:"LoadingScreenDisplayed",LOADING_GAME:"GameDisplayed",ACTION_XBUTTON:"X button",ACTION_SUPPORT_BTN:"Customer Support",ACTION_CATEGORY_TAB:"Category Tab",ACTION_PRELOAD_THEMES:"Preload Sequence",SETTINGS_SOUND:"Toggle sound",SETTINGS_TIME_MOVES:"Toggle time & moves",SETTINGS_LEFT_HAND:"Toggle left hand mode",THEMES_PREVIEW:"Preview Theme",THEMES_APPLY:"Apply Theme",THEMES_DECLINE:"Decline Theme",LABEL_SCORE:"Score:",LABEL_MOVES:"Moves:",LABEL_CLOSE_MENU:"Close Menu",LABEL_DRAW_1:"Draw 1, ",LABEL_DRAW_3:"Draw 3, ",LABEL_SCORE_REGULAR:"Standard",LABEL_SCORE_VEGAS:"Vegas",LABEL_COUNTDOWN_START:"Countdown Start New Game",LABEL_COUNTDOWN_CANCEL:"CloseMenu: Countdown Canceled",LABEL_GAMEWON_NEW_GAME:"New Game BtnPress",LABEL_VIEW_MORE:"View More",LABEL_RIGHT_BUTTON:"Right Button",LABEL_LEFT_BUTTON:"Left Button",LABEL_BACK_PRESS:"Back BtnPress: ",LABEL_PAGE:"Page: ",LABEL_SOUND_OFF:"Sound - Off",LABEL_SOUND_ON:"Sound - On",LABEL_TIME_MOVES_SHOW:"Show Time And Moves - On",LABEL_TIME_MOVES_HIDE:"Show Time And Moves - Off",LABEL_LEFTHAND_ON:"Left Hand - On",LABEL_LEFTHAND_OFF:"Left Hand - Off",LABEL_PLAY_BTN:"Play BtnPress",LABEL_THEME_BTN:"Themes BtnPress",LABEL_START_BTN:"Start Game",LABEL_HOW_TO_BTN:"How to Play BtnPress",LABEL_APPLE:"Apple App Store BtnPress",LABEL_GOOGLE:"Google Play Store BtnPress",LABEL_LOGIN:"Login BtnPress",LABEL_LOGOUT:"Logout BtnPress",LABEL_GET_APP:"Get the App BtnPress",LABEL_RATE_APP:"Rate the App BtnPress",LABEL_SIGN_IN:"Sign In",LABEL_SIGN_OUT:"Sign Out",LABEL_MENU_BUTTON:"Menu Button",LABEL_FB_LOGIN:"FB Login",LABEL_PROFILE_ICON:"Profile Icon",LABEL_AUTO_START:"Auto Start",LABEL_NEW_GAME_BUTTON:"New Game Button",LABEL_SUPPORT_TAB:"Open Support Tab",LABEL_STANDARD_1:"Standard, Draw 1",LABEL_STANDARD_3:"Standard, Draw 3",LABEL_VEGAS_1:"Vegas, Draw 1",LABEL_VEGAS_3:"Vegas, Draw 3",LABEL_ON:"on",LABEL_OFF:"off"},Analytics.Init=function(a){gameVersion=a||"-1",BaseGame.isMobileApp&&(Analytics.deviceReady?Analytics.DeviceReady2():document.addEventListener("deviceready",Analytics.DeviceReady2,!1))},Analytics.TrackEventGlobal=function(a,b,c,d){if(d=parseInt(d)||0,BaseGame.isMobileApp){var e=function(){},f=function(){};MobileAppBridge.analytics.sendEvent(a,b,c,d,e,f)}else{a=String(a),b=String(b);try{ga&&ga("send","event",a,b,c,d)}catch(a){ShowError(a)}}},Analytics.DeviceReady1=function(){Analytics.deviceReady=!0},document.addEventListener("deviceready",Analytics.DeviceReady1,!1),Analytics.DeviceReady2=function(){BaseGame.isAndroid?MobileAppBridge.analytics.setTrackingId(trackingID_Android):BaseGame.isiOS&&MobileAppBridge.analytics.setTrackingId(trackingID_iOS),MobileAppBridge.analytics.sendAppView("Game",function(){},function(){})},Analytics.TrackEvent=function(a,b,c,d){Analytics.track(a,b,c,d)},Analytics.track=function(a,b,c,d){if(a=GetTagFromKey(a,!1)||"",b=GetTagFromKey(b,!1)||"",c=GetTagFromKey(c,!0)||"",d=parseInt(d)||0,BaseGame.isMobileApp)MobileAppBridge.analytics.sendEvent(a,b,c,d,function(){},function(){});else{a=String(a),b=String(b);try{ga&&ga("send","event",a,b,c,d)}catch(a){ShowError(a)}}},Analytics.TrackGameStartMetrics=function(a,b,c,d){var e={};e[Analytics.Tags.DIMENSION_GAME_VERSION]=gameVersion,e[Analytics.Tags.DIMENSION_SCORING_MODE]=c,e[Analytics.Tags.DIMENSION_DRAW_MODE]="Draw "+d,e[Analytics.Tags.METRIC_GAME_PLAYED]="1",Analytics.TrackEventWithMetrics(a,b,e)},Analytics.TrackDirectMetrics=function(a){if(a[Analytics.Tags.DIMENSION_GAME_VERSION]=gameVersion,a[Analytics.Tags.METRIC_GAME_PLAYED]="1",!BaseGame.isMobileApp)try{ga&&ga("set",a)}catch(a){ShowError(a)}},Analytics.TrackGameResultMetrics=function(a,b,c,d,e,f,g,h){var i={},j=Analytics.Tags.METRIC_GAME_LOSS;h&&(j=Analytics.Tags.METRIC_GAME_WIN),i[Analytics.Tags.DIMENSION_GAME_VERSION]=gameVersion,i[Analytics.Tags.DIMENSION_SCORING_MODE]=c,i[Analytics.Tags.DIMENSION_DRAW_MODE]="Draw "+d,i[Analytics.Tags.DIMENSION_GAME_TIME]=e.toString().toHHMMSS(),i[Analytics.Tags.DIMENSION_GAME_SCORE]=f,i[Analytics.Tags.DIMENSION_TOTAL_MOVES]=g,i[j]="1",Analytics.TrackEventWithMetrics(a,b,i)},Analytics.TrackEventWithMetrics=function(a,b,c){if(a=GetTagFromKey(a,!1)||"",b=GetTagFromKey(b,!1)||"",!BaseGame.isMobileApp)try{ga&&ga("send","event",a,b,c)}catch(a){ShowError(a)}},Analytics.ScreenView=function(a){if(!BaseGame.isMobileApp){var b={screenName:a};try{ga&&ga("send","screenview",b)}catch(a){ShowError("<<< ScreenView error: "+a)}}};var SoundManager={};SoundManager.soundsReady=!1,SoundManager.soundsReadyMobile=!1,SoundManager.masterVolume=.1,SoundManager.setup=function(){var a=ContentPath.soundsToLoad||{SOUND_BUST:"src/sfx/bust.mp3",SOUND_FLIP:"src/sfx/flip.mp3",SOUND_FLIP_3:"src/sfx/flip3.mp3",SOUND_SHUFFLE:"src/sfx/card_shuffle.mp3",SOUND_FANFARE:"src/sfx/fanfare.mp3",SOUND_SMALL_FANFARE:"src/sfx/fanfareSmall02.mp3",SOUND_MEDIUM_FANFARE:"src/sfx/fanfareMed01.mp3",SOUND_WIN_FANFARE:"src/sfx/win02.mp3"};SoundManager.soundsReady=!0;for(var b in a)SoundManager[b]=a[b],createjs.Sound.registerSound(SoundManager[b],SoundManager[b],1);if(createjs.Sound.volume=SoundManager.masterVolume,BaseGame.isMobileApp&&window.plugins&&window.plugins.NativeAudio){var c=function(a){},d=function(a){};for(var e in a)window.plugins.NativeAudio.preloadSimple(SoundManager[e],SoundManager[e],c,d);SoundManager.soundsReadyMobile=!0}},SoundManager.PlaySound=function(a){SoundManager.soundsReady||SoundManager.setup(),a&&Game.settings.sound&&(BaseGame.isMobileApp?(SoundManager.soundsReadyMobile||SoundManager.setup(),window.plugins.NativeAudio.play(a)):createjs.Sound.play(a))};var Main={};Main.version="1.6.0",Main.copyrightYear="2019",Main.init=function(a,b){var c=new PIXI.Container,d=new PIXI.Container,e=new PIXI.Container,f=new PIXI.Container,g=new PIXI.Container,h=new PIXI.Container,i=new PIXI.Container,j=new PIXI.Container;a.addChild(g),a.addChild(c),h.addChild(d),h.addChild(e),h.addChild(f),a.addChild(h),a.addChild(j),a.addChild(i),d.y=UI.hudAndSidebarHeight,Main.Update=function(){BaseGame.UpdateMousePosition(),Game.Update(),ThemeMenu.Update(),GameMenu.Update()},Main.Resize=function(){var a=window.innerWidth,b=window.innerHeight;b<550&&!BaseGame.isMobileWeb&&(b=window.innerHeight-40);var c=1;c=b/Game.layout.targetHeight,Game.layout.targetWidth*c>a&&(c=a/Game.layout.targetWidth),c>1&&(c=1),Game.Resize(a,b,c),d.scale.x=c,d.scale.y=c,d.x=Math.round(.5*a-Game.layout.gameWidth*c*.5),Background.Align(!0),GameHud.Resize(!0),GameUI.Resize(!0),GameMenu.Resize(!0),ThemeMenu.Resize(!0),Ads.Resize(!0),DownloadButton.Resize(!0),Effects.Resize(!0),window.scrollTo(0,0)};var k=null;b=b||PIXI.loader.resources[BaseGame.dataFolderUrl+"themes2017.json"].data,k=PIXI.loader.resources[BaseGame.moreGamesURL].data,new ThemeMenu(f,b),new GameUI(e),new GameHud(e),new GameMenu(e,h,c,k),new Background(g,b),DownloadButton.Init(e);new SolitaireGame(d,g,null,b,e),Effects.Init(j),Ads.Init(i)};var dailyChallengeScreen=null,dailyChallengeContainer=null,sideArtList=ContentPath.SideArtItem||{},defaultProfileIcon=Asset.i.playerProfileIcon,profileIconPath=ContentPath.profileDialogPlayerIcon||defaultProfileIcon,welcomeScreenHeaderLogo=ContentPath.welcomeScreenLogo,welcomeRightSideArtHalign=ContentPath.welcomeRightSideArtHalign,acePileSymbolDescription=ContentPath.acePileSymbolDescription||"capital A",googlePlayStoreURL=ContentPath.googlePlayStoreURL||"https://play.google.com/store/apps/details?id=com.wildtangent.solitairethemes&hl=en",iTunesStoreURL=ContentPath.iTunesStoreURL||"https://itunes.apple.com/us/app/solitaire-with-themes/id1159510714?ls=1&mt=8",mainMenuHudButton=null,mobileAdIcon=ContentPath.mobileAdIcon,copyrightYear=Main.copyrightYear,isRestart=!1,GameMenu=function(a,b,c,d){GameMenu.menuContainer=a,GameMenu.mainGameContainer=b,GameMenu.sidebarContainer=c,GameMenu.moreGamesData=d,mainMenuHudButton=GameHud.mainMenuHudButton,GameMenu.mobileUpsellShown=!1,GameMenu.menuContainer.interactive=!1,GameMenu.currentSideImage=null,GameMenu.style={},GameMenu.style.width=250,GameMenu.style.titleHeight=50,GameMenu.style.actionHeight=UI.hudAndSidebarHeight,GameMenu.style.titleColor=2236962,GameMenu.style.actionColor=UI.hudAndSidebarColor,GameMenu.style.bgColor=0,GameMenu.moreGamesScrolled=!1,GameMenu.SMALL_MOBILE_LANSCAPE=375,GameMenu.MEDIUM_MOBILE_LANSCAPE=460,GameMenu.LARGE_MOBILE_LANSCAPE=536,GameMenu.SMALL_MOBILE_PORTRAIT=306,GameMenu.MEDIUM_MOBILE_PORTAIRT=320,GameMenu.LARGE_MOBILE_PORTRAIRT=360,GameMenu.SMALL_DESKTOP=440,GameMenu.MEDIUM_DESKTOP=500,GameMenu.LARGE_DESKTOP=580,GameMenu.LARGE=GameMenu.LARGE_DESKTOP,GameMenu.MEDIUM=GameMenu.MEDIUM_DESKTOP,GameMenu.SMALL=GameMenu.SMALL_DESKTOP,BaseGame.isMobileWeb?window.innerWidth>window.innerHeight?(GameMenu.LARGE=GameMenu.LARGE_MOBILE_LANSCAPE,GameMenu.MEDIUM=GameMenu.MEDIUM_MOBILE_LANSCAPE,GameMenu.SMALL=GameMenu.SMALL_MOBILE_LANSCAPE):(GameMenu.LARGE=GameMenu.LARGE_MOBILE_PORTRAIRT,GameMenu.MEDIUM=GameMenu.MEDIUM_MOBILE_PORTAIRT,GameMenu.SMALL=GameMenu.SMALL_MOBILE_PORTRAIT):(GameMenu.LARGE=GameMenu.LARGE_DESKTOP,GameMenu.MEDIUM=GameMenu.MEDIUM_DESKTOP,GameMenu.SMALL=GameMenu.SMALL_DESKTOP),GameMenu.style.size=GameMenu.MEDIUM,GameMenu.born=!0,GameMenu.menuItems=[],GameMenu.nextMenu=null,GameMenu.overlay=null,GameMenu.currentMenu=null,GameMenu.mouseDown=!1,GameMenu.lastMouseY=0,GameMenu.dragForce=0,GameMenu.canClick=!0,GameMenu.canDrag=!1,GameMenu.sideOpen=!1,GameMenu.sidebarContainer.x=-GameMenu.style.width,GameMenu.firstNewGameThemeAdShown=!1,GameMenu.background=new PIXI.Graphics,GameMenu.sidebarContainer.addChild(GameMenu.background),GameMenu.background.alpha=.75,dailyChallengeContainer=new PIXI.Container,a.addChild(dailyChallengeContainer),GameMenu.overlay=new PIXI.Graphics,GameMenu.overlay.beginFill(0),GameMenu.overlay.drawRect(0,0,1,1),GameMenu.overlay.endFill(),a.addChild(GameMenu.overlay),GameMenu.overlay.alpha=.2,GameMenu.overlay.visible=!1,GameMenu.overlay.on("pointerup",GameMenu.OnOverlayClick),GameMenu.overlay.shouldClose=!0,a.addChild(mainMenuHudButton),a.addChild(GameHud.CloseMenuHudButton),GameMenu.onCloseSideFns=[],GameMenu.afterCloseSideFns=[],GameMenu.onOpenSideFns=[];var e=ContentPath.themeMenuPicList||Asset.themeMenuPicList;GameMenu.AddSideMenuGraphic(),GameMenu.AddAction("New Game",!1,GameMenu.onNewGame,Asset.i.newGame),GameMenu.AddAction("Restart Game",!0,GameMenu.RestartGame,Asset.i.restartGame),GameMenu.AddAction("Themes",!0,function(){Analytics.ScreenView(Analytics.Tags.SCREENVIEW_THEMES),ThemeMenu.Open()},Asset.i.themes,e);var f=function(){Events.emit("howtoplayMenuOpen",null),GameMenu.HowToPlay()};GameMenu.AddAction("How to Play",!0,f,Asset.i.howToPlay);var g=function(){Events.emit("settingsMenuOpen",null),GameMenu.Settings()};GameMenu.AddAction("Settings",!0,g,Asset.i.options);var h=function(){Analytics.ScreenView(Analytics.Tags.SCREENVIEW_PROFILE),Events.emit("profileMenuOpen",null),GameMenu.Profile()};GameMenu.AddAction("Player Profile",!0,h,Asset.i.stats),GameMenu.moreGamesData.length>0&&GameMenu.AddAction("More Games",!0,GameMenu.MoreGames,Asset.i.moreGames),BaseGame.isMobileApp&&!ContentPath.rateAppButtonDisabled?GameMenu.AddAction("Rate the App",!0,GameMenu.RateAppLink):BaseGame.isMobileWeb&&!BaseGame.isMobileApp&&GameMenu.AddAction("Get the App",!0,GameMenu.GetAppLink),GameMenu.Resize()},mainMenuEnabled=!0;GameMenu.PreGame=function(){},GameMenu.DetectScreen=function(){window.innerWidth<=GameMenu.SMALL?GameMenu.style.size=GameMenu.SMALL:window.innerWidth<=GameMenu.LARGE?GameMenu.style.size=GameMenu.MEDIUM:GameMenu.style.size=GameMenu.LARGE},GameMenu.GetAppLink=function(){Analytics.TrackEvent("CATEGORY_MENU","MENU_MOBILE_UI_BTN","LABEL_GET_APP"),BaseGame.isiOS?GameMenu.onDownloadAppleApp():BaseGame.isAndroid&&GameMenu.onDownloadAndroidApp()},GameMenu.RateAppLink=function(){Analytics.TrackEvent("CATEGORY_MENU","MENU_MOBILE_UI_BTN","LABEL_RATE_APP"),BaseGame.isiOS?GameMenu.onDownloadAppleApp():BaseGame.isAndroid&&GameMenu.onDownloadAndroidApp()},GameMenu.onMouseWheel=function(a){var b=-a.deltaY/10;GameMenu.sideOpen?GameMenu.dragForce=b:GameMenu.currentMenu&&GameMenu.currentMenu.enableScroll&&GameMenu.currentMenu.onDrag(b)},document.addEventListener("mousewheel",GameMenu.onMouseWheel,!1),document.addEventListener("wheel",GameMenu.onMouseWheel,!1),GameMenu.OpenNewTab=function(a,b){void 0!==b&&Analytics.ScreenView(b),window.open(a,BaseGame.tabLocation)},GameMenu.EULA=function(){GameMenu.OpenNewTab("https://www.wildtangent.com/legal/eula",Analytics.Tags.SCREENVIEW_LEGAL)},GameMenu.Update=function(){if(GameMenu.currentMenu&&GameMenu.currentMenu.update(),GameMenu.mouseDown&&BaseGame.mouse.dX+BaseGame.mouse.dY>5){var a=BaseGame.mouse.y-GameMenu.lastMouseY;GameMenu.dragForce=a,GameMenu.lastMouseY=BaseGame.mouse.y,GameMenu.canClick=!1}0!=GameMenu.dragForce?(Math.abs(GameMenu.dragForce)>.1?GameMenu.dragForce*=.9:GameMenu.dragForce=0,GameMenu.dragForce>50&&(GameMenu.dragForce=50),GameMenu.dragForce<-50&&(GameMenu.dragForce=-50),GameMenu.mouseDown||(GameMenu.canClick=!1),GameMenu.sidebarContainer.y+=GameMenu.dragForce,GameMenu.sidebarContainer.y>0?GameMenu.sidebarContainer.y=0:GameMenu.sidebarContainer.y=GameMenu.sidebarContainer.height&&(GameMenu.sidebarContainer.y=0,GameMenu.canDrag=!1)},GameMenu.AdOpportunity=function(a){isRestart=a||!1;var b=GameMenu.PreGame;if(isRestart&&(b=function(){Game.RestartGame(),BaseGame.ShowActionBar(),GameMenu.HideOverlay()}),!isRestart)var c=!0;Ads.adOpportunities=Ads.adOpportunities||0;var d=!1;return 0==Game.data.everChangedTheme&&Ads.adOpportunities<3?d=!0:0==Game.data.everChangedTheme&&Ads.adOpportunities>4&&(Ads.adOpportunities-2)%3==0?d=!0:Ads.videosWatchedSinceReset>=2&&(d=!0),d?(GameMenu.ThemesAd(b),Ads.videosWatchedSinceReset=0):BaseGame.isMobileApp?(Ads.ShowInterstitial(),b()):BaseGame.isWGS?(Ads.ShowInterstitial(),b()):GameMenu.mobileUpsellShown?(GameMenu.isNewGame=c,b()):(GameMenu.mobileUpsellShown=!0,BaseGame.isMobileWeb,GameMenu.MobileAppAd(b,c)),Ads.adOpportunities++,Game.SaveData?Game.SaveData():SaveGame.Serialize(),d},GameMenu.Profile=function(){function a(){Analytics.TrackEvent("CATEGORY_MENU","MENU_PROFILE","LABEL_CLOSE_MENU"),Events.emit("profileMenuClose",null),GameMenu.CloseMenu()}GameMenu.DisableHamburger(),GameMenu.ShowOverlay();var b=420,c=UI.legalFontSizeBig;GameMenu.style.size=GameMenu.MEDIUM+20,window.innerHeight/window.innerWidth>1&&window.innerHeight>600&&(GameMenu.style.size=GameMenu.MEDIUM_MOBILE_LANSCAPE),GameMenu.CleanSlate(),GameMenu.MEDIUM===GameMenu.MEDIUM_MOBILE_LANSCAPE?(b=420,c=UI.legalFontSizeBig):GameMenu.MEDIUM===GameMenu.MEDIUM_MOBILE_PORTAIRT?(b=380,c=UI.legalFontSize):(b=420,c=UI.legalFontSizeBig);var d=UI.BasicMenu("Player Profile",GameMenu.style.size,b,GameMenu.style.size,GameMenu.style.size,b,b,a),e=GameMenu.style.size-42,f=null;if(FirebaseBridge.IsSignedIn()){var g=FirebaseBridge.GetProfilePictureURL(),h=UI.MaskedProfilePictureSprite(g,60),i=FirebaseBridge.GetSignedInUserName(),j=UI.CreateTextElement(i,{font:c+" "+UI.labelFont,fontWeight:900,tint:UI.primaryColor});j.x=72,j.y=30-j.height/2;var k=j.x+j.width+1,l=Math.min(k,e);h.addChild(j),h.y=22,h.scale.set(.9,.9),f=UI.BasicMenuItem("",l,74,!1,null,"center"),UI.AddSprite(f,h,null,!0)}else{var m=BaseGame.Sprite(profileIconPath),n=UI.CreateTextElement("Guest",{font:c+" "+UI.labelFont,fontWeight:900,tint:UI.primaryColor}),o=new PIXI.Container;m.x=5,n.x=m.x+60+12,n.y=30-n.height/2+16,(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&(n.y+=5);var p=Math.min(e,n.x+n.width+1);f=UI.BasicMenuItem("",p,72,!1,null,"center"),m.height=m.width=60,m.y=f.height/2-m.height/2+12,o.addChild(m),o.addChild(n),UI.AddSprite(f,o,null,!0)}GameMenu.StatsBackground=UI.CreateSimpleButton({width:e-20,height:160},{background:{color:16579836,opacity:1},border:{width:3,color:1535919},borderRadius:10,cursor:"default"},function(){}),GameMenu.UserBackground=UI.CreateSimpleButton({width:e-80,height:70},{background:{color:14211288,opacity:1},border:{width:3,color:1195612},borderRadius:16,cursor:"default"},function(){}),GameMenu.StatsBackground.x=30,GameMenu.UserBackground.x=60,GameMenu.StatsBackground.y=200,GameMenu.UserBackground.y=74,d.addChild(GameMenu.StatsBackground),d.addChild(GameMenu.UserBackground),d.addItem(f,!0);var q=GetGameStats(),r=[{name:"Games Won",stat:q.gamesWon.toString()},{name:"Games Played",stat:q.gamePlayed.toString()},{name:"Win Ratio",stat:Math.round(100*q.winRatio).toString()+"%"},{name:"Avg. Moves per Game",stat:Math.round(q.movePerGame).toString()}];d.addItem(UI.BasicMenuItem(" ",e,60,!1,null,"right",t,null,40));for(var s=0;sy&&UI.scaleSpriteByHeight(r,z),r.width>A&&UI.scaleSpriteByWidth(r,A),r.x=UI.getHorizontalCenter(r.width,window.innerWidth),r.y=UI.getVerticalCenter(z,y),dailyChallengeScreen.addChild(r),dailyChallengeScreen.resize=function(){d=window.innerHeight-UI.hudAndSidebarHeight,UI.scaleSpriteByHeight(u,d),y=Math.round(window.innerHeight-UI.hudAndSidebarHeight-30),window.innerHeight600&&(g=Math.round(1.2*g)));var h=UI.BasicMenu("How to Play",g,e,g,g,e,e,b,!0,!1);(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&h.useLargeXbutton();for(var i=h.addItem(UI.BasicMenuItem("",g,390,!1,null,"left")),j=GameMenu.howToPlayText.split("%p%"),k=new PIXI.Container,l=new PIXI.Container,m=0;m=0&&a=i.totalPage-1&&(h.rightButtonDisabled.visible=!0)),Events.emit("howtoplayPageChanged",{pageNumber:i.selectedPage+1}),GameMenu.howToPlayCurrentPage=i.selectedPage},i.prevPage=function(){i.jumpToPage(i.selectedPage-1)},i.nextPage=function(){i.jumpToPage(i.selectedPage+1)},i.totalPage=j.length,h.pagination=new PIXI.Container,h.pageBullets=[],h.pagination.realWidth=-8,i.selectedPage=0;for(var C=0;C<20;C++){var D=new PIXI.Graphics;D.x=28*C,D.y=15,D.interactive=!0,D.buttonMode=!0,D.page=C,D.on("pointerup",i.jumpToPage.bind(i,C)), D.beginFill(UI.primaryColor,1),D.drawCircle(0,0,8),D.endFill(),D.select=new PIXI.Graphics,D.addChild(D.select),D.select.beginFill(16777215,1),D.select.drawCircle(0,0,6),D.select.endFill(),h.pagination.addChild(D),h.pageBullets.push(D),C==i.selectedPage&&(D.select.visible=!1),C>=i.totalPage||i.totalPage<=1?D.visible=!1:h.pagination.realWidth+=28}h.pagination.activate=function(a){for(var b=0;b768&&(F.y=H.y=(h.height-.8*F.height)/2)):(F.y=H.y=(h.height+.8*F.height)/2,window.innerHeight>500&&(F.y=H.y=(h.height-.5*F.height)/2)):F.y=H.y=(h.height-F.height)/2,F.on("pointerup",i.prevPage),H.on("pointerup",i.nextPage),i.mouseDown=!1,i.lastMouseX=0,i.lastPageX=0,i.nextPage=0,i.startDrag=function(a){var b=BaseGame.NormalizePointerEventData(a);i.mouseDown=!0,i.lastPageX=l.x,i.lastMouseX=b.pageX},i.endDrag=function(){i.jumpToPage(i.nextPage),i.mouseDown=!1},i.onMove=function(a){var b=BaseGame.NormalizePointerEventData(a);if((i.mouseDown||"pointermove"!==a.type||b.isTouch)&&i.mouseDown){var c=b.pageX,d=c-i.lastMouseX;Math.abs(d)>10&&(l.x=i.lastPageX+d),i.nextPage=i.selectedPage,d<-i.width/3&&i.selectedPagei.width/3&&i.selectedPage>0&&(i.nextPage=i.selectedPage-1)}},i.interactive=!0,i.on("pointerout",i.endDrag).on("pointerupoutside",i.endDrag).on("pointerdown",i.startDrag).on("pointerup",i.endDrag).on("pointermove",i.onMove),GameMenu.Resize(),Analytics.ScreenView(Analytics.Tags.SCREENVIEW_HOWTOPLAY),h.canRedraw=!0,GameMenu.reDraw=GameMenu.HowToPlay.bind(null,!0,GameMenu.howToPlayCurrentPage),a&&i.jumpToPage(GameMenu.howToPlayCurrentPage)},GameMenu.navigatorHanlder=function(a,b,c){for(var d=0;d<3;d++)d!=this.index&&(a.children[d].clear(),a.children[d].beginFill(16777215),a.children[d].lineStyle(2,UI.primaryColor),a.children[d].arc(0,0,8,0,2*Math.PI),a.children[d].endFill());this.clear(),this.beginFill(UI.primaryColor),this.lineStyle(2,UI.primaryColor),this.arc(0,0,8,0,2*Math.PI),this.endFill(),TweenLite.to(b,.5,{x:-c.width/c.scale.x*this.index,ease:Back.easeOut.config(1)})},GameMenu.MoreGames=function(){function a(a,b){return function(){if(Math.abs(e.oldY-e.y)<10&&(GameMenu.moreGamesScrolled=!1),!GameMenu.moreGamesScrolled){Analytics.TrackEvent("CATEGORY_MENU","MENU_MORE_GAMES",b);var c=BaseGame.tabLocation;BaseGame.isMobileWeb&&(c="_self"),window.open(a,c)}GameMenu.moreGamesScrolled=!1}}GameMenu.DisableHamburger(),GameMenu.CleanSlate();var b=GameMenu.style.size;GameMenu.style.size=GameMenu.LARGE;var c=UI.BasicMenu("More Games",GameMenu.style.size-10,490,GameMenu.style.size-10,GameMenu.style.size-10,490,490,function(){GameMenu.CloseMenu(),Analytics.TrackEvent("CATEGORY_MENU","MENU_MORE_GAMES","LABEL_CLOSE_MENU")},!0,GameMenu.moreGamesData.length>3,"0xdddddd"),d=0,e=new PIXI.Sprite;e.oldY=e.y;for(var f=GameMenu.style.size/GameMenu.LARGE_DESKTOP,g=Math.round(530*f),h=Math.round(114*f),i=Math.round(120*f),j=0;jwindow.innerWidth&&(c.cardsSprite.x=-40+xOffset)),c.contentArea.addChild(e),e.y=70,e.x=15*f,e.mask=c.maskOverlay;var m=new PIXI.Sprite;m.x=15,m.y=490,m.width=GameMenu.style.size-10,m.height=window.innerHeight/2+245,c.contentArea.addChild(m),m.mask=c.maskOverlay;var n=new PIXI.Sprite;n.x=15,n.y=-(window.innerHeight-490)/2,n.width=530;n.height=60+(window.innerHeight-490)/2,c.contentArea.addChild(n),GameMenu.ShowMenu(c,3);var o=!1,p=function(a){e.y=70-e.heightHidden*a};c.onDragStart=function(){e.oldY=e.y,o=!0},c.onDrag=function(a){if(o&&(GameMenu.moreGamesScrolled=!0),o){q(),(a>0&&a<1||a<0&&a>-1)&&(a*=30);e.y+=a,e.y>70?e.y=70:e.y<140-e.heightHidden&&(e.y=140-e.heightHidden);var b=(e.y-70)/(e.heightHidden-70)*-1;c.setScrollPercent(b)}},c.onDragEnd=function(){GameMenu.moreGamesScrolled=!1,o=!1};var q=function(){e.heightHidden=e.totalHeight-c.h-70};e.totalHeight>c.h+70&&c.listenScroll(q,p,c.onDrag),window.menu=c,Analytics.ScreenView(Analytics.Tags.SCREENVIEW_MOREGAMES),GameMenu.style.size=b},GameMenu.Welcome=function(){function a(){GameMenu.OpenNewTab(c)}function b(){GameMenu.OpenNewTab(d)}var c="https://www.wildtangent.com/legal/terms-of-use",d="https://www.wildtangent.com/legal/privacy";GameMenu.DisableHamburger(),GameMenu.CleanSlate(),GameMenu.style.size=GameMenu.SMALL;var e=!1,f=!1;GameMenu.SMALL==GameMenu.SMALL_MOBILE_LANSCAPE?e=!0:GameMenu.SMALL==GameMenu.SMALL_MOBILE_PORTRAIT&&(f=!0);var g=UI.GrayTextLinkButton("Terms Of Service",a,"20px",26316),h=UI.GrayTextLinkButton("Privacy Policy",b,"20px",26316),i=ContentPath.welcomeDescriptionTextSize||"22px";(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&(i=ContentPath.welcomeDescriptionTextSizeMobile||"20px");var j=UI.BasicMenu("",GameMenu.style.size,350,GameMenu.style.size,GameMenu.style.size,350,350,GameMenu.CloseMenu),k=UI.BasicMenuItem("To continue playing, you need to confirm\nthat you agree to our Terms of Service\nand have read our Privacy Policy.",GameMenu.style.size,94,!1,null,"center",i+" "+UI.labelFont),l=UI.BasicMenuItem("",g.width,40,!1,null,"center"),m=UI.BasicMenuItem("",h.width,30,!1,null,"center"),n=UI.BasicMenuItem("",GameMenu.style.size-100,25,!1,null,"center"),o=UI.Separator(2,.95*n.width,1869002,.025*n.width,5),p=UI.BasicMenuItem("",175,62,!1,null,"center");j.yPosition=.6;var q=BaseGame.Sprite(welcomeScreenHeaderLogo);if(q.width>GameMenu.style.size){var r=Math.round(.84*GameMenu.style.size);UI.scaleSpriteByWidth(q,r)}j.addChild(q),e||f?(q.scale.x=q.scale.y=.7,q.y=j.y-q.height/5):q.y=j.y-(q.height-60),q.x=(j.width-q.width)/2,j.hideClose(),j.hideCards();var s=UI.BasicButton("Accept",function(){GameMenu.CloseMenu(),TweenLite.delayedCall(.2,function(){BaseGame.ShowActionBar(),GameMenu.HideOverlay(),Game.NewGame(),(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&setTimeout(ThemeMenu.loadThemes,200)})},2);j.addItem(k),l.addChild(g),j.addItem(l,!0),m.addChild(h),j.addItem(m,!0),n.addChild(o),j.addItem(n,!0),p.addChild(s),j.addItem(p,!0),AddSideArtToWindow(j,sideArtList.welcomeLeft,sideArtList.welcomeRight,welcomeRightSideArtHalign),(e||f)&&void 0!==ContentPath.welcomeLogoHeightDividerMobile&&(q.y=j.y-q.height/ContentPath.welcomeLogoHeightDividerMobile),GameMenu.ShowMenu(j,3)},GameMenu.Statistics=function(){function a(){Analytics.TrackEvent("CATEGORY_MENU","MENU_STATISTICS","LABEL_CLOSE_MENU"),GameMenu.CloseMenu()}GameMenu.DisableHamburger(),GameMenu.style.size=GameMenu.MEDIUM,GameMenu.CleanSlate();var b=UI.BasicMenu("Statistics",GameMenu.style.size,300,GameMenu.style.size,GameMenu.style.size,300,300,a);b.addItem(UI.BasicMenuItem("Games Played",GameMenu.style.size-15,50,!1,null,"right",null,null,30)),b.addItem(UI.BasicMenuItem("Games Won",GameMenu.style.size-15,50,!1,null,"right",null,null,30)),b.addItem(UI.BasicMenuItem("Win Ratio",GameMenu.style.size-15,50,!1,null,"right",null,null,30)),b.addItem(UI.BasicMenuItem("Avg. Moves per Game",GameMenu.style.size-15,50,!1,null,"right",null,null,30));var c=Game.data.numGames-1,d=0,e=0;c&&(d=Game.data.gamesWon/(Game.data.numGames-1),e=Game.data.totalMoves/(Game.data.numGames-1)),UI.AddText(b.items[0],c.toString(),UI.legalFontSizeBig),UI.AddText(b.items[1],Game.data.gamesWon.toString(),UI.legalFontSizeBig),UI.AddText(b.items[2],d.toFixed(2).toString(),UI.legalFontSizeBig),UI.AddText(b.items[3],e.toFixed(2).toString(),UI.legalFontSizeBig),GameMenu.ShowMenu(b,3),Analytics.ScreenView(Analytics.Tags.SCREENVIEW_STATS),GameMenu.style.size=GameMenu.currentMenu},GameMenu.onNewGame=function(){Analytics.ScreenView(Analytics.Tags.SCREENVIEW_NEWGAME),GameMenu.AdOpportunity(!1)},GameMenu.MobileAppAd=function(a,b){GameMenu.DisableHamburger();var c=(ContentPath.gameTitle||"Solitaire with Themes")+"!";if(!0===ContentPath.hideMobileAppUpsell)a();else{GameMenu.style.size=GameMenu.MEDIUM;var d=320,e=150,f="",g=!1,h=!1;GameMenu.MEDIUM==GameMenu.MEDIUM_MOBILE_LANSCAPE?h=!0:GameMenu.MEDIUM==GameMenu.MEDIUM_MOBILE_PORTAIRT&&(g=!0,d=460,e=180,f=" "),GameMenu.CleanSlate();var i=UI.BasicMenu(f+"Get the App!",GameMenu.style.size,d,GameMenu.style.size,GameMenu.style.size,d,d,function(){GameMenu.nextMenu=a,Analytics.TrackEvent("CATEGORY_MENU","MENU_MOBILE_UPSELL","LABEL_CLOSE_MENU"),GameMenu.CloseMenu()});GameMenu.isNewGame=b;var j,k,l;g?(j=i.addItem(UI.BasicMenuItem("",GameMenu.style.size,e,!1,16777215,"center")),k=UI.CreateTextElement(c,{font:"19px "+UI.itemFont,tint:"0x104E78",align:"left",fontWeight:"bolder"}),l=UI.CreateTextElement("- Free Download\n\n- Airplane/Offline Mode\n\n- More Themes",{font:"17px "+UI.labelFont,tint:"0x104E78",align:"left"})):(j=i.addItem(UI.BasicMenuItem("",GameMenu.style.size-25,e,!1,16777215,"center")),k=UI.CreateTextElement(c,{font:"21px "+UI.itemFont,tint:"0x104E78",align:"left",fontWeight:"bolder"}),l=UI.CreateTextElement("- Free Download\n\n- Airplane/Offline Mode\n\n- More Themes",{font:"20px "+UI.labelFont,tint:"0x104E78",align:"left"})),j.addChild(k),j.addChild(l);var m=BaseGame.Sprite(mobileAdIcon);UI.scaleSpriteByWidth(m,128),j.addChild(m),m.x=m.y=g?5:30;var n=BaseGame.Sprite(Asset.i.app_store_button);UI.scaleSpriteByWidth(n,150),j.addChild(n),n.interactive=!0,n.buttonMode=!0,n.on("pointerup",GameMenu.onDownloadAppleApp),n.x=m.x,g&&(m.x=80);var o=BaseGame.Sprite(Asset.i.google_play_button);UI.scaleSpriteByWidth(o,150),j.addChild(o),o.interactive=!0,o.buttonMode=!0,o.on("pointerup",GameMenu.onDownloadAndroidApp),h?(n.y=m.y+m.height+25,o.x=n.x+o.width+70):g?(n.y=m.y+l.height+k.height+m.height+90,o.x=n.x+o.width+10):(n.y=m.y+m.height+25,o.x=n.x+o.width+110),o.y=n.y,k.x=m.x+m.width+55,g&&(k.x=55,o.scale.x=o.scale.y=.5,n.scale.x=n.scale.y=.5,m.scale.x=m.scale.y=.6),(BaseGame.isMobileWeb||BaseGame.isMobileWeb)&&(k.x-=35),k.y=m.y-5,g&&(k.y=m.y+170),l.x=k.x,l.y=k.y+40,GameMenu.ShowMenu(i,3),Analytics.TrackEvent("CATEGORY_MENU","MENU_MOBILE_UPSELL")}},GameMenu.ThemesAd=function(a){GameMenu.DisableHamburger(),GameMenu.CleanSlate(),GameMenu.style.size=GameMenu.MEDIUM;var b=300,c=370;GameMenu.MEDIUM==GameMenu.MEDIUM_MOBILE_LANSCAPE?(b=400,c=480):GameMenu.MEDIUM==GameMenu.MEDIUM_MOBILE_PORTAIRT?(b=400,GameMenu.style.size=460,c=480):(b=410,c=485);var d=Background.currentImage;GameMenu.firstNewGameThemeAdShown||(GameMenu.firstNewGameThemeAdShown=!0,d=0),void 0===BaseGame.themeUpsellIndex?BaseGame.themeUpsellIndex=Math.floor(Math.random()*BaseGame.featuredThemeIndexArray.length):BaseGame.themeUpsellIndex>=BaseGame.featuredThemeIndexArray.length&&(BaseGame.themeUpsellIndex=0),d=BaseGame.featuredThemeIndexArray[BaseGame.themeUpsellIndex],BaseGame.themeUpsellIndex++;var e=Background.themeImages[d],f=!1;if(null!=Background.themeImages&&null!=Background.themeImages[d]&&null!=Background.themeImages[d].cardURL&&"undefined"!=Background.themeImages[d].cardURL&&(f=!0),f)try{var g=UI.BasicMenu(" New Theme?",GameMenu.style.size,b,GameMenu.style.size,GameMenu.style.size,b,b,function(){GameMenu.nextMenu=a,Analytics.TrackEvent("CATEGORY_MENU","MENU_THEME_UPSELL","LABEL_CLOSE_MENU"),GameMenu.CloseMenu()});g.usePortaitLargeXButton();var h=new PIXI.Sprite.fromImage(Background.themeImages[d].cardURL),i=new PIXI.Sprite.fromImage(Background.themeImages[d].url),j=UI.BasicButton("View More",function(){GameMenu.CloseMenu(),setTimeout(function(){ThemeMenu.Open(a)},400),Analytics.TrackEvent("CATEGORY_MENU","MENU_THEME_UPSELL","LABEL_VIEW_MORE")}),k=UI.BasicButton("Apply",function(){GameMenu.nextMenu=a,GameMenu.CloseMenu(),Background.ApplyTheme(d),Game.data.everChangedTheme=!0,Analytics.TrackEvent("CATEGORY_MENU","MENU_THEME_UPSELL","Apply: "+e.name)},2);g.addItem(UI.BasicMenuItem("",GameMenu.style.size,340,!1,16777215)),g.items[0].addChild(i),i.scale.x=i.scale.y=(GameMenu.style.size-16)/1920,i.x=8;var l=new PIXI.Container;g.items[0].addChild(h),l.addChild(k),l.addChild(j),g.addChild(l),h.scale.x=h.scale.y=.3125;var m=250,n={width:76,height:102};h.rotation=.07,i.height>1&&(m=i.height),h.width>1&&(n={width:h.width,height:h.height}),h.x=GameMenu.style.size-n.width,h.y=m-n.height,k.width=j.width=.4*GameMenu.style.size,k.x=GameMenu.style.size-k.width-20,j.x=20,j.y=k.y=-140,l.y=c,AddSideArtToWindow(g,sideArtList.themesAd),GameMenu.ShowMenu(g,3)}catch(b){a()}else a()},GameMenu.GameWon=function(){function a(){Analytics.TrackEvent("CATEGORY_MENU","MENU_GAMEWON","LABEL_CLOSE_MENU"),GameMenu.CloseMenu()}GameMenu.DisableHamburger();var b=GameMenu.style.size;GameMenu.style.size=GameMenu.SMALL,GameMenu.CleanSlate();var c=UI.BasicMenu("Results",GameMenu.style.size,330,GameMenu.style.size,GameMenu.style.size,330,330,a);c.hideClose(),c.addItem(UI.BasicMenuItem("Score",GameMenu.style.size-15,40,!1,"right",null,null,null,25)),c.addItem(UI.BasicMenuItem("Moves",GameMenu.style.size-15,40,!1,"right",null,null,null,25)),c.addItem(UI.BasicMenuItem("Total Time",GameMenu.style.size-15,40,!1,"right",null,null,null,25)),c.addItem(UI.BasicMenuItem("Game Type",GameMenu.style.size-15,40,!1,"right",null,null,null,25)),Game.settings.scoreMode==Game.SCORE_MODE_VEGAS?UI.AddText(c.items[0],"$"+Game.data.score.toString(),UI.legalFontSizeBig):UI.AddText(c.items[0],Game.data.score.toString(),UI.legalFontSizeBig),UI.AddText(c.items[1],Game.data.moves.toString(),UI.legalFontSizeBig),UI.AddText(c.items[2],Game.data.timeInSeconds.toString().toHHMMSS(),UI.legalFontSizeBig),UI.AddText(c.items[3],Game.settings.scoreMode,UI.legalFontSizeBig),GameMenu.GameWon.countDown=BaseGame.gameWonCountDown,GameMenu.GameWon.isCountingDown=!0,TweenLite.killTweensOf(GameMenu.GameWon.count),GameMenu.GameWon.count=function(){if(GameMenu.GameWon.isCountingDown){if(GameMenu.GameWon.countDown<=0)return GameMenu.GameWon.isCountingDown=!1,TweenLite.killTweensOf(GameMenu.GameWon.count),Analytics.TrackEvent("CATEGORY_MENU","MENU_GAMEWON","LABEL_AUTO_START"),TweenLite.delayedCall(.75,Game.NewGame,[!1]),GameMenu.CloseMenu(),void GameMenu.HideOverlay();GameMenu.GameWon.label.t.text=" New game starts in "+GameMenu.GameWon.countDown+" ...",GameMenu.GameWon.label.resize(GameMenu.GameWon.label.w,30),GameMenu.GameWon.countDown--,TweenLite.delayedCall(1,GameMenu.GameWon.count)}},TweenLite.delayedCall(BaseGame.gameWonDelay,GameMenu.GameWon.count);var d=UI.BasicButton("New Game",function(){GameMenu.GameWon.isCountingDown=!1,TweenLite.killTweensOf(GameMenu.GameWon.count),Analytics.TrackEvent("CATEGORY_MENU","MENU_GAMEWON","LABEL_NEW_GAME_BUTTON"),TweenLite.delayedCall(.75,Game.NewGame,[!1]),GameMenu.CloseMenu(),GameMenu.HideOverlay()},2);c.addItem(d,!0),AddSideArtToWindow(c,sideArtList.gameWon),GameMenu.ShowMenu(c,3);var e=" New game auto start in "+BaseGame.gameWonCountDown+" ...",f={fontWeight:700,align:"center"};GameMenu.GameWon.label=UI.BasicMenuItemCustomText(e,GameMenu.style.size,30,f),GameMenu.GameWon.label.w=GameMenu.style.size,c.addItem(GameMenu.GameWon.label),Analytics.TrackGameResultMetrics("CATEGORY_GAME","GAME_WON",Game.settings.scoreMode,Game.settings.drawMode,Game.data.timeInSeconds,Game.data.score,Game.data.moves,!0),Events.emit("gameWin",{score_mode:Game.settings.scoreMode,draw_mode:Game.settings.drawMode,score:Game.data.score,moves:Game.data.moves,time:Game.data.timeInSeconds}),GameMenu.style.size=b},GameMenu.onDownloadMobileApp=function(){BaseGame.isiOS?GameMenu.onDownloadAppleApp():GameMenu.onDownloadAndroidApp()},GameMenu.onDownloadAppleApp=function(){Analytics.TrackEvent("CATEGORY_MENU","MENU_MOBILE_UPSELL","LABEL_APPLE"),window.open(iTunesStoreURL)},GameMenu.onDownloadAndroidApp=function(){Analytics.TrackEvent("CATEGORY_MENU","MENU_MOBILE_UPSELL","LABEL_GOOGLE"),window.open(googlePlayStoreURL)},GameMenu.Settings=function(){function a(){Analytics.TrackEvent("CATEGORY_SETTINGS","ACTION_XBUTTON","LABEL_CLOSE_MENU"),Events.emit("settingsMenuClose",null),GameMenu.CloseMenu()}var b=300;GameMenu.DisableHamburger(),GameMenu.CleanSlate();var c=GameMenu.style.size;GameMenu.style.size=GameMenu.SMALL;var d=40,e="24px";if(BaseGame.isMobileApp||BaseGame.isMobileWeb){var f=window.innerHeight/window.innerWidth;(f<1&&window.innerHeight>600||f>1&&window.innerWidth>600)&&(b*=1.4,GameMenu.style.size=1.5*GameMenu.SMALL,e="30px",d=56)}var g=UI.BasicMenu("Settings",GameMenu.style.size,b,GameMenu.style.size,GameMenu.style.size,b,b,a);g.paddingLeft=50,g.addItem(UI.BasicMenuItem("Sound",GameMenu.style.size+10,d,!1,null,"right",e+" "+UI.labelFont,null,35)),g.addItem(UI.BasicMenuItem("Show Time and Moves",GameMenu.style.size+10,d,!1,null,"right",e+" "+UI.labelFont,null,35)),g.addItem(UI.BasicMenuItem("Left Hand Mode",GameMenu.style.size+10,d,!1,null,"right",e+" "+UI.labelFont,null,35));g.addItem(UI.BasicMenuItem(" ",GameMenu.style.size+10,10,!1,null,"center","18px "+UI.labelFont)),g.addItem(UI.BasicMenuItem("Version: "+Main.version,GameMenu.style.size+10,10,!1,null,"center","18px "+UI.labelFont,10858427,35)),g.addItem(UI.BasicMenuItem("Copyright "+copyrightYear+" WildTangent, Inc",GameMenu.style.size+10,10,!1,null,"center","18px "+UI.labelFont,10858427,35));var h=UI.GrayTextLinkButton("Legal",GameMenu.EULA,"18px",UI.primaryColor),i=UI.BasicMenuItem("",h.width,10,!1,null,"center");i.addChild(h),g.addItem(i);var j=UI.AddCheckbox(g.items[0],function(){Game.settings.sound=j.toggled,Game.SaveData?Game.SaveData():SaveGame.Serialize();var a="off";Game.settings.sound&&(a="on"),Events.emit("settingsChanged",{option:"sound",value:a}),Analytics.TrackEvent("CATEGORY_SETTINGS","SETTINGS_SOUND",a)});j.setValue(Game.settings.sound);var k=UI.AddCheckbox(g.items[1],function(){Game.settings.showTimeAndMoves=k.toggled,GameHud.ShowTimeAndMovesSetting(),Game.SaveData?Game.SaveData():SaveGame.Serialize();var a="off";Game.settings.showTimeAndMoves&&(a="on"),Events.emit("settingsChanged",{option:"time_and_moves",value:a}),Analytics.TrackEvent("CATEGORY_SETTINGS","SETTINGS_TIME_MOVES",a)});k.setValue(Game.settings.showTimeAndMoves);var l=UI.AddCheckbox(g.items[2],function(){l.toggled?Game.SwitchHandLayout(Game.HAND_LAYOUT_LEFT):Game.SwitchHandLayout(Game.HAND_LAYOUT_RIGHT),Game.settings.leftHandMode=l.toggled,Game.SaveData?Game.SaveData():SaveGame.Serialize();var a="off";Game.settings.leftHandMode&&(a="on"),Events.emit("settingsChanged",{option:"left_hand",value:a}),Analytics.TrackEvent("CATEGORY_SETTINGS","SETTINGS_LEFT_HAND",a)});l.setValue(Game.settings.leftHandMode),Game.layout.currentHandLayout==Game.HAND_LAYOUT_RIGHT&&l.setValue(!1),Game.settings.showTimeAndMoves||k.setValue(!1),AddSideArtToWindow(g,sideArtList.settings),GameMenu.ShowMenu(g,3),GameMenu.Resize(),Analytics.ScreenView(Analytics.Tags.SCREENVIEW_SETTINGS),GameMenu.style.size=c},GameMenu.CleanSlate=function(){GameMenu.ShowOverlay(),GameMenu.overlay.shouldClose=!1},GameMenu.ShowMenu=function(a,b){GameMenu.Resize(),a.resize(window.innerWidth-16,window.innerHeight-16);var c=a.menuWidth*a.scale.x;a.x=Math.round(.5*BaseGame.innerWidth-.5*c),a.y=Math.round(.5*BaseGame.innerHeight-.5*a.height),b=b||0,a.tweenMode=b;var d=.5,e=.3;1==b||3==b||0==b?a.y=-a.height:2==b&&(a.y=window.innerHeight),0==b&&(d=0,e=0),GameMenu.menuContainer.addChild(a);var f=a.yPosition||.5;TweenLite.to(a,d,{y:Math.round(BaseGame.innerHeight*f-.5*a.height),ease:Back.easeOut.config(1),delay:e,onComplete:function(){GameMenu.currentMenu=a,GameMenu.Resize()}})},GameMenu.CloseMenu=function(){if(GameMenu.tweenMode&&(GameMenu.currentMenu.tweenMode=3,delete GameMenu.tweenMode),GameMenu.currentMenu){TweenLite.killTweensOf(GameMenu.currentMenu);var a=-GameMenu.currentMenu.height;2==GameMenu.currentMenu.tweenMode?a=window.innerHeight:3==GameMenu.currentMenu.tweenMode&&(a=window.innerHeight),TweenLite.to(GameMenu.currentMenu,.5,{y:a,ease:Back.easeIn.config(1),onComplete:GameMenu.RemoveCurrentMenu}),BaseGame.ShowActionBar(),GameMenu.HideOverlay(),Game.FadeInGame()}GameMenu.isNewGame&&(GameMenu.isNewGame=!1),GameMenu.reOpenWelcome&&(GameMenu.Welcome(),GameMenu.reOpenWelcome=!1)},GameMenu.RemoveCurrentMenu=function(){TweenLite.killTweensOf(GameMenu.currentMenu),GameMenu.menuContainer.removeChild(GameMenu.currentMenu),GameMenu.currentMenu=null,GameMenu.menuContainer.interactive=!0,null!=GameMenu.nextMenu?(GameMenu.nextMenu(),GameMenu.nextMenu=null):ThemeMenu.open||DownloadButton.ShowButton()},GameMenu.Resize=function(a){if(GameMenu.overlay.width=window.innerWidth,GameMenu.overlay.height=window.innerHeight,GameMenu.background.clear(),GameMenu.background.beginFill(GameMenu.style.bgColor),GameMenu.background.drawRect(0,0,GameMenu.style.width,window.innerHeight),GameMenu.background.endFill(),GameMenu.currentMenu){GameMenu.currentMenu.resize(window.innerWidth-16,window.innerHeight-16);var b=GameMenu.currentMenu.menuWidth*GameMenu.currentMenu.scale.x,c=GameMenu.currentMenu.yPosition||.5;GameMenu.currentMenu.x=Math.round(.5*BaseGame.innerWidth-.5*b),GameMenu.currentMenu.y=Math.round(BaseGame.innerHeight*c-.5*GameMenu.currentMenu.height)}dailyChallengeScreen&&dailyChallengeScreen.resize(),GameMenu.tooltip&&TweenLite.killTweensOf(GameMenu.tooltip),BaseGame.isMobileWeb||BaseGame.isMobileApp?window.innerWidth>window.innerHeight?(GameMenu.LARGE=GameMenu.LARGE_MOBILE_LANSCAPE,GameMenu.MEDIUM=GameMenu.MEDIUM_MOBILE_LANSCAPE,GameMenu.SMALL=GameMenu.SMALL_MOBILE_LANSCAPE,GameMenu.currentSideImage&&(GameMenu.currentSideImage.alpha=1)):(GameMenu.LARGE=GameMenu.LARGE_MOBILE_PORTRAIRT,GameMenu.MEDIUM=GameMenu.MEDIUM_MOBILE_PORTAIRT,GameMenu.SMALL=GameMenu.SMALL_MOBILE_LANSCAPE,GameMenu.currentSideImage&&(GameMenu.currentSideImage.alpha=0)):(GameMenu.LARGE=GameMenu.LARGE_DESKTOP,GameMenu.MEDIUM=GameMenu.MEDIUM_DESKTOP,GameMenu.SMALL=GameMenu.SMALL_DESKTOP),a&&GameMenu.currentMenu&&"function"==typeof GameMenu.reDraw&&GameMenu.currentMenu.canRedraw&&(GameMenu.RemoveCurrentMenu(),GameMenu.reDraw()),GameMenu.currentMenu&&"function"==typeof GameMenu.currentMenu.scaleResize&&GameMenu.currentMenu.scaleResize()},GameMenu.OnHudMainMenuBtnPress=function(){Game.data.gameOver||(0==GameMenu.sideOpen?(Analytics.TrackEvent("CATEGORY_MENU","MENU_HUD","LABEL_MENU_BUTTON"),GameMenu.OpenSide(),GameMenu.ClearTooltip()):GameMenu.CloseSide())},GameMenu.OpenSide=function(){GameMenu.ShowOverlay(),TweenLite.to(GameMenu.mainGameContainer,.3,{x:GameMenu.style.width}),TweenLite.to(GameMenu.sidebarContainer,.3,{x:0}),GameMenu.sideOpen=!0,GameMenu.overlay.shouldClose=!0,Events.emit("menuButtonClick",null),GameMenu.sidebarContainer.y=0,GameMenu.onOpenSideMenu(),GameUI.hideMobileFBLike(),GameHud.mainMenuHudButton.visible=!1,TweenLite.delayedCall(.3,function(){GameHud.CloseMenuHudButton.visible=!0,GameHud.CloseMenuHudButton.alpha=1})},GameMenu.onOpenSideMenu=function(){GameMenu.onOpenSideFns.forEach(function(a){"function"==typeof a&&a()})},GameMenu.CloseSide=function(){GameHud.CloseMenuHudButton.visible=!1,GameMenu.HideOverlay(),TweenLite.to(GameMenu.mainGameContainer,.3,{x:0}),TweenLite.to(GameMenu.sidebarContainer,.3,{x:-GameMenu.style.width,onComplete:function(){mainMenuEnabled=!0}}),GameMenu.sideOpen=!1,BaseGame.ShowActionBar(),GameMenu.CloseMenu(),Game.FadeInGame(),TweenLite.delayedCall(.3,GameUI.showMobileFBLike),TweenLite.delayedCall(.3,GameMenu.affterCloseSideMenu),GameMenu.onCloseSideMenu()},GameMenu.onCloseSideMenu=function(){GameMenu.onCloseSideFns.forEach(function(a){"function"==typeof a&&a()})},GameMenu.affterCloseSideMenu=function(){GameMenu.afterCloseSideFns.forEach(function(a){"function"==typeof a&&a()}),GameHud.CloseMenuHudButton.visible=!1},GameMenu.ShowOverlay=function(){TweenLite.killTweensOf(GameMenu.overlay),GameMenu.overlay.visible=!0,GameMenu.overlay.interactive=!0,TweenLite.to(GameMenu.overlay,.3,{alpha:.75}),BaseGame.HideActionBar(),GameUI.showMobileFBLikeOverlay()},GameMenu.HideOverlay=function(){TweenLite.killTweensOf(GameMenu.overlay),GameUI.hideMobileFBLikeOverlay(),TweenLite.to(GameMenu.overlay,.3,{alpha:0,onComplete:function(){GameMenu.overlay.visible=!1,GameMenu.overlay.alpha=0,GameMenu.overlay.interactive=!1,(null===GameMenu.nextMenu||isRestart)&&(isRestart=!1,GameMenu.EnableHamburger())}})},GameMenu.DisableHamburger=function(){mainMenuHudButton.visible=!1},GameMenu.EnableHamburger=function(){mainMenuHudButton.visible=!0},GameMenu.OnOverlayClick=function(){GameMenu.overlay.shouldClose&&GameMenu.CloseSide()},GameMenu.ShowTooltip=function(a){if(GameMenu.ClearTooltip(),!Game.data.gameOver){var b=BaseGame.Sprite(Asset.i.tooltip);b.setTransform(0,b.height,1,-1),GameMenu.tooltip=new PIXI.Container,GameMenu.tooltip.addChild(b),GameMenu.menuContainer.addChild(GameMenu.tooltip),GameMenu.tooltip.y=-GameMenu.tooltip.height-10,GameMenu.tooltip.interactive=!0,GameMenu.tooltip.on("pointerup",GameMenu.ClearTooltip);var c=UI.CreateTextElement(a,{font:"16px "+UI.bodyFont});GameMenu.tooltip.addChild(c),c.y=29,c.x=14}},GameMenu.ClearTooltip=function(){GameMenu.tooltip&&(GameMenu.menuContainer.removeChild(GameMenu.tooltip),GameMenu.tooltip.off("pointerup",GameMenu.ClearTooltip),GameMenu.tooltip=null)},GameMenu.AddTitle=function(a){var b=GameMenu.GetRectangle(GameMenu.style.width,GameMenu.style.titleHeight,GameMenu.style.titleColor,!1),c=UI.CreateTextElement(a,{font:"20px "+UI.buttonFont});c.x=20,c.y=Math.round(.5*b.height-.5*c.height),b.addChild(c),GameMenu.sidebarContainer.addChild(b),GameMenu.menuItems.length>0&&(b.y=GameMenu.menuItems[GameMenu.menuItems.length-1].y+GameMenu.menuItems[GameMenu.menuItems.length-1].height),GameMenu.menuItems.push(b)},GameMenu.AddSideMenuGraphic=function(a){if(a=a||ContentPath.sideMenuLogo){var b=BaseGame.Sprite(a);UI.scaleSpriteByWidth(b,GameMenu.style.width),GameMenu.sidebarContainer.addChild(b),GameMenu.menuItems.length>0&&(b.y=GameMenu.menuItems[GameMenu.menuItems.length-1].y+GameMenu.menuItems[GameMenu.menuItems.length-1].height),GameMenu.menuItems.push(b)}},GameMenu.AddAction=function(a,b,c,d,e){e=e||[""],Array.isArray(e)||(e=[e]);var f=GameMenu.style.actionHeight;""!=e[0]&&(f=63);var g=GameMenu.GetRectangle(GameMenu.style.width,f,GameMenu.style.actionColor,b);GameMenu.sidebarContainer.addChild(g);var h=e.map(function(a){return"string"==typeof a?Asset.GetTexture(a):a}),i=new PIXI.Graphics;if(i.beginFill(15761955),i.drawRect(0,0,GameMenu.style.width,f),i.endFill(),i.alpha=0,g.addChild(i),""!==e[0]){var j=new PIXI.extras.AnimatedSprite(h,!0);"object"==typeof e[0]&&j.scale.set(.5,.5),g.bigImage=j,g.currentBigImage=0,g.totalBigImage=e.length,GameMenu.afterCloseSideFns.push(function(){g.currentBigImage=g.currentBigImage>=g.totalBigImage-1?0:g.currentBigImage+1,g.bigImage.gotoAndStop(g.currentBigImage)}),g.addChild(j),j.x=GameMenu.style.width-144,j.y=0}var k=ContentPath.sideMenuFontSize||"20px ";k.indexOf(" ")<0&&(k+=" ");var l=ContentPath.mainMenuFontWeight||"700",m=UI.CreateTextElement(a,{font:k+UI.buttonFont,fontWeight:l}),n=UI.CreateTextElement(a,{font:k+UI.buttonFont,fontWeight:l,tint:3355443});if(n.alpha=0,g.addChild(n),g.addChild(m),""!=(d=d||"")){var o;"string"==typeof d&&(o=BaseGame.Sprite(d)),"object"==typeof d&&d.length>1&&(o=BaseGame.Sprite(d[0],d[1])),imageScale=24/o.height,o.scale.set(imageScale,imageScale),g.addChild(o),o.x=5,o.y=Math.round(.5*g.height-12)+2,m.x=45}else m.x=5;m.y=Math.round(.5*g.height-.5*m.height),n.x=m.x+1,n.y=m.y+2,GameMenu.menuItems.length>0&&(g.y=GameMenu.menuItems[GameMenu.menuItems.length-1].y+GameMenu.menuItems[GameMenu.menuItems.length-1].height),this.onClick=function(){mainMenuEnabled&&(mainMenuEnabled=!1,GameMenu.CloseSide(),c())},g.interactive=!0,g.buttonMode=!0,g.on("pointerdown",GameMenu.StartDrag).on("pointerup",GameMenu.StopDrag).on("pointerupoutside",GameMenu.StopDrag).on("pointertap",this.onClick).on("mouseover",function(a){i.alpha=1,n.alpha=1}).on("mouseout",function(a){i.alpha=0,n.alpha=0}),GameMenu.menuItems.push(g)},GameMenu.StartDrag=function(a){BaseGame.NormalizePointerEventData(a).isTouch&&BaseGame.UpdateMousePositionManual(a.data.global.x,a.data.global.y),BaseGame.mouse.dX=0,BaseGame.mouse.dY=0,GameMenu.lastMouseY=BaseGame.mouse.y,GameMenu.mouseDown=!0},GameMenu.StopDrag=function(){GameMenu.mouseDown=!1},GameMenu.GetRectangle=function(a,b,c,d){a*=1/GameMenu.sidebarContainer.scale.x,b*=1/GameMenu.sidebarContainer.scale.y;var e=new PIXI.Graphics;return e.beginFill(c),e.drawRect(0,0,a,b),d&&(e.beginFill(2697513),e.drawRect(0,3,a,1),e.endFill(),e.beginFill(3622233),e.drawRect(0,0,a,1),e.endFill()),e},GameMenu.howToPlayImage=BaseGame.ImageLists.howToPlay,GameMenu.howToPlayText=ContentPath.howToPlayText||"The goal in Solitaire is to move all the cards to the 4 Home Stacks (marked on the board with a "+acePileSymbolDescription+'). This game uses 7 Playable piles and a Draw pile. The top, face-up card of each pile is the only playable card in that pile.%p%You can move a face-up card on top of another face-up card that is one higher in value AND is the opposite color. For example, a Red 3 can go on a Black 4.%p%Note: Kings are high, Aces are low. If a stack of face-up cards (arranged in descending and alternating color order) starts with a card that can legally move to another playable face-up card, you can move the entire stack onto the playable card.%p%If you clear a pile from the board, leaving an empty space, you can fill it with a King and begin building a new pile from that King card.%p%If you uncover an Ace, it can be moved into one of the 4 Home Stacks. Cards moved to a Home Stack must go in ascending order and be of the same suit. You can move cards from the Home Stacks back into the playable piles, but there is a point penalty. %p%If you run out of playable cards to move, use the Draw pile. Depending on the setting you picked when you started your game, you\'ll draw either 1 or 3 cards at a time. If you want to change your draw setting, start a new game. %p%You can use the undo command in the bottom right corner to take back your previous moves, but there is a point penalty for each "undo". With Vegas Style Scoring, you start with -52 points and each card added to a Home Stack gives you 5 points.',GameMenu.PreGame=function(a){Game.data.finishedDealing&&(GameMenu.nextMenu=null,GameMenu.DisableHamburger(),Game.FadeOutGame(),Game.NewGame(a),GameMenu.CloseMenu(),GameMenu.HideOverlay(),Analytics.TrackEvent("CATEGORY_GAME","GAME_LOSE"))},GameMenu.GameWon=function(){function a(){Analytics.TrackEvent("CATEGORY_MENU","MENU_GAMEWON","LABEL_CLOSE_MENU"),GameMenu.CloseMenu()}GameMenu.DisableHamburger();var b=GameMenu.style.size;GameMenu.style.size=GameMenu.SMALL,GameMenu.CleanSlate();var c=UI.BasicMenu("Game Results",GameMenu.style.size,380,GameMenu.style.size,GameMenu.style.size,380,380,a);c.itemsOffset=3,c.hideClose();c.addItem(UI.BasicMenuItem(" ",GameMenu.style.size-25,118,!1,"center",null,null,null,35)),c.addItem(UI.BasicMenuItem("Score",GameMenu.style.size-15,30,!1,"right",null,null,null,25)),c.addItem(UI.BasicMenuItem("Moves",GameMenu.style.size-15,30,!1,"right",null,null,null,25)), c.addItem(UI.BasicMenuItem("Total Time",GameMenu.style.size-15,30,!1,"right",null,null,null,25)),c.addItem(UI.BasicMenuItem("Game Type",GameMenu.style.size-15,30,!1,"right",null,null,null,25)),c.addItem(UI.SeparatorItem(GameMenu.style.size-15,8)),Game.settings.scoreMode==Game.SCORE_MODE_VEGAS?UI.AddText(c.items[1],"$"+Game.data.score.toString(),UI.legalFontSizeBig):UI.AddText(c.items[1],Game.data.score.toString(),UI.legalFontSizeBig),UI.AddText(c.items[2],Game.data.moves.toString(),UI.legalFontSizeBig),UI.AddText(c.items[3],Game.data.timeInSeconds.toString().toHHMMSS(),UI.legalFontSizeBig),UI.AddText(c.items[4],Game.settings.scoreMode,UI.legalFontSizeBig);var d=(UI.CreateTextElement(" Earned ",{font:"36px "+UI.labelFont,tint:UI.primaryColor,fontWeight:900}),new PIXI.Sprite.fromImage("badgeFreecell_thumb.png"));scale=128/d.width,d.scale.set(scale,scale),c.addChild(d),d.x=GameMenu.style.size/2-d.width/2,d.y=55;for(var e=[{x:40,y:175},{x:40,y:312}],f=0;f<2;f++){var g=new PIXI.Graphics;g.beginFill(UI.primaryColor),g.drawRect(0,0,GameMenu.style.size-72,2),g.endFill(),g.x=e[f].x,g.y=e[f].y,c.addChild(g)}GameMenu.GameWon.countDown=BaseGame.gameWonCountDown,GameMenu.GameWon.isCountingDown=!0,TweenLite.killTweensOf(GameMenu.GameWon.count),GameMenu.GameWon.count=function(){if(GameMenu.GameWon.isCountingDown){if(GameMenu.GameWon.countDown<=0)return GameMenu.GameWon.isCountingDown=!1,TweenLite.killTweensOf(GameMenu.GameWon.count),Analytics.TrackEvent("CATEGORY_MENU","MENU_GAMEWON","LABEL_AUTO_START"),TweenLite.delayedCall(.75,Game.NewGame,[!1]),GameMenu.CloseMenu(),void GameMenu.HideOverlay();GameMenu.GameWon.label.t.text=BaseGame.countdownTextStart+GameMenu.GameWon.countDown+BaseGame.countdownTextEnd,GameMenu.GameWon.label.resize(GameMenu.GameWon.label.w,30),GameMenu.GameWon.countDown--,TweenLite.delayedCall(1,GameMenu.GameWon.count)}},TweenLite.delayedCall(BaseGame.gameWonDelay,GameMenu.GameWon.count);var h=UI.BasicButton("New Game",function(){GameMenu.GameWon.isCountingDown=!1,TweenLite.killTweensOf(GameMenu.GameWon.count),Analytics.TrackEvent("CATEGORY_MENU","MENU_GAMEWON","LABEL_NEW_GAME_BUTTON"),TweenLite.delayedCall(.75,Game.NewGame,[!1]),GameMenu.CloseMenu(),GameMenu.HideOverlay()},2);c.addItem(h,!0),c.addItem(UI.SeparatorItem(GameMenu.style.size-15,8)),AddSideArtToWindow(c,sideArtList.gameWon),GameMenu.ShowMenu(c,3);var i=BaseGame.countdownTextStart+GameMenu.GameWon.countDown+BaseGame.countdownTextEnd;GameMenu.GameWon.label=UI.BasicMenuItemCustomText(i,GameMenu.style.size,30,BaseGame.newGameCountdownTextStyle),GameMenu.GameWon.label.w=GameMenu.style.size,c.addItem(GameMenu.GameWon.label),Analytics.TrackGameResultMetrics("CATEGORY_GAME","GAME_WON",Game.settings.scoreMode,Game.settings.drawMode,Game.data.timeInSeconds,Game.data.score,Game.data.moves,!0),Events.emit("gameWin",{score_mode:Game.settings.scoreMode,draw_mode:Game.settings.drawMode,score:Game.data.score,moves:Game.data.moves,time:Game.data.timeInSeconds}),GameMenu.style.size=b};var Effects={};Effects.layer=null,Effects.burst=null,Effects.container=null,Effects.minior=1,Effects.major=2;var customGraphics=ContentPath.winFanfare||{},ribbonImage=ContentPath.winFanfareRibbon,card1Image=ContentPath.winFanfareCard1,card1Scale=customGraphics.Card1Scale||1,card2Image=ContentPath.winFanfareCard2,card2Scale=customGraphics.Card2Scale||1,youWinTextImage=ContentPath.winFanfareTextImage,youWinTextDark=ContentPath.winFanfareTextImageDark,leftMargin=customGraphics.LeftMargin||35,rightMargin=customGraphics.RightMargin||50,topMarginScale=customGraphics.TopMarginScale||1,sunburstPath=customGraphics.Sunburst,sunburstOffset=0,particlePaths=customGraphics.particle||[Asset.i.fanfareSpark];Effects.Init=function(a){Effects.layer=a,Effects.container=new PIXI.Container,Effects.layer.addChild(Effects.container),Effects.Resize()},Effects.update=function(){},Effects.ShowWinText=function(){Effects.winText=Effects.initWinText(),Effects.playWinText()},Effects.initWinText=function(){var a=Effects.wintext=new PIXI.Container;Effects.layer.addChild(a);var b=BaseGame.Sprite(ribbonImage);b.originalWidth=b.width,b.originalHeight=b.height;var c=1;.88*window.innerWidth5e3)return p.destroy(),a.destroy(),void Effects.layer.removeChild(a);e>750&&!s&&(i.visible=!0,TweenLite.to(j,.1,{rotation:-.383972}),TweenLite.to(k,.1,{rotation:.383972}),setTimeout(function(){TweenLite.to(j,.1,{rotation:.331613}),TweenLite.to(k,.1,{rotation:-.331613})},100),setTimeout(function(){TweenLite.to(j,.1,{rotation:0}),TweenLite.to(k,.1,{rotation:0})},200),s=!0),e>500&&p.update(.001*(d-q)),e>0&&e>1400&&!t&&(t=!0),e>=4500&&TweenLite.to(a,1,{alpha:0}),q=d,a.x=(window.innerWidth-b.width*c)/2,a.y=(window.innerHeight-b.height*c)/2-(50+sunburstOffset),a.y<0&&(a.y=Math.floor(.05*window.innerHeight)),(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&(heightFactor=window.innerHeight/window.innerWidth,a.y=(window.innerHeight-b.height*c)/2-sunburstOffset/2-30),window.innerWidth,requestAnimationFrame(v)};return p.emit=!0,v(),a},Effects.playWinText=function(){},Effects.Resize=function(){Effects.container&&(Effects.container.x=.5*Game.layout.gameWidth,Effects.container.y=.35*Game.layout.gameHeight)},Effects.fanfare=function(a,b,c,d){c=c||Effects.minior,d=d||BaseGame.effects.fanfare,1==d?Effects.fanfare1(a,b,c,d):2==d?Effects.fanfarev2(a,b,c,d):3==d&&Effects.fanfare3(a,b,c,d)},Effects.fanfare1=function(a,b,c,d){var e=new PIXI.Container;a.addChild(e);var f=Game.CARD_WIDTH-24,g=Game.CARD_HEIGHT-30,h=new PIXI.Container;h.x=-.5*f,h.y=-.5*g,e.addChild(h),h.x=-.5*Game.CARD_WIDTH-80,h.y=-.5*Game.CARD_HEIGHT-80;var i="src/sprites/fanfare_minior_1.png";c==Effects.major&&(i="src/sprites/fanfare_major_1.png"),2==d&&(i="src/sprites/fanfare_minior_2.png",c==Effects.major&&(i="src/sprites/fanfare_major_2.png"));var j=new PIXI.extras.SpriteSheet(i,0,0,236,286,{numRow:27,numCol:1,delay:20,repeat:1});j.scale=new PIXI.Point(1.73,1.73),h.addChild(j);var k=function(){if(a.x!=b.x||a.y!=b.y)return void setTimeout(k,100);j.play(function(){e.destroy(),a.removeChild(e)})};k()},Effects.fanfarev2=function(a,b,c,d){Effects.fanfare1(a,b,c,d)},Effects.fanfare3=function(a,b,c){c==Effects.minior?Effects.fanfare3Minior(a,b,c,!0):(Effects.fanfare3Major(a,b,c),SoundManager.PlaySound(SoundManager.SOUND_MEDIUM_FANFARE))},Effects.fanfare3Minior=function(a,b,c,d){var e=a.sprite,f=(Effects.minior,1),g=c==Effects.minior?50:70,h=new PIXI.Container,i=BaseGame.Sprite(Asset.i.card_glow_1);h.x=-Game.CARD_WIDTH/2,h.y=-Game.CARD_HEIGHT/2,h.visible=!1,h.addChild(i),b.addChild(h),h.alpha=f;var j=function(){if(e.x!=b.x||e.y!=b.y)return void setTimeout(j,100);d&&SoundManager.PlaySound(SoundManager.SOUND_SMALL_FANFARE),h.visible=!0,TweenLite.to(i,Effects.minior,{x:-g,y:-g,width:Game.CARD_WIDTH+2*g,height:Game.CARD_HEIGHT+2*g}),setTimeout(function(){TweenLite.to(i,.2,{alpha:.01})},500),setTimeout(function(){h.visible=!1},700),setTimeout(function(){h.destroy(),b.removeChild(h)},2e3)};return j(),h},Effects.fanfare3Major=function(a,b){var c=a.sprite,d=new Game.Card(a.suit,a.number);d.cardBackSprite.visible=!1,d.sprite.alpha=.5,d.sprite.tint=16768768,d.cardSprite.tint=16768768,c.addChild(d.sprite),d.sprite.visible=!1;var e=function(){if(c.x!=b.x||c.y!=b.y)return void setTimeout(e,100);d.sprite.visible=!0,TweenLite.to(d.sprite.scale,.6,{x:1.25,y:1.25}),setTimeout(function(){TweenLite.to(d.sprite,.1,{alpha:0})},600),setTimeout(function(){d.sprite.destroy(),c.removeChild(d.sprite)},800)};e()},Effects.initWinText=function(){var a=Effects.wintext=new PIXI.Container;Effects.layer.addChild(a);var b=BaseGame.Sprite(ribbonImage);b.originalWidth=b.width,b.originalHeight=b.height;var c=1,d=1,e=1;.82*window.innerWidth5e3)return a.destroy(),void Effects.layer.removeChild(a);e>750&&!s&&(k.visible=!0,setTimeout(function(){},100),setTimeout(function(){},200),s=!0),e>=4300&&u&&(u=!1,p.destroy()),e>500&&u&&p.update(.001*(d-q)),e>0&&e>1400&&!t&&(t=!0),e>=4300&&(TweenLite.to(a,.5,{alpha:0,delay:.4}),TweenLite.to(g.scale,.2,{x:0,y:0}),TweenLite.to(g,.2,{x:.5*b.originalWidth,y:.5*b.height-15+j}),TweenLite.to(b,.6,{width:0,delay:.1}),f&&TweenLite.to(f,.6,{width:0,height:0,y:0,delay:.1})),q=d;var h=window.innerWidth0&&TweenLite.delayedCall(1,Ads.countdownHouseAd)},Ads.resetInterstitialTimer=function(){TweenLite.delayedCall(180,function(){Ads.canShowInterstitial=!0})},Ads.ShowInterstitial=function(){BaseGame.isMobileApp?appHasAds&&Ads.showVideoInterstitial():window.self!=window.top&&window.parent&&Ads.ShowWGSAd()},Ads.ShowWGSAd=function(){Ads.canShowInterstitial&&(window.parent.postMessage("event=force_midroll","*"),Ads.videosWatchedSinceReset++,Game.SaveData?Game.SaveData():SaveGame.Serialize(),Ads.videoLoaded=!1,Ads.canShowInterstitial=!1,Ads.resetInterstitialTimer())},Ads.Resize=function(){if(Ads.adLayer&&Ads.adLayer.visible){Ads.adLayer.graphics.clear(),Ads.adLayer.graphics.beginFill(3355443),Ads.adLayer.graphics.drawRect(0,0,window.innerWidth,window.innerHeight),Ads.adLayer.graphics.endFill();var a=!1;window.innerWidth>window.innerHeight&&(a=!0),Ads.houseAd.landscape.visible=a,Ads.houseAd.portrait.visible=0==a;var b=1,c=.5*Ads.houseAdHeight,d=.5*Ads.houseAdWidth;a&&(c=.5*Ads.houseAdWidth,d=.5*Ads.houseAdHeight),b=window.innerWidth/c,c*b>window.innerWidth&&(b=window.innerWidth/c),d*b>window.innerHeight&&(b=window.innerHeight/d),Ads.houseAd.scale.x=b,Ads.houseAd.scale.y=b,Ads.houseAd.downloadButton.x=Math.round(.5*c-.5*Ads.houseAd.downloadButton.width),Ads.houseAd.downloadButton.y=Math.round(d-Ads.houseAd.downloadButton.height-5),Ads.houseAd.time.x=5,Ads.houseAd.time.y=5,Ads.houseAd.x=Math.round(.5*window.innerWidth-c*b*.5),Ads.houseAd.y=Math.round(.5*window.innerHeight-d*b*.5)}},Ads.HouseAdClick=function(){var a="https://play.google.com/store/apps/details?id=com.wildtangent.wildtangentcasino&hl=en";BaseGame.isiOS&&(a="https://itunes.apple.com/us/app/wildtangent-casino-free-slots/id1039004412?mt=8"),window.open(a,BaseGame.tabLocation)},Ads.ShowContainer=function(){Ads.mainContainer&&(Ads.mainContainer.style.display="inline")},Ads.HideContainer=function(){Ads.mainContainer&&(Ads.mainContainer.style.display="none")},Ads.setUpIMA=function(){Ads.createAdDisplayContainer(),Ads.adsLoader=new google.ima.AdsLoader(Ads.adDisplayContainer),Ads.adsLoader.addEventListener(google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED,Ads.onAdsManagerLoaded,!1),Ads.adsLoader.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR,Ads.onAdError,!1);var a=new google.ima.AdsRequest;a.adTagUrl="http://ads.aerserv.com/as/?plc=1000741&cb=&ip=&ua=&url=&vpaid=&vpw=&vph=",a.linearAdSlotWidth=640,a.linearAdSlotHeight=400,a.nonLinearAdSlotWidth=640,a.nonLinearAdSlotHeight=150,Ads.adsLoader.requestAds(a)},Ads.createAdDisplayContainer=function(){Ads.adDisplayContainer=new google.ima.AdDisplayContainer(document.getElementById("adContainer"),Ads.videoContent)},Ads.playAds=function(){Ads.ShowContainer(),Ads.adDisplayContainer.initialize();try{Ads.adsManager.init(640,360,google.ima.ViewMode.NORMAL),Ads.adsManager.start()}catch(a){}},Ads.onAdsManagerLoaded=function(a){var b=new google.ima.AdsRenderingSettings;b.restoreCustomPlaybackStateOnAdBreakComplete=!0,Ads.adsManager=a.getAdsManager(Ads.videoContent,b),Ads.adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR,Ads.onAdError),Ads.adsManager.addEventListener(google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED,Ads.onContentPauseRequested),Ads.adsManager.addEventListener(google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED,Ads.onContentResumeRequested),Ads.adsManager.addEventListener(google.ima.AdEvent.Type.ALL_ADS_COMPLETED,Ads.onAdEvent),Ads.adsManager.addEventListener(google.ima.AdEvent.Type.LOADED,Ads.onAdEvent),Ads.adsManager.addEventListener(google.ima.AdEvent.Type.STARTED,Ads.onAdEvent),Ads.adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE,Ads.onAdEvent)},Ads.onAdEvent=function(a){var b=a.getAd();switch(a.type){case google.ima.AdEvent.Type.LOADED:b.isLinear();break;case google.ima.AdEvent.Type.STARTED:b.isLinear()&&(Ads.intervalTimer=setInterval(function(){Ads.adsManager.getRemainingTime()},300));break;case google.ima.AdEvent.Type.COMPLETE:Ads.HideContainer(),b.isLinear()&&clearInterval(Ads.intervalTimer)}},Ads.onAdError=function(a){Ads.adsManager.destroy()},Ads.onContentPauseRequested=function(){},Ads.onContentResumeRequested=function(){};var BG_ALIGN_CENTER="center",BG_ALIGN_TOP="top",BG_ALIGN_BOTTOM="bottom",TYPE_IMAGE="image",TYPE_SPRITE="sprite",BG_WIDTH=1920,BG_HEIGHT=1080,Background=function(a,b){Background.bgLayer=a,Background.themeImages=[],Background.themeImageURLs=[],Background.hAlign=.5,Background.vAlign=BG_ALIGN_BOTTOM,Background.defaultTheme=b.defaultWeb||0,Background.currentImage=Background.defaultTheme,Background.scaleFactor=1,void 0===Background.savedImage&&(Background.savedImage=Background.defaultTheme);for(var c=0;c1&&(e.hAlign=1),e.hAlign<0&&(e.hAlign=0),e.url=d,e.name=b.list[c].name,e.type=TYPE_IMAGE,e.cardURL=BaseGame.assetsFolderUrl+"cards/"+b.list[c].card,Background.themeImageURLs.push(d)):(e=new PIXI.Sprite(PIXI.loader.resources[ContentPath.defaultBackground].texture),e.type=TYPE_SPRITE),Background.bgLayer.addChild(e),Background.themeImages.push(e)}Background.Align(),Background.TakeKeyboardInput()};Background.loadImageThemes=function(){for(var a=0;aBackground.themeImages.length-1&&(Background.currentImage=0),Background.Align(),Game.ApplyTheme(Background.currentImage)},Background.Previous=function(){Background.currentImage--,Background.currentImage<0&&(Background.currentImage=Background.themeImages.length-1),Background.Align(),Game.ApplyTheme(Background.currentImage)},Background.ApplyTheme=function(a,b){void 0!==a&&(Background.currentImage=a,Background.currentImage<0&&(Background.currentImage=Background.themeImages.length-1),Background.currentImage>Background.themeImages.length-1&&(Background.currentImage=0),Background.Align(),b||(Game.ApplyTheme(Background.currentImage,!0),ThemeMenu.onIndex(Background.currentImage,!0)),TweenLite.killDelayedCallsTo(ThemeMenu.UpsellTooltip),Game.SaveData?Game.SaveData():SaveGame.Serialize())},Background.Align=function(){if(Background.themeImages[Background.currentImage]&&(Background.windowWidth=window.innerWidth,Background.windowHeight=window.innerHeight,Background.themeImages.length>0)){for(var a=0;awindow.innerWidth&&(b=window.innerWidth/2e3),b<.7&&(a=b*(c?2.5:1.5)),a=Math.min(a,1),a=Math.max(a,.45),GameUI.undoButton.scale.set(a,a),GameUI.newGameButton.scale.set(a,a),GameUI.undoButton.x=window.innerWidth-GameUI.undoButton.width-2,GameUI.undoButton.y=window.innerHeight-GameUI.undoButton.height-2,GameUI.newGameButton.x=2,GameUI.newGameButton.y=window.innerHeight-GameUI.newGameButton.height-2},GameUI.OnUndo=function(){UndoManager.UndoMove()};var UndoManager={};StateHistory=[];var movement=0;UndoManager.moves=[],UndoManager.undomoves=[],UndoManager.canUndo=!0,UndoManager.drawId=-1,UndoManager.LOCATION_COLUMNS="COLUMNS",UndoManager.LOCATION_ACES="ACES",UndoManager.LOCATION_TEMP_CELLS="TEMP_CELLS",UndoManager.LOCATION_WASTE="WASTE",UndoManager.LOCATION_DRAW="DRAW",UndoManager.TYPE_MOVE="MOVE",UndoManager.TYPE_DECK="DECK",UndoManager.TYPE_REVEAL_COLUMN="DECK",UndoManager.AddMove=function(a,b,c,d,e,f){var g={};g.card=a,g.x=a.sprite.x,g.y=a.sprite.y,g.points=e,b==UndoManager.LOCATION_DRAW?(g.rotation=.3*Math.random()-.15,g.x=Game.layout.drawX,g.y=Game.layout.drawY):g.rotation=0,g.oldIndex=c,g.oldLocation=b,g.faceUp=a.faceUp,g.childMoves=[],g.userAction=Game.interaction.userAction,g.type=UndoManager.TYPE_MOVE,g.drawId=f;var h=!1;if(g.faceUp||b!=UndoManager.LOCATION_COLUMNS?Game.interaction.userAction||(h=!0):h=!0,h){if(d==UndoManager.TYPE_REVEAL_COLUMN){var i=UndoManager.moves.length-1;if(i>=0){UndoManager.moves[i].childMoves.push(g)}}b==UndoManager.LOCATION_DRAW&&UndoManager.moves.push(g),b==UndoManager.LOCATION_COLUMNS&&UndoManager.moves.push(g)}else UndoManager.moves.push(g);Game.interaction.userAction=!1},UndoManager.AddReturnDeck=function(){var a={};a.type=UndoManager.TYPE_DECK,UndoManager.moves.push(a)},UndoManager.UndoMove=function(a){if(UndoManager.canUndo&&!Game.data.gameOver){var b=a;if("draw3"==b&&(b=UndoManager.moves.pop()),void 0==b&&UndoManager.moves.length>0&&(b=UndoManager.moves.pop()),-1!=UndoManager.drawId&&b.drawId!=UndoManager.drawId&&(UndoManager.moves.push(b),UndoManager.drawId=-1,b=null),b)if(Game.interaction.userAction=!1,b.type==UndoManager.TYPE_DECK)Game.UndoMoveCardBackToStock();else if(b.type==UndoManager.TYPE_MOVE){if(b.childMoves)for(;b.childMoves.length>0;)UndoManager.UndoMove(b.childMoves.pop());var c=!1;switch(b.oldLocation){case UndoManager.LOCATION_COLUMNS:-1==Game.cards.columns[b.oldIndex].indexOf(b.card)&&(Game.PlaceCardInColumn(b.card,b.oldIndex,!0),SoundManager.PlaySound(SoundManager.SOUND_UNDO),Game.ListenToCard(b.card));break;case UndoManager.LOCATION_ACES:Game.AutoPlaceCard(b.card),SoundManager.PlaySound(SoundManager.SOUND_UNDO),Game.StopListenToCard(b.card);break;case UndoManager.LOCATION_TEMP_CELLS:Game.PlaceCardInTempCell(b.card,b.oldIndex,!1),SoundManager.PlaySound(SoundManager.SOUND_UNDO),Game.ListenToCard(b.card);break;case UndoManager.LOCATION_WASTE:Game.RemoveCardFromAllLists(b.card),Game.stage.setChildIndex(b.card.sprite,Game.stage.children.length-1),Game.cards.waste.push(b.card),b.card.previousPosition.x=Game.layout.stockX,b.card.previousPosition.y=Game.layout.stockY,-1!=b.card.column&&(Game.DetermineParents(b.card.column),b.card.column=-1,b.card.child=null,b.card.parent=null),Game.DetermineWasteCards(!1);break;case UndoManager.LOCATION_DRAW:Game.RemoveCardFromAllLists(b.card);var d=UndoManager.moves.pop();-1==UndoManager.drawId&&(UndoManager.drawId=b.drawId||-1),d?(d.drawId&&UndoManager.drawId!=d.drawId&&(UndoManager.drawId=-1),UndoManager.moves.push(d)):UndoManager.drawId=-1,b.x=Game.layout.drawX,b.y=Game.layout.drawY,UndoManager.FlipCardFaceDown(b.card),Game.cards.stock.push(b.card),b.card.previousPosition.x=Game.layout.drawX,b.card.previousPosition.y=Game.layout.drawY,c=!0,Game.DetermineWasteCards(!1),-1!=b.card.column&&(Game.DetermineParents(b.card.column),b.card.column=-1,b.card.child=null, b.card.parent=null)}switch(Game.data.score-=b.points,b.points){case 5:b.card.acePoints=!1;break;case 10:b.card.columnPoints=!1;break;case 15:b.card.columnPoints=b.card.acePoints=!1}Game.GameDataChanged(),c&&(Game.stage.setChildIndex(b.card.sprite,Game.stage.children.length-1),TweenLite.killTweensOf(b.card.sprite),TweenLite.to(b.card.sprite,Game.tween.normalMove,{x:b.card.previousPosition.x,y:b.card.previousPosition.y,rotation:b.rotation})),UndoManager.canUndo=!1,-1==UndoManager.drawId?TweenLite.delayedCall(.3,UndoManager.EnableUndo):(UndoManager.canUndo=!0,TweenLite.delayedCall(.1,UndoManager.UndoMove,["draw3"])),Game.StopListenToWaste(),Game.AlphaStockWaste()}}},UndoManager.Clear=function(){UndoManager.canUndo=!0,UndoManager.moves=[]},UndoManager.EnableUndo=function(){UndoManager.canUndo=!0},UndoManager.FlipCardFaceDown=function(a){a.faceUp=!1,TweenLite.killTweensOf(a.sprite.scale),TweenLite.to(a.sprite.scale,.2,{x:.2,onComplete:function(){a.cardBackSprite.visible=!0,TweenLite.to(a.sprite.scale,.2,{x:1})}})},UndoManager.RecordState=function(a){},UndoManager.RestoreState=function(a){},GradientBackground=function(a,b){function c(a){var b=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(a);return b?{r:parseInt(b[1],16)/255,g:parseInt(b[2],16)/255,b:parseInt(b[3],16)/255}:null}var d="0x"+a.substring(1);d=parseInt(d);var e=new PIXI.Graphics;e.beginFill(d),e.drawRect(0,0,window.innerWidth,window.innerHeight),e.endFill();var f=c(a),g=c(b),h=PIXI.loader.resources["src/js/shaders/gradient.glsl"].data,i={topColor:{type:"v3",value:{x:f.r,y:f.g,z:f.b}},bottomColor:{type:"v3",value:{x:g.r,y:g.g,z:g.b}}},j=new PIXI.Filter("",h,i);return e.filters=[j],e.resize=function(){e.clear(),e.beginFill(d),e.drawRect(0,0,window.innerWidth,window.innerHeight),e.endFill()},e};var isUsingCalendar=ContentPath.calendarEnabled,playerIconPath=Asset.i.playerProfileIcon,BoardsCompleteImage=ContentPath.boardsCompleteImage||"multipeak_HUD_icon.png",playerIconSprite=null,profileImageSprite=null,hudIconHeight=null,iconYposition=null,DEFAULT_PLAYER_TEXT="Sign In",playerText=null,accountSignInButton=null,HUD_TEXT_STYLE_LARGE=null,textYposition=null,HUD_SIZE_THRESHOLD=732,HUDTextsSizes="24px",timerEnabled=!0,calendarBackButton=null,calendarBtn=null,exitChallengeButton=null,isMobileViewport,HUDElementsVisible={timer:!0,score:!0,moves:!0,boardsComplete:!1},GameHud=function(a){function b(){BaseGame.hasFocus&&timerEnabled&&Game.data.timeInSeconds++,GameHud.RenderTime()}var c=window.innerHeight/window.innerWidth;(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&(UI.hudAndSidebarHeight=c<.5?36:40),ContentPath.HUDElementsVisible&&(HUDElementsVisible=ContentPath.HUDElementsVisible),isMobileViewport=BaseGame.isMobileApp||BaseGame.isMobileWeb,isMobileViewport&&(HUD_SIZE_THRESHOLD=550),void 0!==ContentPath.firebaseConfig?FirebaseBridge.Init(SetFirebaseNameAndPicture,ResetAccountIcon,ContentPath.firebaseConfig,BaseGame.isMobileApp):FirebaseBridge.Init(SetFirebaseNameAndPicture,ResetAccountIcon,null,BaseGame.isMobileApp),GameHud.PauseTimer=function(a){timerEnabled=!a},GameHud.layer=a,GameHud.container=new PIXI.Container;hudIconHeight=Math.round(.8*UI.hudAndSidebarHeight),iconYposition=Math.round((UI.hudAndSidebarHeight-hudIconHeight)/2),HUD_TEXT_STYLE_LARGE={font:HUDTextsSizes+" "+UI.labelFont,fill:16777215},HUDElementsVisible.timer&&(GameHud.timeText=UI.CreateTextElement("00:00",HUD_TEXT_STYLE_LARGE)),HUDElementsVisible.boardsComplete&&(GameHud.boardsComplete=UI.CreateTextElement("x0",{font:"30px "+UI.labelFont,fill:16777215,letterSpacing:3}),GameHud.boardsCompleteCover=UI.CreateTextElement("x0",{font:"30px "+UI.labelFont,fill:16761095,letterSpacing:3}),GameHud.boardsCompleteCover.anchor.set(.5,.5),GameHud.boardsCompleteIcon=BaseGame.Sprite(BoardsCompleteImage),GameHud.boardsCompleteIcon.scale.set(.55,.55),GameHud.boardsCompleteIcon.anchor.set(.5,.5),GameHud.boardsCompleteCover.alpha=0),GameHud.scoreText=UI.CreateTextElement("Score: 0",HUD_TEXT_STYLE_LARGE),HUDElementsVisible.moves&&(GameHud.moveText=UI.CreateTextElement("Moves: 0",HUD_TEXT_STYLE_LARGE)),GameHud.dailyChallengeTitle=UI.CreateTextElement("Daily Challenge",HUD_TEXT_STYLE_LARGE),GameHud.dailyChallengeTitle.alpha=0,playerText=UI.CreateTextElement("",{font:UI.legalFontSize+" "+UI.labelFont,fill:16777215}),textYposition=Math.round((UI.hudAndSidebarHeight-GameHud.scoreText.textHeight)/2),playerText.y=Math.round((UI.hudAndSidebarHeight-playerText.height)/2),playerText.visible=!1,accountSignInButton=UI.ResponsiveButton(Asset.i.fb_login_small,Asset.i.facebookLogin),BaseGame.isMobileApp||BaseGame.isMobileWeb?UI.scaleSpriteByHeight(accountSignInButton,1.5*hudIconHeight):UI.scaleSpriteByHeight(accountSignInButton,hudIconHeight),accountSignInButton.setAlpha(0),accountSignInButton.y=iconYposition,accountSignInButton.interactive=accountSignInButton.buttonMode=!0;var d=function(a){a.data&&a.data.global?a.data.global.y<=UI.hudAndSidebarHeight&&(Analytics.TrackEvent("CATEGORY_MENU","MENU_HUD","LABEL_FB_LOGIN"),signInHandler("HUD_FB_LOGIN"),Events.emit("fbButtonClick",null)):(Analytics.TrackEvent("CATEGORY_MENU","MENU_HUD","LABEL_FB_LOGIN"),signInHandler("HUD_FB_LOGIN"),Events.emit("fbButtonClick",null))};accountSignInButton.on("pointerup",d),GameHud.mainMenuHudButton=UI.ResponsiveButton("menuIcon_compact.png","menuIcon_text.png",!1,"btn_menu_hover.png"),GameHud.mainMenuHudButton.x=UI.iconSideMargin;var e=hudIconHeight,f=0;(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&(e=Math.ceil(1.2*hudIconHeight),f=1),UI.scaleSpriteByHeight(GameHud.mainMenuHudButton,e),GameHud.mainMenuHudButton.y=Math.round((UI.hudAndSidebarHeight-GameHud.mainMenuHudButton.height)/2)+f,GameHud.mainMenuHudButton.interactive=GameHud.mainMenuHudButton.buttonMode=!0,GameHud.mainMenuHudButton.on("pointerup",GameMenu.OnHudMainMenuBtnPress),GameHud.CloseMenuHudButton=UI.createHoverImageButton(Asset.i.btn_menu_x,Asset.i.btn_menu_x_hover,GameMenu.CloseSide),GameHud.CloseMenuHudButton.x=UI.iconSideMargin+GameHud.CloseMenuHudButton.width/4,GameHud.CloseMenuHudButton.anchor.set(.5,.5),GameHud.CloseMenuHudButton.hover.anchor.set(.5,.5),GameHud.CloseMenuHudButton.scale.set(.5,.5),GameHud.CloseMenuHudButton.y=Math.round(UI.hudAndSidebarHeight/2)+f,GameHud.CloseMenuHudButton.visible=!1,GameHud.CloseMenuHudButton.alpha=0,calendarBtn=new PIXI.Container;var g=BaseGame.Sprite("calendarIcon_text.png"),h=BaseGame.Sprite("calendarIcon_alert.png");exitChallengeButton=BaseGame.Sprite("calendarIcon_exit.png"),calendarBtn.hideAlert=function(){g.visible=!0,h.visible=!1},g.visible=!1;var i=new Date,j=i.getDate(),k=UI.CreateTextElement(j.toString(),{font:"40px "+UI.legalFont});k.x=UI.getHorizontalCenter(k.width,44)+11,k.y=20,calendarBtn.addChild(g),calendarBtn.addChild(h),calendarBtn.addChild(k),calendarBtn.x=exitChallengeButton.x=GameHud.mainMenuHudButton.visibleWidth+2*UI.iconSideMargin,UI.scaleSpriteByHeight(calendarBtn,hudIconHeight),UI.scaleSpriteByHeight(exitChallengeButton,hudIconHeight),calendarBtn.y=exitChallengeButton.y=iconYposition,calendarBtn.interactive=calendarBtn.buttonMode=!0,exitChallengeButton.interactive=exitChallengeButton.buttonMode=!0,exitChallengeButton.visible=!1;var l=function(){GameHud.ShowDailyChallengeHud(!0),GameMenu.DailyChallenge()};calendarBtn.on("pointerup",l);var m=function(){l()};exitChallengeButton.on("pointerup",m),calendarBackButton=BaseGame.Sprite("exitIcon_text.png"),UI.scaleSpriteByHeight(calendarBackButton,hudIconHeight),calendarBackButton.y=iconYposition,calendarBackButton.interactive=calendarBackButton.buttonMode=!0,calendarBackButton.visible=!1,calendarBackButton.x=UI.iconSideMargin;var n=function(){GameHud.ShowDailyChallengeHud(!1),GameMenu.EnableHamburger(),GameMenu.CloseDailyChallenge(),Game.data.gameOver&&Game.NewGame()};calendarBackButton.on("pointerup",n);var o=function(){Analytics.TrackEvent("CATEGORY_MENU","MENU_HUD","LABEL_PROFILE_ICON"),GameMenu.Profile()};playerIconSprite=BaseGame.Sprite(Asset.i.playerProfileIcon),playerIconSprite=UI.createHoverImageButton(Asset.i.playerProfileIcon,Asset.i.playerProfileIconHover,o),playerIconSprite.height=playerIconSprite.width=hudIconHeight,playerIconSprite.y=iconYposition,playerIconSprite.interactive=playerIconSprite.buttonMode=!0,playerIconSprite.name="Player Icon Click",FirebaseBridge.IsSignedIn()&&SetFirebaseNameAndPicture(),GameHud.bg=new PIXI.Graphics,GameHud.bg.beginFill(UI.hudAndSidebarColor),GameHud.bg.drawRect(0,0,window.innerWidth,UI.hudAndSidebarHeight),GameHud.bg.endFill(),GameHud.container.addChild(GameHud.bg),isUsingCalendar&&(GameHud.container.addChild(calendarBtn),GameHud.container.addChild(calendarBackButton),GameHud.container.addChild(exitChallengeButton)),playerIconSprite.visible=!isMobileViewport,GameHud.container.addChild(playerIconSprite),GameHud.container.addChild(accountSignInButton),GameHud.container.addChild(playerText),HUDElementsVisible.timer&&GameHud.container.addChild(GameHud.timeText),GameHud.container.addChild(GameHud.scoreText),HUDElementsVisible.moves&&GameHud.container.addChild(GameHud.moveText),HUDElementsVisible.boardsComplete&&GameHud.container.addChild(GameHud.boardsComplete),HUDElementsVisible.boardsComplete&&(GameHud.container.addChild(GameHud.boardsCompleteCover),GameHud.container.addChild(GameHud.boardsCompleteIcon),GameHud.boardsCompleteIcon.y=UI.hudAndSidebarHeight/2),GameHud.container.addChild(GameHud.dailyChallengeTitle),a.addChild(GameHud.container),HUDElementsVisible.timer&&(GameHud.timeText.y=textYposition),HUDElementsVisible.moves&&(GameHud.moveText.y=textYposition),HUDElementsVisible.boardsComplete&&(GameHud.boardsComplete.y=textYposition+12,GameHud.boardsCompleteCover.y=GameHud.boardsComplete.y),GameHud.scoreText.y=GameHud.dailyChallengeTitle.y=textYposition;setInterval(b,1e3);Game.data.timeInSeconds=0,GameHud.RenderTime()};GameHud.RoutateCloseMenuButton=function(){0===GameHud.CloseMenuHudButton.alpha?TweenLite.to(GameHud.CloseMenuHudButton,.3,{alpha:1,rotation:0}):TweenLite.to(GameHud.CloseMenuHudButton,.3,{alpha:0,rotation:30})},GameHud.ShowDailyChallengeHud=function(a){GameHud.mainMenuHudButton.visible=!a,calendarBackButton.visible=a,calendarBtn.visible=!a,exitChallengeButton.visible=!1},GameHud.ShowActiveChallengeHud=function(){GameHud.mainMenuHudButton.visible=!0,calendarBtn.visible=!1,calendarBackButton.visible=!1,exitChallengeButton.visible=!0},GameHud.ShowProfilePicture=function(a,b){b&&a?(profileImageSprite=b,profileImageSprite.width=profileImageSprite.height=playerIconSprite.width,profileImageSprite.x=playerIconSprite.x,profileImageSprite.y=playerIconSprite.y,GameHud.layer.addChild(profileImageSprite)):!a&&profileImageSprite&&(GameHud.layer.removeChild(profileImageSprite),profileImageSprite.destroy(),profileImageSprite=null)},GameHud.SetPlayerText=function(a){playerText.text=a||DEFAULT_PLAYER_TEXT},GameHud.shift=function(a,b){GameHud.layer.x+=a,GameHud.layer.y+=b},GameHud.RenderTime=function(){HUDElementsVisible.timer&&(GameHud.timeText.text=Game.data.timeInSeconds.toString().toHHMMSS())},GameHud.Update=function(){if(GameHud.scoreText.text="Score: "+Game.data.score.toString(),HUDElementsVisible.moves&&(GameHud.moveText.text="Moves: "+Game.data.moves.toString()),HUDElementsVisible.boardsComplete&&(GameHud.boardsComplete.text="x"+Game.data.boardsComplete,GameHud.boardsCompleteCover.text="x"+Game.data.boardsComplete),Game.settings.scoreMode===Game.SCORE_MODE_VEGAS){var a=Game.data.score,b="";a<0&&(a=Math.abs(a),b="-"),GameHud.scoreText.text=b+"$"+a.toString()}GameHud.Resize()},GameHud.Resize=function(){var a=window.innerHeight/window.innerWidth;(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&(UI.hudAndSidebarHeight=a<.5?36:40),hudIconHeight=Math.round(.8*UI.hudAndSidebarHeight),iconYposition=Math.round((UI.hudAndSidebarHeight-hudIconHeight)/2),GameHud.bg.width!=window.innerWidth&&(GameHud.bg.clear(),GameHud.bg.beginFill(UI.hudAndSidebarColor),GameHud.bg.drawRect(0,0,window.innerWidth,UI.hudAndSidebarHeight),GameHud.bg.endFill());var b=window.innerWidth-hudIconHeight-UI.iconSideMargin,c=b-GameHud.MainMenuHudButton-UI.iconSideMargin,d=calendarBtn.x+calendarBtn.width,e=HUDElementsVisible.moves?GameHud.moveText.width:0;isUsingCalendar||(d=GameHud.mainMenuHudButton.x+GameHud.mainMenuHudButton.width);var f=35;isMobileViewport&&GameHud.mainMenuHudButton.showCompact(!0),GameHud.bg.widthHUD_SIZE_THRESHOLD?GameHud.scoreText.x=window.innerWidth/2-GameHud.scoreText.width-f:GameHud.scoreText.x=window.innerWidth/2-GameHud.scoreText.width/2-f}f=25,HUDElementsVisible.moves&&(GameHud.moveText.x=GameHud.scoreText.x+GameHud.scoreText.width+25),HUDElementsVisible.boardsComplete&&(GameHud.boardsCompleteIcon.x=GameHud.scoreText.x+GameHud.scoreText.width+2*f),HUDElementsVisible.boardsComplete&&(GameHud.boardsComplete.anchor.set(.5,.5),GameHud.boardsComplete.x=GameHud.boardsCompleteIcon.x+GameHud.boardsCompleteIcon.width/2+GameHud.boardsComplete.width/2+.2*f,GameHud.boardsCompleteCover.x=GameHud.boardsComplete.x)},GameHud.ShowDailyChallengeTitle=function(a){var b=0,c=0,d=1,e=.2;a&&(b=1,c=.2,d=0,e=0),HUDElementsVisible.timer&&TweenLite.to(GameHud.timeText,.2,{alpha:d,delay:e}),HUDElementsVisible.moves&&TweenLite.to(GameHud.moveText,.2,{alpha:d,delay:e}),HUDElementsVisible.boardsComplete&&TweenLite.to(GameHud.boardsComplete,.2,{alpha:d,delay:e}),TweenLite.to(GameHud.scoreText,.2,{alpha:d,delay:e}),TweenLite.to(GameHud.dailyChallengeTitle,.2,{alpha:b,delay:c})},GameHud.ShowTimeAndMovesSetting=function(){var a=Game.settings.showTimeAndMoves&&GameHud.bg.width>HUD_SIZE_THRESHOLD;if(HUDElementsVisible.timer&&(GameHud.timeText.visible=Game.settings.showTimeAndMoves),!Game.settings.showTimeAndMoves&&GameHud.bg.width0?b+=":":b="",c<10&&(c="0"+c),d<10&&(d="0"+d),b+c+":"+d},Keyboard=function(a){var b={};return b.code=a,b.isDown=!1,b.isUp=!0,b.press=void 0,b.release=void 0,b.downHandler=function(a){a.keyCode===b.code&&(b.isUp&&b.press&&b.press(),b.isDown=!0,b.isUp=!1),a.preventDefault()},b.upHandler=function(a){a.keyCode===b.code&&(b.isDown&&b.release&&b.release(),b.isDown=!1,b.isUp=!0),a.preventDefault()},window.addEventListener("keydown",b.downHandler.bind(b),!1),window.addEventListener("keyup",b.upHandler.bind(b),!1),b};var SaveGameAbstract={},trueString="1",falseString="0";SaveGameAbstract.SaveData=function(a,b,c){var d=JSON.stringify(c);BaseGame.isMobileApp?setStorage(a,d):setCookie(a,d)},SaveGameAbstract.GetData=function(a,b){var c="",d=null;return c=BaseGame.isMobileApp?getStorage(a):getCookie(a),""!==c&&(d=JSON.parse(c)),!!d&&(b===(d.version||0)&&(0!==(d.time||0)&&d))},SaveGameAbstract.Serialize2dArray=function(a,b){for(var c=[],d=0;d0&&(f+=",");var h=b[g];if(void 0!==e[h]){var i=e[h];f+="boolean"==typeof i?i?trueString:falseString:i.toString()}else c.push("")}c.push(f)}return c},SaveGameAbstract.getCard=function(a,b,c){for(var d=0;d24&&(f=1),g++,g>12&&(g=0,h++)}for(var i=0;i<4;i++){var k=Game.Stock(2);Game.cards.aceStarts.push(k),e.addChild(k)}for(var i=0;i<4;i++){var l=Game.Stock(3);Game.cards.tempStarts.push(l),e.addChild(l)}for(var i=0;i<8;i++){var m=Game.Stock(3);Game.cards.columnStarts.push(m),e.addChild(m)}Game.AlphaStockWaste(),Game.WinBadgeImage=BaseGame.Sprite(WIN_BADGE_IMAGE),Game.WinBadgeImage.anchor.set(.5,.5),SaveGame.Deserialize()?(Game.firstGame=!1,(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&ThemeMenu.loadThemes()):(GameMenu.Welcome(),Game.firstGame=!0),Game.initialized=!0,Main.Resize(),DownloadButton.ShowButton(),Game.themes.cardsLoaded=!1;for(var i=0;i1.45?Game.layout.screenMode=SCREEN_MODE_LANDSCAPE:(Game.layout.gameWidth==Game.layout.maxWidth&&(Game.layout.gameHeight,Game.layout.targetHeight),Game.layout.screenMode=SCREEN_MODE_LANDSCAPE),Game.layout.gameWidth=Math.round(Game.layout.gameWidth),Game.layout.gameHeight=Math.round(Game.layout.gameHeight),Game.layout.cardSpaceX=Game.CARD_WIDTH,Game.layout.gameWidth>Game.layout.targetWidth){var d=Math.round((Game.layout.gameWidth-Game.layout.targetWidth)/7);Game.layout.cardSpaceX+=d}Game.ChangeLayout(),Game.WinBadgeImage.x=window.innerWidth/2,Game.WinBadgeImage.y=window.innerHeight/2-50*Game.WinBadgeImage.scale.y}},Game.ChangeLayout=function(){var a=8*Game.layout.cardSpaceX ;Game.layout.screenMode==SCREEN_MODE_PORTRAIT?(Game.layout.tStartX=Math.round(.5*Game.layout.gameWidth-.5*a+.5*Game.CARD_WIDTH),Game.layout.tStartY=Math.round(.5*Game.CARD_HEIGHT+335),Game.layout.aStartY=Math.round(.5*Game.CARD_HEIGHT+5),Game.layout.drawY=Game.layout.aStartY,Game.layout.currentHandLayout==HAND_LAYOUT_RIGHT?(Game.layout.aStartX=Game.layout.tStartX,Game.layout.drawX=Math.round(Game.layout.tStartX+a-Game.layout.cardSpaceX)):Game.layout.currentHandLayout==HAND_LAYOUT_LEFT&&(Game.layout.aStartX=Game.layout.tStartX+a-4*Game.layout.cardSpaceX,Game.layout.drawX=Game.layout.tStartX)):Game.layout.screenMode==SCREEN_MODE_LANDSCAPE&&(Game.layout.tStartX=Math.round(.5*Game.layout.gameWidth-.5*a+.5*Game.CARD_WIDTH),Game.layout.tStartY=Math.round(.5*Game.CARD_HEIGHT),Game.layout.aStartY=260,Game.layout.drawY=Math.round(.5*Game.layout.gameHeight),Game.layout.currentHandLayout==HAND_LAYOUT_RIGHT?(Game.layout.aStartX=Math.round(.25*(Game.layout.gameWidth-a)),Game.layout.drawX=Math.round(Game.layout.tStartX+a+.25*(Game.layout.gameWidth-a)-.5*Game.CARD_WIDTH)):Game.layout.currentHandLayout==HAND_LAYOUT_LEFT&&(Game.layout.aStartX=Math.round(Game.layout.tStartX+a+.25*(Game.layout.gameWidth-a)-.5*Game.CARD_WIDTH),Game.layout.drawX=Math.round(.25*(Game.layout.gameWidth-a)))),Game.RepositionGame()},Game.RepositionGame=function(){for(var a=0;a-1&&(c=!1),c&&(Game.cards.aces[a][b].sprite.x=Game.cards.aceStarts[a].x,Game.cards.aces[a][b].sprite.y=Game.cards.aceStarts[a].y,Game.cards.aces[a][b].previousPosition.x=Game.cards.aces[a][b].sprite.x,Game.cards.aces[a][b].previousPosition.y=Game.cards.aces[a][b].sprite.y)}Game.drawButton.x=Game.layout.drawX-.5*Game.CARD_WIDTH,Game.drawButton.y=Game.layout.drawY-.5*Game.CARD_HEIGHT},Game.SwitchHandLayout=function(a){Game.layout.currentHandLayout=a,Game.ChangeLayout()},Game.CheckAutoFinish=function(){for(var a=!0,b=0;b-1;b--)for(var c=0;c=window.innerHeight/Game.scaleFactor&&(Game.cards.finale[a].yForce*=-.8,Game.cards.finale[a].rForce*=.9,Game.cards.finale[a].sprite.y=window.innerHeight/Game.scaleFactor-1),Game.cards.finale[a].sprite.x<0&&(Game.cards.finale[a].sprite.x=1,Game.cards.finale[a].xForce*=-.8),Game.cards.finale[a].sprite.x>window.innerWidth/Game.scaleFactor&&(Game.cards.finale[a].sprite.x=window.innerWidth/Game.scaleFactor,Game.cards.finale[a].xForce*=-.8)},Game.ResetGameData=function(){Game.data.timeInSeconds=0,Game.data.score=0,Game.data.moves=0,Game.data.gameOver=!1,Game.cards.waste2=Game.cards.waste3=null,Game.GameDataChanged()},Game.GameDataChanged=function(){GameHud.Update(),TweenLite.killDelayedCallsTo(SaveGame.Serialize),TweenLite.delayedCall(.5,SaveGame.Serialize)},Game.NewGame=function(a){Game.data.finishedDealing&&(a||Game.firstGame||Game.data.numGames++,Analytics.TrackEvent("CATEGORY_GAME","GAME_START"),Events.emit("newGameStart",{score_mode:Game.settings.scoreMode,draw_mode:Game.settings.drawMode}),MathHelper.shuffleArray(Game.cards.all),Game.LayoutStart(),Game.ResetGameData(),UndoManager.Clear(),GameMenu.EnableHamburger(),Game.firstGame=!1)},Game.RestartGame=function(){Game.data.numGames++,Analytics.TrackEvent("CATEGORY_GAME","GAME_LOSE"),Events.emit("gameLose",{score_mode:Game.settings.scoreMode,draw_mode:Game.settings.drawMode,score:Game.data.score,moves:Game.data.moves,time:Game.data.timeInSeconds}),Events.emit("gameRestart",null),Game.LayoutStart(),Game.ResetGameData(),UndoManager.Clear()},Game.OnDrawClick=function(a){Game.data.finishedDealing&&(Game.interaction.userAction=!0,Game.cards.stock.length>0?Game.DrawCard():0==Game.cards.stock.length&&Game.cards.waste.length>0&&(Game.cards.waste2=Game.cards.waste3=null,Game.MoveCardBackToStock(),UndoManager.AddReturnDeck(),Game.cards.canDraw=!1))},Game.StopListenToWaste=function(){for(var a=0;a0&&Game.ListenToCard(Game.cards.waste[Game.cards.waste.length-1]),Game.StopListenToAces()},Game.StopListenToAces=function(){for(var a=0;a=b&&(d=0):d=Math.max(0,Math.min(1-e*f*2,1)),f>a.length-1-c&&(d=1),TweenLite.to(a[f].shadowSprite,Game.tween.normalMove,{alpha:d})},Game.TurnOnShadow=function(a,b){a&&(TweenLite.killTweensOf(a.shadowSprite),b?(a.shadowSprite.x=a.cardSprite.x+15,a.shadowSprite.y=a.cardSprite.y+15):a.shadowSprite.x=a.cardSprite.x+15)},Game.TurnOffShadow=function(a){TweenLite.killTweensOf(a.shadowSprite),TweenLite.to(a.shadowSprite,.1,{alpha:1,x:a.cardSprite.x,y:a.cardSprite.y})},Game.TurnOnOutline=function(a,b){a&&(TweenLite.killTweensOf(a.outlineSprite),TweenLite.killTweensOf(a.outlineCutSprite),TweenLite.killTweensOf(a.shadowSprite),b?(a.outlineSprite.alpha=1,a.outlineCutSprite.alpha=0,a.shadowSprite.x=a.cardSprite.x+15,a.shadowSprite.y=a.cardSprite.y+15):(a.outlineSprite.alpha=0,a.outlineCutSprite.alpha=1,a.shadowSprite.x=a.cardSprite.x+20,a.shadowSprite.x=a.cardSprite.x+15))},Game.TurnOffOutline=function(a,b){b=b||!1,TweenLite.killTweensOf(a.outlineSprite),TweenLite.killTweensOf(a.outlineCutSprite),TweenLite.killTweensOf(a.shadowSprite),TweenLite.to(a.outlineSprite,.1,{alpha:0}),TweenLite.to(a.outlineCutSprite,.1,{alpha:0}),b&&TweenLite.to(a.shadowSprite,.1,{alpha:1,x:a.cardSprite.x,y:a.cardSprite.y})},Game.howManyCardsDragged=function(a){for(var b=1;null!=a.child;)b++,a=a.child;return b},Game.howManyCardsCanDrag=function(){for(var a=1,b=0;bGame.howManyCardsCanDrag())&&Game.childsAreCorrectlyRanked(b)&&Game.data.finishedDealing&&("touchstart"==a.type&&BaseGame.UpdateMousePositionManual(a.data.global.x,a.data.global.y),Game.startMoving_iOS=!0,b.sprite.interactive)){TweenLite.killTweensOf(b.sprite);var c=!1;if(Game.cards.stock.indexOf(b)>-1||(Game.cards.waste.indexOf(b)>-1?c=!0:b.faceUp&&(c=!0)),c){Game.mouseDown=!0,BaseGame.mouse.dX=0,BaseGame.mouse.dY=0,Game.targetCard=b,Game.mouseDragOffset.x=BaseGame.mouse.x*(1/Game.gameLayer.scale.x)-b.sprite.x,Game.mouseDragOffset.y=BaseGame.mouse.y*(1/Game.gameLayer.scale.y)-b.sprite.y,BaseGame.isMobileApp&&BaseGame.isiOS&&(Game.mouseDragOffset.x=BaseGame.mouse.touchstart.x*(1/Game.gameLayer.scale.x)-b.sprite.x,Game.mouseDragOffset.y=BaseGame.mouse.touchstart.y*(1/Game.gameLayer.scale.y)-b.sprite.y),stage.setChildIndex(b.sprite,stage.children.length-1);var d=!b.child;if(Game.TurnOnShadow(b,d),Game.TurnOnOutline(b,!0),null!=b.child)for(var e=!0;e;)b=b.child,stage.setChildIndex(b.sprite,stage.children.length-1),Game.TurnOffShadow(b),Game.TurnOnOutline(b,!1),null==b.child&&(e=!1)}}},Game.OnCardOutside=function(a){Game.mouseDown=!1;var b=Game.targetCard;Game.interaction.userAction=!0,Game.startMoving_iOS=!1,b&&Game.ReturnToPrevious(b,!0),Game.targetCard=null},Game.OnCardUp=function(a){Game.mouseDown=!1;var b=Game.targetCard;if(Game.targetCard=null,Game.interaction.userAction=!0,Game.startMoving_iOS=!1,!a.target)return b&&Game.ReturnToPrevious(b,!0),!0;var b=a.target.card;if(b.sprite.interactive){var c=!0;Game.AutoCompleteSteps=0,Game.speedUp=!1,BaseGame.isMobileApp&&BaseGame.isiOS?Math.abs(Game.maxCardMoveX)+Math.abs(Game.maxCardMoveY)>1&&(c=!1):BaseGame.mouse.dX+BaseGame.mouse.dY>8&&(c=!1);var d=!1;c?Game.AutoPlaceCard(b)&&(d=!0):Game.DragAndDrop(b)&&(d=!0),d||Game.ReturnToPrevious(b,!0)}Game.maxCardMoveY=0,Game.maxCardMoveX=0,Game.RunDelayedAutoComplete()},Game.ReturnToPrevious=function(a,b){var c=!0;if(a.sprite.x==a.previousPosition.x&&a.sprite.y==a.previousPosition.y||(TweenLite.to(a.sprite,Game.tween.normalMove,{x:a.previousPosition.x,y:a.previousPosition.y}),TweenLite.delayedCall(Game.tween.normalMove,Game.TurnOffShadow,[a]),TweenLite.delayedCall(Game.tween.normalMove,Game.TurnOffOutline,[a,!0]),c=!1),Game.TurnOffShadow(a),Game.TurnOffOutline(a,c),null!=a.child)for(var d=!0,e=1;d;)a=a.child,Game.TurnOffShadow(a),Game.TurnOffOutline(a,!0),TweenLite.to(a.sprite,Game.tween.normalMove,{x:a.previousPosition.x,y:a.previousPosition.y,delay:e*Game.tween.smallDelay}),e++,null==a.child&&(d=!1)},Game.RunDelayedAutoComplete=function(){Game.AutoCompleteSteps++,Game.AutoCompleteSteps>4&&(Game.speedUp=!0),TweenLite.killDelayedCallsTo(Game.AutoCompleteAll),Game.speedUp?TweenLite.delayedCall(.2,Game.AutoCompleteAll):TweenLite.delayedCall(.4,Game.AutoCompleteAll)},Game.AutoCompleteAll=function(){Game.AutoCompleteColumns()?Game.RunDelayedAutoComplete():Game.AutoCompleteTempCells()?Game.RunDelayedAutoComplete():Game.CheckAutoFinish()},Game.AutoCompleteColumns=function(){for(var a=!1,b=0;b=0&&(a=Game.AutoPlaceCard(Game.cards.columns[b][c],!0))}return a},Game.AutoCompleteTempCells=function(){for(var a=!1,b=0;b=0&&(a=Game.AutoPlaceCard(Game.cards.tempCells[b][c],!0))}return a},Game.DragAndDrop=function(a){for(var b=.5*Game.CARD_WIDTH,c=0;c0){var e=Game.cards.aces[c][Game.cards.aces[c].length-1];e.suit==a.suit&&a.number==e.number+1&&(d=!0)}if(Game.finalDebug&&(d=!0),d)return Game.PlaceCardInAce(a,c),!0}for(var f=-1,c=0;c0){var a=Game.cards.stock.pop(),b=Game.layout.stockX,c=Game.layout.stockY;stage.setChildIndex(a.sprite,stage.children.length-1),TweenLite.killTweensOf(a.sprite.scale),TweenLite.killTweensOf(a.sprite),Game.layout.screenMode==SCREEN_MODE_PORTRAIT?TweenLite.to(a.sprite.scale,Game.tween.flip,{x:.2,onComplete:function(){a.cardBackSprite.visible=!1,a.faceUp=!0,TweenLite.to(a.sprite.scale,Game.tween.flip,{x:1})}}):Game.layout.screenMode==SCREEN_MODE_LANDSCAPE&&TweenLite.to(a.sprite.scale,Game.tween.flip,{y:.2,onComplete:function(){a.cardBackSprite.visible=!1,a.faceUp=!0,TweenLite.to(a.sprite.scale,Game.tween.flip,{y:1})}}),TweenLite.to(a.sprite,Game.tween.draw,{x:b,y:c,rotation:0}),a.previousPosition.x=b,a.previousPosition.y=c,Game.cards.waste.push(a),Game.cards.stock.length>0?TweenLite.delayedCall(.06,Game.UndoMoveCardBackToStock):(Game.StopListenToWaste(),TweenLite.delayedCall(.3,function(){UndoManager.canUndo=!0}),Game.AlphaStockWaste())}},Game.MoveCardBackToStock=function(){if(UndoManager.canUndo=!1,Game.cards.waste.length>0){var a=Game.cards.waste.pop(),b=Game.layout.drawX,c=Game.layout.drawY;stage.setChildIndex(a.sprite,stage.children.length-1),TweenLite.killTweensOf(a.sprite.scale),TweenLite.killTweensOf(a.sprite),Game.layout.screenMode==SCREEN_MODE_PORTRAIT?TweenLite.to(a.sprite.scale,Game.tween.flipBackToStock,{x:.2,onComplete:function(){a.cardBackSprite.visible=!0,a.faceUp=!1,TweenLite.to(a.sprite.scale,Game.tween.flipBackToStock,{x:1})}}):Game.layout.screenMode==SCREEN_MODE_LANDSCAPE&&TweenLite.to(a.sprite.scale,Game.tween.flip,{y:.2,onComplete:function(){a.cardBackSprite.visible=!0,a.faceUp=!1,TweenLite.to(a.sprite.scale,Game.tween.flip,{y:1})}}),TweenLite.to(a.sprite,Game.tween.draw,{x:b,y:c,rotation:.3*Math.random()-.15}),a.previousPosition.x=b,a.previousPosition.y=c,Game.cards.stock.push(a),Game.cards.waste.length>0?TweenLite.delayedCall(.04,Game.MoveCardBackToStock):(Game.StopListenToDraw(),TweenLite.delayedCall(.3,function(){UndoManager.canUndo=!0,Game.cards.canDraw=!0}),Game.AlphaStockWaste())}},Game.DrawCard=function(){if(Game.cards.canDraw){Game.data.moves++,Game.data.totalMoves++,Game.GameDataChanged();var a=(new Date).getTime();if(1==Game.settings.drawMode)SoundManager.PlaySound(SoundManager.SOUND_FLIP),Game.FlipCardFromDraw(a);else{Game.cards.canDraw=!1,SoundManager.PlaySound(SoundManager.SOUND_FLIP_3);for(var b=0;b0&&(Game.cards.waste.length>=3?(Game.cards.waste3=Game.cards.waste[Game.cards.waste.length-1],Game.cards.waste2=Game.cards.waste[Game.cards.waste.length-2],Game.MoveWasteCard(Game.cards.waste3,Game.layout.stock3X,Game.layout.stock3Y,a),Game.MoveWasteCard(Game.cards.waste2,Game.layout.stock2X,Game.layout.stock2Y,a)):2==Game.cards.waste.length&&(Game.cards.waste2=Game.cards.waste[Game.cards.waste.length-1],Game.MoveWasteCard(Game.cards.waste2,Game.layout.stock2X,Game.layout.stock2Y,a)))},Game.BumpWasteCard=function(a){a&&(a==Game.cards.waste3?(Game.cards.waste2&&Game.BumpWasteCard(Game.cards.waste2),Game.MoveWasteCard(a,Game.layout.stock2X,Game.layout.stock2Y),Game.cards.waste2=a):a==Game.cards.waste2&&(Game.MoveWasteCard(a,Game.layout.stockX,Game.layout.stockY),Game.cards.waste2=null))},Game.MoveWasteCard=function(a,b,c,d){d?(a.sprite.x=b,a.sprite.y=c):TweenLite.to(a.sprite,Game.tween.draw,{x:b,y:c,rotation:0}),a.previousPosition.x=b,a.previousPosition.y=c},Game.FlipCardFromDraw=function(a){if(Game.cards.stock.length>0){var b,c=Game.cards.stock[Game.cards.stock.length-1],d=0;0==Game.cards.waste.length?(b=Game.layout.stockX,d=Game.layout.stockY):Game.cards.waste3?(Game.BumpWasteCard(Game.cards.waste3),Game.cards.waste3=c,b=Game.layout.stock3X,d=Game.layout.stock3Y):Game.cards.waste2?(Game.cards.waste3=c,b=Game.layout.stock3X,d=Game.layout.stock3Y):(Game.cards.waste2=c,b=Game.layout.stock2X,d=Game.layout.stock2Y),UndoManager.AddMove(c,UndoManager.LOCATION_DRAW,-1,null,0,a),Game.layout.screenMode==SCREEN_MODE_PORTRAIT?TweenLite.to(c.sprite.scale,Game.tween.flip,{x:.2,onComplete:function(){c.cardBackSprite.visible=!1,c.faceUp=!0,TweenLite.to(c.sprite.scale,Game.tween.flip,{x:1})}}):Game.layout.screenMode==SCREEN_MODE_LANDSCAPE&&TweenLite.to(c.sprite.scale,Game.tween.flip,{y:.2,onComplete:function(){c.cardBackSprite.visible=!1,c.faceUp=!0,TweenLite.to(c.sprite.scale,Game.tween.flip,{y:1})}}),TweenLite.to(c.sprite,Game.tween.draw,{x:b,y:d,rotation:0}),c.previousPosition.x=b,c.previousPosition.y=d,stage.setChildIndex(c.sprite,stage.children.length-1),Game.cards.stock.splice(Game.cards.stock.indexOf(c),1),Game.cards.waste.push(c),Game.AlphaStockWaste(),Game.StopListenToWaste()}},Game.AutoPlaceCard=function(a,b){Game.TurnOffOutline(a);var c=!1;if(b=b||!1,!a.child)for(var d=0;dGame.howManyCardsCanDrag())return!1;if(!c)for(var d=0;d0&&(c=Game.CanPlaceCardInColumn(a,d)))return Game.PlaceCardInColumn(a,d),!0;if(!c&&null==a.child&&a.column>=0)for(var d=0;d=0?-1==d?d=Game.cards.aces[f][g].number+1:Game.cards.aces[f][g].number+10){var i=Game.cards.aces[b][h-1];if(i.suit==a.suit&&a.number==i.number+1){if(!c)return!0;if(-1==d)return!0;if(a.number+1<=d+2)return!0}}else if(0==a.number)return!0;return Game.AlphaAces(),!1},Game.CanPlaceCardInColumn=function(a,b){if(a.column==b)return!1;var c=Game.cards.columns[b].length;if(!(c>0))return!0;var d=Game.cards.columns[b][c-1];return!!Game.IsValidParent(d,a)},Game.PlaceCardInAce=function(a,b){Game.TurnOffShadow(a),Game.TurnOffOutline(a,!1);var c=0;a.acePoints||(c+=5,Game.data.score+=5,a.acePoints=!0,Game.GameDataChanged()),a.columnPoints||(c+=10,Game.data.score+=10,a.columnPoints=!0,Game.GameDataChanged());var d=Effects.minior;a.number>11&&(d=Effects.major),Effects.fanfare(a,Game.cards.aceStarts[b],d),Game.data.moves++,Game.data.totalMoves++,Game.GameDataChanged();var e=a.column,f=Game.RemoveCardFromAllLists(a);stage.setChildIndex(a.sprite,stage.children.length-1),UndoManager.AddMove(a,f.location,f.index,null,c);var g=a.previousPosition.x=Game.cards.aceStarts[b].x,h=a.previousPosition.y=Game.cards.aceStarts[b].y;Game.speedUp?(TweenLite.to(a.sprite,Game.tween.normalMove/2,{x:g,y:h}),TweenLite.delayedCall(Game.tween.normalMove/2,Game.TurnOffOutline,[a,!0])):(TweenLite.to(a.sprite,Game.tween.normalMove,{x:g,y:h}),TweenLite.delayedCall(Game.tween.normalMove,Game.TurnOffOutline,[a,!0])),Game.cards.aces[b].push(a),a.column=-1,Game.DetermineParents(e),Game.StopListenToAces()},Game.PlaceCardInTempCell=function(a,b,c){void 0===c&&(c=!0),Game.TurnOffShadow(a);Game.data.moves++,Game.data.totalMoves++,Game.GameDataChanged();var d=a.column,e=Game.RemoveCardFromAllLists(a);c&&UndoManager.AddMove(a,e.location,e.index,null,0);var f=Game.cards.tempStarts[b].x,g=Game.cards.tempStarts[b].y;TweenLite.to(a.sprite,Game.tween.normalMove,{x:f,y:g}),a.previousPosition.x=f,a.previousPosition.y=g,Game.cards.tempCells[b].push(a),a.column=-1,a.tempCellIndex=b,Game.RevealColumnCard(d),Game.DetermineParents(d),Game.DetermineWasteCards(!1)},Game.PlaceCardInColumn=function(a,b,c){Game.TurnOffShadow(a),Game.TurnOffOutline(a);var d=0;a.columnPoints||(d=10,Game.data.score+=10,a.columnPoints=!0,Game.GameDataChanged()),Game.GameDataChanged();var e=a.column,f=Game.RemoveCardFromAllLists(a);stage.setChildIndex(a.sprite,stage.children.length-1),1!=c&&(UndoManager.AddMove(a,f.location,f.index,null,d),Game.data.moves++,Game.data.totalMoves++);var g=b*Game.layout.cardSpaceX+.5*Game.CARD_WIDTH,h=Game.cards.columns[b].length*Game.layout.cardSpaceY+Game.layout.tStartY+1.5*Game.CARD_HEIGHT;TweenLite.to(a.sprite,Game.tween.normalMove,{x:g,y:h}),TweenLite.delayedCall(Game.tween.normalMove,Game.TurnOffOutline,[a,!0]),a.previousPosition.x=g,a.previousPosition.y=h,Game.cards.columns[b].push(a),a.column=b,a.shadowSprite.alpha=1,null!=a.child&&Game.PlaceCardInColumn(a.child,b,!0),Game.DetermineParents(b),Game.RevealColumnCard(e),Game.DetermineParents(e),Game.DetermineWasteCards(!1)},Game.RemoveCardFromAllLists=function(a){a==Game.cards.waste2&&(Game.cards.waste2=null),a==Game.cards.waste3&&(Game.cards.waste3=null);var b=0;if(-1!=a.column){b=Game.cards.columns[a.column].indexOf(a),Game.cards.columns[a.column].splice(b,1);var c=a.column;return{location:UndoManager.LOCATION_COLUMNS,index:c}}for(var d=0;d0){var d=Game.tween.flip;b&&(d=0);var e=Game.cards.columns[a][c-1];e.faceUp||(SoundManager.PlaySound(SoundManager.SOUND_FLIP),e.faceUp=!0,TweenLite.to(e.sprite.scale,d,{x:.1,onComplete:function(){e.cardBackSprite.visible=!1,TweenLite.to(e.sprite.scale,d,{x:1})}}),UndoManager.AddMove(e,UndoManager.LOCATION_COLUMNS,e.column,UndoManager.TYPE_REVEAL_COLUMN,0),Game.ListenToCard(e))}}},Game.DetermineParents=function(a){if(-1!=a)for(var b=0;b0&&Game.cards.columns[a][b-1].faceUp&&(Game.cards.columns[a][b].parent=Game.cards.columns[a][b-1]),b+1=0;d--)for(var g=0;g=10){var g="royal_king.png";switch(b){case 10:g="royal_jack.png";break;case 11:g="royal_queen.png";break;case 12:g="royal_king.png"}var h=BaseGame.Sprite(g);f.addChild(h),h.x=.5*f.width-.5*h.width,h.y=f.height-h.height-30}else{var i=BaseGame.Sprite(e[d]+".png");f.addChild(i),i.x=.5*f.width-.5*i.width,i.y=f.height-i.height-42}var j=BaseGame.Sprite((b+1).toString()+"_"+c);f.addChild(j),j.x=20,j.y=15;var k=BaseGame.Sprite(e[d]+"_small.png");f.addChild(k),k.x=174,k.y=20;var l=new PIXI.Sprite.fromImage(BaseGame.assetsFolderUrl+"cards/freecell_card.png");this.sprite.addChild(l),this.cardBackSprite=l,f.x=l.x=this.outlineSprite.x=this.outlineCutSprite.x=.5*-Game.CARD_WIDTH,f.y=l.y=this.outlineSprite.y=this.outlineCutSprite.y=.5*-Game.CARD_HEIGHT,this.shadowSprite.x=f.x,this.shadowSprite.y=f.y},Game.ApplyTheme=function(a,b){if(Game.themes.desiredTheme=a,Game.themes.currentThemeName=ThemeMenu.getThemeName(a),Game.themes.currentCard!=a){if(void 0!=PIXI.loader.resources[Game.themes.cards[a]]&&Game.themes.cardsLoaded){Game.themes.currentCard=a;for(var c=null,d=0;d3&&(a=0)};var TAB_HEADER_PADDING=ContentPath.tabHeaderPadding||40,alignOffset=11,ThemeMenu=function(a,b,c,d){c=c||2,ThemeMenu.layer=a,ThemeMenu.themeData=b,ThemeMenu.type=c,ThemeMenu.savedTheme=Background.currentImage,ThemeMenu.iconStartX=198,ThemeMenu.iconStartY=0,ThemeMenu.icons=[],ThemeMenu.tabHeaders=[],ThemeMenu.index=0,ThemeMenu.renderedIndex=0,ThemeMenu.rightOffset=Math.floor(window.innerWidth/110)-1,ThemeMenu.isOpen=!1,ThemeMenu.mouseDown=!1,ThemeMenu.lastMouseX=0,ThemeMenu.dragForce=0,ThemeMenu.canClick=!1,ThemeMenu.canDrag=!1,ThemeMenu.closeHandler=null,ThemeMenu.height=183,ThemeMenu.activeHeaderheight=45,ThemeMenu.headerheight=35,ThemeMenu.iconWidth=110,ThemeMenu.iconHeight=110,ThemeMenu.buttonScale=1.3,ThemeMenu.controlOffsetY=-10,ThemeMenu.selectedTab=0,ThemeMenu.tabIcons=[],ThemeMenu.openOffsetY=window.innerHeight-ThemeMenu.height,ThemeMenu.defaultCategories=[{name:"All",id:"all"},{name:"Stared",id:"stared"}],2==c&&(ThemeMenu.Resize=ThemeMenu2.Resize,ThemeMenu2(a,b,c,d)),ThemeMenu.appear=!1},themeName=[],themeNameReverseLookup={},isUsingPartialThemeList=!BaseGame.isMobileApp,PRELOAD_COUNT=BaseGame.THEME_PRELOAD_COUNT;ThemeMenu.repositionTabs=function(){ThemeMenu.headerContainer.realWidth=0;var a=!1;2==ThemeMenu.type&&(window.innerWidth>734&&window.innerWidth<968&&GameMenu.SMALL==GameMenu.SMALL_MOBILE_LANSCAPE||window.innerWidth<734)&&(a=!0);for(var b=0;b3&&(e=e.substr(0,3)+"."),f=UI.CreateTextElement(e,{font:"18px "+UI.headerFont}),c.title.text=e,"Stared"==e&&(f=c.title),c.lineStyle(2,h,1),c.beginFill(g,1),c.drawRoundedRect(0,0,f.textWidth+TAB_HEADER_PADDING,ThemeMenu.activeHeaderheight+20,10),c.endFill()}c.x=ThemeMenu.headerContainer.realWidth,1==ThemeMenu.type?ThemeMenu.headerContainer.realWidth+=c.width-20*ThemeMenu.headerContainer.scale.x:ThemeMenu.headerContainer.realWidth+=c.width}ThemeMenu.headerContainer.removeChildren();for(var i=ThemeMenu.tabHeaders.length-1;i>=0;i--)i!=ThemeMenu.selectedTab&&ThemeMenu.headerContainer.addChild(ThemeMenu.tabHeaders[i]);ThemeMenu.headerContainer.addChild(ThemeMenu.tabHeaders[ThemeMenu.selectedTab])},ThemeMenu.themeData=null,ThemeMenu.loadThemes=function(a){function b(){ThemeMenu.loadingText.visible=!1;var a=ThemeMenu.numRow*ThemeMenu.numCol,b=c,d=[];if(isUsingPartialThemeList){for(var e=0;d.length-1&&d.push(themeData.list[e]),e++;for(e=0;d.lengthwindow.innerHeight&&(f=40),e.y=ThemeMenu.openOffsetY+f,e.x=ThemeMenu.openOffsetX,a.addChild(e),ThemeMenu.container=e,e.beginFill(UI.primaryColor,1),e.drawRoundedRect(0,ThemeMenu.activeHeaderheight,ThemeMenu.width,ThemeMenu.height-ThemeMenu.activeHeaderheight+3,20),e.endFill();var g=ThemeMenu.headerContainer=new PIXI.Container;ThemeMenu.headerContainer=g,e.addChild(g),g.y=0,g.x=ThemeMenu.headerOffsetX;var h=new PIXI.filters.DropShadowFilter;h.color=32,h.alpha=.2,h.blur=2,h.distance=4;for(var i=0;i0&&(m.x=g.width-20),ThemeMenu.tabHeaders.push(m),g.addChild(m);var n=UI.CreateTextElement(j.name,{font:"18px "+UI.headerFont});"stared"==j.id&&(n=BaseGame.Sprite(Asset.i.star_icon),n.textWidth=n.width,n.textHeight=n.height),n.filters=[h],n.y=ThemeMenu.headerheight/2-n.textHeight/2+5,n.x=Math.floor(TAB_HEADER_PADDING/2),m.title=n,m.lineStyle(2,1869002,1),m.beginFill(k,1),m.drawRoundedRect(0,0,n.textWidth+TAB_HEADER_PADDING,ThemeMenu.activeHeaderheight+20,10),m.endFill(),m.y=l,m.addChild(n),m.on("pointerup",ThemeMenu.selectTab)}ThemeMenu.headerContainer.originalWidth=ThemeMenu.headerContainer.width,ThemeMenu.headerContainer.originalHeight=ThemeMenu.headerContainer.height;var o=new PIXI.Graphics;e.addChild(o),ThemeMenu.innerContainer=o,o.beginFill(16777215),o.drawRoundedRect(3,3,ThemeMenu.width-6,ThemeMenu.height-ThemeMenu.activeHeaderheight-3,20),o.endFill(),o.y=ThemeMenu.activeHeaderheight,ThemeMenu.loadingText=UI.CreateTextElement("Loading themes, please\ncheck back soon.",{font:"20px "+UI.headerFont}),e.addChild(ThemeMenu.loadingText),ThemeMenu.loadingText.x=20,ThemeMenu.loadingText.y=90,ThemeMenu.maskOverlay=new PIXI.Graphics,ThemeMenu.maskOverlay.beginFill(0,1),ThemeMenu.maskOverlay.drawRoundedRect(3,3,ThemeMenu.width-6,ThemeMenu.height-ThemeMenu.activeHeaderheight-3,20),ThemeMenu.maskOverlay.endFill(),ThemeMenu.iconContainer=new PIXI.Container;b.list.length;BaseGame.isMobileApp||BaseGame.isMobileWeb?d&&ThemeMenu.loadThemes(d):ThemeMenu.loadThemes(d),ThemeMenu.innerContainer.addChild(ThemeMenu.maskOverlay),ThemeMenu.iconContainer.mask=ThemeMenu.maskOverlay,o.addChild(ThemeMenu.iconContainer),ThemeMenu.iconContainer.y=ThemeMenu.iconStartY,ThemeMenu.innerContainerWidth=ThemeMenu.innerContainer.width,ThemeMenu.totalPage=Math.floor(ThemeMenu.icons.length/(ThemeMenu.numRow*ThemeMenu.numCol)),ThemeMenu.totalPage+=ThemeMenu.icons.length%(ThemeMenu.numRow*ThemeMenu.numCol)==0?0:1,ThemeMenu.pagiation=new PIXI.Container,ThemeMenu.pagiation.y=ThemeMenu.height-20,ThemeMenu.container.addChild(ThemeMenu.pagiation),ThemeMenu.pageBullets=[],ThemeMenu.pagiation.realWidth=-8;for(var p=0;p<20;p++){var q=new PIXI.Graphics;q.x=20*p,q.interactive=!0,q.buttonMode=!0,q.on("pointerup",ThemeMenu.jumpToPage.bind(ThemeMenu,p)),q.beginFill(UI.primaryColor,1),q.drawCircle(0,0,8),q.endFill(),q.beginFill(16777215,1),q.drawCircle(0,0,6),q.endFill(),q.select=new PIXI.Graphics,q.addChild(q.select),q.select.beginFill(UI.primaryColor,1),q.select.drawCircle(0,0,6),q.select.endFill(),ThemeMenu.pagiation.addChild(q),ThemeMenu.pageBullets.push(q),p==ThemeMenu.selectedPage&&(q.select.visible=!1),p>=ThemeMenu.totalPage||ThemeMenu.totalPage<=1?q.visible=!1:ThemeMenu.pagiation.realWidth+=28}ThemeMenu.pagiation.x=(ThemeMenu.innerContainer.width-ThemeMenu.pagiation.realWidth)/2+20;var r=ThemeMenu.leftButton=BaseGame.Sprite(Asset.i.button_arrow_left),s=ThemeMenu.leftButtonDisabled=BaseGame.Sprite(Asset.i.button_arrow_left_gray);r.addChild(s),r.scale.set(.5,.5);var t=ThemeMenu.rightButton=BaseGame.Sprite(Asset.i.button_arrow_right),u=ThemeMenu.rightButtonDisabled=BaseGame.Sprite(Asset.i.button_arrow_right_gray);t.addChild(u),t.scale.set(.5,.5),u.visible=!1,ThemeMenu.rightButton=t,r.interactive=t.interactive=!0,r.buttonMode=t.buttonMode=!0,ThemeMenu.container.addChild(r,t),r.x=ThemeMenu.iconStartX,t.x=ThemeMenu.innerContainer.width-t.width-ThemeMenu.iconStartX,r.y=t.y=ThemeMenu.pagiation.y-ThemeMenu.rightButton.height/2,r.on("pointerup",ThemeMenu.prevPage),t.on("pointerup",ThemeMenu.nextPage),ThemeMenu.startDrag=function(a){var b=BaseGame.NormalizePointerEventData(a);ThemeMenu.mouseDown=!0,ThemeMenu.lastPageX=ThemeMenu.iconContainer.x,ThemeMenu.lastestMouseX=b.pageX},ThemeMenu.endDrag=function(){ThemeMenu.mouseDown=!1,ThemeMenu.canIClick=!0,ThemeMenu.isDraging&&(ThemeMenu.isDraging=!1,ThemeMenu.jumpToPage(ThemeMenu.nextPage))},ThemeMenu.onMove=function(a){var b=BaseGame.NormalizePointerEventData(a),c=ThemeMenu.innerContainerWidth/4;if(ThemeMenu.isOpen&&(ThemeMenu.mouseDown||"pointermove"!=a.type||b.isTouch)){var d=b.pageX,e=d-ThemeMenu.lastestMouseX;Math.abs(e)>10?(ThemeMenu.iconContainer.x=ThemeMenu.lastPageX+e,ThemeMenu.canIClick=!1,ThemeMenu.isDraging=!0):(ThemeMenu.canIClick=!0,ThemeMenu.isDraging=!1),ThemeMenu.nextPage=ThemeMenu.selectedPage,ec&&ThemeMenu.selectedPage>0&&(ThemeMenu.nextPage=ThemeMenu.selectedPage-1)}},ThemeMenu.container.interactive=!0,ThemeMenu.container.on("pointerdown",ThemeMenu.startDrag).on("pointerup",ThemeMenu.endDrag).on("pointerout",ThemeMenu.endDrag).on("pointermove",ThemeMenu.onMove).on("pointerupoutside",ThemeMenu.endDrag);var v=ThemeMenu.closeBtn=UI.AddImageButton(Asset.i.x_icon,Asset.i.x_icon_light,ThemeMenu.onCloseButton);if(o.addChild(v),v.x=o.width-.6*v.width,v.y=.4*-v.height,ThemeMenu.repositionIcons(),ThemeMenu2.Resize(),ThemeMenu.openOffsetY=.5*(window.innerHeight-ThemeMenu.height-ThemeMenu.activeHeaderheight),!Game.data.everChangedTheme){TweenLite.delayedCall(10,function(){ThemeMenu.UpsellTooltip()})}};ThemeMenu.nextPage=function(){ThemeMenu.selectedPage+1<=ThemeMenu.totalPage-1&&ThemeMenu.jumpToPage(ThemeMenu.selectedPage+1)},ThemeMenu.prevPage=function(){ThemeMenu.selectedPage-1>=0&&ThemeMenu.jumpToPage(ThemeMenu.selectedPage-1)},ThemeMenu.checkArrowButton=function(){0==ThemeMenu.tempTheme?(ThemeMenu.leftButtonDisabled.visible=!0,ThemeMenu.rightButtonDisabled.visible=!1):ThemeMenu.tempTheme==ThemeMenu.icons.length-1?(ThemeMenu.leftButtonDisabled.visible=!1,ThemeMenu.rightButtonDisabled.visible=!0):(ThemeMenu.leftButtonDisabled.visible=!1,ThemeMenu.rightButtonDisabled.visible=!1)},ThemeMenu2.Resize=function(){window.innerHeightwindow.innerWidth)ThemeMenu.width=.8*window.innerWidth;else{var b=.72;window.innerWidth<1024&&(b=.76),GameMenu.SMALL==GameMenu.SMALL_MOBILE_LANSCAPE&&(b=.6),a>.52&&window.innerHeight>375&&(b=.8,window.innerHeight>600&&(b=.94)),ThemeMenu.width=Math.min(window.innerWidth*b,1170)}ThemeMenu.iconStartX=.015*ThemeMenu.innerContainer.width>15?.015*ThemeMenu.innerContainer.width:15,ThemeMenu.iconStartY=.01*ThemeMenu.innerContainer.height>5?.01*ThemeMenu.innerContainer.height:5,ThemeMenu.iconSpacing=.02*ThemeMenu.innerContainer.height>5?.02*ThemeMenu.innerContainer.height:5,window.innerHeight>window.innerWidth&&(ThemeMenu.iconSpacing=.02*ThemeMenu.innerContainer.width>5?.02*ThemeMenu.innerContainer.width:5),ThemeMenu.iconWidth=(ThemeMenu.width-2*ThemeMenu.iconStartX-(ThemeMenu.numCol-1)*ThemeMenu.iconSpacing)/ThemeMenu.numCol,ThemeMenu.iconHeight=ThemeMenu.iconWidth/1.61803399,ThemeMenu.height=(ThemeMenu.iconHeight+ThemeMenu.iconSpacing)*ThemeMenu.numRow+2*ThemeMenu.iconStartY+ThemeMenu.activeHeaderheight+ThemeMenu.pagiationHeight,ThemeMenu.openOffsetX=.5*(window.innerWidth-ThemeMenu.width),ThemeMenu.openOffsetY=.5*(window.innerHeight-ThemeMenu.height)-ThemeMenu.activeHeaderheight,ThemeMenu.container.y=ThemeMenu.openOffsetY,ThemeMenu.container.x=ThemeMenu.openOffsetX,ThemeMenu.container.clear(),ThemeMenu.container.beginFill(1869002,1),ThemeMenu.container.drawRoundedRect(0,ThemeMenu.activeHeaderheight,ThemeMenu.width,ThemeMenu.height-ThemeMenu.activeHeaderheight+3,20),ThemeMenu.container.endFill(),ThemeMenu.innerContainer.clear(),ThemeMenu.innerContainer.beginFill(16777215),ThemeMenu.innerContainer.drawRoundedRect(3,3,ThemeMenu.width-6,ThemeMenu.height-ThemeMenu.activeHeaderheight-3,20),ThemeMenu.innerContainer.endFill(),ThemeMenu.closeBtn.x=ThemeMenu.width-.6*ThemeMenu.closeBtn.width,ThemeMenu.iconStartX=.015*ThemeMenu.innerContainer.width>15?.015*ThemeMenu.innerContainer.width:15,ThemeMenu.iconStartY=.01*ThemeMenu.innerContainer.height>5?.01*ThemeMenu.innerContainer.height:5,ThemeMenu.iconSpacing=.02*ThemeMenu.innerContainer.height>5?.02*ThemeMenu.innerContainer.height:5,window.innerHeight>window.innerWidth&&(ThemeMenu.iconSpacing=.02*ThemeMenu.innerContainer.width>5?.02*ThemeMenu.innerContainer.width:5);for(var c=0;cwindow.innerWidth?(d.cards.width=.25*d.width,d.cards.height=1.35*d.cards.width):(d.cards.height=.7*d.height,d.cards.width=d.cards.height/1.35),d.cards.x=ThemeMenu.iconWidth-d.cards.width-5,d.cards.y=ThemeMenu.iconHeight-d.cards.height-5,d.label.x=10,d.label.y=ThemeMenu.iconHeight-d.label.height-10}var e=0;(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&window.innerWidth>window.innerHeight&&(e=20),ThemeMenu.isOpen?(ThemeMenu.rightButton&&(ThemeMenu.rightButton.x=window.innerWidth-ThemeMenu.rightButton.width-ThemeMenu.navOffset-ThemeMenu.closeBtn.width),ThemeMenu.leftButton&&(ThemeMenu.leftButton.x=ThemeMenu.navOffset),ThemeMenu.container.y=ThemeMenu.openOffsetY+e):ThemeMenu.container.y=-ThemeMenu.height-60+e,ThemeMenu.iconContainer.availableWidth=ThemeMenu.width-30,ThemeMenu.repositionTabs();var f=1;ThemeMenu.iconContainer.availableWidthwindow.innerWidth&&(g=.9),ThemeMenu.closeBtn.x=ThemeMenu.innerContainer.width-ThemeMenu.closeBtn.width*g+ThemeMenu.closeBtn.width*(1-f)*.5,ThemeMenu.closeBtn.y=.4*-ThemeMenu.closeBtn.height+ThemeMenu.closeBtn.height*(1-f)*.5;ThemeMenu.container.scale.set(1,1),ThemeMenu.pagiation.y=ThemeMenu.height-20,ThemeMenu.pagiation.x=(ThemeMenu.width-ThemeMenu.pagiation.realWidth)/2,ThemeMenu.container.x=.5*window.innerWidth-.5*ThemeMenu.container.width+alignOffset,ThemeMenu.isOpen&&(ThemeMenu.container.y=.5*window.innerHeight-.5*ThemeMenu.container.height-20+e),ThemeMenu.leftButton.x=ThemeMenu.iconStartX,ThemeMenu.rightButton.x=ThemeMenu.innerContainer.width-ThemeMenu.rightButton.width-ThemeMenu.closeBtn.width,ThemeMenu.leftButton.y=ThemeMenu.rightButton.y=ThemeMenu.pagiation.y-ThemeMenu.rightButton.height/2,ThemeMenu.openOffsetY=.5*(window.innerHeight-ThemeMenu.height)-ThemeMenu.activeHeaderheight-20,ThemeMenu.maskOverlay.clear(),ThemeMenu.maskOverlay.beginFill(0,1),ThemeMenu.maskOverlay.drawRoundedRect(3,3,ThemeMenu.width-6,ThemeMenu.height-ThemeMenu.activeHeaderheight-3,20),ThemeMenu.maskOverlay.endFill(),ThemeMenu.filterThemeList(),ThemePreview.resize()},ThemeMenu.UpsellTooltip=function(){},ThemeMenu.Update=function(){2==ThemeMenu.type&&ThemePreview.Update()},ThemeMenu.selectTab=function(a){var b=a.target;if(b.index!=ThemeMenu.selectedTab){Analytics.TrackEvent("CATEGORY_THEMES","ACTION_CATEGORY_TAB",b.category.name),ThemeMenu.selectedPage=0;var c=ThemeMenu.tabHeaders[ThemeMenu.selectedTab];c.selected=!1,c.clear(),TweenLite.to(c,.3,{y:ThemeMenu.activeHeaderheight-ThemeMenu.headerheight}),b.selected=!1,ThemeMenu.selectedTab=b.index,TweenLite.to(b,.3,{y:0}),ThemeMenu.iconContainer.x=0,ThemeMenu.repositionTabs(),ThemeMenu.jumpToPage(0)}},ThemeMenu.Open=function(a){if(isUsingPartialThemeList&&Analytics.TrackEvent("CATEGORY_THEMES","ACTION_PRELOAD_THEMES"),!ThemeMenu.isOpen){ThemeMenu2.Resize(),ThemeMenu.canClick=!0,GameMenu.menuContainer.interactive=!1,2==ThemeMenu.type?(GameMenu.CleanSlate(),ThemeMenu.filterThemeList()):(GameHud.shift(0,4),ThemeMenu.checkArrowButton()),TweenLite.killTweensOf(ThemeMenu.container),TweenLite.killTweensOf(ThemeMenu.leftButton),TweenLite.killTweensOf(ThemeMenu.rightButton),TweenLite.killTweensOf(ThemeMenu.starButton),TweenLite.killTweensOf(ThemeMenu.unstarButton),ThemeMenu.appear?ThemeMenu.container.y=window.innerHeight:ThemeMenu.container.y=-ThemeMenu.container.height-100;var b=0;if((BaseGame.isMobileApp||BaseGame.isMobileWeb)&&window.innerWidth>window.innerHeight&&(b=20),1==ThemeMenu.type)ThemeMenu.container.y=window.innerHeight,TweenLite.to(ThemeMenu.container,.4,{delay:.3,y:ThemeMenu.openOffsetY+b}),ThemeMenu.leftButton&&ThemeMenu.rightButton&&(TweenLite.to(ThemeMenu.leftButton,.4,{x:ThemeMenu.navOffset,visible:!0}),TweenLite.to(ThemeMenu.rightButton,.4,{x:window.innerWidth-ThemeMenu.rightButton.width-ThemeMenu.navOffset,visible:!1}));else{var c=.5*window.innerHeight-.5*ThemeMenu.container.height-.5*ThemeMenu.activeHeaderheight;TweenLite.to(ThemeMenu.container,.5,{delay:.3,y:c+b,ease:Back.easeOut.config(1),onComplete:GameMenu.RemoveCurrentMenu})}ThemeMenu.isOpen=!0,ThemeMenu.savedTheme=Background.currentImage,ThemeMenu.tempTheme=ThemeMenu.savedTheme,ThemeMenu.border&&(ThemeMenu.border.visible=!0),ThemeMenu.starButtonGroup&&(ThemeMenu.starButtonGroup.removeChildren(),Game.data.favoriteThemes.indexOf(ThemeMenu.tempTheme)>-1?ThemeMenu.starButtonGroup.addChild(ThemeMenu.unstarButton):ThemeMenu.starButtonGroup.addChild(ThemeMenu.starButton)),GameMenu.DisableHamburger(),BaseGame.HideActionBar(),ThemeMenu.closeHandler=a}},ThemeMenu.onCloseButton=function(){Analytics.TrackEvent("CATEGORY_THEMES","ACTION_XBUTTON","LABEL_CLOSE_MENU"),TweenLite.killTweensOf(ThemeMenu.container),TweenLite.killTweensOf(ThemeMenu.leftButton),TweenLite.killTweensOf(ThemeMenu.rightButton),2==ThemeMenu.type?1==ThemeMenu.appear?(TweenLite.to(ThemeMenu.container,.5,{y:window.innerHeight+60,visible:!1,ease:Back.easeIn.config(1),onComplete:GameMenu.RemoveCurrentMenu}),ThemeMenu.appear=!1):TweenLite.to(ThemeMenu.container,.5,{y:window.innerHeight+60,visible:!1,ease:Back.easeIn.config(1),onComplete:GameMenu.RemoveCurrentMenu}):(TweenLite.to(ThemeMenu.container,.4,{y:window.innerHeight+60,visible:!1}),ThemeMenu.leftButton&&ThemeMenu.rightButton&&(TweenLite.to(ThemeMenu.leftButton,.4,{x:-350,visible:!1}),TweenLite.to(ThemeMenu.rightButton,.4,{x:window.innerWidth+300,visible:!1}))),ThemeMenu.isOpen=!1,BaseGame.ShowActionBar(),Background.ApplyTheme(ThemeMenu.savedTheme),ThemeMenu.border&&(ThemeMenu.border.visible=!1),"function"==typeof ThemeMenu.closeHandler&&ThemeMenu.closeHandler(),2==ThemeMenu.type&&"function"!=typeof ThemeMenu.closeHandler?GameMenu.HideOverlay():GameHud.shift(0,-4),GameMenu.EnableHamburger(),ThemeMenu.closeHandler=null,ThemeMenu.canClick=!1,GameMenu.reOpenWelcome&&(GameMenu.Welcome(),GameMenu.reOpenWelcome=!1)},ThemeMenu.onStarButton=function(){var a=ThemeMenu.tempTheme;-1==Game.data.favoriteThemes.indexOf(a)&&(Game.data.favoriteThemes.push(a),Game.SaveData?Game.SaveData():SaveGame.Serialize(),setTimeout(function(){ThemeMenu.starButtonGroup.removeChildren(),ThemeMenu.starButtonGroup.addChild(ThemeMenu.unstarButton)},.4))},ThemeMenu.onUnstarButton=function(){var a=ThemeMenu.tempTheme,b=Game.data.favoriteThemes.indexOf(a);b>-1&&(Game.data.favoriteThemes.splice(b,1),Game.SaveData?Game.SaveData():SaveGame.Serialize(),ThemeMenu.filterThemeList(),setTimeout(function(){ThemeMenu.starButtonGroup.removeChildren(),ThemeMenu.starButtonGroup.addChild(ThemeMenu.starButton)},.4))},ThemeMenu.onApplyButton=function(){ThemeMenu.savedTheme=ThemeMenu.tempTheme,Game.data.everChangedTheme=!0,ThemeMenu.onCloseButton(),GameUI.showMobileFBLike()},ThemeMenu.openThemePrevew=function(a){if(ThemeMenu.canIClick){GameUI.hideMobileFBLike();var b=a.target;TweenLite.killTweensOf(ThemeMenu.container),ThemeMenu.leftButton&&ThemeMenu.rightButton&&(TweenLite.killTweensOf(ThemeMenu.leftButton),TweenLite.killTweensOf(ThemeMenu.rightButton)),TweenLite.to(ThemeMenu.container,.001,{y:-ThemeMenu.height-60}),ThemeMenu.leftButton&&ThemeMenu.rightButton&&(TweenLite.to(ThemeMenu.leftButton,.01,{visible:!1}),TweenLite.to(ThemeMenu.rightButton,.01,{visible:!1})),ThemeMenu.isOpen=!1,ThemeMenu.hide=!0,GameMenu.HideOverlay(),ThemePreview.open(b.index)}},ThemeMenu.closeThemepreview=function(){TweenLite.killTweensOf(ThemeMenu.container),TweenLite.killTweensOf(ThemeMenu.leftButton),TweenLite.killTweensOf(ThemeMenu.rightButton),ThemeMenu.container.visible=!0;var a=.5*window.innerHeight-.5*ThemeMenu.container.height-.5*ThemeMenu.activeHeaderheight;TweenLite.to(ThemeMenu.container,.01,{y:a}),ThemeMenu.leftButton&&ThemeMenu.rightButton&&(TweenLite.to(ThemeMenu.leftButton,.001,{visible:!0}),TweenLite.to(ThemeMenu.rightButton,.001,{visible:!1})),GameUI.showMobileFBLike(),GameMenu.CleanSlate(),GameMenu.DisableHamburger(),ThemeMenu.isOpen=!1,ThemeMenu.hide=!1},ThemeMenu.onIndex=function(a,b){for(var c=0;c-1?ThemeMenu.starButtonGroup.addChild(ThemeMenu.unstarButton):ThemeMenu.starButtonGroup.addChild(ThemeMenu.starButton),ThemeMenu.starButton.enable=!0),b||(Background.ApplyTheme(c.index,!0),Game.ApplyTheme(c.index,!0)),1==ThemeMenu.type&&ThemeMenu.checkArrowButton()}},ThemeMenu.onLeftButton=function(){var a=ThemeMenu.tabIcons.indexOf(ThemeMenu.icons[ThemeMenu.tempTheme]),b=a-1;b<0||b>ThemeMenu.tabIcons.length-1||ThemeMenu.onIcon({target:ThemeMenu.tabIcons[b]})},ThemeMenu.onRightButton=function(){var a=ThemeMenu.tabIcons.indexOf(ThemeMenu.icons[ThemeMenu.tempTheme]),b=a+1;b<0||b>ThemeMenu.tabIcons.length-1||ThemeMenu.onIcon({target:ThemeMenu.tabIcons[b]})},ThemeMenu.getDragForce=function(){return Math.round(.09*window.innerWidth)},ThemeMenu.jumpToPage=function(a){ThemeMenu.mouseDown=!1,ThemeMenu.selectedPage=a,ThemeMenu.nextPage=a,a>=0&&a=ThemeMenu.totalPage-1&&(ThemeMenu.rightButtonDisabled.visible=!0))},ThemeMenu.filterThemeList=function(a){a=a||ThemeMenu.categories[ThemeMenu.selectedTab].id;var b=0;ThemeMenu.tabIcons=[],ThemeMenu.iconContainer.realWidth=0,ThemeMenu.starButton&&(ThemeMenu.starButton.enable=!1);var c=ThemeMenu.icons.length;isUsingPartialThemeList&&(c=PRELOAD_COUNT);for(var d=0;d-1||e.categories.indexOf(a)>-1){var f=b;if("stared"==a&&(f=Game.data.favoriteThemes.indexOf(e.index)),ThemeMenu.tabIcons.push(e),e.x=ThemeMenu.iconWidth*f+ThemeMenu.iconStartX,ThemeMenu.iconContainer.realWidth+=e.width,TweenLite.to(e,.3,{alpha:1}),e.interactive=!0,e.buttonMode=!0,e.renderable=!0,2==ThemeMenu.type){var g=ThemeMenu.numRow*ThemeMenu.numCol,h=Math.floor(b/g);h!==ThemeMenu.selectedPage&&(e.buttonMode=e.interactive=!1);var i=b%g,j=Math.floor(i/ThemeMenu.numCol),k=i%ThemeMenu.numCol;e.x=h*ThemeMenu.innerContainer.width+k*(ThemeMenu.iconWidth+ThemeMenu.iconSpacing)+ThemeMenu.iconStartX,e.y=j*(ThemeMenu.iconHeight+ThemeMenu.iconSpacing)+ThemeMenu.iconStartY}ThemeMenu.tempTheme==e.index&&ThemeMenu.starButton&&(ThemeMenu.starButton.visible=!0,ThemeMenu.starButton.enable=!0),b++}else TweenLite.to(e,.3,{x:-999999,alpha:0}),e.interactive=!1,e.buttonMode=!1,e.renderable=!1}if(2==ThemeMenu.type){if(ThemeMenu.totalPage=Math.floor(b/(ThemeMenu.numRow*ThemeMenu.numCol)),ThemeMenu.totalPage+=b%(ThemeMenu.numRow*ThemeMenu.numCol)==0?0:1,ThemeMenu.pagiation.realWidth=-8,ThemeMenu.pagiation){for(var l=0;l=ThemeMenu.totalPage||ThemeMenu.totalPage<=1?ThemeMenu.pageBullets[l].visible=!1:(ThemeMenu.pageBullets[l].visible=!0,ThemeMenu.pagiation.realWidth+=28,ThemeMenu.pagiation.x=(ThemeMenu.innerContainer.width-ThemeMenu.pagiation.realWidth)/2+20);ThemeMenu.pageBullets[ThemeMenu.selectedPage].select.visible=!0,TweenLite.killTweensOf(ThemeMenu.iconContainer),TweenLite.to(ThemeMenu.iconContainer,.4,{x:-ThemeMenu.selectedPage*ThemeMenu.innerContainer.width})}ThemeMenu.leftButton&&ThemeMenu.rightButton&&(ThemeMenu.totalPage<=1?(ThemeMenu.leftButton.visible=!1,ThemeMenu.rightButton.visible=!1):(ThemeMenu.leftButton.visible=!0,ThemeMenu.rightButton.visible=!0))}},ThemeMenu.repositionIcons=function(){var a=ThemeMenu.tabHeaders;ThemeMenu.headerContainer.removeChildren();for(var b=a.length-1;b>=0;b--){var c=a[b];ThemeMenu.headerContainer.addChild(c)}},ThemeMenu.getThemeIndex=function(a){return themeNameReverseLookup[a]},ThemeMenu.getThemeName=function(a){return themeName[a]};var ThemePreview=function(a){var b=ThemePreview.container=new PIXI.Container;a.addChild(b),b.visible=!1;var c=ThemePreview.controls=new PIXI.Graphics;b.addChild(c),c.beginFill(16777215,1),c.drawRoundedRect(0,0,.4*window.innerWidth,100,20),c.endFill(),ThemePreview.controls.originalHeight=c.height,c.x=.5*(window.innerWidth-c.width),c.y=window.innerHeight-c.height+20;var d=ThemePreview.applyButton=UI.BasicButton("Apply",ThemePreview.onApply,2);d.width=160,c.addChild(d),d.x=c.width-d.width-30,d.y=15;var e=ThemePreview.backButton=UI.BasicButton("Back",ThemePreview.onBack,1);e.width=160,c.addChild(e),e.x=30,e.y=15,ThemePreview.controlPadding=window.innerWidth.8*window.innerWidth&&(a=.8*window.innerWidth/ThemePreview.controls.minWidth),ThemePreview.backButton.x=30,ThemePreview.applyButton.y=15,ThemePreview.applyButton.x=ThemePreview.controls.minWidth-ThemePreview.applyButton.width-30,ThemePreview.backButton.y=15,ThemePreview.rightButton.x=window.innerWidth-ThemePreview.rightButton.width-50,ThemePreview.controls.scale=new PIXI.Point(a,a),ThemePreview.controls.x=.5*(window.innerWidth-ThemePreview.controls.width),ThemePreview.controls.y=window.innerHeight-ThemePreview.controls.height+20,window.innerHeight.8*window.innerWidth&&(a=.8*window.innerWidth/ThemePreviewUpsell.controls.minWidth),ThemePreviewUpsell.applyButton.x=30,ThemePreviewUpsell.applyButton.y=15,ThemePreviewUpsell.moreThemeButton.x=ThemePreviewUpsell.controls.minWidth-ThemePreviewUpsell.applyButton.width+10,ThemePreviewUpsell.moreThemeButton.y=15,ThemePreviewUpsell.backButton.x=ThemePreviewUpsell.controls.minWidth+ThemePreviewUpsell.applyButton.width+ThemePreviewUpsell.moreThemeButton.width-60,ThemePreviewUpsell.backButton.y=15,ThemePreviewUpsell.controls.scale=new PIXI.Point(a,a),ThemePreviewUpsell.controls.x=.5*(window.innerWidth-ThemePreviewUpsell.controls.width),ThemePreviewUpsell.controls.y=window.innerHeight-ThemePreviewUpsell.controls.height+20},ThemePreviewUpsell.open=function(){ThemePreviewUpsell.container.visible=!0,GameMenu.DisableHamburger(),GameUI.hide()},ThemePreviewUpsell.close=function(){GameMenu.EnableHamburger(),GameUI.show(),ThemePreviewUpsell.container.visible=!1,ThemePreviewUpsell.container.destroy()};var UI={};UI.bodyFont="Overlock",UI.headerFont=ContentPath.headerFont||"Muli",UI.buttonFont=ContentPath.buttonFont||"Button",UI.cornerRadius=20,UI.primaryColor=1003131,UI.starYellow=15194624,UI.facebookBlue=4351922,UI.boldItemFont=ContentPath.boldItemFont||"Muli",UI.itemFont=ContentPath.itemFont||"Muli",UI.legalFont=ContentPath.legalFont||"Muli",UI.labelFont=ContentPath.headerFont||"Muli",UI.legalFontSize="18px",UI.legalFontSizeBig="24px",UI.iconSideMargin=5,UI.FANFARE_TEXT_GRADIENT_FILL=["#FFFFFF","#EDDC10","#CC741D"];var blankButtonEmphasized=Asset.i.blankBtnEmphasized,blankButtonEmphasizedPressed=ContentPath.blankButtonEmphasized||Asset.i.blank_button_green_pressed,buttonTextDefaultSize=ContentPath.buttonFontDefaultSize||"22px ";UI.hudAndSidebarColor=1648443,UI.hudAndSidebarHeight=40,UI.oldestChallengeKey=20180127,UI.signInUpsellEnabled=!1;var daysPerMonthArray=[31,28,31,30,31,30,31,31,30,31,30,31],CHALLENGES_PER_DAY=3;UI.CreateTextElement=function(a,b){for(var c,d=new PIXI.TextStyle,e=0,f="";"p"!==b.font[e]&&em.maxWidth&&(b=m.maxWidth),cm.maxHeight&&(c=m.maxHeight),m.menuWidth=m.originalWidth=b,m.menuHeight=m.originalHeight=c;var q=42,r=.8*b;if(BaseGame.isMobileApp||BaseGame.isMobileWeb){var s=q*a.length*.544;s>.8*b&&(multiplayer=s/(.8*b),q=Math.floor(q/multiplayer))}var t=UI.CreateTextElement(a,{font:q+"px "+UI.headerFont,fontWeight:900,tint:0});if(m.titleText=UI.CreateTextElement(a,{font:q+"px "+UI.headerFont,fontWeight:900,tint:16777215}),m.titleText.width>r&&1===PIXI.settings.RESOLUTION){var u=r/m.titleText.width;q=Math.floor(u*q),m.titleText.font=q+"px "+UI.headerFont,t.font=q+"px "+UI.headerFont}m.titleText.y=(n-m.titleText.textHeight)/2;var v=Math.ceil(.05*q);t.y=m.titleText.y+v,m.titleText.x=t.x=.5*m.width-.5*m.titleText.textWidth,m.addChild(t),m.addChild(m.titleText),m.startScroll=function(a){BaseGame.NormalizePointerEventData(a).isTouch&&BaseGame.UpdateMousePositionManual(a.data.global.x,a.data.global.y),m.scrollBar.active=!0,m.scrollBar.offset=m.y+m.scrollBar.y-BaseGame.mouse.y,m.scrollStartHandler&&m.scrollStartHandler()},m.startDrag=function(a){m.scrollStartHandler&&m.scrollStartHandler(),BaseGame.UpdateMousePositionManual(a.data.global.x,a.data.global.y),m.iOSoldMouseY=0,m.drag=!0,m.oldMouseY=BaseGame.mouse.y,m.dragSpeed=0,m.onDragStart()},m.onDragEnd=function(){},m.onDragStart=function(){},m.endDrag=function(){m.drag=!1,m.onDragEnd()},m.setScrollPercent=function(a){m.scrollBar&&(m.scrollBar.percent=a,m.scrollBar.y=n+(m.h-n-5-m.scrollBar.height)*m.scrollBar.percent)},m.contentArea.interactive=!0,m.contentArea.on("pointerdown",m.startDrag).on("pointerup",m.endDrag).on("pointerupoutside",m.endDrag),m.endScroll=function(){m.scrollBar.active=!1},m.iOSoldMouseY=0,m.update=function(){if(m.scrollBar){if(m.scrollBar.active)m.scrollBar.y=BaseGame.mouse.y+m.scrollBar.offset-m.y,m.scrollBar.ym.h-m.scrollBar.height-18&&(m.scrollBar.y=m.h-m.scrollBar.height-18),m.scrollBar.percent=(m.scrollBar.y-n)/(m.h-n-5-m.scrollBar.height),m.listenScrollHandler&&m.listenScrollHandler(m.scrollBar.percent);else if(m.drag){var a;BaseGame.isiOS?(0===m.iOSoldMouseY&&(m.iOSoldMouseY=BaseGame.mouse.touchstart.y),a=BaseGame.mouse.touchY-m.iOSoldMouseY,m.iOSoldMouseY=BaseGame.mouse.touchY):(a=BaseGame.mouse.y-m.oldMouseY,m.oldMouseY=BaseGame.mouse.y),m.dragSpeed=a}m.dragSpeed*=.9,Math.abs(m.dragSpeed)<.1&&(m.dragSpeed=0),0!==m.dragSpeed&&m.dragHandler&&m.dragHandler(m.dragSpeed)}},m.listenScroll=function(a,b,c){m.scrollStartHandler=a,m.listenScrollHandler=b,m.dragHandler=c},i&&(m.maskOverlay=new PIXI.Graphics,m.maskOverlay.beginFill(0,.5),m.maskOverlay.drawRoundedRect(0,n,m.w,m.h-n,20),m.maskOverlay.endFill(),m.addChild(m.maskOverlay)),m.handler=function(){h&&h(),h=null},m.xSprite=UI.AddImageButton(Asset.i.x_icon,Asset.i.x_icon_light,m.handler),m.xSprite.x=Math.round(m.width-3*m.xSprite.width/4),m.xSprite.y=-Math.round(1*m.xSprite.width/4),m.useLargeXbutton=function(){var a=1.4,b=window.innerHeight/window.innerWidth;(BaseGame.isMobileApp||BaseGame.isMobileWeb)&&(a=b<1?1.4:1.2),m.xSprite.scale.set(a),m.xSprite.x=Math.round(m.width-3*m.xSprite.width/4),m.xSprite.y=-Math.round(1*m.xSprite.width/4)},m.usePortaitLargeXButton=function(){if(BaseGame.isMobileApp||BaseGame.isMobileWeb){window.innerHeight/window.innerWidth>1&&m.xSprite.scale.set(1.3,1.3)}},m.hideClose=function(){m.xSprite.visible=!1},m.hideCards=function(){m.cardsSprite.visible=!1},m.logoHeader=!1,m.resize=function(a,b){var c=1,d=1;m.w>=.8*window.innerWidth&&(c=.8*window.innerWidth/m.w),m.h>=.8*window.innerHeight&&(d=.7*window.innerHeight/m.h);var e=Math.min(c,d);if(e<1){if(m.scale.set(e,e),m.hasResize)return}else m.scale.set(1,1);m.hasResize=!0,athis.maxWidth&&(a=this.maxWidth),bthis.maxHeight&&(b=this.maxHeight),this.w=a,this.h=b,this.clear();var f=4;this.outline&&(f=6),this.dropShadow&&(this.beginFill(0,.5),this.drawRoundedRect(0,f,a,b,UI.cornerRadius),this.endFill()),this.outline&&this.lineStyle(2,13421772,1),this.beginFill(UI.primaryColor),this.drawRoundedRect(0,0,a,b,UI.cornerRadius),this.endFill(),this.scrollBar&&(m.scrollBar.y=n+(b-n-4-m.scrollBar.height)*m.scrollBar.percent,m.scrollBar.x=a-m.scrollBar.width-9,m.scrollStartHandler&&m.scrollStartHandler(),m.listenScrollHandler&&m.listenScrollHandler(m.scrollBar.percent));var g=2;this.outline||(g=0),l(a,b),this.maskOverlay&&(this.maskOverlay.clear(),this.maskOverlay.beginFill(o),this.maskOverlay.drawRoundedRect(g+2,n,a-2*g-4,b-n-4,UI.cornerRadius),this.maskOverlay.drawRect(g+2,n,a-2*g-4,20),this.maskOverlay.endFill()),this.xSprite.x=Math.round(m.w-3*m.xSprite.width/4),this.menuWidth=a,this.menuHeight=b;for(var h=0;h1){var d=this.items[this.items.length-2];c=d.y+d.height+d.extraHeight+m.itemsOffset}return this.addChild(a),a.x=10,a.y=c,a.centerH=!1,b&&(a.centerH=!0),a.resize&&a.resize(this.menuWidth,a.height),a},m.addItems=function(){for(var a=0;a0&&(i.x=f[h-1].x-i.realWidth-g-15+d)}return a.addChild(a.content),this.setValue=function(a){for(var b=0;b0&&(j.x=f[h-1].x+f[h-1].realWidth+20+c),g.realWidth=j.x+j.realWidth}return g.setValue=function(a){for(var b=0;bd.height,g=b,h=b/d.height;e?d.width=d.height=g:f?(g=d.texture.height,h=b/d.height,d.height=b,d.width=h*d.width):f||(g=d.texture.width,h=b/d.width,d.width=b,d.height=h*d.height);var i=BaseGame.Sprite(Asset.i.ProfilePhotoFrame_Gold);i.width=i.height=g,d.mask=i,c.mask=i;var j=BaseGame.Sprite(Asset.i.ProfilePhotoFrame_Gold);j.x=j.y=-2,j.width=j.height=b+4;var k=new PIXI.Sprite;return k.addChild(j),k.addChild(c),k.addChild(d),k.addChild(i),k},UI.CenteredMessageItem=function(a,b,c,d,e){e=e||UI.legalFontSize+" "+UI.labelFont;var f=new PIXI.Graphics;f.beginFill(16777215,0),f.drawRoundedRect(0,0,c,d,15),f.endFill();var g={};for(var h in a)g[h]=UI.CreateTextElement(a[h],{font:e,tint:UI.primaryColor,align:"center"}),g[h].x=UI.getHorizontalCenter(g[h].width,c),g[h].y=UI.getVerticalCenter(g[h].textHeight,d),f.addChild(g[h]),g[h].visible=!1;return b&&g[b]&&(g[b].visible=!0),f.showMessage=function(a){for(var b in g){var c=!1;b===a&&(c=!0),g[b].visible=c}},f.resize=function(a){this.x=UI.getHorizontalCenter(this.width,a)},f},UI.BasicMenuItemCustomText=function(a,b,c,d){return UI.BasicMenuItem(a,b,c,!1,null,d.align,d.font,d.tint,null,d.fontWeight)},UI.BasicMenuItem=function(a,b,c,d,e,f,g,h,i,j){e=e||16777215,h=h||UI.primaryColor,f=f||"left",g=g||UI.legalFontSizeBig+" "+UI.labelFont,j=j||900;var k=new PIXI.Graphics;k.paddingLeft=i||0,k.visibleWidth=b;var l=1;return d||(l=0),k.beginFill(e,l),k.drawRoundedRect(0,0,b,c,15),k.endFill(),k.t=UI.CreateTextElement(a,{font:g,tint:h,align:f,fontWeight:j}),k.addChild(k.t),k.t.y=Math.round(.5*k.height-.5*k.t.height)-2,k.t.x=k.paddingLeft,"center"===f&&(k.t.x=Math.round((k.width-k.t.textWidth)/2)),k.resize=function(a){this.t.y=Math.round(.5*this.height-.5*this.t.textHeight),"center"===f?(k.t.x=(k.visibleWidth-k.t.textWidth)/2,k.x=(a-k.visibleWidth)/2):k.x=0},k.setContent=function(a,b){k.content=a,k.addChild(a)},k.setAlign=function(a){"center"===a&&(k.t.x=Math.round((k.width-k.t.textWidth)/2))},k.extraHeight=0,k},UI.SeparatorItem=function(a,b){var c=new PIXI.Graphics;return c.visibleWidth=a,c.beginFill(0,0),c.drawRect(0,0,a,b),c.endFill(),c.resize=function(a){},c.setContent=function(a,b){},c.setAlign=function(a){},c.extraHeight=0,c},UI.ImageMenuItem=function(a,b,c,d){fillColor=16777215;var e,f=new PIXI.Graphics;return f.paddingLeft=d||0,f.visibleWidth=b,f.beginFill(fillColor,0),f.drawRoundedRect(0,0,b,c,15),f.endFill(),e=PIXI.loader.resources[a]?new PIXI.Sprite(PIXI.loader.resources[a].texture):new PIXI.Sprite.fromImage(a),f.addChild(e),f.t=e,f.t.y=0,f.t.x=f.paddingLeft,f.resize=function(a){this.t.y=Math.round(.5*this.height-.5*this.t.height),f.x=0},f.setContent=function(a,b){},f.setAlign=function(a){},f.extraHeight=0,f},UI.Checkbox=function(a){var b=new PIXI.Graphics;return b.onSprite=BaseGame.Sprite(Asset.i.toggle_on),b.offSprite=BaseGame.Sprite(Asset.i.toggle_off),b.addChild(b.onSprite),b.addChild(b.offSprite),b.offSprite.visible=!1,b.buttonMode=!0,b.interactive=!0,b.toggled=!0,b.handler=function(){b.toggled=!b.toggled,b.onSprite.visible=b.toggled,b.offSprite.visible=!b.toggled,a&&a()},b.setValue=function(a){b.toggled=a,b.onSprite.visible=b.toggled,b.offSprite.visible=!b.toggled},b.on("pointerup",b.handler),b},UI.ThemeSelect=function(a,b){function c(){for(var b=0;b-1);if(""!==g.background){var h=BaseGame.assetsFolderUrl+"icons/"+g.icon;PIXI.loader.resources[h]||e.add(h)}d.themes.push(g)}return d.iconContainer=new PIXI.Container,d.addChild(d.iconContainer),d.iconStartX=10,d.icons=[],e._queue.length()>0?e.load(c):c(),d.resize=function(a,b){},d}},UI.ThemeSelect.defaultOPtions={themeNum:3,random:!0},UI.RadioButton=function(a,b,c){c=c||UI.RadioButton.types.small;var d=c.blank,e=c.selected,f=c.textSize||UI.legalFontSizeBig,g=c.textColorOff||UI.primaryColor,h=new PIXI.Graphics;h.blank=BaseGame.Sprite(d),h.addChild(h.blank),h.checked=BaseGame.Sprite(e),h.addChild(h.checked),h.t=UI.CreateTextElement(a,{font:f+" "+UI.labelFont,tint:g}),h.addChild(h.t),c.buttonWidth&&(UI.scaleSpriteByWidth(h.blank,c.buttonWidth),UI.scaleSpriteByWidth(h.checked,c.buttonWidth)),h.buttonMode=!0,h.interactive=!0,h.toggled=!0;var i=function(a){void 0!==a&&h.t.setTextColor(a)};return h.name=a,h.handler=function(){b&&b(h)},h.turnOn=function(){h.checked.visible=!0,h.blank.visible=!1,i(c.textColorOn)},h.turnOff=function(){h.checked.visible=!1,h.blank.visible=!0,i(c.textColorOff)},h.on("pointerup",h.handler),c.centerTextInSprite?(h.t.x=UI.getHorizontalCenter(h.t.width,h.blank.width),h.t.y=Math.round(h.blank.height/2-.58*h.t.textHeight)):(h.t.x=Math.round(h.blank.width+10),h.t.y=Math.round(h.blank.height/2-h.t.textHeight/2)),h.checked.x=0,h.checked.y=h.blank.y=0,h.realWidth=c.buttonWidth||h.t.x+h.t.textWidth+10,window.g=h,h},UI.RadioButton.types={},UI.RadioButton.types.small={blank:Asset.i.checkbox_small_blank,selected:Asset.i.checkbox_small_checked},UI.RadioButton.types.big={blank:Asset.i.checkbox_blank,selected:Asset.i.checkbox_checked_1},UI.RadioButton.types.filledTextButton={blank:Asset.i.newGameTypeOff,selected:Asset.i.newGameTypeOn,textSize:"18px",textColorOff:1068664,textColorOn:16777215,centerTextInSprite:!0,buttonWidth:100},UI.Separator=function(a,b,c,d,e){a=a||2,b=b||100,c=c||2854094,d=d||0,e=e||0;var f=new PIXI.Graphics;return f.lineStyle(a,c,1),f.moveTo(d,e),f.lineTo(d+b,e),f.resize=function(){f.moveTo(d,e),f.lineTo(d+b,e)},f},UI.GrayTextLinkButton=function(a,b,c,d){var e=c||UI.legalFontSizeBig,f=10066329;void 0!==d&&(f=d);var g=UI.CreateTextElement(a,{font:e+" "+UI.labelFont,align:"center",tint:f});return g.interactive=g.buttonMode=!0,g.hitArea=new PIXI.Rectangle(-8,-8,g.width+16,g.height+16),g.on("pointerup",b),g},UI.BasicButton=function(a,b,c,d){var e=Asset.i.blank_button_blue,f=Asset.i.blank_button_blue_pressed;d=d||buttonTextDefaultSize,2===c?(e=blankButtonEmphasized,f=blankButtonEmphasizedPressed):3===c?(e=Asset.i.blank_button_blue_small,f=Asset.i.blank_button_blue_small_pressed):7===c?(e=Asset.i.button_close_big,f=Asset.i.button_close_big_pressed):8===c?(e=Asset.i.button_check_big,f=Asset.i.button_check_big_pressed):"object"==typeof c&&"string"==typeof c.regular&&"string"==typeof c.pressed&&(e=c.regular,f=c.pressed);var g=new PIXI.Container,h=BaseGame.Sprite(e);g.light=BaseGame.Sprite(f),2===c&&(UI.scaleSpriteByWidth(h,182),UI.scaleSpriteByWidth(g.light,182)),g.addChild(h),g.addChild(g.light),g.light.alpha=0;var i=null;return i=UI.buttonFont===ContentPath.buttonFont?UI.GetButtonTextWithDropShadow(a,d):UI.GetButtonTextWithDropShadow(a,d,null,null,"700"),g.addChild(i),i.x=Math.round(.5*g.width-.5*i.width),i.y=Math.round(.5*g.height-.5*i.height)-2,g.showLight=function(){TweenLite.to(g.light,0,{alpha:1})},g.hideLight=function(){TweenLite.to(g.light,.4,{alpha:0})},g.interactive=g.buttonMode=!0,g.lastClick=null,g.on("pointerup",function(){g.hideLight();var a=(new Date).getTime();(!g.lastClick||a-g.lastClick>500)&&(g.lastClick=a,b())}).on("pointerupoutside",function(){g.hideLight()}).on("pointerdown",function(){g.showLight()}),g.resize=function(a,b){},g.extraHeight=0,g},UI.createHoverImageButton=function(a,b,c){var d=BaseGame.Sprite(a),e=BaseGame.Sprite(b);return d.interactive=!0,d.cursor="pointer",d.hover=e,d.on("mouseover",function(a){e.alpha=1}),d.on("mouseout",function(a){e.alpha=0}),d.on("mouseup",function(a){"function"==typeof c&&c()}),d.on("touchend",function(a){"function"==typeof c&&c()}),d.on("mouseupoutside",function(a){e.alpha=0}),d.addChild(e),e.alpha=0,d},UI.ResponsiveButton=function(a,b,c,d){var e=new PIXI.Container;return e.small=BaseGame.Sprite(a),e.regular=BaseGame.Sprite(b),d&&(e.regular.hover=BaseGame.Sprite(d),e.regular.addChild(e.regular.hover)),d&&(e.regular.hover.alpha=0,e.regular.interactive=!0,e.on("mouseover",function(a){e.regular.hover.alpha=1}),e.on("mouseout",function(){e.regular.hover.alpha=0})),e.addChild(e.small),e.addChild(e.regular),e.small.visible=!1,e.visibleWidth=e.regular.width,e.showCompact=function(a){e.small.visible=a,e.regular.visible=!a,e.visibleWidth=a?e.small.width:e.regular.width},e.setAlpha=function(a){"number"==typeof a&&(e.small.alpha=a,e.regular.alpha=a)},e},UI.WordWrap=function(a,b){if(b=b||75,!a)return a;if(a.lengthb&&d;){d=!1;var e=a[b];if(" "!==e)for(var f=b;f>0;f--)" "===(e=a[f])&&(c+=a.substring(0,f)+"\n",a=a.substring(f+1,a.length),d=!0,f=0);else c+=a.substring(0,b)+"\n",a=a.substring(b+1,a.length),d=!0}return c+=a},UI.dropShadow=function(a,b){var c=Object.assign({},UI.dropShadow.defaultOption,b),d=new PIXI.filters.DropShadowFilter;return d.color=c.color,d.alpha=c.alpha,d.blur=c.blur,d.distance=c.distance,Array.isArray(a.filters)||(a.filters=[]),a.filters.push(d),d},UI.dropShadow.defaultOption={color:32,alpha:.2,blur:2,distance:4},UI.GetButtonTextWithDropShadow=function(a,b,c,d,e){b=b||buttonTextDefaultSize,c=c||UI.buttonFont,d=d||"center",e=e||"normal";var f=UI.CreateTextElement(a,{font:b+c,align:d,fontWeight:e}),g=UI.CreateTextElement(a,{font:b+c,align:d,tint:0,fontWeight:e}),h=new PIXI.Container;return g.y=Math.round(.08*g.textHeight),g.alpha=.5,h.addChild(g),h.addChild(f),h},UI.scaleSpriteByWidth=function(a,b){var c=b/a.width;return a.width=b,a.height=a.height*c,c},UI.scaleSpriteByHeight=function(a,b){var c=b/a.height;return a.height=b,a.width=a.width*c,c},UI.scaleSprite=function(a,b){a.width=a.width*b,a.height=a.height*b},UI.getHorizontalCenter=function(a,b){return((b||window.innerWidth)-a)/2},UI.getVerticalCenter=function(a,b){return((b||window.innerHeight)-a)/2},UI.CenterInContainer=function(a,b){a.x=(b.width-a.width)/2,a.y=(b.height-a.height)/2};var LOCKED_CHALLENGE_STATE=-1;UI.ChallengeCard=function(a,b){var c=null,d=new PIXI.Container,e=LOCKED_CHALLENGE_STATE;null!==b&&b>=0&&b<=3&&(e=b);for(var f=UI.CreateTextElement("Yy",{font:"28px "+UI.legalFont}),g=BaseGame.Sprite(Asset.i.dailyCardBack),h=BaseGame.Sprite(Asset.i.dailyCardFront),i=f.height+2,j=[],k=0;k<=3;k++)j[k]=BaseGame.Sprite(Asset.i["starsGold"+k]),j[k].visible=k===b,h.addChild(j[k]);return UI.scaleSpriteByWidth(g,141),g.y=i,g.visible=e===LOCKED_CHALLENGE_STATE,d.addChild(g),UI.scaleSpriteByWidth(h,141),h.y=i,h.visible=e>=0,d.addChild(h),f.text=a||"",f.x=UI.getHorizontalCenter(f.width,141),d.addChild(f),d.setState=function(a,b){c=b;var d=LOCKED_CHALLENGE_STATE;if(null!==a.stars&&(d=a.stars),g.visible=d===LOCKED_CHALLENGE_STATE,h.visible=d>=0,d>=0)for(var e=0;eg.maxWidth&&(c=g.maxWidth),dg.maxHeight&&(d=g.maxHeight),g.menuWidth=g.originalWidth=c,g.menuHeight=g.originalHeight=d,g.titleText=UI.CreateTextElement(a,{font:"34px "+UI.headerFont}),g.titleText.y=(h-g.titleText.textHeight)/2,g.titleText.x=.5*g.width-.5*g.titleText.textWidth,g.addChild(g.titleText),g.startScroll=function(a){BaseGame.NormalizePointerEventData(a).isTouch&&BaseGame.UpdateMousePositionManual(a.data.global.x,a.data.global.y),g.scrollBar.active=!0,g.scrollBar.offset=g.y+g.scrollBar.y-BaseGame.mouse.y,g.scrollStartHandler&&g.scrollStartHandler()},g.startDrag=function(a){g.scrollStartHandler&&g.scrollStartHandler(),BaseGame.UpdateMousePositionManual(a.data.global.x,a.data.global.y),g.drag=!0,g.oldMouseY=BaseGame.mouse.y,g.dragSpeed=0},g.endDrag=function(){g.drag=!1},g.setScrollPercent=function(a){g.scrollBar&&(g.scrollBar.percent=a,g.scrollBar.y=h+(g.h-h-5-g.scrollBar.height)*g.scrollBar.percent)},g.contentArea.interactive=!0,g.contentArea.on("pointerdown",g.startDrag).on("pointerup",g.endDrag).on("pointerupoutside",g.endDrag),g.endScroll=function(){g.scrollBar.active=!1},g.update=function(){if(g.scrollBar){if(g.scrollBar.active)g.scrollBar.y=BaseGame.mouse.y+g.scrollBar.offset-g.y,g.scrollBar.yg.h-g.scrollBar.height-18&&(g.scrollBar.y=g.h-g.scrollBar.height-18),g.scrollBar.percent=(g.scrollBar.y-h)/(g.h-h-5-g.scrollBar.height),g.listenScrollHandler&&g.listenScrollHandler(g.scrollBar.percent);else if(g.drag){var a=BaseGame.mouse.y-g.oldMouseY;g.oldMouseY=BaseGame.mouse.y,g.dragSpeed=a}g.dragSpeed*=.9,Math.abs(g.dragSpeed)<.1&&(g.dragSpeed=0),0!==g.dragSpeed&&g.dragHandler&&g.dragHandler(g.dragSpeed)}},g.listenScroll=function(a,b,c){g.scrollStartHandler=a,g.listenScrollHandler=b,g.dragHandler=c};g.handler=function(){e&&e(),e=null},g.xSprite=UI.AddImageButton(Asset.i.x_icon,Asset.i.x_icon_light,g.handler),g.xSprite.x=Math.round(g.width-3*g.xSprite.width/4),g.xSprite.y=-Math.round(1*g.xSprite.width/4),g.xSprite.visible=!1,g.hideClose=function(){g.xSprite.visible=!1},g.hideCards=function(){g.topLeftIconSprite.visible=!1},g.resize=function(a,b){var c=1,d=1;g.w>=.8*window.innerWidth&&(c=.8*window.innerWidth/g.w),g.h>=.8*window.innerHeight&&(d=.8*window.innerHeight/g.h);var e=Math.min(c,d);if(e<1){if(g.scale.set(e,e),g.hasResize)return}else g.scale.set(1,1);g.hasResize=!0,athis.maxWidth&&(a=this.maxWidth),bthis.maxHeight&&(b=this.maxHeight),this.w=a,this.h=b,this.clear();var j=4;this.outline&&(j=6),this.dropShadow&&(this.beginFill(0,.5),this.drawRoundedRect(0,j,a,b,UI.cornerRadius),this.endFill()),this.outline&&this.lineStyle(2,13421772,1),this.beginFill(UI.primaryColor),this.drawRoundedRect(0,0,a,b,UI.cornerRadius),this.endFill(),this.scrollBar&&(g.scrollBar.y=h+(b-h-4-g.scrollBar.height)*g.scrollBar.percent,g.scrollBar.x=a-g.scrollBar.width-9,g.scrollStartHandler&&g.scrollStartHandler(),g.listenScrollHandler&&g.listenScrollHandler(g.scrollBar.percent));var k=2;this.outline||(k=0),f(a,b),this.maskOverlay&&(this.maskOverlay.clear(),this.maskOverlay.beginFill(i),this.maskOverlay.drawRoundedRect(k+2,h,a-2*k-4,b-h-4,UI.cornerRadius),this.maskOverlay.drawRect(k+2,h,a-2*k-4,20),this.maskOverlay.endFill()),this.xSprite.x=Math.round(g.w-3*g.xSprite.width/4),this.menuWidth=a,this.menuHeight=b;for(var l=0;l1){var d=this.items[this.items.length-2];c=d.y+d.height+d.extraHeight+5}return this.addChild(a),a.x=10,a.y=c,a.centerH=!1,b&&(a.centerH=!0),a.resize&&a.resize(this.menuWidth,a.height),a},g.addItems=function(){for(var a=0;a=p&&(v+=y)}w===r&&(m=y),u[w]={dateKey:A,descriptionIndex:(t+w)%l.length,textString:z,stars:y}}var B=function(a){d&&d(a.target.getDataIndex())},C=function(a){if(k.length>0){var b=!1,c=0;void 0!==a&&(selectedDateIndex=a,b=!0,c=.3);var d=null!==u[selectedDateIndex].stars;u[selectedDateIndex].stars;for(var e=0;e<3;e++){var f=j.LOCKED,g="Challenge "+(e+1)+" locked";if(d){e=CHALLENGES_PER_DAY||!f)&&(challengeStartButton.alpha=0);var o=Math.round(.85*challengeStartButton.height);l.y=UI.getVerticalCenter(l.height,o),n.y=l.y+3,l.x=n.x=UI.getHorizontalCenter(l.width,challengeStartButton.width),challengeStartButton.addChild(n),challengeStartButton.addChild(l);var p=Math.round(.6*J.width);UI.scaleSpriteByWidth(challengeStartButton,p),challengeStartButton.interactive=challengeStartButton.buttonMode=!0;var q=function(){e&&e(u[selectedDateIndex].dateKey,L[m].description)};challengeStartButton.on("pointerup",q),challengeStartButton.x=UI.getHorizontalCenter(challengeStartButton.width,J.width),challengeStartButton.y=Math.round(J.height-.65*challengeStartButton.height),J.addChild(challengeStartButton)},c)h.createChallengeGrid();else{var N=Math.round(.036*K.width);K.tint=UI.facebookBlue;var O=new PIXI.Container,P=new PIXI.Container,Q=UI.CreateTextElement("Play Today's Challenge",{font:"46px "+UI.legalFont}),R=BaseGame.Sprite(Asset.i.playerProfileIcon);UI.scaleSpriteByHeight(R,Q.height),Q.x=R.width+N,P.addChild(R),P.addChild(Q),P.y=i,O.addChild(P);var S="30px "+UI.legalFont,T=UI.CreateTextElement("Test your Solitaire skills with 3 unique\nDaily Challenges and earn your Stars.",{font:S});T.y=Math.round(i+P.height+.5*N),O.addChild(T);var U=UI.CreateTextElement("Complete the 1st challenge today!",{font:S,tint:UI.starYellow});U.y=T.y+T.height+N,O.addChild(U);var V=M(0,j.LOCKED);V.show(!0),V.y=Math.round(U.y+U.height+N),O.addChild(V);var W=Math.round(.16*K.width),X=Math.round(.02*K.width),Y=Math.round(.6*K.width),Z=new PIXI.Container,$=BaseGame.Sprite(Asset.i.headerStar);UI.scaleSpriteByWidth($,W),$.anchor.x=1,$.scale.x=-1*$.scale.x;var _=new PIXI.Sprite(PIXI.loader.resources["src/sprites/HUD-sprite-sheet.json"].textures["facebookLogin.png"]);UI.scaleSpriteByWidth(_,Y),_.x=W-X;var aa=BaseGame.Sprite(Asset.i.headerStar);UI.scaleSpriteByWidth(aa,W),aa.x=_.x+_.width-X,Z.addChild($),Z.addChild(_),Z.addChild(aa),Z.y=Math.round(K.height-.64*Z.height),O.addChild(Z),P.x=UI.getHorizontalCenter(P.width,O.width),T.x=UI.getHorizontalCenter(T.width,O.width),U.x=UI.getHorizontalCenter(U.width,O.width),V.x=UI.getHorizontalCenter(V.width,O.width),Z.x=UI.getHorizontalCenter(Z.width,O.width),J.addChild(O),O.x=UI.getHorizontalCenter(O.width,J.width),g&&(_.interactive=_.buttonMode=!0,_.on("pointerup",g))}return J.x=UI.getHorizontalCenter(J.width,D.width),J.y=Math.round(.95*E.height),h.addChild(J),h.addChild(H),h.addChild(E),h.addChild(D),H.x=UI.getHorizontalCenter(I,h.width),E.x=UI.getHorizontalCenter(E.width,h.width),h.starsThisMonth=v,h},UI.Carousel=function(a,b,c,d,e,f,g,h){function i(){var a=p.length;if(p.push(b()),j&&UI.scaleSprite(p[a],.8),void 0===o.itemSpriteWidth){o.itemSpriteWidth=p[a].width,q[0]=-window.innerWidth;var f=o.itemSpriteWidth*k;if(f>D-(k+1)&&(s=l,f=o.itemSpriteWidth*l),B=c.length-s,u=Math.floor(s/2),e>=0){c.length-e>=u&&e>=u&&(v=e)}w=Math.min(B,v-u),t=(D-f)/(s+1)}if(av,b-u),d&&d(a)};p[a].on("pointerup",h),o.addChild(p[a])}var j=a<420,k=7,l=3,m=16,n=51;j&&(m=8,n=38);var o=new PIXI.Container,p=[],q=[],r=Math.min(a-2*m,1500),s=k,t=null,u=null,v=Math.floor(k/2),w=0,x=0,y=BaseGame.Sprite(Asset.i.arrowL1),z=BaseGame.Sprite(Asset.i.arrowR1);UI.scaleSpriteByWidth(y,n),UI.scaleSpriteByWidth(z,n);var A=0;g&&(A=g[1]);var B=null,C=0;z.x=r-z.width;var D=r-(y.width+z.width);i();var E=c.length-s;for(o.visibleWidth=r;p.length<=2*k;)i();q.push(window.innerWidth+o.width),g&&w>=g[1]&&(C=1);var F=function(a,b){function d(a){return(a%p.length+p.length)%p.length}function e(a){p[a].visible=!1,p[a].x=q[F]}function h(a){f&&f(a)}f&&f();var i=-s;a&&(i=s),void 0!==g&&(A=g[C],B=C>=g.length-1?c.length-s:g[C+1]-s);var j=w+i;void 0!==b&&(j=b),j=B&&(j=B),i=j-w;for(var k=d(x+i),l=s+Math.abs(i),m=0;m0&&(o=m,r=w+m);var t=d(x+o);if(r=w+s){p[t].setState(c[r],r);var D=q.length-1;i<0&&(D=0),p[t].x=q[D],p[t].visible=!0}var F=o-i+1;F<0?F=0:F>=q.length&&(F=q.length-1);var G=q[F];if(0===F||F===q.length-1)TweenLite.to(p[t],.4,{x:G,delay:n,ease:Power1.easeIn,onComplete:e,onCompleteParams:[t]});else if(m===l-1){var H=j+u;TweenLite.to(p[t],.4,{x:G,delay:n,ease:Power2.easeOut,onComplete:h,onCompleteParams:[H]})}else TweenLite.to(p[t],.4,{x:G,delay:n,ease:Power2.easeOut})}x=k,w=j,v=w+u,y.visible=y.interactive=w!==A,z.visible=z.interactive=w!==E},G=function(){F(!0)},H=function(){F(!1)};return o.sectionFwd=function(){C=1,h&&h(0),F(!0,g[C])},o.sectionBack=function(){C=0,h&&h(-1),F(!1,g[C+1]-s)},y.y=z.y=p[0].height/2-y.height/2+14,y.interactive=y.buttonMode=!0,y.on("pointerup",H),z.interactive=z.buttonMode=!0,z.on("pointerup",G),o.addChild(y),o.addChild(z),o.resize=function(){},o};