home *** CD-ROM | disk | FTP | other *** search
/ 600 Games / 600games.iso / Estrategia / coffeetycoon_Demo.swf / scripts / frame_2 / DoAction_17.as < prev    next >
Encoding:
Text File  |  2006-06-13  |  10.1 KB  |  324 lines

  1. function xmlValueOut(key, val)
  2. {
  3.    var _loc1_ = val;
  4.    _root.checksum += !isNaN(parseInt(_loc1_)) ? parseInt(_loc1_) : 0;
  5.    return "  <" + key + ">" + _loc1_ + "</" + key + ">\r\n";
  6. }
  7. function save_antstats()
  8. {
  9.    var _loc2_ = _root;
  10.    var _loc3_ = "";
  11.    var _loc1_ = undefined;
  12.    _loc1_ = 0;
  13.    while(_loc1_ < _loc2_.antstats.length)
  14.    {
  15.       _loc3_ += _loc2_.xmlValueOut("stat",_loc2_.antstats[_loc1_]);
  16.       _loc1_ = _loc1_ + 1;
  17.    }
  18.    return _loc3_;
  19. }
  20. function save_bonuses()
  21. {
  22.    var _loc3_ = _root;
  23.    var txt = "";
  24.    var _loc1_ = undefined;
  25.    var _loc2_ = undefined;
  26.    _loc1_ = 0;
  27.    while(_loc1_ < _loc3_.antstats.length)
  28.    {
  29.       _loc2_ = 0;
  30.       while(_loc2_ < _loc3_.bonusstats[_loc1_].length)
  31.       {
  32.          if(_loc3_.bonusstats[_loc1_][_loc2_] != null)
  33.          {
  34.             txt += _loc3_.xmlValueOut("bonus" + _loc1_,_loc3_.bonusstats[_loc1_][_loc2_]);
  35.          }
  36.          _loc2_ = _loc2_ + 1;
  37.       }
  38.       _loc1_ = _loc1_ + 1;
  39.    }
  40.    return txt;
  41. }
  42. function save_store()
  43. {
  44.    var _loc2_ = _root;
  45.    var _loc3_ = "";
  46.    var tf;
  47.    var _loc1_ = undefined;
  48.    var jj;
  49.    _loc1_ = 0;
  50.    while(_loc1_ < _loc2_.item_mods.length)
  51.    {
  52.       tf = !_loc2_.item_bought[_loc1_] ? 0 : 1;
  53.       _loc3_ += _loc2_.xmlValueOut("store",tf);
  54.       _loc1_ = _loc1_ + 1;
  55.    }
  56.    return _loc3_;
  57. }
  58. function save_visited()
  59. {
  60.    var _loc2_ = _root;
  61.    var _loc3_ = "";
  62.    var tf;
  63.    var _loc1_ = undefined;
  64.    var jj;
  65.    _loc1_ = 0;
  66.    while(_loc1_ < _loc2_.item_mods.length)
  67.    {
  68.       tf = !_loc2_.locale_visited[_loc1_] ? 0 : 1;
  69.       _loc3_ += _loc2_.xmlValueOut("map",tf);
  70.       _loc1_ = _loc1_ + 1;
  71.    }
  72.    return _loc3_;
  73. }
  74. function save_enemies()
  75. {
  76.    var _loc2_ = _root;
  77.    var _loc3_ = "";
  78.    var tf;
  79.    var _loc1_ = undefined;
  80.    _loc1_ = 0;
  81.    while(_loc1_ < _loc2_.enemiesencountered.length)
  82.    {
  83.       _loc3_ += _loc2_.xmlValueOut("encounter",_loc2_.enemiesencountered[_loc1_]);
  84.       _loc1_ = _loc1_ + 1;
  85.    }
  86.    return _loc3_;
  87. }
  88. function savegame()
  89. {
  90.    var _loc1_ = _root;
  91.    _loc1_.checksum = 0;
  92.    _loc1_.savetxt = "<game>\r\n";
  93.    _loc1_.savetxt += _loc1_.xmlValueOut("name",_loc1_.colonyname);
  94.    _loc1_.savetxt += _loc1_.save_antstats();
  95.    _loc1_.savetxt += _loc1_.xmlValueOut("upkeep",_loc1_.upkeepcost);
  96.    _loc1_.savetxt += _loc1_.xmlValueOut("maxnest",_loc1_.maxnestsize);
  97.    _loc1_.savetxt += _loc1_.xmlValueOut("forage",_loc1_.forage_factor);
  98.    _loc1_.savetxt += _loc1_.xmlValueOut("dig",_loc1_.dig_factor);
  99.    _loc1_.savetxt += _loc1_.xmlValueOut("hatch",_loc1_.hatch_factor);
  100.    _loc1_.savetxt += _loc1_.xmlValueOut("temp",_loc1_.temperature_mult);
  101.    _loc1_.savetxt += _loc1_.xmlValueOut("sky",_loc1_.sky_mult);
  102.    _loc1_.savetxt += _loc1_.xmlValueOut("rain",_loc1_.rain_mult);
  103.    _loc1_.savetxt += _loc1_.xmlValueOut("type",_loc1_.anttype);
  104.    _loc1_.savetxt += _loc1_.xmlValueOut("locale",_loc1_.localetype);
  105.    _loc1_.savetxt += _loc1_.xmlValueOut("battle",_loc1_.autobattle);
  106.    _loc1_.savetxt += _loc1_.xmlValueOut("move",_loc1_.automove);
  107.    _loc1_.savetxt += _loc1_.xmlValueOut("buy",_loc1_.autobuy);
  108.    _loc1_.savetxt += _loc1_.xmlValueOut("outcome",_loc1_.warsummary);
  109.    _loc1_.savetxt += _loc1_.xmlValueOut("celcius",_loc1_.celcius);
  110.    _loc1_.savetxt += _loc1_.xmlValueOut("mute",_loc1_.musicmute);
  111.    _loc1_.savetxt += _loc1_.xmlValueOut("play",_loc1_.playday);
  112.    _loc1_.savetxt += _loc1_.xmlValueOut("month",_loc1_.gstartmonthnum);
  113.    _loc1_.savetxt += _loc1_.xmlValueOut("day",_loc1_.gstartmonthday);
  114.    _loc1_.savetxt += _loc1_.xmlValueOut("level",_loc1_.antlevel);
  115.    _loc1_.savetxt += _loc1_.xmlValueOut("scouts",_loc1_.ant_scouts);
  116.    _loc1_.savetxt += _loc1_.xmlValueOut("workers",_loc1_.ant_workers);
  117.    _loc1_.savetxt += _loc1_.xmlValueOut("nurses",_loc1_.ant_nurses);
  118.    _loc1_.savetxt += _loc1_.xmlValueOut("soldiers",_loc1_.ant_soldiers);
  119.    _loc1_.savetxt += _loc1_.xmlValueOut("victory",_loc1_.victories);
  120.    _loc1_.savetxt += _loc1_.xmlValueOut("retreat",_loc1_.retreats);
  121.    _loc1_.savetxt += _loc1_.save_store();
  122.    _loc1_.savetxt += _loc1_.save_enemies();
  123.    _loc1_.savetxt += _loc1_.save_visited();
  124.    _loc1_.savetxt += _loc1_.save_bonuses();
  125.    _loc1_.savetxt += _loc1_.xmlValueOut("ticks",_loc1_.ticks);
  126.    _loc1_.savetxt += _loc1_.xmlValueOut("quality",_loc1_.highquality);
  127.    if(_loc1_.cheatmode == 1)
  128.    {
  129.       _loc1_.savetxt += _loc1_.xmlValueOut("cheat",1);
  130.    }
  131.    _loc1_.savetxt += _loc1_.xmlValueOut("depth","cx" + _loc1_.checksum.toString(36));
  132.    _loc1_.savetxt += "</game>\r\n";
  133.    trace(_loc1_.savetxt);
  134.    fscommand("mdm.saveutf8_filename","\"save.xml\"");
  135.    fscommand("mdm.saveutf8",_loc1_.savetxt);
  136.    gotoAndPlay(517);
  137. }
  138. function parseNode(name, value)
  139. {
  140.    var _loc1_ = _root;
  141.    var _loc2_ = value;
  142.    _loc1_.checksum += !isNaN(parseInt(_loc2_)) ? parseInt(_loc2_) : 0;
  143.    switch(name)
  144.    {
  145.       case "name":
  146.          _loc1_.colonyname = _loc2_;
  147.          break;
  148.       case "stat":
  149.          _loc1_.antstats[_loc1_.loadstatnum++] = parseFloat(_loc2_);
  150.          break;
  151.       case "upkeep":
  152.          _loc1_.upkeepcost = parseInt(_loc2_);
  153.          break;
  154.       case "maxnest":
  155.          _loc1_.maxnestsize = parseInt(_loc2_);
  156.          break;
  157.       case "forage":
  158.          _loc1_.forage_factor = parseFloat(_loc2_);
  159.          break;
  160.       case "dig":
  161.          _loc1_.dig_factor = parseFloat(_loc2_);
  162.          break;
  163.       case "hatch":
  164.          _loc1_.hatch_factor = parseFloat(_loc2_);
  165.          break;
  166.       case "temp":
  167.          _loc1_.temperature_mult = parseFloat(_loc2_);
  168.          break;
  169.       case "sky":
  170.          _loc1_.sky_mult = parseFloat(_loc2_);
  171.          break;
  172.       case "rain":
  173.          _loc1_.rain_mult = parseFloat(_loc2_);
  174.          break;
  175.       case "type":
  176.          _loc1_.anttype = parseInt(_loc2_);
  177.          break;
  178.       case "locale":
  179.          _loc1_.localetype = parseInt(_loc2_);
  180.          _loc1_.lastlocale = _loc1_.localetype;
  181.          break;
  182.       case "battle":
  183.          _loc1_.autobattle = parseBoolean(_loc2_);
  184.          break;
  185.       case "move":
  186.          _loc1_.automove = parseBoolean(_loc2_);
  187.          break;
  188.       case "buy":
  189.          _loc1_.autobuy = parseBoolean(_loc2_);
  190.          break;
  191.       case "outcome":
  192.          _loc1_.warsummary = parseBoolean(_loc2_);
  193.          break;
  194.       case "celcius":
  195.          _loc1_.celcius = parseBoolean(_loc2_);
  196.          break;
  197.       case "mute":
  198.          _loc1_.musicmute = parseBoolean(_loc2_);
  199.          break;
  200.       case "battle":
  201.          _loc1_.autobattle = parseBoolean(_loc2_);
  202.          break;
  203.       case "play":
  204.          _loc1_.playday = parseInt(_loc2_);
  205.          break;
  206.       case "month":
  207.          _loc1_.gstartmonthnum = parseInt(_loc2_);
  208.          break;
  209.       case "day":
  210.          _loc1_.gstartmonthday = parseInt(_loc2_);
  211.          break;
  212.       case "level":
  213.          _loc1_.antlevel = parseInt(_loc2_);
  214.          break;
  215.       case "scouts":
  216.          _loc1_.ant_scouts = parseInt(_loc2_) >= 100 ? 0 : parseInt(_loc2_);
  217.          break;
  218.       case "workers":
  219.          _loc1_.ant_workers = parseInt(_loc2_) >= 100 ? 0 : parseInt(_loc2_);
  220.          break;
  221.       case "nurses":
  222.          _loc1_.ant_nurses = parseInt(_loc2_) >= 100 ? 0 : parseInt(_loc2_);
  223.          break;
  224.       case "soldiers":
  225.          _loc1_.ant_soldiers = parseInt(_loc2_) >= 100 ? 0 : parseInt(_loc2_);
  226.          break;
  227.       case "depth":
  228.          _loc1_.checksumloaded = parseInt(_loc2_.substr(2),36);
  229.          break;
  230.       case "cheat":
  231.          _loc1_.cheatmode = parseInt(_loc2_);
  232.          break;
  233.       case "victory":
  234.          _loc1_.victories = parseInt(_loc2_);
  235.          break;
  236.       case "retreat":
  237.          _loc1_.retreats = parseInt(_loc2_);
  238.          break;
  239.       case "store":
  240.          _loc1_.item_bought[_loc1_.loadstorenum++] = parseBoolean(_loc2_);
  241.          break;
  242.       case "map":
  243.          _loc1_.locale_visited[_loc1_.loadmapnum++] = parseBoolean(_loc2_);
  244.          break;
  245.       case "encounter":
  246.          _loc1_.enemiesencountered[_loc1_.loadencounternum++] = parseInt(_loc2_);
  247.          break;
  248.       case "bonus0":
  249.          _loc1_.bonusstats[0][_loc1_.bonusstats[0].length] = parseFloat(_loc2_);
  250.          break;
  251.       case "bonus1":
  252.          _loc1_.bonusstats[1][_loc1_.bonusstats[1].length] = parseFloat(_loc2_);
  253.          break;
  254.       case "bonus2":
  255.          _loc1_.bonusstats[2][_loc1_.bonusstats[2].length] = parseFloat(_loc2_);
  256.          break;
  257.       case "bonus3":
  258.          _loc1_.bonusstats[3][_loc1_.bonusstats[3].length] = parseFloat(_loc2_);
  259.          break;
  260.       case "bonus4":
  261.          _loc1_.bonusstats[4][_loc1_.bonusstats[4].length] = parseFloat(_loc2_);
  262.          break;
  263.       case "bonus5":
  264.          _loc1_.bonusstats[5][_loc1_.bonusstats[5].length] = parseFloat(_loc2_);
  265.          break;
  266.       case "bonus6":
  267.          _loc1_.bonusstats[6][_loc1_.bonusstats[6].length] = parseFloat(_loc2_);
  268.          break;
  269.       case "ticks":
  270.          _loc1_.ticks = parseInt(_loc2_);
  271.          break;
  272.       case "quality":
  273.          _loc1_.highquality = parseBoolean(_loc2_);
  274.          _loc1_.set_quality();
  275.    }
  276. }
  277. function load_savetxt()
  278. {
  279.    return _root.savetxt;
  280. }
  281. function load_antstats()
  282. {
  283.    var _loc2_ = _root;
  284.    var _loc1_ = undefined;
  285.    var _loc3_ = 0;
  286.    var txt;
  287.    var arr;
  288.    _loc2_.fsdebug = "";
  289.    _loc2_.savearray = _loc2_.savetxt.toString().split("|");
  290.    txt = _loc2_.load_savetxt();
  291.    arr = txt.split("|");
  292.    _loc1_ = 0;
  293.    while(_loc1_ < _loc2_.antstats.length)
  294.    {
  295.       _loc2_.anstats[_loc1_] = _loc2_.savearray[_loc1_ + _loc3_];
  296.       _loc2_.fsdebug += _loc2_.savearray[_loc1_ + _loc3_] + ",";
  297.       _loc1_ = _loc1_ + 1;
  298.    }
  299.    _loc2_.fsdebug = new String(txt);
  300.    fscommand("mdm.prompt_adv","_root.fsdebug,\"alert\",_root.fileexists");
  301. }
  302. function loadgame()
  303. {
  304.    var _loc1_ = _root;
  305.    var exists;
  306.    _loc1_.checksum = 0;
  307.    _loc1_.init_all();
  308.    _loc1_.savetxt = "";
  309.    _loc1_.loadstatnum = 0;
  310.    _loc1_.loadstorenum = 0;
  311.    _loc1_.loadmapnum = 0;
  312.    _loc1_.loadencounternum = 0;
  313.    _loc1_.init_xml("./save.xml");
  314.    gotoAndPlay(487);
  315. }
  316. var savetxt;
  317. var savearray;
  318. var fileexists;
  319. var fsdebug;
  320. var loadstatnum;
  321. var loadstorenum;
  322. var loadmapnum;
  323. var loadencounternum;
  324.