Advertisement
nutter666

Untitled

Jan 27th, 2014
413
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package  {
  2.    
  3.     import flash.utils.ByteArray;
  4.     import flash.net.SharedObject;
  5.    
  6.     public class SaveManager {
  7.        
  8.         public var parentClass:Main;
  9.        
  10.         public var saveData:SharedObject = SharedObject.getLocal("nutter666/webbyHD")
  11.        
  12.         // awards
  13.        
  14.         var flySnack:Boolean = false; // collect 50 black flies
  15.         var flyMeal:Boolean = false; // collect 100 black flies
  16.         var flyFeast:Boolean = false; // collect 250 black flies
  17.         var flyBuffet:Boolean = false; // collect 500 black flies
  18.         var flyGluttony:Boolean = false; // collect 1000 black flies
  19.        
  20.         var freeze:Boolean = false; // collect 1 freeze flies
  21.         var deepFreeze:Boolean = false; // collect 5 freeze flies
  22.         var winterIsComing:Boolean = false; // collect 25 freeze flies
  23.         var winterHasArrived:Boolean = false // collect 50 freeze flies
  24.         var iceAge:Boolean = false; // collect 100 freeze flies
  25.        
  26.         var bigRedBlast:Boolean = false; // collect 1 super blast flies
  27.         var seeingRed:Boolean = false; // collect 5 super blast flies
  28.         var radioactiveRed:Boolean = false // collect 25 super blast flies
  29.         var redStorm:Boolean = false; // collect 50 super blast flies
  30.         var theRedDeath:Boolean = false; // collect 100 super blast flies
  31.        
  32.         var extraLife:Boolean = false; // collect 1 extra life flies
  33.         var extraLife2:Boolean = false; // collect 5 extra life flies
  34.         var longLiving:Boolean = false; // collect 25 extra life flies
  35.         var eternal:Boolean = false; // collect 50 extra life flies
  36.         var immortality:Boolean = false; // collect 100 extra life flies
  37.        
  38.         var sprinter:Boolean = false; // collect 25 speedy flies
  39.         var sprinter2:Boolean = false; // collect 50 speedy flies
  40.         var sprinter3:Boolean = false; // collect 100 speedy flies
  41.        
  42.        
  43.         //--------------- [STATS] ----------------
  44.         // Fly stats
  45.         var blackFliesCollected:int = 0;
  46.         var glowFliesCollected:int = 0;
  47.         var greenFliesCollected:int = 0;
  48.         var blueFliesCollected:int = 0;
  49.         var redFliesCollected:int = 0;
  50.         var purpleFliesCollected:int = 0;
  51.         var pinkFliesCollected:int = 0;
  52.         var goldFliesCollected:int = 0;
  53.         // enemy stats
  54.         var widowsEaten:int = 0;
  55.         var pyrosEaten:int = 0;
  56.         var spinnersEaten:int = 0;
  57.         var huntersEaten:int = 0;
  58.         var feedersEaten:int = 0;
  59.         var bossBeaten:int = 0;
  60.         // chapter stats
  61.         var chapter1Complete:Boolean = false;
  62.         var chapter2Complete:Boolean = false;
  63.         var chapter3Complete:Boolean = false;
  64.         var chapter4Complete:Boolean = false;
  65.         var chapter5Complete:Boolean = false;
  66.        
  67.        
  68.         public function SaveManager(pClass) {
  69.             // constructor code
  70.             parentClass = pClass
  71.         }
  72.        
  73.         public function checkUnlockCondition(charName:String){
  74.         // chapter unlock characters
  75.         if(charName == "widow"){
  76.             if(this.chapter1Complete){
  77.             return true;
  78.             }
  79.             else{
  80.             return false;
  81.             }
  82.         }
  83.        
  84.         else if(charName == "pyro"){
  85.             if(this.chapter2Complete){
  86.             return true;
  87.             }
  88.             else{
  89.             return false;
  90.             }
  91.         }
  92.        
  93.         else if(charName == "silky"){
  94.             if(this.chapter3Complete){
  95.             return true;
  96.             }
  97.             else{
  98.             return false;
  99.             }
  100.         }
  101.        
  102.         else if(charName == "hunter"){
  103.             if(this.chapter4Complete){
  104.             return true;
  105.             }
  106.             else{
  107.             return false;
  108.             }
  109.         }
  110.         // powerup unlocks
  111.         // blue fly powerup
  112.         else if(charName == "frosty"){
  113.             if(this.deepFreeze){
  114.             return true;
  115.             }
  116.             else{
  117.             return false
  118.             }
  119.         }      
  120.         // red fly powerup
  121.         else if(charName == "midget"){
  122.             if(this.radioactiveRed){
  123.             return true;
  124.             }
  125.             else{
  126.                 return true;
  127.             //return false;
  128.             }
  129.         }
  130.        
  131.         else {
  132.         trace(charName+" needs unlock requiremnt")
  133.         return true;
  134.         }
  135.        
  136.         }
  137.        
  138.         function submitStat(statName:String,statNum:Number){
  139.            
  140.             if(parentClass.debugMode){
  141.             trace("Submit Stat["+statName+":"+statNum+"]")
  142.             }
  143.         // flies eaten
  144.         if(statName == "blackFlyEaten"){
  145.         this.blackFliesCollected += statNum;
  146.         }
  147.         else if(statName == "blueFlyEaten"){
  148.         this.blueFliesCollected += statNum;
  149.         }
  150.         else if(statName == "redFlyEaten"){
  151.         this.redFliesCollected += statNum;
  152.         }
  153.         else if(statName == "greenFlyEaten"){
  154.         this.greenFliesCollected += statNum;
  155.         }
  156.         else if(statName == "purpleFlyEaten"){
  157.         this.purpleFliesCollected += statNum;
  158.         }
  159.         else if(statName == "pinkFlyEaten"){
  160.         this.pinkFliesCollected += statNum;
  161.         }
  162.         else if(statName == "goldFlyEaten"){
  163.         this.goldFliesCollected += statNum;
  164.         }
  165.         else if(statName == "glowFlyEaten"){
  166.         this.glowFliesCollected += statNum;
  167.         }
  168.         // super mode / enemies eaten
  169.         else if(statName == "blackEnemyEaten"){
  170.         this.widowsEaten += statNum;
  171.         }
  172.         else if(statName == "redEnemyEaten"){
  173.         this.pyrosEaten += statNum;
  174.         }
  175.         else if(statName == "whiteEnemyEaten"){
  176.         this.spinnersEaten += statNum;
  177.         }
  178.         else if(statName == "greenEnemyEaten"){
  179.         this.huntersEaten += statNum;
  180.         }
  181.         else if(statName == "purpleEnemyEaten"){
  182.         this.feedersEaten += statNum;
  183.         }
  184.        
  185.        
  186.         updateAwards();
  187.         // update awards should check if an award has been unlocked and spawn a popup if it has
  188.         }
  189.        
  190.         function updateAwards(){
  191.        
  192.         // black flies awards
  193.         if(this.blackFliesCollected >= 50 && !flySnack){
  194.         this.flySnack = true;
  195.         spawnAwardPopup("Fly Snack","blackFly")
  196.         }
  197.         if(this.blackFliesCollected >= 100 && !flyMeal){
  198.         this.flyMeal= true;
  199.         spawnAwardPopup("Fly Meal","blackFly")
  200.         }
  201.         if(this.blackFliesCollected >= 250 && !flyFeast){
  202.         this.flyFeast= true;
  203.         spawnAwardPopup("Fly Feast","blackFly")
  204.         }
  205.         if(this.blackFliesCollected >= 500 && !flyBuffet){
  206.         this.flyBuffet = true;
  207.         spawnAwardPopup("Fly Buffet","blackFly")
  208.         }
  209.         if(this.blackFliesCollected >= 1000 && !flyGluttony){
  210.         this.flyGluttony = true;
  211.         spawnAwardPopup("Fly Gluttony","blackFly")
  212.         }
  213.         // blue flies awards
  214.         if(this.blueFliesCollected >= 1 && !freeze){
  215.         this.freeze = true;
  216.         spawnAwardPopup("Freeze!","blueFly")
  217.         }
  218.         if(this.blueFliesCollected >= 5 && !deepFreeze){
  219.         this.deepFreeze = true;
  220.         spawnAwardPopup("Deep Freeze","blueFly")
  221.         }
  222.         if(this.blueFliesCollected >= 25 && !winterIsComing){
  223.         this.winterIsComing = true;
  224.         spawnAwardPopup("Winter is Coming","blueFly")
  225.         }
  226.         if(this.blueFliesCollected >= 50 && !winterHasArrived){
  227.         this.winterHasArrived = true;
  228.         spawnAwardPopup("Winter is Here","blueFly")
  229.         }
  230.         if(this.blueFliesCollected >= 100 && !iceAge){
  231.         this.iceAge = true;
  232.         spawnAwardPopup("Ice Age!","blueFly")
  233.         }
  234.         // glow flies awards
  235.         if(this.glowFliesCollected >= 1 && !extraLife){
  236.         this.extraLife = true;
  237.         spawnAwardPopup("1Up!","glowFly")
  238.         }
  239.         if(this.glowFliesCollected >= 5 && !extraLife2){
  240.         this.extraLife2 = true;
  241.         spawnAwardPopup("Extra Lives","glowFly")
  242.         }
  243.         if(this.glowFliesCollected >= 25 && !longLiving){
  244.         this.longLiving = true;
  245.         spawnAwardPopup("Long Living","glowFly")
  246.         }
  247.         if(this.glowFliesCollected >= 50 && !eternal){
  248.         this.eternal = true;
  249.         spawnAwardPopup("Eternal","glowFly")
  250.         }
  251.         if(this.glowFliesCollected >= 100 && !immortality){
  252.         this.immortality = true;
  253.         spawnAwardPopup("Immortality","glowFly")
  254.         }
  255.         // red flies awards
  256.         if(this.redFliesCollected >= 1 && !bigRedBlast){
  257.         this.bigRedBlast = true;
  258.         spawnAwardPopup("Big Red Blast!","redFly")
  259.         }
  260.         if(this.redFliesCollected >= 5 && !seeingRed){
  261.         this.seeingRed = true;
  262.         spawnAwardPopup("Seeing Red","redFly")
  263.         }
  264.         if(this.redFliesCollected >= 25 && !radioactiveRed){
  265.         this.radioactiveRed = true;
  266.         spawnAwardPopup("Radioactive","redFly")
  267.         }
  268.        
  269.        
  270.         }
  271.        
  272.         function saveGameData(){
  273.         saveData.data.saveExists = true;
  274.         // save character used and options first
  275.         saveData.data.currentChar = parentClass.settingsMan.selectedCharacter
  276.         saveData.data.soundOn = parentClass.settingsMan.soundsOn;
  277.         saveData.data.musicOn = parentClass.settingsMan.musicOn;
  278.         saveData.data.vFxOn = parentClass.settingsMan.visualEffectsOn;
  279.         saveData.data.fullControl = parentClass.settingsMan.fullControlMode;
  280.        
  281.         if(parentClass.debugMode){
  282.         trace("saving data")
  283.         }
  284.         saveData.flush();
  285.         }
  286.        
  287.         function loadSavedData(){
  288.         if(saveData.data.saveExists){
  289.    
  290.         if(parentClass.debugMode){
  291.         trace("loading data")
  292.         }
  293.        
  294.         parentClass.settingsMan.selectedCharacter = saveData.data.currentChar
  295.         parentClass.settingsMan.soundsOn = saveData.data.soundOn ;
  296.         parentClass.settingsMan.musicOn = saveData.data.musicOn ;
  297.         parentClass.settingsMan.visualEffectsOn = saveData.data.vFxOn ;
  298.         parentClass.settingsMan.fullControlMode = saveData.data.fullControl ;
  299.        
  300.    
  301.         }
  302.         }
  303.        
  304.         function spawnAwardPopup(awardName:String,iGraphic:String){
  305.         var a:AwardPopup = new AwardPopup();
  306.         a.x = 800
  307.         a.y = 0
  308.         a.setInfo(awardName,iGraphic)
  309.         parentClass.addChild(a)
  310.         }
  311.        
  312.  
  313.     }
  314.    
  315. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement